IMA-CID: An Integrated Modeling Approach for Developing ...

4 downloads 2795 Views 2MB Size Report
and illustrate its practical application by the development of an educational module for the software testing knowledge domain. More specifically, the module ...
IMA-CID: An Integrated Modeling Approach for Developing Educational Modules Ellen Francine Barbosa1 , Jos´e Carlos Maldonado1 1

Instituto de Ciˆencias Matem´aticas e de Computac¸a˜ o (ICMC) Universidade de S˜ao Paulo (USP) P.O. Box. 668 – 13560-970 – S˜ao Carlos (SP), Brazil {francine,jcmaldon}@icmc.usp.br

1. Introduction Educational modules consist of concise units of study delivered to students by using technologies and computational resources [Barbosa and Maldonado 2006a]. The development of educational modules should consider intrinsic characteristics of knowledge as well as the way its content is structured and organized. Besides that, educational modules themselves should be evolvable, reusable and adaptable to different learning scenarios and objectives. Among the activities related to the development of educational modules, content modeling is a fundamental one. Despite its relevance, there are few initiatives to address the problem of modeling educational modules content. In general, these initiatives aim at providing ways to establish effective educational products, capable to improve and/or create motivating learning situations, but none of them provides a complete set of features addressing the conceptual, instructional and didactic perspectives. Moreover, they do not consider a process for developing educational modules. In this tutorial we focus on the content modeling activity and discuss the establishment of an integrated modeling approach for developing educational content – IMA-CID: Integrated Modeling Approach - Conceptual, Instructional and Didactic [Barbosa and Maldonado 2006a]. We present the main characteristics of IMA-CID and illustrate its practical application by the development of an educational module for the software testing knowledge domain. More specifically, the module was developed for a particular subject of the testing techniques topic – the mutant analysis testing criterion [DeMillo et al. 1978].

2. Educational Modules Educational modules are concise units of study, composed by theoretical and practical content which can be delivered to learners by using technological and computational resources [Barbosa and Maldonado 2006a]. Figure 1 illustrates the main components of an educational module. For theoretical content, instructors use books, papers, web information, slides, class annotations, audio, video, and so on. Practical content is the instructional activities and associated evaluations, as well as their resulting artifacts (e.g., executable programs, experimental studies, collaborative discussions). Specific tools related to the subject knowledge domain and the results obtained from their application can also be

Figure 1. Main components of an educational module.

seen as practical content. In the case of mutation testing domain, for instance, Proteum [Delamaro et al. 2001] is an example of automated tool which can be integrated as part of an educational module in order to enable the application of basic mutation testing concepts in realistic situations. This integration fosters training situations and promotes exchange of technology between industry and academia, also providing human resources (learners) with testing abilities. Theoretical and practical content are integrated in terms of learning materials. In order to deliver the materials to learners, an adequate infrastructure is also needed. Learning environments (e.g., WebCT [Goldberg et al. 1996], Blackboard [Blackboard 2002], Moodle [Moodle 2007], Sakai [Sakai 2007]) as well as technological and computational resources, such as mechanisms to transform the content of traditional lectures into searchable and extensible digital media (e.g., eClass [Brotherton and Abowd 2004, Pimentel et al. 2001]) and to support collaborative work and augment communication and discussion among instructors and learners (e.g., CoWeb [Dieberger and Guzdial 2003]), illustrate some of the required infrastructure related to the educational modules. It is also important to highlight that the way the educational module is structured and organized, in terms of concepts and related information, practical activities and evaluations, deeply impacts the effectiveness of learning. Besides that, the development and application of educational modules should consider intrinsic characteristics of

knowledge, such as its dynamic and evolutionary aspect. In testing domain, for instance, practical activities involving the conduction of theoretical and experimental studies can result in new knowledge of testing techniques and criteria, which should be incorporated to the previously defined content. Also, there is a need for adaptability and reusability – educational modules should be seen as independent units of study, subject to be adaptable and reusable in different educational and training scenarios, according to the learner’s profile, instructor’s preferences, learning goals and course length, among others [Barbosa and Maldonado 2006b, Barbosa and Maldonado 2006a].

3. IMA-CID: An Integrated Approach for Modeling Educational Content In this section we present an overview on the integrated content modeling approach we have investigated to support the development of educational modules: IMA-CID (Integrated Modeling Approach – Conceptual, Instructional and Didactic) [Barbosa and Maldonado 2006a]. IMA-CID is composed by a set of models (conceptual, instructional and didactic), each one dealing with specific aspects of the development of educational content. Figure 2 summarizes the key points of our proposal. Notice that, although each model addresses particular issues, they are intrinsically related and should be applied in an integrated way.

Figure 2. The IMA-CID approach.

3.1. Conceptual Model The Conceptual Model consists in a high-level description of the knowledge domain, representing its main concepts and the relationships among them. The relationships can be divided into two classes: (1) structural; and (2) domain-specific. Structural relationships are useful to set up taxonomies among concepts and make inferences about the knowledge, representing a generic category of relationships, applicable to any kind of domain. Relations such as type-of and part-of are examples of structural relationships. On the other hand, domain-specific relationships are user-defined and have their meaning associated to a particular subject, carrying their own semantics. That is, they represent specific relations, whose interpretation depends on the domain being modeled.

To construct the conceptual model, we focused on the conceptual mapping technique, proposed by Novak [Novak 1990]. The main reasons for choosing this technique are: (1) it is suitable for representing concepts and for structuring the knowledge domain; (2) it is intuitive and ease to use; (3) it is based on educational principles, having a good acceptance among educational specialists and professionals; and (4) it is adopted by the majority of existent modeling approaches for educational content. Additionally to the rules for creating conceptual maps, we included some specific notations aiming at representing the relationships of concept taxonomy (type-of ) and concept composition (part-of ). 3.1.1. Guidelines for Constructing the Conceptual Model The following guidelines can be considered in order to construct a conceptual model: 1. Identify the main concepts to be taught/learned by using the educational module. Substantives used for describing the knowledge domain can help on identifying the concepts. Considering the mutation analysis knowledge domain, mutation analysis, mutant, error-revealing mutant, dead mutant, equivalent mutant and mutant operator characterize some of the relevant concepts to be taught/learned. 2. Identify the structural relationships between the selected concepts. (a) Identify the relationships of concept taxonomy. Verbs and expression like is classified in or is a type of relating two concepts can help on determining concept taxonomy relations. For instance, error-revealing, dead and equivalent mutants are types of mutant. Are types of characterizes a concept taxonomy relation. (b) Identify the relationships of concept composition. Verbs and expression like is composed by or pertences to relating two concepts can help on determining concept composition relations. For instance, a sufficient mutant operators set is composed by mutant operators. Is composed by characterizes a concept composition relation. 3. Identify the domain-specific relationships between the selected concepts. For instance, a mutant operator originates a mutant. In this case, originates characterizes a specific relationship in the mutation analysis domain, involving the concepts of mutant operator and mutant. For the sake of illustration, Figure 3 shows the conceptual model developed for the mutation analysis knowledge domain. From this model, we can infer that: 1. Mutation analysis is one of the testing criteria of the error-based technique. 2. Mutation analysis uses information about typical errors, which are modeled by mutant operators in order to generate the mutant programs. 3. Mutation analysis has a mutation score associated with. 4. Mutants can be classified as error-revealing, dead or equivalent ones. 5. Randomly mutation, selective mutation and constrained mutation are alternative approaches for applying mutation analysis. 6. Constrained mutation can be used in the establishment of sufficient mutant operators sets, which represent subsets of mutant operators.

Figure 3. Conceptual model for mutation analysis.

Notice that concept taxonomy relationships were used for representing (1), (4) and (5), while a concept composition relationship was used for representing (6). Domainspecific relationships were adopted in the other cases. It is important to highlight the subjective aspect related with the conceptual modeling activity. In fact, different conceptual models can be developed for the same knowledge, depending on the domain expert and/or designer responsible for its construction. 3.2. Instructional Model Besides concepts, other information items and instructional elements should also be considered as part of the knowledge domain. In the Instructional Model we are interested in defining such additional information, relating them to the concepts previously identified. Notice we are not interested in how the information will be associated, but in what kind of information we can use to develop more significative and motivating educational content. The construction of the instructional model involves two phases: (1) the refinement of the conceptual model; and (2) the definition of the instructional elements. At the first phase we specify what kind of additional information can be incorporated to the concepts already represented in the conceptual model. We called them information items. Several theories and techniques can be referred to support the establishment of information items [Merrill 1983, Michener 1978, Horn 1989]. In our work we adopted the

Component Display Theory (CDT), proposed by Merrill [Merrill 1983]. CDT specifies as information items the following elements: • Concepts: Symbols, events and objects that share characteristics and are identified by the same name. Concepts make up a large portion of language and understanding them is essential to communication. Notice that the main concepts regarding the knowledge domain were already modeled in the conceptual model. • Facts: Logically associated pieces of information. Names, data and events are examples of facts. • Procedures: A set of ordered steps to solve a problem or accomplish a goal. • Principles: Work through either cause-and-effect or relationships. They explain or predict why something happens in a particular way. At the second phase we define the instructional elements, used to complement the information items. Three types of elements are identified [Barbosa and Maldonado 2006a]: • Explanatory elements: Deal with the complementary information used for explaining a given topic – examples, hints, suggestions of study, and so on. They can play a number of different roles depending on their purpose. An example, for instance, can be associated according two distinct perspectives – to motivate the study of the topic, or to illustrate its use. • Exploratory elements: Allow the learner to navigate through the domain, practising concepts and other relevant information. Guided exercises, simulations and hands-on assignments are representative of this category. • Evaluative elements: Allow to assess the learner’s proficiency on the domain. Diagnostic, formative and somative evaluations, in terms of subjective and/or objective questions, are examples of evaluative elements. As a support to construct the instructional model, we adopted the HMBS (Hypertext Model Based on Statecharts) model, proposed by Turine et al [Turine et al. 1997]. In short, HMBS uses the structure and execution semantics of statecharts [Harel 1987] to specify the structural organization and the browsing semantics of hyperdocuments. At the instructional level we focused on the mechanisms for hierarchical decomposition HMBS provides, complementing the idea of hierarchical organization, already explored in the conceptual model. Observe that the notion of hierarchical decomposition can be related to the depth of the learning material to be presented. In order to make HMBS suitable for modeling the instructional aspects, it was extended for representing different knowledge categories. The idea is to allow the model representing information items (concepts, facts, principles and procedures) and instructional elements (explanatory, exploratory and evaluative). According to Turine et al. [Turine et al. 1997], a hyperdocument H in HMBS is defined as a 7-tuple H =< ST, P, m, L, pl, ae, N >, where P represents a finite set of information pages that define the content of the hyperdocument. Each page p ∈ P is conceptually defined by the triple < c, t, Ancp > representing the information content, the title that uniquely identifies the page, and the collection of anchors contained in the page, respectively. The information content c can be expressed in any static (text, graphic or image) or dynamic (audio, video, animation) media [Turine et al. 1997].

To represent different knowledge categories into the HMBS model, we redefined the set of pages P to the triple < C, t, Ancp >, where C represents the finite set of information content, formalized by the quadruple C =< IInf o , EExplor , EExplan , EEval >, where: • IInf o represents the finite set of information items that constitute the content of the page. IInf o is defined by the quadruple IInf o =< Conc, F, P rinc, P roc >, where: – Conc = {conc1 , conc2 , ..., conci }, i ≥ 0 is the finite set of concepts associated with the page; – F = {f1 , f2 , ..., fj }, j ≥ 0 is the finite set of facts associated with the page; – P rinc = {princ1 , princ2 , ..., princk }, k ≥ 0 is the finite set of principles associated with the page; and – P roc = {proc1 , proc2 , ..., procl }, l ≥ 0 is the finite set of procedures associated with the page. • EExplan is the finite set of explanatory elements that constitute the content of the page. EExplan is defined by the tuple EExplan =< Ex, Compl >, where: – Ex = {ex1 , ex2 , ..., exi }, i ≥ 0 is the finite set of examples associated with the page; and – Compl = {compl1 , compl2 , ..., complj }, j ≥ 0 is the finite set of complementary information associated with the page. • EExplor is the finite set of exploratory elements that constitute the content of the page. EExplor is defined by EExplor =< Exerc >, where: – Exer = {exer1 , exer2 , ..., exeri }, i ≥ 0 is the finite set of exercises associated with the page. • EEval is the finite set of evaluative elements that constitute the content of the page. EEval is defined by the triple EEval =< DE, F E, SE >, where: – DE = {de1 , de2 , ..., dei }, i ≥ 0 is the finite set of diagnostic evaluations associated with the page; – F E = {f e1 , f e2 , ..., f ej }, j ≥ 0 is the finite set of formative evaluations associated with the page; and – SE = {se1 , se2 , ..., sek }, k ≥ 0 is the finite set of somative evaluations associated with the page. The extended version of HMBS for representing different knowledge categories is named HMBS/Instructional model. 3.2.1. Guidelines for Constructing the Instructional Model (HMBS/Instructional) To construct the instructional model consider the following guidelines: 1. Identify the relevant additional information (facts, principles, procedures) that can be related to the concepts already represented in the conceptual model. Expressions characterizing names, dates, events, set of steps, phases, deductions, and so on, can help on determining such kind of information. New concepts can also be identified and added to the model at this phase. For instance, two principles can be associated to the concept of mutation analysis: competent programmer hypothesis and coupling effect.

2. For each information item previously identified, determine the instructional elements that can be related to it. (a) Define the explanatory elements. Focus on elements for exemplifying and complementing the information item. For instance, examples of a mutant program can be used to illustrate the concept of mutant. (b) Define the exploratory elements. Focus on elements that allow to explore the knowledge domain. For instance, a guided exercise involving the use of a testing tool in order to apply the mutation analysis criterion. (c) Define the evaluative elements. Focus on elements that allow to evaluate the apprenticeship of the learners. For instance, a somative evaluation, composed by subjective and objective questions regarding the mutation analysis. 3. Organize the information items and the instructional elements according to the statechart’s representation [Turine et al. 1997, Harel 1987]. Focus on defining the AND/OR states (information items and instructional elements are represented as AND/OR states) and the mechanisms for hierarchical decomposition among them. Figure 4 shows the instructional model, constructed according to the HMBS/Instructional, for the mutation analysis criterion. First, we specify the information items. Consider, for instance, the MutationAnalysis state. This state is responsible for representing the main ideas about the mutation analysis criterion, and is divided into four substates (AND states): the concept itself (MA:concept:text), a related fact (MA:fact:text), and two new principles complementing the concept (CompetentProgrammer:principle:text and CouplingEffect:principle:text). The detailed information regarding the mutation analysis criterion is modeled into the MutationAnalysisDetails state, which is divided into other separate substates (OR states): MutantOperator, MutationScore, GeneralMutant, ApproachesGeneral and Application. The MutantOperator state represents the information items regarding a mutant operator: the concept (Operator:concept:text) and a related fact (Operator:fact:text). The MutationScore state is divided in two other substates representing the concept of mutation score (Score:concept:text and Score:concept:figure). Notice that, in this case, both textual and graphical representations are modeled. The GeneralMutant state represents all the information related to the idea of a mutant and is divided into two substates. The Mutant state represents both the concept of a mutant itself (Mutant:concept:text and Mutant:concept:figure) as well as a related fact (Mutant:fact:text). The MutantClassification state categorizes the different types of mutant (DeadMutant:concept:text, EquivalentMutant:concept:text and Error-RevealingMutant:concept:text). Similarly, we have the ApproachesGeneral state representing all the information related to the idea of alternative approaches for applying the mutation analysis criterion. The types of alternative approaches (RandomlyMutation:concept:text,

Figure 4. Instructional model for mutation analysis.

SelectiveMutation:concept:text and ConstrainedMutation) are categorized in the ApproachesClassification state. Besides that, a new fact is added (AlternativeApproaches:fact:text) as part of the model. Furthermore, a procedure detailing the main steps for applying the mutation analysis criterion is also added to the model – the Application

state, which is divided into the ApplicationMA:procedure:text and ApplicationMA:procedure:figure substates. The concepts Error-Based Technique, Error-Based Criterion, Error Guessing, Error Seeding and Perturbation Testing, as well as all the other information items related with them, are represented into the ErrorBasedTechnique state. For the sake of space, this information is not detailed in Figure 4. The same occurs with the concepts Testing Technique and Testing Criterion, which are represented into the TestingTechnique state. Regarding the concept Typical Errors, since it is a more general concept, we decided to represented it as part of other testing unit of study – Basic Concepts. Figures 5 and 6, respectively, illustrate how the different knowledge categories of the MutationAnalysis and the Application states were implemented in the educational module1 .

Figure 5. Slides implementing the different knowledge categories of the MutationAnalysis state.

Next, we determine the instructional elements. In the case of the mutation analysis module, only explanatory and exploratory elements were considered. As 1 The

educational module on the software testing domain was developed in Portuguese.

Figure 6. Slides implementing the different knowledge categories of the Application state.

explanatory elements take, for instance, the states Mutant:example:figure, DeadMutant:example:figure, EquivalentMutant:example:figure and ErrorRevealingMutant:example:figure. These states represent examples related to the concepts of a mutant program (Mut:concept:text), a dead mutant (DeadMutant:concept:text), an equivalent mutant (EquivalentMutant:concept:text) and an error-revealing mutant (ErrorRevealingMutant: concept:text), respectively. Notice that these examples are also related to another explanatory element (IdentifierImplementation: complementary:figure), which provides complementary information for them. In this case, we have an explanatory element complementing other explanatory elements. Actually, these states compose a higher level explanatory element – the IdentifierExample state, which illustrates the main ideas of mutation analysis in the context of the identifier program 2 . In terms of exploratory elements, consider the exercise represented by the state ApplicationMA:exercise:text. Basically, it consists in the application of the mutation analysis criterion to test the factorial program. Explanatory elements, included to provide some help for solving the exercise, are represented 2 The

identifier program classifies a given identifier into valid or non-valid.

by the states FactorialImplementation:complementary: FactorialHintMA:complementary: figure.

figure and

Notice that the required tools for performing the exercise are also modeled. The Coweb:tool state represents a collaborative learning environment (CoWeb [Dieberger and Guzdial 2003]), used as a discussion space among learners and instructors. The ProteumIM:tool state corresponds to a specific testing tool (Proteum [Delamaro et al. 2001]), used for applying the mutation analysis criterion. Figure 7 illustrates the proposed exercise regarding the mutation analysis application implemented in the educational module.

Figure 7. Slides implementing the proposed exercise for mutation analysis application.

3.3. Didactic Model The Didactic Model is responsible for the establishment of prerequisites and sequences of presentation among conceptual and instructional elements. The specification of behavioral aspects can also be explored. Thus, the model can be used to illustrate the way the didactic space is modified while being navigated by the user, i.e., which information become active/deactive when a given path is traversed. Didactic models are also useful to represent dynamic contexts of learning, where the elements of the content are determined according to specific parameters, defined in terms of the characteristics of the course, learners and instructors.

Since HMBS addresses relevant requirements under the didactic perspective (history mechanisms, event propagation and learning contexts definition), it was also adopted in order to construct the didactic model. In addition, by using HMBS we can validate the educational content through the analysis of the subjacent statechart properties [Turine et al. 1997]. As an extension to HMBS at the didactic level, we introduced the idea of open navigation specifications, which provide support for the definition of dynamic contexts of learning. Depending on aspects such as audience, learning goals and course length, distinct ways for presenting and navigating through the same content can be required. An open navigation specification allows representing all sequences of presentation in the same didactic model. So, from a single model, several versions of the same content can be generated according to different pedagogical aspects. Moreover, when an educational module is implemented based on an open navigation specification (open implementation), its navigation paths can be defined by the user (the instructor, in the case of traditional classes, or the learner, in distance environments), in “execution time”. That is, during the presentation, the user is able to dynamically decide which topics should be navigated and in which sequence based on the learning goals, for instance. Aiming at representing open navigation specifications, we extended HMBS with the notion of DD (Dynamically Defined) states. In short, a DD state has the following properties: 1. Only one state can be active at a given time. 2. A DD state does not include the representation of initial state (default), which is dynamically defined by the user, in execution time. 3. All OR substates of a DD state (ORDD ) are totally connected to each other. 4. Hierarchy of DD-superstates – leaving a DD state X (XDD ) can active the ORDD states from the hierarchy of DD-superstates of XDD . Properties (1), (2) and (3) do not require any change in the HMBS syntax and semantics. Actually, the modifications are limited to the model’s graphical notation – for the sake of legibility, transitions and events are implicitly represented. On the other hand, Property (4) requires the following extensions to the HMBS model (and to the subjacent statechart): • Let the hierarchy of superstates of a given state XDD be defined by the sequence: SeqAncestors(XDD ) = ancestorS1 , ancestorS2 , ancestorS3 , ..., ancestorSi such that ancestorSj−1 ∈ ρ(ancestorSj ), j = 1, ..., i − 1. The hierarchy of DD-superstates of XDD is defined by the sequence: SeqAncestorsDD (XDD ) = ancestorS1 , ancestorS2 , ancestorS3 , ..., ancestorSn such that ∀ancestorSk , k = 1, ..., n: ψst (ancestorSk ) = ORDD and ancestorSk−1 ∈ ρ(ancestorSk ), where Function Type ψst : S → {OR, ORDD , AN D} defines the type of each OR state. Both the notion of DD states as well as the hierarchy of DD-superstates help us establishing open navigation specifications since they allow to represent all sequences of presentation in the same didactic model.

(a) DD state X (implicit transitions and events).

(b) internal behavior of X (explicit transitions and events).

Figure 8. Representation of a DD state.

Figure 8(a) illustrates the representation of a DD state X (XDD ). Figure 8(b) shows the internal behavior of X, explicitly representing its transitions and events. The ∗ represents the hierarchy of DD-superstates. notation HDD The extended version of HMBS to support DD states (and open navigation specifications) is named HMBS/Didactic. 3.3.1. Guidelines for Constructing the Didactic Model (HMBS/Didactic) The following guidelines can be considered in order to construct a didactic model: 1. Define the sequences of presentation between the objects represented in the instructional model. (a) Define precedence relationships between the information items. Focus on the items that constitute prerequisites for the other ones. For instance, the concept of mutant can be a prerequisite for teaching/learning the concepts of error-revealing, dead and equivalent mutant. (b) Define didactic relationships between information items and instructional elements. Expressions like complements, exemplifies, illustrates, motivates, exercises and evaluates can help on defining the didactic relationships. For instance, an example of a mutant program can be used to motivate the study of mutants. 2. From the sequences of presentation previously defined, establish the learning contexts for the educational module. The establishment of learning contexts should consider aspects such as learner’s profile, instructor’s preferences, learning goals and course length, among others.

Figure 9 illustrates part of the didactic model3 , constructed according to the HMBS/Didactic, for the mutation analysis criterion. It corresponds to an open navigation specification, in which all possible sequences of presentation between the modeled objects are represented. Consider, for instance, the MutationAnalysisDetails state. By exploring the notion of DD states, the MutationAnalysisDetails substates (ORDD states) – MutantOperator, MutantGeneral, MutationScore, Application and ApproachesGeneral – are all connected to each other by implicit transitions, which are responsible for establishing the navigation paths among them. So, from MutantOperator we can get to the states MutantGeneral, MutationScore, Application and ApproachesGeneral (and vice versa). Similarly, consider the Mutant state. From Mutant we are able to get to MutantClassification (and vice versa). Actually, both states are substates of MutantGeneral (DD state) and, in this sense, they are connected to each other by means of implicit transitions. We can also explore the idea of an hierarchy of DD-superstates. For instance, consider the sequence (MutantGeneral, MutationAnalysisDetails, MutationAnalysisGeneral, ErrorBasedTechnique, TestingTechnique, SoftwareTesting TheoryPractice) as the hierarchy of DD-superstates of the Mutant state. According to this hierarchy, from Mutant we can reach all ORDD states of MutationAnalysisDetails. To define the full set of states we can reach from Mutant, the same analysis should be carried out for all states of the hierarchy of DD-superstates of Mutant. Notice that we cannot get to the states AlternativeApproaches and ApproachesClassification from the Mutant state since ApproachesGeneral does not pertain to the hierarchy of DD-superstates of Mutant. Additionally to the definition of an open navigation specification, definitions of a partially open navigation specification and of a close navigation specification were also established in the scope of the didactic model. Basically, in a partially open navigation specification, while some sequences of presentation can be established in “execution time”, others are previously defined by the domain expert and/or the instructor during the development of the module. Indeed, instead of having just implicit transitions, the idea is to make some of them be explicitly represented in the didactic model. On the other hand, in a close navigation specification all sequences are predefined, that is, only one fixed sequence of presentation is available in the module. In this case, the transitions are explicitly represented. The sequences of presentation derived from partially open navigation specifications and from close navigation specifications represent subsets of the total set of sequences established by an open navigation specification. As highlighted before, a didactic model defined in terms of an open navigation specification can be seen as the basis from which all sequences of presentation are derived. So, by using the didactic model illustrated in Figure 9, several implementations of the same content about mutation analysis can be obtained. Such characteristic is essential to generate differentiated content, whose topics, depth and sequences of presentation are established according to some particular aspects (e.g., course length, pedagogical goals, instructor’s preference, learner’s profile). 3 For

the sake of space, explanatory and exploratory elements were not considered.

Figure 9. Didactic model for mutation analysis: open navigation specification.

Figure 10 illustrates part of the didactic model for mutation analysis constructed by using the idea of a close navigation specification. Notice that all sequences of presentation are predefined. In fact, none of the states represented in the model was specified as a DD-state. Also, all possible transitions between states were explicitly represented. Again, consider the Mutant state. Now, from Mutant we are able to get only two states: DeadMutant and MutationScore. The decision on which kind of specification to use should be based on the users as well as on the expected characteristics of the module. For instance, one strength of open

Figure 10. Didactic model for mutation analysis: close navigation specification.

navigation specifications is the flexibility to navigate through the material according to the feedback and questions of the audience. On the other side, the instructor has to make sure to achieve the objectives of the lessons in order to keep the learners localized. Indeed, while for less experienced instructors a close navigation specification (and implementation) seems to be the better choice, for the most experienced ones, an open navigation specification would be an adequate alternative too.

4. IMA-CID in a Standard Process for Developing Educational Modules As mentioned before, IMA-CID was applied as part of the development process of the educational module for software testing – Software Testing: Theory and Practice. Concepts, facts, principles, procedures, examples and exercises were modeled and implemented as a set of slides, integrated to HTML pages, text documents, learning environments and testing tools. Figure 11 shows the main components of the module, illustrating the integration among them.

Figure 11. Educational Module for Software Testing

The testing module was designed and implemented according to the Standard Process for Educational Modules [Barbosa and Maldonado 2006b]. Actually, similar to software, educational modules also require the establishment of systematic development processes in order to produce reliable, evolvable and quality products. In this sense, we have investigated the standardization of processes for developing educational modules. The standard process is based on the International Standard ISO/IEC 12207, tailored to the context of educational modules by including aspects of content modeling, practices from instructional design, and issues of distributed and cooperative work. The proposed standard establishes a set of processes that can be employed to acquire, supply, develop, deliver, operate, and maintain educational modules. It categorizes the defined processes into three groups. The primary processes deal with the main activities and tasks performed during the life cycle of an educational module. The supporting processes sup-

port other processes and contribute to the success and quality of the development project. The organizational processes are employed by an organization to establish, implement and improve an underlying structure made up of associated life cycle processes and personnel. In terms of structure, the standard process is very similar to ISO/IEC 12207, excepting for the delivery (primary), knowledge management (supporting), and copyright and license (organizational) processes, which were specifically defined for the context of modules production. Aspects of specialization/instantiation have also been explored in order to apply the standard process into specific projects, for different knowledge domains. In the same line as CMMI (Capability Maturity Model Integration) for software development, a maturity model for educational modules – CMMI/Educational – was proposed as a mechanism to support the specialization of the standard process in different maturity levels. More detailed information can be found in [?].

5. Conclusions and Further Work In this tutorial some supporting mechanisms for developing educational modules were discussed and an integrated modeling approach (IMA-CID) was presented. Also, the main points of the application of IMA-CID were illustrated by the development of an educational module for the mutation analysis knowledge domain. As a further work, we intend to focus on the development of educational modules to be applied in non-traditional environments, motivating the transition from lecture-based to active learning. The input of learners in the very early stages of the module development, similarly to the participative approach in software development, is another point to be further investigated. Moreover, we intend to investigate the definition of supporting tools for the IMACID models. In particular, we are interested in automated tools for helping the edition, interpretation and execution of the HMBS/Didactic model, providing mechanisms to simulate and validate executable specifications of the educational content. Tools for automatic content generation, based on the IMA-CID models, should also be explored in future. At the very end, we intend to establish a culture for “open learning materials” so that the use and evolution of them by a broader community would be better motivated and become a reality. The existence of a well-defined process to systematize the development of learning materials and, at the same time, flexible enough to be adaptable to different knowledge domains and development teams, is a relevant issue to be addressed in crossing international, cultural and social borders in order to prepare the learners to be successful in a global market, with diverse groups of people. In spite of the increasing costs to initially develop an educational module based on the ideas discussed herein, the quality factors of the produced materials, such as evolvability, maintainability, reusability, among others, would increase the long-term benefits and decrease the overall costs.

References Barbosa, E. and Maldonado, J. (2006a). An integrated content modeling approach for educational modules. In IFIP 19th World Computer Congress – International Conference on Education for the 21st Century, pages 17–26, Santiago, Chile.

Barbosa, E. and Maldonado, J. (2006b). Towards the establishment of a standard process for developing educational modules. In 36th Annual Frontiers in Education Conference (FIE 2006), San Diego, CA. CD-ROM. Blackboard (2002). Blackboard learning system (release 6): Product overview. White Paper. http://www.blackboard.com. Brotherton, J. A. and Abowd, G. D. (2004). Lessons learned from eClass: Assessing automated capture and access in the classroom. ACM Transactions on Computer-Human Interaction, 11(2):121–155. Delamaro, M. E., Maldonado, J. C., and Mathur, A. P. (2001). Interface mutation: An approach for integration testing. IEEE Transactions on Software Engineering, 27(3):228– 247. DeMillo, R. A., Lipton, R. J., and Sayward, F. G. (1978). Hints on test data selection: Help for the practicing programmer. IEEE Computer, 11(4):34–43. Dieberger, A. and Guzdial, M. (2003). CoWeb – experiences with collaborative web spaces. In From Usenet to CoWebs: Interacting with Social Information Spaces. Springer-Verlag. C. Lueg and D. Fisher (eds.). Goldberg, M. W., Salari, S., and Swoboda, P. (1996). World Wide Web - Course Tool: An environment for building WWW-based courses. Computer Networks and ISDN Systems, 28(7–11):1219 – 1231. Harel, D. (1987). Statecharts: A visual formalism for complex systems. Science of Computer Programming, 8:231–274. Horn, R. E. (1989). Mapping Hypertext. Lexington: Lexington Institute. Merrill, M. D. (1983). Component display theory. In Instructional Design Theories and Models: An Overview of their Current States, Hillsdale, NJ. Lawrence Erlbaum. Michener, E. R. (1978). Understanding understanding mathematics. Cognitive Science, 2(4). Moodle (2007). Moodle project – a free, open source course management system for online learning. http://moodle.org/. Novak, J. D. (1990). Concept mapping: A useful tool for science education. Journal of Research in Science Teaching, 27:937–949. Pimentel, M. G., Ishiguro, Y., Kerimbaev, B., Abowd, G. D., and Guzdial, M. (2001). Supporting long-term educational activities through dynamic web interfaces. Journal Interacting with Computers, 13(3):353–374. Sakai (2007). Sakai project – collaboration and learning environment for education. http://sakaiproject.org/. Turine, M. A. S., Oliveira, M. C. F., and Masiero, P. C. (1997). Designing structured hypertext with HMBS. In VIII International ACM Hypertext Conference (Hypertext 97), pages 241–256, Southampton, UK.