ACM Logo  An ACM Publication  |  CONTRIBUTE  |  FOLLOW    

Patterns in e-Learning Standards and Specifications

By Rachel Ellaway / June 2009

Print Email
Comments (2) Instapaper

It is a positive sign of a maturing social economy when it adopts common and open standards and specifications to ensure its ongoing viability. Such was the case in medieval Europe where a city's trading standards— for instance for length or weight—were public artifacts by which all other measures were derived. It was also the case during the Industrial Revolution, with the introduction of standard gauge transcontinental rail links, the use of Morse code to standardize telegraphy, and, more recently, the packet switching TCP/IP networks that are the backbone of the Internet.

E-learning is currently going through a similar "civilizing stage" marked by the development of common technical interoperability standards and specifications. Standards are intrinsically abstract in the sense they impose only structural limits on what can be done with them but not what, when, or how they are used (for instance, the maximum passable vehicle height for bridge clearance or maximum axle loading for railroads); and they are intended to provide a sustainable way for the practical use of their associated technologies and ways of working.

In that any system of standards or specifications should reflect current practice and be adaptable to meet future changes, their development requires widespread collaboration among both practitioners and informatics specialists [1]. At best the standards and specifications process pursues both gestalt and innovation as many different constituent perspectives are accommodated and developed into a single agreed-upon specification or method. At worst it can concretize reactionary or closed practices and perspectives. Either way the standards and specifications process involves the reification and formalization of the ways in which particular forms of practice are designed and executed as well as the philosophy and worldview of those involved.

E-learning standards and specifications display common patterns in the ways they support various aspects of educational and meta-educational activities and processes. This article considers the nature of these design patterns, and it suggests how—once identified—they can enable better educational technology designs, and how they can be analyzed to better understand the philosophy and practice of contemporary technology-mediated education.

Figure 1: Public standards fixed to the city walls in Berne, Switzerland, 2003.

E-Learning Standards and Specifications
After several decades of locally developed, non-portable, and ultimately unsustainable ventures into computer-assisted learning, the e-learning standards and specifications movement has evolved as a way of assuring exchange of educational materials and information between different systems. This is not just a matter of synchronous exchange between different systems, but asynchronous exchange over time so that any one technology can be disposed of and/or replaced while retaining the investment in the content and processes they support.

Of course, there are many other standards underpinning technology use in education: media standards such as USB or CD/DVD-ROM, network standards such as TCP/IP, and file standards such as text (the basis of all SGML's children—HTML, XML, and so on). Furthermore, there are many associated meta-standards such as quality assurance of educational veracity and validity, legal standards in the form of laws and licenses (such as Creative Commons), and political standards in the form of policies and procedures (such as section 508 accessibility legislation). For the purposes of this article, however, we will limit our scope to the data standards used in support of the interoperability of educational design and intent.

The path to creating a data standard can be a complex one, but in its most basic stages it should be based on addressing a widely held need or problem that can be solved by the standardization of the expression and/or exchange of data. For instance, if many users wish to exchange content, then what should the exchange format be and what should it contain? Alternatively, if users wish to exchange assessment items, then what kinds of question types must be supported? Not only does the process require a bottom-up needs approach, the means of allowing these needs to be expressed, identified, and developed are also required. Professional communities of practice (such as industry or academic consortia) typically form the context for such developments, although requirements for standards may also emerge at the interfaces between communities of practice as a way of allowing them to work together. In this latter context standards can act as "boundary objects" between such communities [2].

Once a need is clearly articulated and identified then the development process needs a home, preferably within a context that can both sustain the process and be sensitive to its peculiar and critical dynamics. This development context is most likely to be an established standards and specifications development group such as IEEE or LETSI or a domain-specific one such as MedBiquitous. Although there is nothing preventing a unilateral or a non-aligned effort (see Table 1 for some of the different educational technical standards and specifications bodies). The result of this initial design process is a specification, usually expressed as a set of formatting rules, typically using extensible markup language (XML). Once the specification has stabilized among those developing it, it is released to the community for testing and implementation. Over time there may be new versions of the specification released to accommodate changing or expanding needs or identified flaws as opportunities to improve on the original design.

A specification is a design statement. For an existing specification to become a standard it must go through an additional formal consultation and validation process by a recognized standards organization such as the IEEE, ANSI, or ISO, at the end of which (assuming it is successful) it becomes a published standard under the publisher's credentials. Although standards can be updated, this happens far less frequently than for specifications—standards are accepted as stable and assured over time. To date, there have been few actual e-learning standards (the IEEE's Standard for Learning Object Metadata is a notable exception) as the somewhat frontier nature of the development and use of educational technologies has meant the number of specifications remains in a state of flux and change. Clearly, despite the civilizing nature of introducing standards and specifications, this is still an environment of discovery and innovation rather than one of limits and constraints (despite the implication that standards and specifications may imply). Nevertheless, there are increasingly common, clear, and consistent design patterns emerging from this environment, the identification and consideration of which can in turn further development and design of both technologies and standards and specifications.

Design Patterns and Educational Technologies
Originating in software engineering, a design pattern is conceived as:

"A general repeatable solution to a commonly occurring problem in software design. A design pattern isn't a finished design that can be transformed directly into code. It is a description or template for how to solve a problem that can be used in many different situations" [3].

Examples of software design patterns include "proxy; an object representing another object" and "composite: a tree structure of simple and composite objects" [3]. However, this intrinsically object-oriented metaphor has much wider applications as design patterns are identifiable in many other areas, such as layout grids in graphic design, narrative plot devices ("it was all a dream"), idiom such as jazz or cubism, and educational designs such as problem-based learning or even the ubiquitous multiple-choice question. The principle of templates and design patterns is not new to educational technology per se—they have previously been presented as "general purpose abstract macro-structures" [4].

Perhaps the most common design pattern, not just in educational standards but in almost every area of human activity, is that of the node and the nodal network. The word node has its linguistic origins in the Latin word nodus, translated as knot, and can mean many things: a knot or protuberance, a point at which branches divide, a critical or focal point, and a point of intersection or convergence. We see nodal networks in many places—the branches of trees, the rigging of sailing ships, in subway maps, in the structure of circulatory systems in living organisms. And we find it in knowledge models such as mindmaps and topic maps, and in databases and wiring diagrams. From the point of view of using nodes as a design pattern it is useful to briefly regard their basis in graph theory, which describes arrays of vertices (nodes) and edges (links) as cyclic graphs with bidirectional edges or acyclic graphs with unidirectional edges. Figure 2 shows a simple nodal network represented as an acyclic graph with the matrices for its vertices and edges and Figure 3 shows the same network represented in database tables and as XML.

attack The array V lists the vertices in the graph, the array E lists the edges in terms of pairs of conjoined vertices (from, to): V: = {1,2,3,4,5,6} E: = {{1,2},{1,3},{1,4},{2,1},{3,4},{4,5},{4,6},{5,3}}

Figure 2: A simple acyclic graph along with the matrices for its vertices and edges.

Figure 3: Ways of representing the nodal network shown in Figure 2 in a database and encoding it using XML.

Nodal networks are demonstrably abstract patterns that can be reused and rendered in different ways. Clearly many of the underlying technologies employed in e-learning are nodal in nature, including hypertext, TCP/IP networks, and XML. Furthermore nodal structures and/or principles are to be found in generic systems that are often used in education such as Web content management systems, wikis, blogs, and discussion boards. In terms of more specific educational technologies, nodal structures are the basis for knowledge bases (such as curriculum maps or expert systems), instructional algorithms (such as SCORM sequencing) and educational game-informed learning (such as virtual patients or narratives).

Standards and Specifications
The breadth of applications of nodes and nodal networks clearly demonstrates the utility of this design pattern in architecting many different information technologies, educational or otherwise. The question posed by this article however is how these design patterns best support and enable the development of educational technology standards and specifications. The example of an e-learning specification [one the author helped create], considers a number of commonly occurring educational technology design patterns of nodes, primitives, semantics, IDs, services, state, and abstraction. It should be noted that these patterns are not presented as canonical or exhaustive, but rather as part of an ongoing discourse about the nature of educational technology design and development.

The example used to illustrate these ideas is the MedBiquitous Virtual Patient (MVP) data specification [5], a collaborative effort of academic partners in both North America and Europe who are working to develop the means for virtual patients. MVP is an increasingly common and effective e-learning heuristic in healthcare education [6, 7], to be shared, adapted, and reused between different partners, systems, and contexts. (See Figure 4 for a diagram of the principle components of the MVP specification.) Creating this specification involved gathering requirements from all of the contributing partners, developing use cases that reflected the diverse requirements, and then iteratively moving from highly-abstracted models to more specific data structures that accommodated the use cases as well as the means to be adaptable to other models and approaches. All of the design patterns described here were encountered and considered in the development of this specification.

Figure 4: MedBiquitous Virtual Patient components and the basic relationships between them. VPD=Virtual Patient Data (all text-based content), AM=Activity Model (what the student can do and what happens when certain actions are taken), MR=Media Resources (all object files such as images, videos, PDFs and animations), DAM=Data Availability Model (a way of aggregating and reusing VPD and MR elements). The last component (not shown here) is the reference player.

Pattern #1: Nodes
We have already considered the design pattern of the nodal network and found it to be highly abstract, simple to model, and widely applicable. The MVP specification uses nodal networks for two aspects of its design: the Activity Model and the Data Availability Model. The Activity Model describes the topology of the options available to the user. Although the presentation of this "option tree" to the user is further controlled by a series of game-like rules, the use of nodes for structuring the activity is an essential component of the overall specification design. In addition, the Data Availability Model provides the means to create aggregate structures of data and media elements, for instance the results of a battery of tests and investigations.

Pattern #2: Primitives
The principle of this design pattern is one of building more complex structures out of simpler ones, which we shall call "primitives." The use of instantiable object structures is a fundamental part of object-oriented programming, where common libraries and classes of objects are used and reused to make programming both faster and more efficient. In many ways design patterns are themselves primitives in that they describe reusable ways of building more complex and non-predetermined structures. This is also the basic premise behind toys like Lego and the basis of Web 2.0 mashups such as using Google Maps when used in third-party websites.

In designing the MVP specification this pattern proved particularly useful in minimizing the number of patient data element types required. The MVP has a whole section dedicated to describing patient data such as chief complaint, body regions, and test results. We were able to reduce the original model of nearly a hundred quite specific element types to just nine element structures (primitives), such as patient demographics, medications, physical exams, and diagnostic tests. The result is not just a data model that is simpler and easier to use but strangely it is a lot more flexible since, by carefully reducing the specific element types to more abstract primitives, the specification is more adaptable to new and varying requirements and contexts of use.

Pattern #3: Semantics
The key to the semantics pattern is that a profusion of similar structures can be reduced to far simpler and fewer structures by typing primitives using semantic descriptors. For instance, a data structure for addresses can be changed from explicit structures for home, work, and cell telephone numbers to a single generic telephone element that is typed for home, work, and cell.

The other side of the use of the primitives design pattern in the MVP data involved discriminating between different instances of these more abstract elements by typing them with vocabulary tags describing concepts, such as body area, disease, technique, and therapy using established vocabularies for these concepts. Thus a primitive of "examination" can be instantiated with semantic markers including an action ("palpate" or "observe") and a location ('knee," "neck," or "chest'').

This use of vocabularies is an essential part of creating "application profiles" of standards and specifications, which further qualify an existing model. For instance there are now many profiles of the IEEE's Learning Object Metadata that have been created by adding rules, such as specific mandatory vocabularies, to the more generic structure. Examples include Healthcare LOM, UK LOM Core, and so on. Semantic design patterns are typically community, language, or culture specific.

Pattern #4: IDs
It is an essential tenet of information science that discrete and independent objects must be addressable as such; database tables usually have "primary keys" (a unique identifier (ID) for each record) and even humans are dependent on unique IDs in personal data sources such as their bank accounts, passports, or social insurance numbers. The extent of an ID's uniqueness may be local to a particular application, such as a room number or a computer file name, or globally unique, such as an ISBN number or an email address. The ID may be arbitrary such as 8EGN6S9E8G or semantically structured such as ACMPAPER001. While the latter can streamline and enrich data processing within particular systems, the specificity of the markup often precludes more generalized designs and as such dependence on semantic markup within IDs in specifications design does not represent good practice.

The MVP employs IDs throughout, as every element, whether activity or Data Availability nodes, Virtual Patient Data, or Media Resource elements has a unique ID that allows it to be targeted, associated with other elements and aggregated into larger virtual patient structures. Currently, these IDs must be locally unique rather than global although global IDs are not excluded.

Pattern #5: Services
One of the problems of designing an information system is defining where its edges should be and thereby what is in-scope and what is out-of-scope. As an example of this, the Educational Modeling Language (EML) developed at the Open University of the Netherlands and subsequently developed into IMS Learning Design (IMSLD) is a specification for encoding the choreography of learning episodes [8]. As such it needed to include all sorts of educational content—use and creation—as well as student collaboration, inquiry, and assessment as well as any logistical support. Rather than include explicit models for each of these processes, a reference to an external service allows a specification to cover parts of a domain without having to define it. As an illustration of this an IMSLD activity may include service references for search, store, or assessment without defining what is inside them.

The MVP employs services in a similar way (indeed it was a design pattern adopted from EML/IMSLD) to indicate service connections for those functions that were ruled out of scope such as discussion or linking to a student records system. As a result the specification remained focused and able to accommodate integrated LMS functions as well as those that standalone from any such third-party structure. There remain issues with this design as to how the in-scope specification communicates with these external services and how tightly or loosely coupled they should be to each other. On a broader front this pattern is the fundamental principle of service-oriented architectures (SOAs) where different and often remote applications communicate, share data, and provide functionality to each other using common data frameworks.

Pattern #6: State
Although many designs describe static systems, others need to be able to describe how a system changes over time. For instance, generally the state of a book remains the same irrespective of who reads it while a computer game needs to track what the user has done previously so as to present the appropriate consequences of their actions. The book could therefore be considered to be stateless while the game is state-dependent. As a design pattern modeling the state of a system over time allows dynamic phenomena (typically user interactions) to be incorporated into the design along with programmatic dependencies on previous states or actions. Indicators of state are usually managed using dynamic variables, which may store discrete values or formative annotations (such as comments and discussions). A state model may support any number of independent state variables.

The MVP is a design that models how a virtual patient is presented to a user and what happens when the user interacts with it. In that respect, the MVP is highly state-dependent. As a result it employs several different state holders to support different kinds of data and associated functionality. For example: Counters are state variables whose integer values can be increased or decreased arbitrarily at any Activity Model node. Counters can also have rules assigned to them so that when their value reaches a certain point an action is triggered. There can be any number of counters from zero upwards. As an example one design may use a counter set to track the health of a patient; if bad decisions are made this counter can be progressively decreased—if it reaches a value of zero a rule stopping the activity can be triggered, possibly represented as the patient dying.

Every Activity Model node the user visits is tracked within a particular user session. Activity nodes can have conditional rules applied to them that check whether the user has visited other key nodes. If they haven't visited the appropriate activity nodes then the user is presented with different options. For example, a node giving test results should only logically be shown if the user has previously visited the node where they were ordered.

Pattern #7 Abstraction
Informal systems are an essential part of education despite formal structures, such as curricula, outcomes, lesson plans, and exams, defining much of the environment. By informal systems we mean any aspect of the educational environment that is emergent, improvised, or otherwise undefined. Despite being somewhat fluid and unpredictable these informal and emergent systems can be formally modeled by identifying and abstracting their essential properties and structures. It is interesting to note that the pursuit of ever higher levels of abstraction is a common way of approaching systems analysis and theory building, and in many ways the standards and specifications design process is itself a kind of theory building. The resulting theory (expressed as a specification) is tested against its ability to support different application contexts.

The MVP design process followed a path of increasing abstraction in order to identify common structures and the patterns that could be used to model them. Starting by identifying a range of existing real-world system designs and ways of working that the specification would cover, a series of formal use case scenarios [9] were created to represent all of the functions, circumstances, and uses the specification needed to cover. Iterative review and refinement of these use cases was used as the basis of creating more functional and abstract designs that met the requirements set out in the use cases. As a result a direct path of increasing abstraction allowed a number of quite different and even conflicting real-world requirements and functions to be encoded within a single technical design specification.

Education Informatics and Design Pattern Principles
The development of technical standards and specifications shares many design and development issues with other information systems, in that they all benefit from parsimony, requisite complexity, usability, understandability, and applicability. However, there are some extra dimensions that introduce particular challenges for standards and specifications designers and implementers alike. Most important of these is that standards and specifications need to be abstracted from many instances with the purpose of rendering them as relevant to as wide a range of other different instances as possible. For example, the success of newsfeeds and podcasts has been based on the use of RSS as an abstracted way of presenting lists of items with associated descriptions and links irrespective of what the list or links contained (although interestingly despite its widespread use RSS is not a standard). Furthermore, while standards and specifications may for some simply function as a transport mechanism for "what goes over the wire" between different systems, for others they can act as templates for developing whole information systems, encapsulating as they do (or at least they should) the collected best thinking and intent of experts in the field. In this latter context design patterns take on an increased level of significance both as "a general repeatable solution to a commonly occurring problem" and as a template or idealized design for other systems and technologies that employ it.

The development of "education informatics" [10] represents a more holistic and integrated view of the role of information systems and related practices to all aspects of the education environment. The education informatics conceptual space includes business and enterprise approaches in support of logistics and administration, systems to support teaching, learning and assessment, content and knowledge management, and meta-systems such as curriculum maps and outcome frameworks. The development of standards and specifications is a key aspect of education informatics, both in terms of their ability to connect and integrate across the education informatics domain, and the ways they draw out and reify common patterns and approaches for all to see and employ. The approach outlined here can be abstracted further to a series of (at least provisional) education informatics design pattern principles:

  • Relational and procedural structures can be modeled using nodal frameworks.
  • Simple primitive structures can be instantiated and aggregated in different ways to create more complex structures.
  • Specific designs can be made more generic by moving the specificity to semantic markup so that structure and semantics are separate.
  • Elements and collections of elements should be uniquely addressable using resolvable unique IDs.
  • Non-dependent and out-of-scope functions can be cast as abstract (non-specified black box) services.
  • Stateless and state-dependent phenomena need to be identified, handled, and modeled as fits their form and function.
  • Non-formal systems can be modeled by identifying common and recurring patterns.

Although these designs and principles are not presented as either exhaustive or canonical they have been derived from practical standards and specifications design practice and as such they have at least bottom-up validity. I hope this starts (or continues) a discourse around what other patterns there are in educational systems design and how they are best represented and instantiated in practice.

Future Direction
The identification and analysis of design patterns can do more than help the systems or specifications design process, it can expose some of the fundamental ways we conceive of educational process and design. For instance, irrespective of whether codifying the choreography of educational activities is practical in the longer term (using for instance IMSLD), the possibility of such an approach has led to the "design for learning" movement [11], which is developing theory and practice around the principles that educational design can be formalized, codified, and subsequently treated as coherent, reified, and recurring patterns. The identification of common design patterns in educational practice therefore becomes viable and meaningful allowing us to both use them in practice and work with them as the objects of research and evaluation. The possibilities for increasing understanding and innovation are significant, but this should remain as far as possible an open and collaborative undertaking involving the whole educational technology community.

This article is dedicated to Phil Dodds and Claude Ostyn, two of the pioneers of educational technology standards and specifications. I would also like to acknowledge the role of Peter Greene and Valerie Smothers of MedBiquitous in affording the opportunity to develop the ideas and work presented here.

1. Nelson, M. and M. Shaw. "Interorganizational System Standards Diffusion: The role of industry?based standards development organizations." University of Illinois College of Business Working Papers; 2005.
2. Wenger, E. Communities of Practice. Cambridge: Cambridge University Press, 1998.
3. Sourcemaking:
4. Nanard, M., J. Nanard, and P. Khan. "Pushing Reuse in Hypermedia Design: Golden rules, design patterns and constructive templates." In Proceedings of the 9th ACM Conference on Hypertext and Hypermedia, 11-20. New York: ACM Press, 1998.
5. Ellaway, R., C. Candler, P. Greene, and V. Smothers. "An Architectural Model for MedBiquitous Virtual Patients". White paper for MedBiquitous Consortium, Baltimore, September 11, 2006.
6. Ellaway, R. "Modelling Virtual Patients and Virtual Cases." MELD. 2006 .
7. Pickell, G.C., D. Medal, W.S. Mann, and R.J. Stabler. "Computerizing Clinical Patient Problems: An evolving tool for medical education." Medical Education 20, no. 3 (1986): 201-203.
8. Koper R. and C. Tattersall. Learning Design: A Handbook on Modelling and Delivering Networked Education and Training. Berlin: Springer-Verlag and Heidelberg GmbH, 2005.
9. Fowler, M. UML Distilled. Boston: Addison-Wesley, 2004.
10. Ellaway, R. "Weaving the 'e's Together." Medical Teacher 28, no. 7 (2006): 587-590.
11. Beetham, H. and R. Sharpe, eds. Design for Learning: Rethinking Pedagogy for the Digital Age. London: Routledge, 2007.

About the Author
Rachel Ellaway is the assistant dean and associate professor for education informatics at the Northern Ontario School of Medicine and visiting professor in education informatics at St. Georges University of London. She is co-chair of the MedBiquitous Virtual Patient Working Group, an author of the OpenLabyrinth virtual patient authoring and delivery system, and chair of the AFMC Informatics Resource Group.


  • Thu, 23 Nov 2006
    Post by Pauline Randall

    Totally agree with your article. I think that age is used as an excuse for bad design - the ''if you weren''t so old you''d be able to understand it'' school of thought. I know plenty of ''senior'' learners who are extremely capable with new technologies and plenty of younger ones who struggle. Let''s stop thinking age and start thinking good design and then everyone will benefit.

  • Wed, 22 Nov 2006
    Post by Christie Mason

    This is stuff web designers have known for a very long time. I have a diminishing hope that someday trainers and educators will learn and apply basic web design principles like usability. It would save everyone a lot of time.