Roschelle, J., Pea, R., DiGiano, C., & Kaput, J. (1999). Educational software components of tomorrow. In M/SET 99 Proceedings [CD ROM], Charlottesville, VA: American Association for Computers in Education.
Prior research and development demonstrates that dynamic notations and multiply-linked representations can enable ordinary students to achieve extraordinary learning of scientific and mathematical concepts (Kaput, 1992). However, prior techniques
for building such software have resulted in expensive, incompatible, and inflexible products (Roschelle & Kaput, 1996). The vast majority of educational software projects, many of which are funded by the public sector, show promising results in small tests but never reach a larger market (OTA, 1988; PCAST, 1997). How can sustainable and scalable production of high quality math and science software be achieved?
The Educational Software Components of Tomorrow (ESCOT) project is exploring one promising direction of innovation: assembling math education software from components rather than hand-crafting new programs or applications for each curricular need. Typical components include graphs, tables, simulations as well as tools for manipulating geometry and algebra. Using capabilities of the Java language and associated frameworks, it is possible to construct individual educational components so that non-technical authors can flexibly combine them, composing new activities and lessons.
One way to understand the potential of this approach is by analogy. Only a very few people can build their own stereo system by wiring together transistors and other components at the circuit level, but many people can assemble a stereo system to meet their needs by attaching cables to their preferred amplifier, receiver, disc player, turntable and speakers. The move to higher level components has created a much larger marketplace of compatible products that yield flexible arrangements for particular needs. Similarly, ESCOT is raising the level of components for educational software from the programming language level to the pedagogic/curricular level.
In this paper, we report some of the early results from our testbed for developing interoperable components for middle school mathematics, as well as some of the difficult challenges that lie ahead.