CS 6398 - Design and Analysis of Educational Software
Instructor/Jovial-Host:
Mark Guzdial
254 CoC
894-5618
guzdial@cc.gatech.edu (Email is best way to reach me.)
Time: TTh 9:30-11 am
Location: CoC 102
Text: Web references on-line.
Focus of Course
The course has two parts, each with a set of questions that we will be addressing:
- DESIGN: What are student needs for learning? How do you facilitate learning with software? What design principles are in common use for educational software and which should be used for a given project?
- EVALUATION: How do we evaluate educational software? What variables should we be considering (e.g., teachers, learning style, design style)? What methods for evaluation should we use (e.g., classroom study, interviews, log files, analyses based on Pathfinder networks)?
Objectives of the Course
Objectives of this course are for students to be able to:
- Design software about which you are willing to make explicit claims about the intended student audience, the needs of that audience, how the software meets those needs (including choice of media, structure, and interface), and what should be learned from the software.
- Evaluate the software and describe which (of many possible) variables were studied, why these variables were studied, how these variables were studied (what methods), and why those methods were used.
- Identify some of the most prominent leaders and groups in educational software (e.g., Soloway's HiCE, Schank's ILS, Linn's KIE/Dungeon group) and what they are saying about educational software.
- Identify several variables impacting the success of educational software and methods for measuring or studying those variables.
So what are we going to do?
During the course of the quarter, students will (alone or in groups of at most three)
- Implement a piece of educational software and
- evaluate it (with at least three users, preferably a whole class if available).
There are no restrictions on the KIND of software (e.g., microworlds, intelligent tutors, hypertext) implemented, as long as the developers are willing to claim that the software facilitates learning Ð and to evaluate that claim. If you are not a programmer, team with someone who is.
Most classes will be a discussion of one (at most, two) papers (or perhaps a Web site). We will also see some videos, see software demonstrations, and try out our interviewing and other evaluation skills on one another. For a convenient flow, the course will cover first design-oriented papers, then evaluation-oriented papers -- but actual educational software development folds in design considerations with evaluation considerations. I recommend at least looking at the evaluation papers when developing your design. Questions on either design or evaluation are good discussion topics throughout the class. In addition to class discussions, there will be two days set aside for discussion of your projects Ð problems, issues, seeking resources, etc.
I'm trying something different with the papers this year. In past offerings of this class, we have used PPC which has been both expensive and poor-quality (e.g., missed pages, hard-to-read, etc.). This year, either:
- The papers will be available from me for personal reading and copying.
- I will upload the papers to the Web or identify Web sites containing the papers for personal reading and printing.
This is an experiment, so feel free to be able to tell me if it's not working and how we should fix it.
In addition, we will rotate the job of scribe. One of the complaints that students have had in past quarters is that we had wonderful discussions, but then the discussions were lost. Each discussion day, one student will be designated scribe (and if you can't make, it's your responsibility to find a replacement) to produce, before the next class, a one-to-two page summary of the discussion IN HTML. I will post these to our Web page and link them to our WebCaMILE for further discussion.
Grading
Grading will be based on two papers and two presentations:
- April 23 and 25, students will present their software (demos and/or screenshots are required) and submit a paper on the design of their software and the claims made for it. I want your presentation and paper to convince me that the first and third objectives for the course have been met.
- 10% of final grade on presentation
- 40% of final grade on paper
- At our final exam time (Thursday, 6/6, 11:30-2:20), students will present the result of their evaluation and submit a paper describing the evaluation (subjects, variables studied, methods, data, analyses, and conclusions). I want your presentation and paper to convince me that the second and fourth objectives for the course have been met.
- 10% of final grade on presentation
- 40% of final grade on paper
By the third week of class (April 14), please submit a one page paper to me via email identifying:
- Members of your group, with some description of roles (e.g., who will be programming what sections of the project, who will be leading the evaluation effort, etc.)
- A brief description of your project (including learning objectives, student audience, computing platform. and development environment being used)
- What is your plan and what are your milestones for completing the project by the required dates?
In addition, students are required to take on their responsibility as scribe.
Course Outline
DESIGN
ENVIRONMENT AND PROJECT IDEAS
Environments
- Apple Macintosh: There are a lot of Macs in schools (60% of all K-12 machines), so it makes sense if your audience is children. HyperCard and SuperCard are terrific prototyping environments. Director is better for doing media components but is harder for putting together a whole application in.
- Windows/DOS: Windows has conquered the home and business market, so this choice makes good sense if your audience is adults. Toolbook is the quick multimedia prototyping tool there, but Visual Basic is the most popular programming environment, probably in the world.
- WWW: The World Wide Web is certainly a great attraction across many audiences. The tough part of WWW is getting interaction. You can do CGI scripts that allow interaction through the use of forms, but they're not easy to get working (you program in Perl or something like Python). Java is a possibility, but it takes some significant programming effort. JavaScript is a scripting language for Netscape clients, but it's still a little buggy.
Project Ideas
The following are just some thoughts that I've been considering for awhile as potential projects:
- At the first class, I'll probably talk some about STABLE. I think that STABLE is the first instance of a generalized form of scaffolding delivered on the Web. I'd be interested in helping groups that would like to try to create ABLEs (including links to CaMILE) in other domains.
- Programming is hard for kids. Spreadsheets are easier and work for a wide variety of problems that kids might want to tackle, but they're still not all that easy either. What would a pre-spreadsheet look like? I've been imagining a simulation environment with great images that, underneath, was just a spreadsheet. Students might plug in numbers into the spreadsheet and get immediate feedback on the images/representations (e.g., as you enter miles walked for each day of a long hike, the marker on the map representation moves). At a lower level of scaffolding, equations could be entered so that values didn't have to be entered by hand. At a still lower level, you could create the connections between the spreadsheet and the representations yourself. POOF! A spreadsheet!
- How do you support collaborative learning synchronously on the Web?
- There are lots of groups on campus that have a whole bunch of tools and students waste much of their classtime figuring out how to integrate the tools. We need to figure out some way to help their students use this whole collection of tools and still learn from the process.
- One of the new buzzwords in educational technology is Performance Support Systems. How do you build educational systems that don't get in the way of workers but are available with the right kind of learning when the worker needs it?