New Trends and Technologies in Computer-Aided Learning for Computer-Aided Design: IFIP International Working Conference: EduTech 2005, Perth, ... and Communication Technology, 192) 0387296425, 9780387296425

"New Trends and Technologies in Computer-Aided Learning for Computer-Aided Design" contains the proceedings fr

122 52 9MB

English Pages 157 [151] Year 2005

Report DMCA / Copyright

DOWNLOAD PDF FILE

Recommend Papers

New Trends and Technologies in Computer-Aided Learning for Computer-Aided Design: IFIP International Working Conference: EduTech 2005, Perth, ... and Communication Technology, 192)
 0387296425, 9780387296425

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
File loading please wait...
Citation preview

NEW TRENDS AND TECHNOLOGIES IN COMPUTER-AIDED LEARNING FOR COMPUTER-AIDED DESIGN

IFIP - The International Federation for Information Processing IFIP was founded in 1960 under the auspices of UNESCO, following the First World Computer Congress held in Paris the previous year. An umbrella organization for societies working in information processing, IFIP's aim is two-fold: to support information processing within its member countries and to encourage technology transfer to developing nations. As its mission statement clearly states, IFIP's mission is to be the leading, truly international, apolitical organization which encourages and assists in the development, exploitation and application of information technology for the benefit of all people. IFIP is a non-profitmaking organization, run almost solely by 2500 volunteers. It operates through a number of technical committees, which organize events and publications. IFIP's events range from an international congress to local seminars, but the most important are: • The IFIP World Computer Congress, held every second year; • Open conferences; • Working conferences. The flagship event is the IFIP World Computer Congress, at which both invited and contributed papers are presented. Contributed papers are rigorously refereed and the rejection rate is high. As with the Congress, participation in the open conferences is open to all and papers may be invited or submitted. Again, submitted papers are stringently refereed. The working conferences are structured differently. They are usually run by a working group and attendance is small and by invitation only. Their purpose is to create an atmosphere conducive to innovation and development. Refereeing is less rigorous and papers are subjected to extensive group discussion. Publications arising from IFIP events vary. The papers presented at the IFIP World Computer Congress and at open conferences are published as conference proceedings, while the results of the working conferences are often published as collections of selected and edited papers. Any national society whose primary activity is in information may apply to become a full member of IFIP, although full membership is restricted to one society per country. Full members are entitled to vote at the annual General Assembly, National societies preferring a less committed involvement may apply for associate or corresponding membership. Associate members enjoy the same benefits as full members, but without voting rights. Corresponding members are not represented in IFIP bodies. Affiliated membership is open to non-national societies, and individual and honorary membership schemes are also offered.

NEW TRENDS AND TECHNOLOGIES IN COMPUTER-AIDED LEARNING FOR COMPUTER-AIDED DESIGN IFIP TC10 Working Conference: EduTech 2005, October 20-21, Perth, Australia

Edited by

Achim Rettberg Paderborn University/ C-LAB Germany

Christophe Bobda University of Erlangen Cermany

^ Springer

Library of Congress Control Number: 2005934279

New Trends and Technologies in Computer-Aided Edited by Achim Rettberg and Christophe Bobda

Learning for Computer-Aided

Design

p. cm. (IFIP International Federation for Information Processing, a Springer Series in Computer Science)

ISSN: 1571-5736/ 1861-2288 (Internet) ISBN-10: 0-387-29642-5 ISBN-13: 9780-387-29642-5 Printed on acid-free paper

Copyright © 2005 by Intemational Federation for Information Processing. All rights reserved. This work may not be translated or copied in whole or in part without the written permission of the publisher (Springer Science+Business Media, Inc., 233 Spring Street, New York, NY 10013, USA), except for brief excerpts in connection with reviews or scholarly analysis. Use in connection with any form of information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed is forbidden. The use in this publication of trade names, trademarks, service marks and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. Printed in the United States of America. 9 8 7 6 5 4 3 2 1 springeronline.com

SPIN 11573296

Contents

Preface Conference Committee 1

vii ix

Learning Environments GLOBALEDU - An Architecture to Support Learning in a Pervasive Computing Environment Debora N. F. Barbosa, Claudio F. R. Geyer and Jorge L. V. Barbosa 1

2

Using DocBook to Aid in the Creation of Learning Content Martinez-Ortiz, L, Moreno-Ger, P., Sancho-Thomas, P. and Fernandez-Manjon, B.

11

A Java Framework to Teach Computer Architecture Ricardo S. Ferreira, Antonio Carlos S. Beck, Luigi Carro, Andre Toledo andAroldo Silva

25

Tools and Application for Education BLUE MACAW: A Didactic Placement Tool Using Simulated Annealing Renato Hentschke, Marcelo Johann and Ricardo Reis

37

Application of Project/Problem-Based Learning in Microelectronics Said Al-Sarawi

49

VI

Test Engineering Education in Europe Laurent Latorre, Yves Bertrand, Michel Robert and Marie-Lise Flottes 3

Education Technologies and Trends Educational Laboratory for the Study of Power Converter through a Web Browser Luis Eguizabal, Alfonso Lago, Luis Rodriguez, Carlos Penalver and Andres Nogueiras

79

Learning Linguistic Concepts Through the Construction of Dictionaries with a Directed AcycHc Graph Shaped Taxonomy A. Vaquero, F. J. Alvarez, andF. Saenz

91

Iterative Method for Identification and Mapping of Competences in Curriculum Construction to Computer Science Luiziana Rezende, Lidia Micaela Segre and Gilda Helena B. Campos 4

63

107

Teaching in the Hardware Design Area An Interactive SystemC Course featuring Real-time Online Compiling and Analysis Oliver A. Pfänder, Christophe Layer, Wolfgang Schlecker and Hans-Jörg Pfleiderer

121

Experiences in Teaching Reconfigurable Computing at Erlangen University Christophe Bobda

133

The Reconfigurable UML Machine Project Group Achim Rettberg, Tim Schattkowsky, Carsten Rust, Wolfgang Müller and Franz Rammig

139

Preface

The EduTech Workshop is an IFIP TC-10 Working Conference that brings together experts to create through presentations and discussions an atmosphere conductive to innovation and development. This year EduTech is a joined event at the VLSI-SoC Conference, which is also an DFIP TC-10 Conference. The conference venue Perth is the capital city of Western Australia. Perth is known as one of the most beautiful cities in the world. This difference between the conference venue and the technological research provides an harmonic atmosphere for the technology transfer within the participants. Computation and communication technologies underpin work and development in many different areas. Among them, Computer-Aided Design of electronic systems and E-Leaming technologies are two areas, which are different but share in fact many concerns. The design of CAD and ELeaming systems already touches on a number of parallels, such as system interoperability, user interfaces, standardization, XML-based formats, reusability aspects (of content or designs), intellectual property rights, etc. Furthermore, the teaching of Design Automation tools and methods is particularly amenable to a distant or blended learning setting, and implies the interconnection of typical CAD tools, such as simulators or synthesis tools, with e-leaming tools. There are many other aspects in which synergy can be found, when using ELeaming technology for teaching and learning technology. This workshop, sponsored by IFIP WG 10.5 Design and Engineering of Electronic Systems in cooperation with IFIP WG 3.6 Distance Education, will explore the interrelationship between these two subjects, where Computer-Aided Design

Vlll

meets Computer-Aided Learning. The topics, which have been chosen for this working conference, are very timely: learning environments, tools and applications for education, education technologies and trends, teaching in the hardware design area. We all hope that this working conference in this beautiful part of the world will be a memorable event to all involved.

Achim Rettberg and Christophe Bobda

IFIP TCIO Working Conference: EduTech 2005, October 20-21,2005, Perth, Australia General Chairs Achim Rettberg Christophe Bobda Program Committee Vassil Alexandrov, University of Reading (United Kingdom) Christophe Bobda, University of Erlangen (Chair, Germany) Oscar Bonilla, BitMover (USA) Donald W. Bouldin, University of Tennessee (USA) Martin Curley, Intel (Ireland) Carlos Delgado Kloos, University Carlos III de Madrid (Spain) Rainer Doemer, University of California at Irvine (USA) Tina Ebey, Pacific Research Center (USA) Baltasar Fernandez Manjon, University Complutense de Madrid (Spain) Anna Grabowska, Gdansk University of Technology (Poland) Reiner Hartenstein, University Kaiserslautem (Germany) Piet Kommers, University Twente (Netherlands) Martin Llamas Nistal, University Vigo (Spain) Iliana Nikolova, University of Sofia (Bulgaria) Abelardo Pardo Sanchez, University Carlos III de Madrid (Spain) Marco Platzner, University Paderborn (Germany) Ricardo Reis, University Federal do Rio Grande do Sul (Brazil) Achim Rettberg, C-LAB (Chair, Germany) Peter Schwarz, Fraunhofer Gesellschaft Dresden (Germany) Organizing Committee Achim Rettberg Sponsoring and Co-Organizing Institution IFIP TC 10, WG 10.5 and WG 3.6

Acknowledgement Special thanks to the authors for their contributions, and for the Program Committee members for their time reviewing the contributions. Last but not least, we would like to thanks the IFIP organization and the organizers of the VLSI-SoC conference, especially Adam Osseiran, for the support in the local organization.

GLOBALEDU - AN ARCHITECTURE TO SUPPORT LEARNING IN A PERVASIVE COMPUTING ENVIRONMENT

Debora N. F. Barbosa^'^, Claudio F. R. Geyer^ and Jorge L. V. Barbosa^

^Computer Science Course - Unilasalle University (UNILASALLE) - Av. Victor Barreto, 2.288 - Canoas -RS- Brazil - n ice(ä.iunilasalle. edu.br:

^ Institute of Informatics - Federal University of Rio Grande do Sul (UFRGS) Av. Bento Gongalves, 9500 - Bloco IV- Porto Alegre - RS - Brazil - s:eyer(ä>inf.ufrs[s.br;

^PIPCA - University of Vale do Rio dos Sinos (UNISINOS) - Av. Unisinos, 950 - Bloco B Sao Leopoldo - RS - Brazil [email protected].

Abstract:

This paper presents a propose for support learning in a pervasive computing environment. It is composed of educational service agents (ESA) and a pervasive personal pedagogical agent (P3A). ESA will support educational applications using the pervasive environment ISAM. Agents will be accessed through P3A, which shall always be with the learner (the agent moves to devices that the learner is using - desktop, cellular phone, handhelds, etc), assisting the process of global learning through the identification and adaptation of the resources in agreement with the learner's educational model composed of the learner model, learner context and learning object model.

Keywords:

Pervasive Learning, Pervasive Personal Pedagogical Agent, Learning Services Agent

2

1.

Debora N. F. Barbosa, Claudio F. R.. Geyer, Jorge L. V. Barbosa

INTRODUCTION

The increasing use of mobile devices (mobile computing), the Internet, and wireless network designs a scenario where computing will be global. The mobility of the user requires new models of applications for computational power spread all over the net, nonresident in a device that has the sporadical capacity of communication, and that stores and executes software. This is the context of pervasive computing^"^. This is a scenario where the user is free to move anywhere, anytime, maintaining the network access and having access to his/her virtual computing environment. The essence is that the user's applications are available in a suitable adapted form, wherever that user goes. This category includes location-aware application, whose behavior is determined by the physical position of the user/device. In mobile computing environments, location has a profound effect. The current location of the user determines its current context; thus, location is an element of the application context. In the global connectivity scenario, new learning and computational environments are essential, because the relationship between teaching and learning changes^. In our point of view, educational resources are distributed in the global network and the learning process connects them. Educational applications will allow all the context of the learner to be connected with the educational context, joining current information (for example, a work of art in a museum that is being visited) with educational objectives (the learner can be studying history of art or a painting). Pervasive Computing is interesting for the development of learning applications because learning can occur anywhere, anytime, with continued computing support. For us, it is a Pervasive Learning perspective. Towards this scenario, some proposals are being developed, for example^""^'^'^"^. In this paper, we describe a learning architecture called GlobalEdu. It is composed of educational service agents (ESA) and a pervasive personal pedagogical agent (P3A). ESA will support educational applications using the pervasive environment ISAM^'^^'^"^. Agents will be accessed through P3A, which shall be always with the learner, assisting the process of global education through the identification and adaptation of the resources in agreement with the learner's educational model composed of the learner model, learner context and learning object model. This paper is organized as follows: Section 2 presents the definitions and standards associated with this work. Section 3 describes our architecture and the pedagogical agent used at this work. Section 4 concludes the paper and presents the plans for future works.

GlobalEdu - An Architecture to Support Learning

2.

BACKGROUND

Mobile learning is fundamentally about increasing learners' capability to physically move their own learning environment with them. Mobile learning is implemented with lightweight devices such as PDA, cellular mobile phones, and so on. Those mobile devices can connect to the Internet with wireless communication technologies, and enable learning at anytime and anywhere. In this situation, however, computers are not embedded in learner's surrounding environment, and they cannot seamlessly and flexibly obtain information about the context of his/her learning. Works such as^'^^'^^ have used mobile learning technology. In pervasive learning, computers can obtain information about the learning context from the learning environment where small devices such as sensors, pads, badges, and so on, are embedded and communicate mutually. A pervasive learning environment can be built either by embedding models of specific environment into dedicated computers, or by building generic capabilities into computers to inquire, detect, explore, and dynamically build models of their environments. However, this makes availability and usefulness of pervasive learning limited and highly localized. Our work does not consider embedded computers in the environment. We consider that environment systems support distributed, mobile, contextaware, adaptative and follow-me learning applications. Thus, we work in a pervasive learning perspective. Considering a pervasive perspective and based on several works, one of the characteristics of learning in this environment is that the daily context of the user can be connected with the local context, joining current information with educational objectives. For our work, local context is the information about persons, relations, places, and resources in the specific location. This information can be understood by P3A and ESA. Pervasive Computing is the scope of ISAM project ^' ^^' ^^ which has been developed by our research group. ISAM explores a programming and communication model allowing the implementation of several of these mobile application types. To develop mobile wide-area applications, we consider that mobile hosts must use the existing and accessible fixed network infi-astructure, and they have to take advantage of the environment such as the Internet. The ISAM application model considers that "the computer" is the whole network. The computing environment (data, device, code, service, resource) is spread in composed cells. Users can move around, having both their applications and virtual environment following them. The adaptive behavior of the application and the decisions of runtime management are defined by the current context where the application's

3

4

Debora N. F. Barbosa, Claudio F. R.. Geyer, Jorge L, V. Barbosa

components are inserted. The ISAM project is a free software and could be accessed at http://www.infufrgs.br/~isam. Several projects were started to investigate the use of web technology, adaptative technical learning, and access to educational servers. Such systems deal with important management issues related to learning courses content, learner stored information, and learning resources in general. The Edutella Project^ provides an RDF-based metadata infrastructure for P2P (Peer-to-Peer) applications exchange the educational resources. Elena^"* is an operational learning services network based on the interoperable communication infrastructure named "smart spaces for learning". A personal learning assistant is a component of a smart space for learning, which helps learners to search and select learning services. Personal learning assistants are also able to recommend learning services based on the learner profile. The SeLeNe (Self e-Leaming Networks)^^ project offers advanced services for the discovery, sharing and collaborative creation of learning resources, as well as a personalized access to such resources. The ISAM environment will be used at the GlobalEdu Project, although other systems that support distributed, mobile, context-aware, adaptative and follow-me applications can be probably used. In our proposal, a pervasive personal pedagogical agent involves the learning application or resources and provides a pervasive vision through an application in ISAM environment. E-Leaming metadata standards constitute formal specifications of the descriptive terms used to semantically annotate educational material of all kinds or learner information. This work follows the model defined by Musa^ proposal, that uses both PAPI^^ and LIP^ standards, learning styles and cognitive styles. These information are extremely important for this work as these styles are the keystone for learning adaptation. More than, this work use a context learning information (see 3.1.3 section). E-Leaming applications are based on the transmission of leaming content across various computing environments and platforms; hence, what has to be specified is a stmcture unit suitable for this interoperation. This "leaming unit" is called a Leaming Object (LO). From the variety of the eLeaming standards proposed from time to time, IEEE LOM standards^^ specifies nine categories for over 70 metadata elements associated with LOs. This work using five category of the IEEE LOM standards: general, life cycle, technical, educational and rights (see 3.1.2 section). For our propose, these category are interesting for knowledge modeling.

GlobalEdu - An Architecture to Support Learning

3.

GLOBALEDU

We propose a pervasive learning architecture called GlobalEdu. It is composed of educational service agents (ESA) and a pervasive personal pedagogical agent (P3A). ESAs will support learning applications using the pervasive environment ISAM. Agents will be accessed through P3A, which shall always be with the learner (the agent moves to devices that the learner is using - desktop, cellular phone, handhelds, etc), assisting the process of global education through the identification and adaptation of the resources in agreement with the learner's educational model composed of the learner model, learner context and learning object model. Figure 1 presents the GlobalEdu architecture. Itarr^ar

IBIHBiliiiii ^^^iiliBiili^

Figure 1. GlobalEdu architecture

3.1

Pervasive Personal Pedagogical Agent (P3A)

The P3A is a pervasive tutor, which is always present, accompanying the learner in the devices used. Its characteristics are: (1) Mobility to the devices accessed by the learner; (2) Communication with the ESA in the pervasive environment; (3) Control of disconnection operating normally in the accompanying of the learner, despite some access restrictions to the ESAs and within the capabilities of the device; (4) Suggestion of access to context information related to the location of the learner (local context) with learning goals. P3A contains local agents (micro-agents) responsible for assisting in the process of educational adaptation. It presents two basic types of activities: a cognitive structure based on beliefs and a reactive structure based on events. The beliefs, considered the knowledge of the learner's

5

6

Dehora N. F. Barbosa, Claudio F. R.. Geyer, Jorge L. V. Barbosa

current state, are handled by the local agents Learner Model, Knowledge and Context and used by the local agent Adaptation in the composition of the production rules, being this formalism used for the reasoning of P3A. Events constitute the stimuli necessary for the reaction to the specific transformations seen during processing, characterized by the messages exchanged internally by the local agents P3A and between them and the ESAs. The tasks of Local P3A agents are: 3.1.1

Learner Model

It is responsible for handling the information about the tutored learner, represented by metadata, assisting the educational adaptation. The metadata Learner Model in this work follows the model suggested by Musa (2004), and some other information. It is assisted by the ESA Learner Model. The category Personal Information contains basic information about the learner so as to identify the learner in the system. Preferences reports the preferences of the learner. The Learner Relations reports the relationships of the learner with other system users. Security deals with security credentials such as: passwords, public and private cryptography keys, used by the learner to access the system. QCL stands out for Qualifications, Certificates, and Licenses. It contains the learner's experiences regarding certain themes. Goal contains the learner's goals. Learner's abilities, experiences and acquired knowledge are in the category Competency. The category Pedagogical Approach comprehends elements from cognitive and learning styles. The cognitive style is an individual aspect that describes the way in which the person usually approaches or responds to a study task, characterizing a predominance in the access to information. Learning style is a collection of individual abilities and preferences that affect the way the person perceives, searches for and processes information. The information of Relations and Competence were included into this work so as to meet the competencies of P3A in the pervasive environment, besides the information referring to the logic contexts (see 3.1.3 section ) accessed by the learner. 3.1.2

Knowledge

It is responsible for managing the Learning Objects (LO) according to the learner model and is supported by the context. It uses standards defined in lEEE/LTSC LOM and is assisted by the ESA Knowledge Management. This work is using five category. The category General provides general information that describe the object. Life Cycle has information that describe the characteristics related to the history and current state of the objects and

GlobalEdu - An Architecture to Support Learning

7

all of those that have affected it during its evolution. The Technical has the technical requirements and characteristics of the object. An important category is Educational, which is responsible for grouping the educational and pedagogical characteristics of the learning object, which are also fundamental for the adaptation process. The Rights has the copyright announcement and the conditions of use of the learning object. 3.1.3

Context

It manages information about the Context (logical and physical). The logical context corresponds to the information about people, events, resources, places and spaces. This information is transferred by the ESA Context Management. The physical context corresponds to the context of interest of the educational resources accessed by the learner, such as network, location, device, educational resource and presence of other P3As in the environment. This information composes the Learner Context. The elements that compose thQ physical context are managed by the Control local agent of P3A and sent to the module local context for the composition of the metadata of Context, according described at table 1. The information about logical and physical context will be used by the module of Adaptation of P3 A for the personalization of the educational process and will compose the metadata that represent the Learner Context Model. This way, it will be possible to infer any alteration in the learner model based on the history of learner contexts. Table J. Context Information Model FisicalContextlnformation

LogicalContextlnformation

Role Network Location EducationalResource Device OtherPSAIdentification File

The information referring to the presence of other P3 As in the context in which the learner is currently presupposes the existence of other learners with the same goals, competencies and preferences whose information the learner may access for contact or not. This information can also be used for the creation of learner groups within the same context.

8 3.1.4

Debora N. F. Barbosa, Claudio F. R.. Geyer, Jorge L. V. Barbosa Adaptation

It characterizes and generates educational information, according to the needs and context in which the learner is, defining the most suitable pedagogical model. It is composed of pedagogical goals and strategies which a LO tends to attend. The pedagogical strategies to be used follow the Learning Styles proposed by Felder-Silverman^. The pedagogical goals of a LO are the competencies to be developed through the study of the object. Also, through the information referring to the logical context, adaptation is responsible for linking the information of the local where the learner is with the learner's educational goals. The ECA rules have used for adaptation propose. 3.1.5

Control and Communication

Control is assisted by the ESA Context Management and is responsible for executing the local procedures to support the physical mobility of the P3A among the several devices used by the learner, as well as perceive the changes of the context elements that integrate the different locations of the learner carrying the same device, characterizing the logical mobility. Communication manages the exchange of external messages sent and received the ESAs of the environment. Upon receiving a message, it is evaluated and directed to the local destination agents.

3.2

Educational Service Agents - ESA

The ESA processes educational services in the context of ISAM pervasive architecture and support the P3A. It requests information or the processing of a certain action from the ESAs, as showed above. The ESAs of GlobalEdu are: (1) Learner Model - it manages the Learner model repository informing and processing information according to the learner tutored by P3A. It establishes the way in which data will be analyzed and information regarding the learner defined; (2) Knowledge Management - it manages the Knowledge Server composed of a repository of learning objects with metadata that describe them; (3) Context Management - it manages context characteristics transmitted by pervasive architecture and by P3A and identifies and manages information regarding the local context in which the learner is; (4) Communication - it manages the external exchange of messages sent and received by the P3A or the environment to the ESAs. Upon receiving a message, it is evaluated and directed to the destination agents.

GlobalEdu - An Architecture to Support Learning

9

All this kind of behavior can be implemented through the ECA rules in order to notify the P3A every time some relevant data is update ou inserted in the repositories.

4.

CONCLUSIONS

This proposal contributed by the using the educational agents and pervasive personal pedagogical agent to implement and improve the pervasive learning proposal. Moreover, the ISAM project is extremely interesting because it supports a stabilized pervasive environment. Differently from other researches^"'*'^'^'^^ the proposal supports the execution of context-aware, distributed, mobile and adaptative educational applications. Our proposal supports global communication and continuous computing. Currently, we are implementing the GlobalEdu proposal and integrated in ISAM environment, aiming the validation of the proposed architecture. It will be based on the creation of the logical (metadata information and LO content) physical environment for pervasive learning at Unilasalle, Ufrgs and Unisinos Universities. This activity will encompass the organization of the physical support to execute pervasive learning applications around the campuses. With this, it will be possible for users to change of context keeping continuous computing.

REFERENCES 1. Augustin, I; et al. ISAM, joining context-awareness and mobility to building pervasive applications. I. Mahgoub and M. Ilyas Ed. Florida. CRC Press, (book chapter published at April, 2004). 2. Chen, Harry; Finin, Tim; Joshi, Anupam. Semantic Web in a Pervasive ContextAware Architecture. Artificial inteligente in Mobile System. In UBICOMP, 2003. October, Seattle, 2003 3. Dagger, D.; Wade, V.; Conlan, O. Towards "anytime, anywhere" Learning: The Role and Realization of Dynamic Terminal Personalization in Adaptive eLeaming. In Ed-Media 2003, World Conference on Educational Multimedia, Hypermedia and Telecommunication. Hawai, 2003. 4. Dolog, P.; et al., M. Personalization in Distributed e-Leaming Environments. WWW2004, May, New York, 2004. ACM 1-58113-912-8/04/0005 5. Felder, R.M and L.K. Silverman. (1998) Learning and Teaching Styles in Engineering Education, In Engineering Education, 78(7), 674 , 1988. 6. lEEE/LTSC Learning Technology standards committee: http://ltsc.icee.org

10

Debora N. F. Barbosa, Claudio F. R.. Geyer, Jorge L. V. Barbosa

7. LIP. Learner Information Package Specification 1.0. 2001. Disponivel em: . Acesso em Mar. 10, 2005. 8. Musa, D.; Palazzo, J. M.O.; (2004) Sharing Learner Information through a Web services based Learning Architecture. In: WEB INFORMATION SYSTEMS MODELING, WISM, 2004, Riga, Latvia. CAiSE Workshops , Riga, 2004. p.122-131. 9. Ogata, Hiroaki, Yano, Yoneo. How Ubiquitous Computing can support language learning. Proc. of KEST, 2003, p. 1-6. 10. PAPI. IEEE P1484.2/d7, 2001. Draft standard for learning technology. Public and Private information para learners. Disponivel em: . 11. Roschelle, J.Roy Pea. A walk on the WILD side: How wireless handhelds may change computer-supported collaborative learning. International Conference on Computer-Supported Collaborative Learning (CSCL-02), Boulder, Colorado, January 7-11,2002. 12. SELENE. Self e-Leaming Networks. 2004. Disponivel em: http://wvvw.dcs.bbk. ac.ul

|]> | Content Aggregation &subdocl; &subdoc2; Aditional coiitent Figure 3. LO aggregation using XML entities. We can use the Entity mechanism of XML as a macro expansion facility to include external content.

At this point, the teacher has done all the work: he/she has implemented his/her instructional design with LOs. With a defined information structure, and a means to edit and maintain their objects, teachers will need to establish and develop methods to deliver the information to the learners, that is to say, to publish the content itself (figure 2, step f)). The power of DocBook is that any and all delivery methods a teacher may choose (PDF, HTML...) can be created from the same information-object repository without major restructuring and rewriting of the information. In addition, DocBook is built in such a way that it can be used to author any kind of document or modular content. This means that it is possible to use it beyond authoring printed books and articles, thus creating reusable sections for a Web site or a series of slides in a slide presentation to be used as guide in the classroom, etc. Finally, there are two stages that imply backwards cycles. A Refine stage may be necessary during the course to modify the aggregation of LOs in order to deal with the learners' real abilities (as opposed to the initially expected abilities). The Evolution stage, as its name suggests, allows the teacher to develop the course further after gathering feedback from the learners or using his/her own experience while teaching the course.

20

3.1

Martinez-Ortiz, /., Moreno-Ger, P., Sancho-Thomas, P., and Femändez-Manjön, B.

Limitations of DocBook and Related Projects

The first problem that may arise using DocBook is its XML syntax. Using XML syntax is not as comfortable as working with word processors, so some training for the content authors is needed together with the cooperation of technicians to support them using XML related tools. It is also possible to make use of graphical tools to minimize the jump between word processors and XML. Another problem is DocBook vocabulary expressiveness. Since we have invested a great effort on XML, we want to maximize the usefulness of XML but DocBook vocabulary may not cover our needs. If this is the case, we can make use of DocBook DTD modularity and extend the vocabulary to cover our project needs. For example, if our project deals with literary and linguistic texts we should consider using the XML vocabulary proposed by the Text Encoding Initiative (Bumard, 1997).

4.

USING DOCBOOK FOR THE CREATION OF IMS COMPLIANT LEARNING CONTENT

In this section, we present our contribution addressing the creation of complex XML files in order to work with the IMS Content Packaging specification and the associated metadata.

4.1

IMS Content Packaging and IEEE LOM Metadata

The IMS Content Packaging Specification (IMS CP, 2004) provides the functionality to describe and package different learning materials (a learning object alone, an individual course or a collection of courses) into an interoperable, distributable package that may be interchanged between LMS, LO repositories or teachers that use authoring tools compliant with this specification. Content Packaging addresses the description, structure, and format of a specific online learning interchange unit called Package Interchange Format (PIF). According to this, a package is formed by a set of physical archives with the contents and a manifest. This manifest is an XML document that reflects comprehensive information about the package, the structure of the contents, their types and their possible organizations. More precisely the manifest contains:

Using DocBook to Aid in the Creation of Learning Content

21



Metadata information about the package: This metainformation follows the Learning Object Metadata (LOM) specification defined by the IEEE LTSC (LOM, 2002). LOM is also used to convey the metadata associated with the other elements in the manifest (resources, organizations, and submanifests). The purpose of metadata annotation is to facihtate the obtainment of accurate search results over LO repositories/databases. • The description of the package's resources: In its simplest form, a resource is associated with a physical archive with learning content. Actually, a resource can be associated with a number of files: A main file and a number of secondary files related to it (Like an HTML document and its images). • The organizations of the resources: They are tree-like structures and their nodes, called items, contain references to resources. Therefore, an organization provides a tree based hierarchical view of the resources of the package (and thus, of its physical files). It should also be noted that a manifest can include several organizations, each one providing an alternative way to organize the contents, and therefore a different view of the package. • The submanifests, A manifest can contain other simpler manifests that in turn exhibit the same structure outlined here.

4.2

Automation task of creation XML files

The problem with this model is that content creators are forced to focus their attention not only on the creation of the content, but also on the creation of LOs, tagging them with metadata and then, finally, the creation of the manifest file. In addition, the author must deal with the complex XML syntax of IMS Content Packaging or use an external tool like Reload Editor (http:// www.reload.ac.uk) for this purpose. However, at this point we can benefit from our investment in XML. We have developed a new module of DocBook XSLT stylesheets. This module not only generates output content (HTML), but also generates the manifest. The resulting manifest has only one organization and its tree-based organization is created using hierarchical content tags (see section 2) as items of the resulting manifest. This means that we map section, glossary and bibliography tags to manifest items. This mapping satisfies our needs, but obviously may not fit the objectives of another project or platform. Again, it is not necessary to modify our DocBook documents. It is only necessary to change the matching rules defined in the XSLT transformation stylesheets to obtain the desired result.

22

Martinez-Ortiz, /., Moreno-Ger, P., Sancho-Thomas, P., and Femändez-Manjön, B,

In addition, DocBook defines tags to embed metadata inside documents. As long as the author provides metadata in DocBook syntax, we turn DocBook metadata tags into their equivalent LOM Metadata tags. As we are conscious that making metadata is a tedious and error prone task, we should automate this task by providing the author with tools that can infer the metadata information using the internal information in the document. For example, if a DocBook document includes mathematical equations made with MathML, we can generate a metadata tag stating that the learner browser should be capable of rendering MathML. In addition, if we use a versioning system such as CVS, we can generate revision history metadata from information retrieved from these kinds of tools. To sum up, after creating a set of LOs using DocBook, we use the technologies and tools associated with XML to facilitate the creation of a PIF archive and its special components, that is to say, a zip file, which includes all the necessary information that must be deployed in a LMS compliant with the IMS Content Packaging specification.

4.3

Profiling and Personalized Content

Profiling is the term used in DocBook to describe conditional text. Conditional text allows us to simultaneously produce more than one version of a document when the versions differ in minor ways. We can see how conditional text is defined by observing the userlevel attribute. This attribute belongs to the set of common attributes for all DocBook tags. DocBook DTD does not define what values are valid for this attribute, so we can define our own vocabulary. A common use is to introduce values describing the level of experience required by a certain section here. Since this is an XML file, it would be very easy to manipulate the file to suit a specific user with a specific level of experience. We could filter out all the sections that are beyond the level of the learner's expertise. Such modifications of XML content do not need to be restricted to content itself. It would be possible to apply a set of different style sheets to a DocBook document in order to adapt it to a variety of learning styles and environments.

Using DocBook to Aid in the Creation of Learning Content

5.

23

CONLUSIONS AND FUTURE WORK

Adopting XML as a preferred document format should drastically reduce our document processing costs and yield greater control over the creation, delivery and appearance of ( ) documents. In addition, adopting DocBook provides a large set of tools that provide document management and processing support not available for HTML or word processor formats. Our future research has to do with improving the automation of tasks, in particular with the generation of JavaScript needed by SCORM based content. Recently the OASIS organization has promoted a new system for document creation and management called Darwin Information Typing Architecture (DITA) as an OASIS Standard. It embeds content reuse into the authoring process by using the concept of topic, and by introducing an authoring model focused on the reuse of information at the topic level. As future work we want to apply this topic-oriented approach to building personalized learning paths (Farrell, 2004) using user preferences and prior knowledge.

ACKNOWLEDGEMENTS The Spanish Committee of Science and Technology (projects TIC20011462 and TIN2004-08367-C02-02) has partially supported this work.

REFERENCES Bumard, L. 1997, Guidelines for Text Encoding and Interchange (C M Sperberg-McQueen) Coombs, J., Renear, A., DeRose S., 1987, Markup Systems and the Future of Scholarly Text Processing (Communications of the ACM,Volume 30 , Issue 11) pp 933-947 Dougherty, D., 1999, The Making Of DocBook DTD (O'Reilly XML.com at http://www.xml.eom/pub/a/l 999/10/docbook/docbook-making.html). Downes, S., 2001, Learning Objects: Resources For Distance Education Worldwide (International Review of Research in Open and Distance Learning. Retrieved April 25, 2005: http://www.irrodl.org/content/v2.1/downes.html) Duval, E., Forte, E., Cardinaels, K., Verhoeven, B., Van Durm, R., Hendrikx, K., Wentland Forte, M., Ebel, N., Macowicz, M., Warkentyne, K., and Haenni, F., 2001, The ARIADNE Knowledge Pool System,Communications of the ACM, May 2001, Vol. 44, Nr. 5.

24

Martinez-Ortiz, /., Moreno-Ger, P,, Sancho-Thomas, P., and Femändez-Manjön, B.

Farrell, R., Liburd, S., Thomas, J., 2004, Dynamic Assembly of Learning Objects (Proceedings of the 13th international World Wide Web conference on Alternate track papers & posters 2004), pp 162-169 Goldfarb, C.F., 1981, A Generalized Approach to Document Markup (Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulation) pp 68-73 IMS CP, IMS Content Packaging Specification vl.L4, 2004 (Retrieved April 19, 2005: http://www.imsproject.org/content/packaging/) Khare, R., Rifkin, A., 1997, XML: a door to automated Web applications (IEEE Internet Computing, IEEE, Volume 1, Issue 4, July-Aug. 1997) pp. 78-87 Koper, E.J.R., 2003, Combining re-usable learning resources and services to pedagogical purposeful units of learning. ( A. Littlejohn (Ed.), Reusing Online Resources: A Sustainable Approach to eLeaming London: Kogan Page.) pp 46-59. McMartin, P., 2004, MERLOT: A Model for User Involvement in Digital Library Design and Implementation (Journal of Digital Information, Volume 5 Issue 3, Article No. 293, 200409-09) Polsani, P., 2003, Use and Abuse of Reusable Learning Objects ( Journal of Digital Information, Volume 3 Issue 4, Article No. 164, 2003-02-19) Stayton, B., 2005, DocBook XSL: The Definitive Guide Third Edition (SageHill Enterprises) LOM, IEEE 1484.12.1-2002 Learning Object vl Metadata Final Draft, 2002, (Retrieved April 18, 2005: http://ltsc.ieee.org/wgl2/files/LOM_1484_12_l_vl_Final_Draft.pdf) Walsh, N. and Muellner, L, 1999, Docbook The Definitive Guide (O'Reilly, Sebastopol, CA, USA). W3C: Worid Wide Web Consortium, 1999, Web Content Accessibility Guidelines 1.0. Retrieved May 1, 2005: http://www.w3.org/ TR/WCAGIO/. W3C: Worid Wide Web Consortium, 2001. Extensible Stylesheet Language (XSL). Retrieved April 19, 2005: http://www.w3.org/Style/TR/xsl/ W3C: World Wide Web Consortium, 2001b, XSL Transformations (XSLT). Retrieved April 19, 2005: http://www.w3.org/Style/TR/xslt/ W3C: Worid Wide Web Consortium, 2004, Extensible Markup Language (XML) (Third Edition). Retrieved April 19, 2005: http://www.w3.org/TR/REC-xml/

A JAVA FRAMEWORK TO TEACH COMPUTER ARCHITECTURE Ricardo S. Ferreira^, Antonio Carlos S. Beck^, Luigi Carro^, Andre Toledo^, Aroldo Silva^ Depto de Informatica, Universidade Federal de Vi?osa 36570-000, Vicosa, Brazil, Phone: +55 31 3899 1761, Fax +55 31 3899 2394 cacau @ dpi. w/v. br Instituto de Informatica, Universidade Federal do Rio Grande do Sul Av. Bento Goncalves, 9500, Porto Alegre, Brazil caco @ inf. ufrgs. br, carro @ inf. ufrgs. br

Abstract:

This work proposes a Java-based framework to teach computer architecture design. Our methodology allows students rapidly to explore many different concepts across multiple research and design domains. Our environment is based on Hades editor/simulator tool by showing how to profite from the Java portability and reusability, open source component behaviour description, and VHDL generation. In addition, we have improved Hades tool by increasing the component library, by adding a power consumption estimation, and by performing program behaviour instrumentation. Our approach have been validated by showing two processor examples. Morevover, we have used real workloads to show simulation performance and flexibility.

Keywords:

Teaching Tool, Computer Architecture, Behavior Description, Java

1.

INTRODUCTION

A digital design could be specified by its behavior and/or structural description. Schematic designs, state diagrams, hardware languages (VHDL,Verilog) or programming languages (C,C++,SystemC) are the most common specifications. There are a wide range of computer aided tools (Bormida et al., 1997; Figueiredo et al, 2001; Reddi et al., 2004) at both graduate and undergraduate teaching levels. (Bormida et al., 1997) shows that interactive tools and exercises are more effective than hypertext and visual animations. In addition, a simple tool is more suitable than a complex CAD one for the student to learn a specific subject (Bormida et al., 1997). Moreover, thanks to the fast technology improvements, a teaching environment should provide a dynamic and incremental structure to handle new architecture models and paradigms.

26

R. S. Ferreira, A. C. S. Beck, L Carro, A. Toledo and A. Silva

Based on these characteristics and constraints, this work proposes a framework to teach computer architecture design by extending a Java-based editor/simulator tool, called Hades (Hendrich, 2000), which have been developed at Hamburg University, since 1998. Our framework uses Java to issue portability, reusability, a design teaching and exploration. Java is used to specify the architecture and Register-level component behavior, to perform the simulation, and to perform program behaviour analysis. Our methodology allows students rapidly to explore many different concepts across multiple research and design domains. Furthermore, as power dissipation is an essential skill for both high performance desktop processor and mobile processors for embedded systems in these days, we also propose an extension to the Hades component library to handle the power consumption issue. In addition, we have improved Hades tool by showing how the student can easily perform a program behavior instrumentation. Our approach was validated by developing three processor examples: Java Microcontroller and PIC microcontroller as a single component in a high level of abstraction, and a Java Microcontroller processor at Resgister Transfer (RT) level. We use real workloads to show simulation performance and flexibility. Section 2 introduces related work and contrasts it with our work. The methodology used is briefly outlined in Section 3. Section 4 illustrates how three practical applications can be modeled by using our environment. Finally, Section 5 exposes the main results and on-going work.

2.

RELATED WORK

The first task when one has to develop a framework is to look around and examine carefully the available tools. Hades tool (Hendrich, 2000) have been chosen because it is simple, portable and dynamic, as a teaching tool must be. Hades is a pure-Java component-based simulator, and includes as main features: an user friendly interface, a discrete-event based simulation, an interactive and batch simulation (no recompilation is needed after changes), and a flexible waveform viewer. Hades is used for modeling and simulating at different design levels, from gate to high architecture levels. In addition, recent work (Marwedel and Sirocic, 2003; Ferreira et al., 2004; Rodrigues and Cardoso, 2005) have shown that Hades-based environment can handle many computer architecture subjects, and still have a good performance and easy interaction with tools and environments. Another Java-based environment is JHDL (Hutchings et al., 1999), which is a structurally based Hardware Description Language (HDL) implemented with Java. Our environment differs from JHDL structural approach, and proposes a behavior and/or structural description.

A Java Framework to Teach Computer Architecture

27

Also, visual(Marwedel and Sirocic, 2003; Uy et al., 2004) and quantitative simulators (Branovic et al., 2004) are available to help students to better understand the theorical concepts. Recently, (Marwedel and Sirocic, 2003) presented a Hades-based tool, called Ravi, to teach the basis of dynamic behavior of processors by using the following examples: microcoded MIPS, pipeline MIPS, the scoreboarding and tomasulo algorithm and multiprocessor protocol. However, Ravi focuses on visualization features, and it is not trivial for the student neither to change a current design nor to create a new one. Although Ravi uses the Hades simulation engine and interface, it uses its own library. This means that Ravi components cannot interact with Hades components and, as a consequence, the components of each library are not interchangeable. The main drawback is that the student can not reuse the rich parametrical RT component library of Hades. Furthermore, if the student would like to add a new forwarding line by adding an extra multiplexer, for instance, all control units must be written. This can be a complex task, depending on the design. Moreover, the source code of Ravi is not available for public use. This way, we propose a new approach by extending the large Hades library and by using an open source approach. This allows the student to rapidly create new design and new components thanks to the environment reusability and object-oriented paradigm. In embedded systems, the power consumption evaluation in early stages of the design flow is fundamental for the search of optimal solutions within the design space. Recently, a cycle-accurate and configurable simulator was presented by (Beck et al, 2003), called as CACO-PS (Cycle-Accurate Configurable Power Simulator). CACO-PS is an ANSI C component-based simulator, and includes as main features: a structural system description at different levels of abstraction, a behavior and power estimation component description, and some other measures (execution time, memory footprint, number of instructions, etc). We propose an enhanced power estimation simulator based on Hades. Our approach presents an object-oriented behavior component and power description, an graphical interface including waveforms, an event-oriented simulator, a VHDL generation, and much more. Although Hades is Java-based, the preliminary results have shown that the simulation time is comparable to CACO-PS performance. Furthermore, Hades signals follows the VHDL standards, and a tri-state bus can be easily modeled. CACO-PS estimates the dynamic power consumption of the system based on the switching activity of the components, limiting the analysis to single bits in the component inputs. Hades can also handle dynamic power consumption estimation during a clock cycle. However, Hades can make the power consumption estimation of the components also in higher levels of abstractions, such as analyzing vector, integers, string or even JPEG images, for example.

28

R. S. Ferreira, A. C. S. Beck, L Carro, A. Toledo and A. Silva

£

Student

Hades Student

Library

Hades

Scripts

Library JAVA

Editor/

!-^

Simulator

-

Strutuctural VHDL

Figure 1.

3.

Instrumentation

J. .

-

I

and Analysis

A Java-based Student Design/Simulator Environment

METHODOLOGY

We propose an interactive methodology, where the student can work in different concepts: architecture visuaUzation and design, simulation environment and hardware event monitoring programs. We also propose a visual and Javabased approach to reduce the time spent by the student to learn our environment, and all concepts are integrated in a unique tool and language. Our approach focuses on component modeling, high level behavior description and monitoring. Moreover, this approach is time-saving because the students do not need a deep understanding of the simulation tool. First, during the begining of the undergradutate course, the student can take advantage of a large component library and basic design available in Hades. The graphical interface and WEB tutorial provide an easy interation to enhance the student understanding. These designs can be at transistor level, gate level, lower and higher architecture level. Then, the students can start to build their own components, by writing few Java source lines thanks to the reuse concept of the object-oriented paradigm. In addition, the simulation can be interactive or managed by student scripts written in Java language. A VHDL script syntaxlike and a quantitative approach are also available. Furthermore, the student can write their own instrumentation tools. Moreover, the student take benefit from Java resources and libraries to analyze and to resume the main results, as well as to avoid large trace files. Finally, the student could create more complex designs and components by reusing the previous work. Different logic and architecture levels can be explored. Even at RT level, a fast simulation performance could be reached when compared against VHDL simulation. In addition, the Java behavior description provides a faster modeling. The environment could also export structural VHDL to commercial tools, as shown in Figure 1. However, a VHDL file for each component should be written or imported from another tool. At gate-level, a VHDL library is al-

A Java Framework to Teach Computer Architecture

29

ready available. The following sections will detail the component modeling, the simulation features, and the architecture and power instrumentation.

Student Library Figure 1 shows the student incremental library development. A new component can be written by only specifying the I/O number, and their types and names. In fact, the student is just extending the component library. Then, the behavior is specified by the evaluate method. A Java library is available to handle bit and bit vector data. The following source code describes the behavior of a n-bit adder/sub which depends on a Select input. The output is scheduled after a delay that can be configured by the user. The evaluate method is called if an event arrives at the input ports A and/or B. The student has only to worry about the development of the component, since the simulator engine is automatically managed by Hades. Every component is an object and will be called dynamically during the simulation. public void evaIuate(Object arg) { /* * C - A + 5ifSelect=0 "^ C — A — B otherwise */ StdLogicVector A = PortA.getValue(); StdLogicVector B =PortB.getValue(); StdLogic 1164 Select = PortSelect.getValue(); if(Select.is.l()) vector = A.sub(B); else vector = A.add(B); double time = simulator.getSimTime() + delay; scheduleOuput(PortC,vector,time);

}

Simulation During the simulation process, the student can interact by using various modes. First, a mouse-driven event can be used to apply a signal, for instance: a virtual keyboard (see Fig. 2), a vector or bit signals (see Fig. 2), or even a graphical interface (e.g.: menu option, action button, scrool bars, see Fig 3). A Java, Jynthon or VHDL-syntax script can automatically controls some or all of the input signals during a simulation process. The simulation can also run in batch mode. A graphical waveform window (see Fig. 4) can be opened to view a subset of signals, or all of them. The simulation trace file can be saved, and the waveform window has browser zoom features. Moreover, the

R. S. Ferreira, A. C. S, Beck, L Carro, A. Toledo and A. Silva

30

J 13-

;«U'-»iK*(

p:^•.^^^^•^ 4 ;j-s^^f i" -^^\i ij ^-

l^'iA^ki'-^^^f^'-^

?

F.t„'*r

i:VVi:

^U\'a4- -I? ALL - J j ANIMALS '. r J MAMMALS 5id PLATYPUS

SieNjflCÄDOS

Categorfds

Significados

Categories del ^nifica4o__^ PIATYFITS"'"'^

0 0 0 ANIMAL

: Padres de la calegoiia; PLATYPUS OVIPAROUS jeRMJNOS EXISTENTES ""'""' ""' TEBMl"""

Aftadir Sirtohimo | Nuevo Teimino i

AfiadirVßase

j

Quilar Tetroino |

Äßadir Comentarb Buscar Terroino

Figure 4. Interface for Monolingual Dictionaries

Learning Linguistic Concepts Through the Construction of Dictionaries with a Directed Acyclic Graph Shaped Taxonomy

>^';MAMIVIALS.

' AisllMALS.

m.

PLATYPUS

H

••

• Opctones

i T r a z a d o del Grafo

I

!il j Ortbgonal

,OV!PAR0US--

o

S Jerarquico

j

Figure 5. Visualization of the DAG-shaped Taxonomy with Multiple Inheritance

H

OVIPAROUS-

PLATYPUS

•H M A M M A L S ;

HALL

Opciones

T r a z a d o d e l Grafo

Ortogonal

N . ANIMALS'

Jerarquico

© I o h^

Figure 6. Subgraph for the Platypus Category

103

104

7.

A. Vaquero, F. J. Alvarez, and F. Saenz

CONCLUSIONS AND FUTURE WORK

From the proposed conceptual model, we have created and tested tools that augment the capabilities of the previously developed ones. With these tools, the semantic relations implicated in simple and multiple inheritance situations can be learned, because the dictionaries that can be constructed are based on a DAG-shaped taxonomy with a single relationship. The dictionaries created with this tools explicitly represent the conceptual knowledge that is normally absent in most electronic dictionaries. With these tools, it is easy to promote team work and collaborative learning. As for future work, first the tools must be installed in the classroom and then test them by creating and querying dictionaries just to be sure that the foreseen pedagogical objectives are fulfilled. Future versions of the tools must include more linguistic concepts that can be useful for the comprehension and mastery of languages. A long-term goal as a consequence of the evolution of this work is the integration of linguistic resources that nowadays are built heterogeneously in several places. Our more ambitious goal is to study, for a given domain, the overlapping phenomenon over multiple relations, beginning with the "IS A" and 'TART OF" ones. Finally, a collaborative methodology may be defined and implemented in our tools.

REFERENCES Ausubel, D.P., 1968, Educational Psychology: A Cognitive View, New York, Holt, Reinhart and Winston. Cabrera, A., 1995, Informatica educativa: La revolucion constructivista, Informatica y Automatica, 28(1). Cuban, L., 1987, Teachers and Machines: The Classroom use of Technology since 1920. Teachers College Press, Columbia University, New York. Erickson, F.J. and Yonk, J.A., 1994, Computer Essentials in Education. The Teaching Tools. McGraw-Hill Book Co. Femandez-Valmayor, A., Lopez-Alonso, C, Arlette, S. and Fernändez-Manjön, B., 1999, The design of a flexible hypermedia system: Integrating an interactive learning paradigm for foreign language text comprehension. International Working Conference on Building Electronic Educational Environments, IFIP, Irvine, California, pp. 51-65. Garcia de Quesada Mercedes, 2001, Estructura defmicional terminografica en el subdominio de la Oncologia Clinica, Estudios de Lingüistica Espafiola. Vol 14. Goldman, S.R., 1996, Reading, writing and learning in hypermedia environments, in: Cognitive Aspects of Electronic Text Processing, H.Van Oostendorp and S. Mul, ed., Ablex Publications, Norwood, NJ. Hodgson, B., 1994, The roles and the needs of the teacher, Proceedings of the working Conference: Integrating Information Technology into Education, IFIP, Barcelona, pp. 2534, October 17-21.

Learning Linguistic Concepts Through the Construction of Dictionaries with a Directed Acyclic Graph Shaped Taxonomy

105

Jacobs, Paul S., 1991, Integrating language and meaning in structured inheritance networks, in: Principles of Semantic Networks: Explorations in the Representation of Knowledge, John F. Sowa, ed., Morgan Kaufman, San Mateo, California. Johnson, D.D. and Pearson, P.D., 1978, Teaching Reading Vocabulary, Holt, Reinhard and Winston, ed., New York. Karat, J., 1997, Evolving the scope of user-centered design, Communications of the ACM, Vol. 40, N. 7, July. Mahesh, K. and Nirenburg, S., 1995, Semantic classification for practical natural language processing. In proceedings of the sixth ASIS SIG/CR classification research workshop: An interdisciplinary meeting, Chicago IL, October, pp 79-94. Meyer, Ingrid et al., 1992, Towards a new generation of terminological resources: An experiment developing a terminological knowledge base. In proceedings of the 14th International Conference on Computational Linguistics, Nantes: pp 956-960. Nakamura, J. and Nagao, M., 1988, Extraction of semantic information from an ordinary English dictionary and its evaluation. In proceedings of the 12^^ International Conference on Computational Linguistics, COLING'88. Budapest, Hungary. 459-464. Norman, K., 1994, Navigating the educational space with HyperCourseware, Hypermedia, Vol. 6, pp. 35-60. Posner, M.I., ed., 1989, Foundations of Cognitive Science. Cambridge, Mass., MIT press. Pressman, R.S., 1997, Software Engineering: A Practitioner's Approach, McGraw-Hill. Quillian, M. R., 1967, Word concepts: A theory and simulation of some basic semantic capabilities, in: Readings in Knowledge Representation, Brachman, R. J. and Levesque, H. J., ed., Morgan Kaufman. Raguenaud, C, 2000, Managing complex taxonomic data in an object oriented database, In proceedings of the EDBT 2000 PhD workshop, March 31-April 1, Konstanz, Germany. Raguenaud, C. and Kennedy, J., 2002, Multiple overlapping classifications: Issues and solutions. 14th International Conference on Scientific and Statistical Database Management (SSDBM'02). Edingburgh, Scotland. Saenz, F. and Vaquero, A., 2002, Towards a development methodology for managing linguistic knowledge bases, in: Research and Development in Intelligent Systems XIX, ISBN: 1-85233-674-9, Springer, Cambridge (United Kingdom), December. Saenz, F. and Vaquero, A., 2005a, Knowledge representation issues and implementation of lexical databases. Second International workshop on UNL, other interlinguas and their applications in the framework of the Conference on Intelligent Text Processing and Computational Linguistics CICLING-2005, Journal Research on Computing Science, ISSN 1665-9899, February. Saenz, F. and Vaquero, A., 2005b, Applying relational database development methodologies to the design of lexical databases. Database Systems 2005, lADIS Virtual Multi Conference on Computer Science and Information Systems (MCCSIS 2005), April. Saenz, F. and Vaquero, A., 2005c, Developing dictionary databases as lexical databases, 8th Conference on Computational Lexicography and Text Research, COMPLEX'2005, pp 180-189, ISBN 963 9074 35 7, June. Silberschatz, A., Korth, H.F. and Sudarshan, S., 2001, Data Base System Concepts, WCB/McGraw-Hill. Smith, B., Ceusters, W., Temmerman, R., 2005, Wüsteria, Accepted for MIE 2005, Geneva, 28-31 August.

106

A. Yaquero, F, J, Alvarez, and F. Saenz

Teusch, P., Chanier, T., Chevalier, Y., Perrin, D., Mangenot, F., Narcy, J.P. and Saint Ferjeux, J., 1996, Environnements interactives pour I'apprentissage en langue etrangere, Hipermedias et Apprentissage, 3rd ed., E. Brouillard, pp. 247-256. Thorndike, R.L., 1973, Reading Comprehension Education in Fifteen Countries, Ed Wiley. Tiedemann, J., 2002, MatsLex: A multilingual lexical database for machine translation. Third International Conference on Language Resources and Evaluation (LREC 2002), Las Palmas, 29-31 May 2002, pp 1909-1912. Tobin, K. and Tippings, D., 1993, Constructivism as a referent for teaching and learning, in: The Practice of Constructivism in Science Education, K.Tobin, Ed., AAAS Press, Washington DC, pp. 3-21. Vaquero, A., Saenz, F. and Barco, A., 1999, Multilingual electronic dictionaries for cross language IR, The Fifth International Conference on Information Systems. Vaquero, A., Saenz, F. and Barco, A., 2000, Computer-based tools for improving the language mastery: Authoring and using electronic dictionaries, V Congreso Iberoamericano de Informätica Educativa, RIBIE 2000, Vifia del Mar, Chile. December. Vaquero, A., Saenz, F. and Barco, A., 2001, Improving the language mastery through responsive environments, in: Computers and Education. Towards an Interconnected Society, M. Ortega, and J. Bravo, Ed, Kluwer, pp. 333-340, ISBN 0-7923-7188-7, October. Vaquero, A., Saenz, F. and Lopez, C , 2003, Herramientas para la creacion de diccionarios monolingiies con objetivos pedagogicos. Challenges 2003 - 5° SHE, Braga (Portugal), September. Wilks, Y.A., Fass, D.C., Quo, CM., McDonald, J.E., Plate, T. and Slator, B.M., 1993, Providing machine tractable dictionary tools, in: Semantics and the Lexicon, Pustejosvky, Ed., Kluwer, pp. 341-402. Wüster, E., 2003, The wording of the world presented graphically and terminologically, (selected and translated by JC Sager), Terminology, 2003;9(2):269-297. Zeltzen, D. and Addison, R. K., 1997, Responsive virtual environments. Communications of the ACM, 40(8), August.

ITERATIVE METHOD FOR IDENTIFICATION AND MAPPING OF COMPETENCES IN CURRICULUM CONSTRUCTION TO COMPUTER SCIENCE

Luiziana Rezende \ Lidia Micaela Segre ^, Gilda Helena B. Campos

^ Doctorate Student at Rio de Janeiro Federal University (UFRJ - COPPE), Head oj Technology Education Institute at Gama Filho University, [email protected]:

Contributing Teacher to the Computer Science and Engineering Systems Doctorate Program (UFRJ - COPPE), [email protected]:

Distance Education Central Coordination - PUC-Rio, [email protected]

Abstract:

This article introduces an approach per competence to curriculum construction in Computer Science and relevant implications, also demonstrating how important is to be famihar with theoretical - conceptual matrixes that the process involves. It proposes an Iterative Method for Identification and Mapping of Competences based on an analysis of pedagogic projects of Computer Science courses already implemented in Universities, which allows us to generate competence matrixes for Universities and Companies. Such matrixes, when crossed, should provide qualitative and quantitative contribution to Universities in constructing and developing pedagogic projects to Computer Science.

Keywords:

Mapping of Competences, Curriculum Construction, Computer Science, Competence Matrixes

108

1.

Luiziana Rezende, Lidia Micaela Segre and Gilda Helena B. Campos

INTRODUCTION

The first concern in this work regards the importance that the word "competences" is assuming in educational and corporate contexts, determining new ways of organizing university curricula, and also new ways of managing corporate knowledge. The word competence assumes different meanings, depending on the historical moment and context of use. Thus, there appears a new dimension that gives a new meaning to the concept of competence, based on changes occurred in the world of work, of management of knowledge connected to development of complex cognitive capacities, i.e., competences related to theoretical dominium. Several authors have focused the approach per competence in educational and organizational field, such as: Kuenzer (2002), Deluiz (2001), Zarifian (2001), Perrenoud (1999), Fleury (1999), Tanguy (1997), Naveira (1995), among others, and such way of approach is being presently proposed as a way of curriculum and pedagogic projects organization, in order to facilitate a graduate's profile specification. In this way, it is possible to design a relation between knowledge and competence that the graduate shall use in his/her professional field, thus joining work market requirements to a wider commitment with social and human development. When defining competence as "a capacity to efficiently act in a given type of situation, supported by knowledge acquired, but without limitation to it", Perrenoud (1999, p.7) clearly explains the integration between competence and knowledge. According to him, "competences mobilize knowledge, placing knowledge in terms of relation and action, which can be complementary to each other". That new requirement brings relevance to a study and research in that area, and it is scientists job to verify and establish existing relations between knowledge and competences, and also implications of such relations in the context of teaching institutions, which propose to develop them to form new professionals, and thus enabling an understanding of the work and education relationship for developing and mobilizing competences. In the current scenario, mainly in technological area, competences vary as a result of changes in technology and quality standards, with a consequent need to diversify, improve, and value a professional formation, which is developed in Universities, in parallel to a theoretical and scientific formation. Hence, the great challenge today for Universities is to provide a good and solid knowledge support to students, based on real experiences of learning, so that they could develop competences proposed in curriculum, and, thus, becoming people duly capable to face professional and social challenge.

Iterative Method for Identification and Mapping of Competences in Curriculum Construction to Computer Science

2.

109

REQUIREMENT TO CONSTRUCT CURRICULUM PROFESSIONAL LEVEL ACCORDING TO COMPUTER SCIENCE COMPETECEN

In the beginning of the new millennium, computer science became an extremely dynamic and active area (ACM/IEEE 2001). Since its early times in the mid of last century, computer science is becoming essential to the contemporary world. Computers are a common part of culture and peoples lives. Moreover, computer science, specifically, keeps evolving in an amazing pace. New technologies are being continuously introduced, and those already existing are already obsolete within a few years. This fact has a profound effect on computer science courses, and affect both their content and pedagogic process. The technological advance occurred last decade increased the importance of several curriculum items, among others: the World Wide Web and its applications; network technologies; especially those based on TCP/IP; multimedia; databank; inter-operations; object-oriented programming; dissemination of use of sophisticate application programming interfaces (API); human-computer interaction; security and cryptography (ACM/IEEE 2001). Computer Science courses are generally included in the category of courses where computer skills are the final purpose, and where those who graduate shall remain inside a scientific state of the art regarding computer science, in such a way that they may keep developing their research activities, thus fostering a scientific development, or applying scientific knowledge, thus promoting a technological development and being capable of designing and building software, also being able to leverage and/or transform the work market with innovative ideas. One can clearly see that a Computer Science Course gives emphasis to provide professional skills to the graduate, and also take care of its inclusion in the work market, in addition to prepare him/her to research and updating through post-graduate courses. The professional competence matter, however, is major, and is present throughout a curriculum construction in that area. Regarding definition of professional competence, we have to consider a global definition of professional skills, i.e., responsibility field, and, after that, we must verify actions and competences that must be developed and mobilized, so that, under the best conditions possible, such professional skills may flourish.

110

Luiziana Rezende, Lidia Micaela Segre and Gilda Helena B. Campos

And what learning models, formations, temporalities, accompaniments, would be necessary so that such required competences could really develop themselves? What relation professional competences can keep with formal educational systems that could be acknowledged and assessed? This is a vital question that has been evaluated worldwide, in terms of education and organization. There is great concern with acquisition and construction of competences in accordance with the working world. However, how can the formal educational system connect knowledge and competence? Alain Savoy ant (apud Zarifian, 2001, p. 176) proposes a distinction between two series of questions, in order to understand what the implications are: a) how to connect, when learning professional skills, educational activities and professional activities, when an alternation between them is only effective - and that should be evident - when similar things are learned in both situations, but through different and complementary ways?; b) how to insert alternation in an institutional scenario so that an individual who is under a learning process - a young person, for example - could really be followed up, without being isolated on his/her own? We must say that a school situation articulates, as all practice does, skills learned based on experience, and not only on direct assimilation of concepts. In these situations, reference, formally-built professional knowledge is important, and may be used as a source of properties related to a given problem situation, which can be simulated so that appropriate execution procedures could be deducted from them. Those questions would be, then, a great difficulty when constructing a curriculum based on construction of competences to a Computer Science Course. The next section focuses implications of adopting a competence model, initially characterizing theoretical-conceptual matrixes that may be reference to a curriculum organization per competence, and, finally, introduces method principles to a competence identification & mapping as proposed herein.

3.

THEORETICAL-CONCEPTUAL MATRIXES FOR A CURRICULUM ORGANIZATION PER COMPETENCE

There are several competence options, and to make an option for one of them is an important step towards a curriculum construction. When such

Iterative Method for Identification and Mapping of Competences in Curriculum Construction to Computer Science

111

decision is not related to the theoretical-conceptual matrix that is underlying to its definition, the expected results may not be fully accomplished, occurring several distortions between the expected graduate profile and the actual graduate profile. According to Deluiz (2001, p. 23), "choices in terms of education are not neutral, and the option for a curriculum model based on competences shall express characteristics and interests of groups and social forces that elaborated them". Several authors have contributed with indications for a curriculum organization per competence, but, if Universities, when constructing pedagogic projects, do not make connections to theoretical-conceptual matrixes, those competences would be deprived of meaning, and may have their practical application severely compromised. Deluiz (2001, p. 19) says that: [...] the different conceptions found in a competence model indicate the existence of several theoretical-conceptual matrixes, which direct identification, definition, and construction of competences, and also a curriculum elaboration and organization. Such matrixes are linked to epistemological models that support them, and that may be identified as: conduction or behavior matrix; function matrix; construction matrix and critical-emancipative matrix; each one of them followed by an inherent analysis of the work process, in order to identify, define, and construct professional competences. The following tables, constructed as from Deluiz studies (2001), summarize those four matrixes, for a comparative view on: a theoreticalconceptual base and fundaments used; objectives of a work process analysis, aiming to identify, define, and construct professional competences; the concept of competence used; the work process analysis object and method, and its relation with a curriculum. Table 1- Conduction and Behavior Matrix Base Skinner's Psychology and Bloom's Pedagogy of Objectives Objective Identify the tasks for each work post, and define a formation curriculum; social efficiency. Competence Ability to reflect the capacity of a person, and to Concept describe what he/she can do or not, and what he/she effectively does, notwithstanding situation or circumstance. Analysis Object Work post and definition of a formation curriculum; and Method Occupational analysis. Relation with Behaviorist feature related to formulation of teaching Curriculum objectives in terms of noticeable conducts and

112 Base

Luiziana Rezende, Lidia Micaela Segre and Gilda Helena B. Campos Skinner's Psychology and Bloom's Pedagogy of Objectives practices; Limitless taxonomies and fragmentation of objectives; Limited curriculum, with narrow professional formation.

Table 2. Functional Matrix Base Functional thinking in Sociology; Methodological-theoretical fundament and Theory of Systems. Objective Originate work competence standards that describe work results to be accomplished in a given work area; corporate/institutional efficiency. Competence Functions and tasks specified in competence Concept standards; subdivision according to units and competence elements. Analysis Object Identification of industry or company strategic and Method function and expected results of labor performance, in order to accomplish with strategic function functional analysis. Relation with Curriculum constructed as from specified functions Curriculum and tasks according to competence standards; learning restricted to activities and not to scientifictechnological fundaments; limited curriculum, with narrow professional formation. Table 3. Constructivist Matrix Base Original from France, being Bertrand Schwartz one of its main representatives. Objective Identify categories to construct an inventory of competences, according to different situations, in order to understand the competence/context relation, as well as relevant construction and evolution processes; categories used in analysis: base culture; scientific, technical, and organizational knowledge; behavioral and relational knowledge; constitute competences that are directed not only to market, but also to personal potentialities and objectives. Competence relation between work activities and incorporated or

Iterative Method for Identification and Mapping of Competences in Curriculum Construction to Computer Science Base Concept Analysis Object and Method

Relation with Curriculum

113

Original from France, being Bertrand Schwartz one of its main representatives. mobilized knowledge. constructive, procedural, collective, and contextual dimension. List of noticeable abilities and competences that a group of individuals already had, and/or were developed during the educational/action process; privilege to the collective, both when analyzing the work and how it is related to context, and individual capacity, inserted in a collective capacity. Enables to transfer investigated competences in a work process through a pedagogic conception; knowledge construction is an individual, subjective, cognitive structures-developing process, according a naturalist perspective of learning, without emphasis on a social role context beyond the work limits during subjective learning; based on an enhanced concept of formation; but that minimizes the social-political dimension.

Table 4. Critical-Emancipative Matrix Base Still under construction, based on dialectic thinking. Objective Give a new significance to competence, in order to meet labor necessities; indicate main directives to: investigate work processes; organize curriculum; and a wide professional education proposition. Competence Various dimensions and various significances, Concept involving aspects ranging from the individual to social-cultural, situational (contextual-organizational), and procedural aspects. construction based on social-cultural and historical parameters. Analysis Object Investigation of competences in the work world and Method considering those that actually experience work situations, i.e., the workers themselves, to identify their formal and informal knowledge, their cultural forms, and the amount of resources they have accumulated (multidimensional learning, transfers, uses) during work activities. Relation with Attempts to transfer competences investigated in Curriculum process and work relations in order to establish, in curriculum, a dialogue between an already formal

114 Base

Luiziana Rezende, Lidia Micaela Segre and Gilda Helena B. Campos

Still under construction, based on dialectic thinking. knowledge and a work experience; acquiring formal knowledge together with acquiring knowledge from work practice: know-how, values, history, and experience. based on a social dimension of knowledge construction associated to professional dimension and social-political dimension. When relating the competence model to its theoretical-conceptual matrix, one can avoid a repetition of reductive educational models, which presently remain in the behavioral tradition of the competence model origin, or that favor only n insertion of graduates in a productive world, with knowledge enough to carry on professional activities only, according to market demands. Moreover, it is possible to dissociate a curriculum according to competences from a non-critical perspective of education, mainly according to processes of social insertion and ability control to be developed, and, as a consequence, of teaching work control and social efficiency support. Another danger that maybe brought by developing a curriculum in dissociation of a theoretical-conceptual matrix is to make graduates liable for a possible failure of insertion or endurance in the productive sector, and also for situation like unemployment, under-employment, independent work, and even exclusion due to their inaptitude to achieve/mobilize market-required competences. Ferreti (FERRETI, 1999 apud ARAÜJO, 2002, p. 9) warns on "[...] a model that works on an assumption that everything in the professional field becomes an individual responsibility". Araujo (2002, p. 9), adds that "such focus may hide the fact that a definition, certification, and valorization of competences is a political and historical matter, as involves different and conflicting interests between capital and work". Hence, it is important to note and avoid that conservative and narrowminded curriculum discourses appear with new critical and innovative appearance, inserted in context again, gaining legitimacy, and essentially serving to a social and productive efficiency point-of-view. Considerations on these respects will give cause the curriculum components to be inserted in course structure, and they shall be of most importance to mobilize/develop competences. Thus, empiric, qualitative studies of cases derived from other wider researches, or from selection of data collected in educational, teaching, and/or evaluation situations, must be performed inserted in a Brazilian context, to verify how the process of curriculum competence organization in Universities is carried out, identify respective implementation conditions, and success and failure situations, as well as potentials and limitations of models and theoretical-conceptual matrixes used.

Iterative Method for Identification and Mapping of Competences in Curriculum Construction to Computer Science

115

It is necessary, in those studies, the use of methods to identify and map competences, both in educational area and in productive sector. The first section focuses some known methods to identify and map competences, and introduces the principles of a method to be developed in this research.

4.

COMPETENCE IDENTIFICATION AND MAPPING METHODS

Processes and methods for competence identification and mapping appeared in a corporate context, and are used by Human Resources to try to identify employees' competences, and map them according to area or level, for labor management. With that purpose, instruments that showed employees' development needs, based on a comparison between levels of competences, required and demonstrated, and the way that people were integrated to the organization. The concept of competence is seen not just as "an inventory of knowledge, abilities, and acts of a given individual, but also the results, production, and deliveries that result of mobilizations under work situations" (OLIVEIRA NETO, 2002, p.6). Under such focus different levels of delivery complexity to competences are defined, and they may be grouped according to centers, such as technological, managerial/administrative, and others. A large portion of the literature reviewed on competence identification and mapping, is dedicated to the relation with methods on how to identify competences and abilities in people and employees, whether in a company or a contracted project, and also the relation with knowledge in specific areas, usually connected to use made by corporate Human Resources departments. Regarding the educational area, no methods were found to identify and map competences required for a curriculum organization. Therefore, a characteristic method was developed for this research, in order to identify and map competences in University's pedagogic projects and in corporations, and relevant principles are introduced during the next section.

5.

ITERATIVE METHOD FOR COMPETENCE IDENTIFICATION AND MAPPING

Due to its innovative character, the competence identification and mapping process within an educational context must include teachers and students participation, which shall be continuous and result in an iterative

116

Luiziana Rezende, Lidia Micaela Segre and Gilda Helena B. Campos

process, i.e., a two-way process that goes under successive refinements until achieving a competence matrix that matches a pedagogical project of the studied institution. The Iterative Method for Competence Identification and Mapping consists of three stages, based on activities described as follows: 1. Construction of a competence matrix according to University; • Identification of competences in a University's pedagogic project; • Mapping competences according to type; personal or subjective, social or communicative, natural or cognitive (technical or methodological); • Designation of grades from 0 to 5 to each competence, according to grade of preponderancy in the development of a curriculum to a Computer Science Course; • Association of competences to curriculum components mobilized during course development. 2. Construction of a competence matrix for companies, according to area of knowledge: • Identification of corporate-required competences; • Mapping competences according to type; personal or subjective, social or communicative, natural or cognitive (technical or methodological); • Designation of grades from 0 to 5 to each competence, according to grade of preponderancy of the subject in the associated knowledge area; • Association of competences to curriculum components mobilized during course development. 3. Crossing the University and Corporation competence matrix with the pedagogic project. Therefore, we can obtain, at the end of the process, two competence matrixes, one for the University and one for the company, which, when crossed with the University pedagogic project, will direct the required analyses to the object of this research.

6.

CONCLUSION

Several Universities have been constructing course projects based on a model of competences, nut without defining what model is that, and which is its basic theoretical-conceptual matrix, and that may bring distortions to the graduate profile we want to shape. Hence, it is necessary to know and think about the theoretical-conceptual matrixes and relevant implications when

Iterative Method for Identification and Mapping of Competences in Curriculum Construction to Computer Science

111

adopting them as base to develop a curriculum for Computer Science courses. The introduction of a notion of competence in curriculum organization causes several changes when compared to the previous one, which focused objectives. An exclusive emphasis on new experiences and work ways in given situations without the support of relevant formal knowledge may lead to failure. However, formal knowledge only is not enough to assume efficacy. It is worthy to note that the introduction of a competence notion in curriculum organization has also affected the professional formation of teachers, who shall play the role of active researchers, involved in the analyzed practices, as a way to understand their entire complexity and intervene to improve them.

Analyze the pedagogical project of Universities and Identify competences

Collect data from teachers and students

Map of University Competences

Analyze the University Competence Map with teachers and students

Collect corporate data (HR)

Map of Company Competences

Analyze competence map with Company (HR)

Cross University and Company competence maps with University oedaaoaic

J Figure 1. Iterative Process for competence identification and mapping

118

Luiziana Rezende, Lidia Micaela Segre and Gilda Helena B. Campos

There are several methods for mapping competences in Human Resources, which may not be fully applied to map competences in curricula for Computer Science courses. The method we propose here intends to: analyze strategies, processes, methods, and resources that Universities presently use, and included in their pedagogic projects, which would enable the development of graduates of Computer Science Courses; map competences proposed in Computer Science Courses' pedagogic projects; map competences required of IT professional within an organizational context of some corporations; compare and cross competence maps generated in an educational context and an organizational context, in order to acquire information to support research conclusion; critical analysis of the relation between Computer Science graduates profile and competences developed/mobilized/required to work as a IT professional; contribute to Universities' construction process e and development of pedagogical projects to Computer Science Courses, through results obtained.

REFERENCES ACM/IEEE. Proposta de curriculo. 2001. Disponivel em:

ACTIVE/COOPERATIVE LEARNING. Disponivel em http://clte.asu.edu/active/. BRASIL. Lei de Diretrizes e Bases da Educagao, Lei no. 9394, de 20 de dezembro de 1996. BRASIL. Certifica^äo de competencias profissionais: discussöes. Brasilia: OIT, TEM/FAT, 1999. BRASIL. Metodologia para o estabelecimento de perfis profissionais. Projeto Estrategico Nacional. "Certificagäo Profissional Baseada em Competencias. Brasilia: 2000. BRASIL. SEMTEC. Ministerio da Educagäo e Secretaria de Educa^äo Media e Tecnolögica. Educagäo profissional: referencias curriculares nacionais da educagäo profissional de nivel superior. Brasilia, 2001. BRASIL/CNE. Resolugäo CEB. n.4, de 8 de dezembro de 1999. Institui as Diretrizes Curriculares Nacionais para a Forma^äo de Professores de Educa^äo Bäsica, em Nivel Superior, Curso de Licenciatura e de Gradua^äo Plena. BRASIL/CNE. Parecer n. 009/2001. Institui as Diretrizes Curriculares Nacionais para a Educagäo Profissional de Nivel Teenico. BURNIER, S. Pedagogia das competencias: conteüdos e metodos. Disponivel em: uni-ulm.de

Abstract:

An interactive tutorial is a very efficient way to teach a rich programming language to a large group of e.g. graduate students in the field of IC design. We are creating a novel online course for SystemC that provides real-time compiling and result analysis functions, using server-side tools exclusively. The tutorial is called SCOTT (SystemC Online Tutorial and Training) and represents an advancement of our previously established interactive course on VHDL. The users following the SCOTT course submit their SystemC code over a standard web browser and get instant feedback from the tutorial system, including error description, context-sensitive hints, proposals for improvement, and simulation results. In this contribution, we will point out the emerging importance of teaching SystemC, discuss the functionality of our interactive tutorial system and illustrate the methodology by practical examples.

Keywords:

Interactive Tutorial, SystemC, Teaching, Compiling and Analysis

1.

INTRODUCTION

Especially with the advent of embedded microprocessors and the ongoing node reduction in transistor technology, the design of electronic systems has become more and more challenging. Also, the importance of coherently simulating complete systems is constantly growing in modem circuit design tasks. The ever-increasing complexity of today's integrated circuits and the decreasing time-to-market have driven EDA (Electronic Design Automation) companies to provide tools supporting both the design and verification of electronic systems. Heterogeneous programming environments and multiple languages - e.g., HDL vs. C/CH-I- - are used for co-design, co-simulation and

122

O. A. Pfänder, C. Layer, W. Schlecker and H.-J. Pfleiderer

CO-verification [1]. As a result, SystemC was bom to ease the integration of heterogenous components onto System-on-Chip (SoC) and to help bridge the verification gap between software developers and hardware designers. Responding to the industrial demand for IC designers with experience in SystemC, graduate students and professionals need to gain SystemC programming skills in an efficient way. Thus, we are developing an interactive tutorial which will allow them to learn this emerging language in detail over the Internet, while going through the course at their own rhythm, with no other need than a standard web browser. This paper is organized as follows: Section 2 points out the rising importance of SystemC, section 3 presents our approach of teaching this language, section 4 describes the technical realization of our interactive tutorial, and section 5 sums up important results and conclusions.

2.

SYSTEMC'S GROWING IMPORTANCE IN SOC DESIGN

The emerging concept of SystemC [2] intends to connect software system design on a high level of abstraction to the hardware development at various levels of detail. It provides a complete and consistent approach for designing a system from the specification down to the implementation, accounting for different domains (hardware, software, analog, digital) and miscellaneous system components such as DSPs (Digital Signal Processors) or FPGAs (Field Programmable Gate Arrays). Moreover, the exchange of system-level IP (Intellectual Property) models for creating executable specifications has become a key element for an efficient SoC design flow. SystemC is based on the computer software language ANSI C++, amended by means to describe the following attributes: [3], [4] and [5] • Concurrency - hardware is inherently parallel • Reactivity - for synchronizing concurrent events • Communication means to exchange data • Hierarchical structures and hardware-oriented data types • A concept of time Systems can be modeled at various levels of abstraction, from the C++ algorithmic model down to RTL (Register Transfer Level). As seen in Figure 1, SystemC provides a single modeling framework to cover a wide range of computational models. SystemC is a stable and interoperable development platform, providing exchange and creation of fast C++ models. It is used to evaluate system performance, explore architectural decisions and to assess the correctness of an implementation via system modeling. To use SystemC, one only needs a standard C++ compiler and the SystemC libraries. The executable specifications resulting from the compilation of the hierarchical design can be stimulated by a test-bench at the top-level, also controlling the simulation time.

123

An Interactive SystemC Course Algorithmic Model

C++/SystemC

Untimed Functional Model (UFM) Timed Functional Model (TFM) Bus Cycle Accurate Model (BCA) > SystemC Clock Cycle Accurate (CCA) Register Transfer Level (RTL) Gate Level

HDL

Figure 1. Refinement steps over the abstraction levels in SystemC follov^ the usual top-down design flow.

Similar to all simulation based approaches, the designer needs to design this test-bench by hand. A system model is usually described and implemented in several SystemC source files. These files then get compiled and linked together with the SystemC libraries by a standard C++ compiler to form the simulation executable. The synthesis capability of SystemC can significantly improve the designer's productivity since synthesis tools are commercially available both for behavioral and RTL. The OSCI (Open SystemC Initiative) [2] is an independent and non-commercial organization consisting of numerous hardware makers, software companies, independent developers and research institutes. The purpose of this pooling is the support of SystemC and its consolidation as an open standard, having the official IEEE standardization as one of the main objectives. The official SystemC Internet home page [2] is the central portal for both contributors and interested party and offers a wealth of continuative information.

3.

EFFICIENT SYSTEMC TEACHING

With SystemC being the defacto industry standard for electronic system modeling, we feel that it is therefore essential for students of electrical engineering and microelectronics. To get in touch with this language is a key addendum to lectures on system design, VLSI (Very Large Scale Integration) or related topics, providing students with valuable additional skills. Teaching an extremely rich programming language like SystemC requires multiple-hour introductory lectures given as presentations or demonstrations. The necessary subsequent practical exercises must be organized at a later point in time, when important objectives might already be forgotten, and on computers where the necessary software tools are installed. Lessons on SystemC must incorporate fundamentals of object-oriented programming such as inheritance, class and interface design etc, as well as hardware design principles

124

O. A. Pfänder, C. Layer, W. Schlecker and K-J. Pfleiderer

including module hierarchy, communication, concurrency and time. This high level of complexity can often overwhelm students. But for graduate students in the field of IC design, applying the appropriate methodologies and getting to know the corresponding tools is crucial. We believe that learning by doing is probably the best way to apprehend a complex programming language like Systeme. Computer based learning is very popular nowadays and it is preferred to books when it leads to an appreciation in the learned knowledge. All kinds of contents are supported and the teaching material can be adapted to individual learning situations. Because of their targeted evolution and their animated features, multimedia techniques shorten the process of gathering information and learning. The individualism aspect of e-leaming is welcome by students who wish or need their own progression speed. Existing SystemC crash courses on the Internet provide only a one-way teaching without interactive functions or direct feedback. They present a basic scheme with a few yes-or-no questions. But there are significant advantages of the interactive teaching method: First, the course participant has the ability to control the speed of the presentation by himself and navigate in the tutorial following his own needs. Secondly, compared to a pure verbal explanation, many learning objectives are easier to understand when they are presented by animated graphics. Finally, the different objectives are divided into smaller parts and come with short related exercises. Our department has collected valuable experience in the the process of realizing an interactive VHDL tutorial in the past few years [6], which incorporates the basic e-leaming ideas and realizes the interactivity approach pointed out above. Now, as an advancement to the well-established and successful VHDL course, we are designing a new tutorial as a practical introduction to the design of integrated systems with SystemC. It has been entitled SCOTT - SystemC Online Tutorial and Training [8]. This tutorial is addressed to students with a background in electronic system design, to people who look to refresh their knowledge in SystemC, and to those who want to complement lectures on system design or simply want to practice this language.

4.

SCOTT'S TECHNICAL REALIZATION

SCOTT is a web-based interactive online tutorial using server-side tools for compilation, simulation and testing of SystemC codes submitted by the user over the Internet. The system's infrastructure is adapted from our department's VHDL tutorial mentioned in the previous section.

125

An Interactive SystemC Course User Side [Browser]

[Interface]

Server Side [Programs]

[Data]

Begin Exercise SCOTT Sources Templates

Parser Completion

Dependent Sources

Compiler SCOTT

Formatting

Yes^

Errors?^

SystemC Library

No

Linker T

^3

Yes^

I

Execution Simulation

Precompiled Object Files Sim. Trace

ßtd. Output Waveforms End Exercise SCOTT

Conversion Waveform Viewers, etc.

Java Applets

^! Database Linking

SystemC LRM Help

Figure 2. Flow of a typical exercise for SCOTT [8]: Communication between learner and our server-sided SystemC environment is enabled by the Internet.

4.1

User Interactivity and Administration

An important part of an interactive tutorial has been foreseen for practical exercises. In the case of SCOTT, two different types of exercises are provided: Some are directly related to the SystemC syntax and are preferably presented

126

O. A. Pfänden C. Layer, W. Schlecker and K-J. Pfleiderer

using Java applets as seen in Figure 3. Other exercises intend to be managed within a complete simulation environment and require the use of a compiler, as seen in Figure 2. The compiler and the other necessary tools are hosted on our server. The user's input - e.g., code fragments being placed in a provided code framework - is acquired through processing HTML (Hyper-Text Markup Language) forms and then fed to the GCC (GNU Compiler Collection) [7]. Thus, the only user-side precondition is an Internet browser with Java and JavaScript enabled. Relevant output messages are being parsed, and the user gets either a success statement or a commented error message, along with suggestions for debugging or improvement. Moreover, a help functionality is constantly provided through a separate database of keywords, non-exhaustively extracted from the SystemC Language Reference Manual [2]. Inputs a b c

3 ^ 1 l[>

Outputs! SCJMODULE(fuil_adder) { sc__signai ppl/ pp2, void add(void){ = a -^ b -^ c; statt carry = ppl 1 pp2 t pp3? = a & b; ppl = b fi, c; pp2 = a & c; pp3 } SC_CTOR(fuli_adder){ SC_METHOD(add); sensitive « a « b «

B pp3;

a

~ '0'

and C = '1'

J

ppl // // // // //

1 2 3 4 5

pp2 pp3 sum

_J "1

r

carry

c

} }; No further statements are aotivated by the change in carry within the full adder module. Both signals, sum and carry, are available at the output. The simulation of the oonourrent statements is finished for the time T. In common simulation toots, the delta-delays are not visible in the signal waveforms.

Hex? ^m

Restart

Figure 3. Example of a Java applet in the learner's web browser explaining simulation delta cycles step by step

To access the tutorial, a user name and a password are required to login. For the initial registration, the users enters his e-mail address to receive the authentication data. Each user's tutorial progress and related data is saved in a dedicated directory on the server. This permits an interruption in the tutorial and a resuming at the same position at a later time. Also, the submitted code does not have to be retyped in the next session. Appropriate security measures are taken to protect the user directories from unauthorized access.

4.2

Exercises with Simulation

As depicted in Figure 2, six steps are required for executing an exercise that includes simulation. First, the user's code entered by the user is parsed

An Interactive Systeme Course

127

in order to reject apparently malicious or syntactically incorrect code. Secondly, the source code is completed with declarations, function implementations and other templates the user is not supposed to modify but required to form a complete and compilable project. Then, this reconstructed source code is compiled into object files according to the definition of the SystemC headers. If all syntax errors have been removed and no problem occurs at the compilation, the linker brings together the compiled code from the user with the user-independent pre-compiled files and the obligatory SystemC library components. This step creates the executable simulation model. The execution of the produced binary file on the server is the next step. The simulation of the design is performed in a local directory with restricted access to the rest of the file system. Finally, additional information - e.g., a wave output window displaying interesting waveforms in VCD (Value Change Dump) format - is shown with the help of a Java applet for the analysis of the produced results on an answer page. At each of these steps, possible errors are formatted in English, analyzed and returned to the user. Then, he can choose either to find and fix the errors by himself or to take a look at the dedicated help page, as seen in the bottom of Figure 2. On the server, the software packages CGI (Common Gateway Interface) and SSI (Server Side Includes) ease the automation of such exercises and allow a rapid evolution of the tutorial contents. SCOTT has begun its development phase and intends to cover all the specifications of SystemC version 2.0 [2]. For license reasons, it currently supports all abstraction levels down to synthesizable RTL but excludes the synthesis step which would require too specific EDA tools. It provides different kinds of exercises and offers the possibility for the users to test their knowledge in each part of the tutorial. Moreover, its navigation system includes not only "back" and "next" keys for pursuing the tutorial, but also a supplementary level of information which may be skipped if no further information on the current topic is requested. Two more options give the ability to consult the on-line help and to return to the chapter overview.

4.3

Exemplary SCOTT Lessons

Figure 4 shows an interactive applet for the visualization of different logic functions. According to the SystemC datatype s c . l o g i c , also the unknown 'X' and high-impedance 'Z' states are featured. The truth table cells' entries can be changed by a mouse click. Once the table has been completed, the "verify" button reveals eventual mistakes by highlighting cells with incorrect values. The second type of applet serves for demonstration purposes without the need for interactive functionality. By using a combination of syntax highlighting, graphical visualization and explanatory text, understanding the matter is

O. A. Pfänder, C. Layer, W. Schlecker and H.-J. Pfleiderer

128 AND

0

1

X

2

0

i 0

0

0

0

11

0

1

X

X i

X1

0

X

z 1

0

X

Choose a function:

Figure 4. Exercise applet for the interactive visualization of different logic functions using the sc_logic datatype. The highlighted cells reveal incorrect truth table entries.

facilitated. An example illustrating the construction of a modular design is given in Figure 5. The course of action is controlled by the buttons in the bottom left comer. !$inclu4« "syseeinc.h" IE include "modul el.ln" jf^includ« "inodul«2.h" SC_HODTJLE (n(y_inodul e)