Component Based Learning Architectures
Mark J. Norton
April 28, 2001
It is widely acknowledged by the educational and training communities that there are many ways in which people learn. Books, lectures, web exploration, converstations, team collaboration, lab exercises, videos, and many other techniques are used to facilicate the transmission of knowledge. Traditional educational approaches often encompass many of these. How can this richness of media, processes, and pedagogies be captured in a technology-based learning system?
Older computer based instruction systems tended to embody particular approaches to presentation and interaction. They were brittle and (for the most part) difficult to extend. Usually, they forced the author, teacher and students to use the methods catpured by the existing software with limited or no room for creativity. One system might provide a linear presentation style, another might facilitate live instruction, while a third might support collaboration. They did not, however, interact with each other, nor share tools.
I believe that it may be possible to develop systems which address different styles of teaching and learning which shares software, is easy to expand or adapt and fosters new and innvotative approaches. It will require the following things

Here are four different kinds of learning styles based on shared components. The Learning circle represents self-directed learning styles. The Teaching circle encompasses distance learning, Collaboration represents person to person, or team based approaches to learning, and Repositories include digital libraries, question banks, and databases which enable research or exploration based learning.
Each of these are very different styles of learning, and there are others. All of the components encompassed by one of the circles above support that style of learning in some manner. These components do all sorts of things. They might be a digital rights management system, a presentation system which embodies a particular pedagogy, an assessement mechanism, a chat room, a search engine, etc. Some of these might be shared by two or more styles of learning. A linear presentation of slides, for example, might be used by a teacher for a live lecture, or by a self-directed student who sees the slides along with pre-recorded audio.
Examples of Other Component Based Archtectures
Architectures of the type describe above have been historically successful when they are simple and easy to use. Several examples of component architectures might serve to illustrate how a similar one could be developed for technology based learning.
Art craft projects for children illustrate an environment which is very rich and creative. the kids are given all sorts of materials, and tools and given contraints about what to create: today we are all going to make elephants! Anna immediately grabs a lump of clay because she loves the feeling of it in her hands, John paints a picture using tempera and decorates the black sky with glittering sequinns, Claire uses a simple 3D graphics application on her computer, and Michael builds an elephant out of Legos. Afterwards, each child presents his or her work to the rest of the class and a discussion of how the media impacts representation.
In a very different domain, the Unix operating system environment came with dozens of small tools which could be used to manipulate text, numbers, and other forms of data in various ways specified by input parameters. They could be strung together, accept input from various sources, and send out put to files, the screen, or to a remote system. New tools were easy to write by any skilled programmer and where added all the time.
Way back in the ancient days of electronics, there existed devices call TTL Logic. These were grouped together on integrated circuit chips and could be simply wired together in all sorts of ways to create new things like flip-flops, registers, buffers, and the like. Although relatively few people build with TTL, it is still present with us buried deep in more complex devices like MPUs, audio controllers, JPEG compressors, and the like.
In each of these cases, the tools and components conformed to simple sets of rules and did different things. They could be combined to form larger systems and allowed the users of them to be very creative, far beyond the original visions of the designers.
Classifying Learning Components
Very few restrictions where placed on the definition of components above. A component can be anything that enables learning to occur. Components might be very complex, or exceptionally simple. In order to get a handle on how we might go about building these components, lets consider the following things that a learning component might support: