ABSTRACT
Reuse is vital in the education world because the time and money necessary to create high quality educational software is prohibitive. Estimates for the cost of creating a single well designed, highly graphical and interactive online course in the commercial domain range from several hundred thousand dollars to a million or more. Thus the idea of reusable software components that can be easily shared is tremendously appealing. In fact, "component" has become a buzzword in the educational software community, with millions of dollars from the National Science Foundation and other sponsors funding a wide variety of "component-based" projects. But few, if any, of these projects, have approached the grand vision of creating repositories of easy to reuse components for developers and educators. This paper investigates some of the factors that stand in the way of achieving this goal.
We begin by defining the word component and looking at several projects using components, with a focus on our Exploratories project at Brown University. We then discuss challenges in: Searching and Metadata, Quality Assurance, Programming in the University Environment, Platform and System Specificity, Social Issues, Intellectual Property Issues, and Critical Mass. We look at relevant software engineering issues and describe why we believe educational applications have unique factors that should be considered when using components.
- Agentsheets. http://www.agentsheets.com/.Google Scholar
- Agresti, W. and Evanco, W. 1992. Projecting Software Defects. In Analyzing Ada Designs in IEEE Transactions on Software Engineering, 18 {11}, pp. 988--997. Google ScholarDigital Library
- Bea Systems Success Story. http://www.componentsource.com/SellComponents/SuccessStories/BEASystems.asp.Google Scholar
- Componentsource. http://www.componentsource.com/ and http://www.componentsource.com/Welcome/NewVisitor/WhyBuyFromComponentSource.asp for their testing statement.Google Scholar
- Create (A Component Repository and Environment for Assembly of Teaching Environments) Project. http://www.smete.org/nsdl/projects/services.html#brwnGoogle Scholar
- E-Slate. http://e-slate.cti.gr/.Google Scholar
- Escot (Educational Software Components of Tomorrow). http://www.escot.org/.Google Scholar
- Exploratories Project, http://www.cs.brown.edu/exploratoriesGoogle Scholar
- Laleuf, J. R. and Spalter, A. M. 2001. A Component Repository for Learning Objects: A Progress Report. In Proceedings of the ACM/IEEE Joint Conference on Digital Libraries. Google ScholarDigital Library
- Merlot. http://www.merlot.org/Google Scholar
- Nsf Nsdl (National Science Digital Library) Program. http://www.smete.org/nsdl/projects/index.html.Google Scholar
- Poulin, J. 1999. Been There, Done That. In CACM (Communications of the ACM), 42 {5}. Google ScholarDigital Library
- Sei (Software Engineering institute), Carnegie Mellon. A Framework for Software Product Line Practice -- Version 3.0, http://www.sei.cmu.edu/plp/framework.htmlGoogle Scholar
- Spalter, A. M., Legrand, M., Taichi, S., and Simpson, R. M. 2000. Considering a Full Range of Teaching Techniques for Use in Interactive Educational Software: A Practical Guide and Brainstorming Session. In Proceedings of IEEE Frontiers in Education '00. Google ScholarDigital Library
- Spalter, A. M., and Simpson, R. M. 2000. Integrating Interactive Computer-Based Learning Experiences Into Established Curricula. In Proceedings of ACM ITiCSE (Innovation and Technology in Computer Science Education) 2000. Google ScholarDigital Library
- Szyperski, C. 1999. Component Software: Beyond Object-Oriented Programming, Addison-Wesley, New York. Google ScholarDigital Library
- Van Dam, A. 2000. Reflections on Next-Generation Educational Software. In Enseigner L'Informatique: Melanges en Hommage 'a Bernard Levrat. Pellegrini, C. and Jacquesson, A. editors, Georg Editeur, pp. 153--166. http://www.cs.brown.edu/people/avd/LevratPaper.html.Google Scholar
- Web/Comp Project. diSessa, A. A. http://dewey.soe.berkeley.edu/boxer/webcomp/index.html.Google Scholar
- Problems with using components in educational software
Recommendations
Testing reusable software components from object specification
Most Consumer Electronics products today contain complex embedded software. We believe a component-oriented approach is an ideal way to handle the diversity of software complexity. Our earlier work on reusable components addressing the development of ...
Evaluating the correspondence of educational software to learning theories
PCI '13: Proceedings of the 17th Panhellenic Conference on InformaticsAs new technologies emerge, more and more people depend on them for a variety of purposes. Now more than ever there is a tendency for technological implications to substitute for face-to-face communication and education. In this paper we attempt to ...
Using resemblance to support component reuse and evolution
SAVCBS '06: Proceedings of the 2006 conference on Specification and verification of component-based systemsThe aim of a component-based approach to software is to allow the construction of a system by reusing and connecting together a number of existing components. To successfully reuse a component, alterations generally need to be made to it, particularly ...
Comments