Data Driven Software Architecture for Game- Based Learning Systems
|
|
- Maurice Dixon
- 7 years ago
- Views:
Transcription
1 Data Driven Software Architecture for Game- Based Learning Systems Marco Antonio Gómez-Martín 1, Pedro Pablo Gómez-Martín 1, Pedro A. González-Calero 1 1 Group for Artificial Intelligence Applications Facultad de Informática de la Universidad Complutense de Madrid C/ Prof. José García Santesmases, s/n Madrid (España) {marcoa,pedrop}@fdi.ucm.es, pedro@sip.ucm.es Abstract Authoring demands in commercial videogames are increasing more and more, due to the creation necessity of first-class graphics, sound effects and music that each level requires. Behaviour and dynamism is, obviously, also needed, what involves a tight work between designers and programmers. On the other hand, educational videogames posses their own requirements, adding to all these authoring tasks the necessity to create the exercises or pedagogical missions which students must afford throughout their learning. In order to soften this situation, we proposed to merge a game level and an exercise. This idea groups both authoring aspects (recreational and educational) and lightens the whole work. Unfortunately, it also adds a new requirement: the content creator must be both a good game designer and a domain expert. In this paper we describe our proposal to solve this second problem, using a layered architecture that breaks this dependency. Keywords Educational videogame architecture, content authoring, exercise and game level integration 1 Introduction A key challenge to move forward the state of the art in game-based learning systems is to facilitate instructional content creation by the domain experts. Several decades of research on computer aided instruction have demonstrated that the expert has to be deeply involved in the content creation process, and that is why so many effort has been put into building authoring tools of all kind. However, using videogame technology to support computer aided instruction poses some new challenges on expert-friendly authoring tools, related to technical and cost issues. Content in videogames takes two different forms: multimedia and gameplay. 3D models of scenarios, objects and characters, 2D textures to dress the models, animations, music and sound effects collectively define the multimedia content of a videogame. Gameplay defines "what the player does". Gameplay designers build the dynamics of the game world by providing a detailed description of what the player can do and what the game has to do in response. As the size and quality of videogames increase to respond to growing player expectations, game development projects are also growing to involve several hundreds people working for an average time of three years, where content creation takes a good bite of the budget. It is easy to argue that serious games provide new opportunities for building engaging and motivating learning environments, although up to now not many empirical studies have been made to demonstrate it. However, given for granted that game-based learning outperforms other computer aided learning technologies in certain domains, it is hard to argue that based on those benefits we are going to get a budget increased by several orders of magnitude. In
2 user model domain and pedagogical knowledge Select concept to to teach Select Exercise Play the exercise Solution Analysis Feedback Virtual Environment Figure 1: Learning by doing in virtual environments. order to be of practical use, videogame technology applied to learning has to become costeffective compared to state of the art computer aided learning technologies. Regarding multimedia content creation, the solutions, which the videogame industry is already pursuing, are procedural content creation and end-user content creation. For example, for the game Spore Maxis is developing procedural animation methods that allow to build new characters and automatically apply predefined animations on them. End-user content creation is becoming more popular in industry, both as a way to promote gamer attachment to the game and to profit from a mass of content creation volunteers. Instructional content creation for game-based learning is a form of gameplay content creation. The instructional designer must provide a detailed description of what the student can do and what the system has to do in response. With current technology the instructional designer should work in pair with a gameplay designer or become one himself. In this paper we present a data driven software architecture for game-based learning systems that supports a clear separation between instructional and gameplay content creation. This architecture is the result of an ongoing effort on several game-based learning systems in the software engineering domain. The rest of the paper runs as follow: next section describes the goals of the architecture. Section 3 describes in detail all the modules in the architecture. Section 4 presents some evaluation, describing the game-base learning systems that use it. Finally, Section 5 presents some conclusions and ends the paper. 2 A New Layer on Data Driven Content Creation The pedagogical model that we support is that of learning-by-doing, as shown in Figure 1. Using knowledge about the student, the domain and teaching strategies, the system selects the next concept to teach to a given user as well as the exercise to be used. The student tries to solve the problem within the virtual environment where he gets feedback from the system as he proceeds. We proposed to join an exercise and a game level as a way to incorporate the learning-by-doing cycle into the game mechanics [Gomez-Martín et. al, 2004]. In this framework, the obvious solution to design exercises in virtual environments, inspired on the way videogames are created, is to build a different game map for every exercise.
3 Figure 2: Two level data driven process A map or level in a videogame is the way a game designer translates a design document into the game virtual environment. The map identifies a number of entities (game objects) to be loaded when the player enters this level. The designer may configure the behaviour of the entities through the particular set of parameters for every entity type or, if greater control is required, through scripts that build complex behaviours from simple ones. The identity, initial location and specialized behaviours for a given map are usually saved in XML files that serve as the data in data-driven game engines. Taking this approach to content creation in game-based learning environments implies that the domain expert has to play the role of a game designer building a map or collaborating with one in that task. Our proposal is to provide a new layer of data, separating the definition of the exercise from the definition of the actual map where that exercise will be executed. Using this approach, an exercise defines a situation that has to be executed in the environment, giving an initial state and possible end states along with particular events that should occur and what to do if certain events are identified. The same map may be used to execute different situations, and the same situations can be represented in a different way depending on the map they are being executed on. A simple example of this idea is a driving tutor where the student always drives through the same streets but different events occur depending on the exercise. This way, we pursue two main benefits: To minimize dependencies between people involved in the creation process, especially between the domain expert and the game designer. To minimize dependencies between domain specific knowledge and the rest of the system, so that: o The same knowledge may be used with different presentation strategies. Given that identifying a successful game play is a crucial point for every game-based application, it is important to minimize the cost of experimenting with different alternatives. o The same presentation can be used to teach different contents, also reducing development cost by allowing defining different exercises on the same map. Figure 2 schematized the process. Using different (and specialized) authoring tools, domain expert and game designer create both an exercises and a game level templates base, in an
4 independent way. In runtime, the application particularizes a level using the information of an exercise. This late binding requires a supporting software architecture that fills the gap between the taught domain and the game, passing educational events and the state defined in the exercise to the videogame environment primitives and vice versa. Next describes our proposal. 3 Two Level Data Driven Architecture The proposed architecture, as showed in Figure 3, is composed of the following sub-systems: Tutoring subsystem: This subsystem is in charge of the pedagogical decisions, communicating with the rest of the system through the Communication module that connects to the Logical view of the world. Modules in the tutoring subsystem decide what exercise to use for a given student and when and how give feedback during the interaction. Logical view of the world: This module provides a high level description of the state of the virtual environment including those aspects that are relevant to the tutoring subsystem. Entities: Dynamic objects in the virtual environment are represented as entities that serve to connect the representation of the object in the virtual environment with the specification of its behaviour. Application engine: This subsystem is responsible for executing the interaction with the user, providing graphics, sound and physics for the 3D virtual environment. Next subsections describe in detail every module. Figure 3: Two level data driven architecture
5 3.1 Tutoring subsystem This subsystem is the core of the Intelligent Tutoring System (ITS) and is in charge of the pedagogical decisions. It uses the classic ITS architecture first presented by [Wenger, 1987], though depending on the complexity of the system, it should be relaxed to a simpler structure or promoted to a more sophisticated one. The relevant aspects from the main architecture point of view are: The tutoring subsystem has access to the student profile that is selected when the application starts. The module has also access to the exercise. In fact, the ITS selects it according to the student knowledge. It has a communication module that is the only contact with the external world. Through this link, the tutoring subsystem gets information about the progress on the exercise resolution, and other student information. The ITS may alter the virtual environment accordingly, for example providing some explanation. The basic actions that this module may perform in the virtual environment are then translated by the logical view depending on the actual representation of the environment. 3.2 Logical view This module stores the high level state of the learning system, and it is responsible of its behaviour. Two main aspects are under the control of the logical view: World dynamics: There may be a part of the state of the world that is not dependent on the exercise being executed but is governed by some rules that always apply within that domain. For example, in a system that simulates the working of an engine there are certain rules that specify how the state of the engine evolves as inputs are received. The tutoring subsystem may want to access to that part of the state but will not change the rules of the world. Exercise dependent state: This is the part of the state in the virtual world whose dynamics are determined by the exercise being executed. It has to be manipulated from the tutoring subsystem, including the behaviour of other avatars in the map as well as the monitoring of the student actions and decisions on how to interact with him. When the tutoring subsystem loads a new exercise, it informs to this module that initializes the world dynamics and exercise dependent state accordingly with it. During the exercise resolution, the logical view receives the relevant events from the objects in the environment, and updates its state. It also receives actions form the communication module of the tutoring subsystem. Some of them will require performing operations in the virtual world. In that case, the module translates them in primitive operations to be sent to the entities in the module above. 3.3 Game objects This module is responsible for the behaviour of the dynamic objects in the virtual world. Using videogame terminology, these objects are called game objects or entities, and may be seen as self-contained pieces of logical interactive content [Llopis, 2005]. In our context, these entities may be grouped into three different categories: Objects that are not relevant to the learning goals: They are fully defined as entities and can be reused in different learning environments. Some examples are doors, switches and elevators.
6 Objects that represent the world state relevant to the learning goals: They are governed by exercise independent dynamics, and get automatically their behaviour from the logical view through some automatic updating mechanism. One example of these entities is the object which represents the engine that is simulated by the world dynamics in the logical view. Objects that have exercise dependent dynamics: These objects are not fully defined in the module but have just their low level behaviour represented within it. They provide a set of high level perceptors and effectors for the logical view to control them. Game objects are created by the application engine using the map file. This file contains the list of entities that form the virtual environment. In the creation process, the game objects get their initial state from the data store in the file and are reconfigured using the state of the logical view, which has previously set according the current exercise. 3.4 Application engine The last module of the architecture is in charge of the lower level tasks, and is similar to the so-called game engine of videogames. We locate here the graphics and physics engine, the module that is able to play music and sounds, the layer that gets the state of the input devices, and the network controller. The application engine is usually created using external libraries (also known as components-off-the-self or COTS). The application engine is able to load the map files and start the creation of the game objects. Entities will then use all these subsystems as desire. For example, some entities will use the graphics and physics engine while others will only use the sound engine. 4 Evaluation JV 2 M 1 JV 2 M 2 Figure 4: Two different applications using the proposed architecture The architecture described in the previous section has been used in several game-based learning applications, changing different pieces in the process. In particular, we have used it to develop two versions of JV 2 M and one version of ViRPlay. JV 2 M [Gomez-Martín et. al, 2006a; 2006b] is a tutoring system aimed at teaching how to compile Java into the language of the Java Virtual Machine [Lindholm, Yellin, 1999] and, at the same time, promotes a better understanding of the underlying mechanisms of objectoriented programming. We have developed two different versions of the system (see Figure 4) with crucial differences between them such us the game play.
7 On the other hand, VirPlay [Jiménez-Diaz et. al., 2005] is a tool to understand the interactions in Java programs by means of role-play simulations in a virtual 3D environment. The tool follows an approach that mixes software visualization with an active learning task, such as role-play. Application engine Prototype JV 2 M 1 JV 2 M 2 ViRPlay WildMagic + GLUT Nebula 1 Nebula 2 Nebula 1 Gameplay Graphic adventure Graphic adventure Action game Graphic adventure Educational content - JVM JVM Java interaction Map files Hard-coded bsp (Half-Life 1) XML bsp (Half-Life 1) Animated models md3 (Quake 3) mdl (Half-Life 1) n2 (Nebula 2) mdl (Half-Life 1) Table 1: Different instances of our architecture. All these applications together with a preliminary version of JV 2 M gave us these variations (see Table 1): Application engine: o Preliminary version of JV 2 M used WildMagic as graphics engine that render over OpenGL and used GLUT to get the input from the user. The graphics engine was extended to support Quake3 animated models to represents virtual characters. o First version of JV 2 M and ViRPlay used Nebula 1 as game engine. This game engine provides us with the graphics engine and user input management. Both applications use the Half-Life map file format to store the virtual environment information. Nebula 1 was completed with the support of the animated models of the same game to being able to represents avatars in the environment. o The application engine of the second version of JV 2 M was rewritten to use Nebula 2 as game engine. We also changed the way the maps are store from Half-Life files to XML, and the animated models, that are now saved using a proprietary format of Nebula 2. Gameplay: though the content of both versions of JV 2 M is the same (compiling Java to the Java Virtual Machine), the gameplay is radically different: o First version is clearly inspired by graphical adventures such us Grim Fandango and Escape from Monkey Island from LucasArts. The actions the students may perform over the environment are look, take, use and use with. o The last version recalls action games. Student carries a weapon and she has to get rid of enemies and get resources to finish the exercise. Content: the architecture has been used in two different educational contexts. While JV 2 M teaches the Java Virtual Machine internals and how to compile Java code to it, ViRPlay uses role-play simulations to explain how different Java objects interacts in a design pattern [Gamma et. al, 1995]
8 5 Conclusions Content authoring is one of the hardest and time consuming tasks when developing commercial videogames. Players are used to near film-quality games, which require more and more production time. When videogames are enriched with educational content, the creation work is increased with the necessity of exercises which probe that the student (gamer) is correctly learning the subject. A natural approach is to merge each game level with an exercise, in such a way that a learning episode is created at the same time that a level. Unfortunately, this also forces that the person who builds the level must know the taught domain. And the authoring tools must cover both educational and game requirements. Our proposal breaks this dependency with a two level data driven architecture. Domain experts create exercises in a game-independent way, and game designers create game level templates without concrete exercises in mind. Authoring tools are specialized in each aspect of the creation. When the educational game launches, both layers are procedurally joined in run-time, adapting the game level template in accordance with the exercise. To support this process, and let the system to adapt the student knowledge, different software modules are needed. The two layered data-driven model is in this way implemented using an architecture were educational and videogame aspects are enclosed in independent components, that are only in contact through an intermediate module that maps the high level (domain specific) actions in the virtual world primitives, and vice versa. Acknowledgement This work has been supported by the Spanish Committee of Education and Science project TIN C03-03 and it has been partially supported by the Comunidad de Madrid Education Council and Complutense University of Madrid (consolidated research group ). References E. Gamma, R. Helm, R. Johnson, J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Profesional, M. A. Gómez-Martín, P. P. Gómez-Martín, and P. A. González-Calero. Game-Driven Intelligent Tutoring Systems. Entertainment Computing (ICEC 2004), 3 rd International Conference, pp Eindhoven, The Netherlands, Springer, M. A. Gómez-Martín, P. P. Gómez-Martín, and P. A. González-Calero. Dynamic binding is the name of the game. Entertainment Computing (ICEC 2006), 5 th International Conference, pp Cambridge, UK. Springer, 2006a. M. A. Gómez-Martín, P. P. Gómez-Martín, P. Palmier-Campos, and P. A. González-Calero. Not yet another visualization tool: Learning compilers for fun. Proceedings del 8th International Symposium on Computers in Education, SIIE'06, pp León, Spain, 2006b. G. Jiménez-Díaz, M. Gómez-Albarrán, M. A. Gómez Martín and P. A. González-Calero. ViRPlay: Playing Roles to Understand Dynamic Behavior. 9th Workshop on Pedagogies and Tools for the Teaching and Learning of Object Oriented Concepts, at 19th European Conference on Object Oriented Programming, T. Lindholm and F. Yellin. The Java Virtual Machine Specification. 2 nd Edition. Addison-Wesley, Oxford, 1999 N. Llopis. Introduction to Game Development. Chapter: Game Architecture. Charles River Media, E. Wenger. Artificial Intelligence and Tutoring Systems: Computational and Cognitive Approaches to the Communication of Knowledge. Morgan Kaufman, 1987.
Game Design From Concepts To Implementation
Game Design From Concepts To Implementation Overview of a Game Engine What is a Game Engine? (Really) Technical description of game: A Soft real-time interactive agent-based computer simulation A game
More informationManage Software Development in LabVIEW with Professional Tools
Manage Software Development in LabVIEW with Professional Tools Introduction For many years, National Instruments LabVIEW software has been known as an easy-to-use development tool for building data acquisition
More informationAutomatic Gameplay Testing for Message Passing Architectures
Automatic Gameplay Testing for Message Passing Architectures Jennifer Hernández Bécares, Luis Costero Valero and Pedro Pablo Gómez Martín Facultad de Informática, Universidad Complutense de Madrid. 28040
More informationGenericServ, a Generic Server for Web Application Development
EurAsia-ICT 2002, Shiraz-Iran, 29-31 Oct. GenericServ, a Generic Server for Web Application Development Samar TAWBI PHD student tawbi@irit.fr Bilal CHEBARO Assistant professor bchebaro@ul.edu.lb Abstract
More informationReusable Knowledge-based Components for Building Software. Applications: A Knowledge Modelling Approach
Reusable Knowledge-based Components for Building Software Applications: A Knowledge Modelling Approach Martin Molina, Jose L. Sierra, Jose Cuena Department of Artificial Intelligence, Technical University
More informationAN INTELLIGENT TUTORING SYSTEM FOR LEARNING DESIGN PATTERNS
AN INTELLIGENT TUTORING SYSTEM FOR LEARNING DESIGN PATTERNS ZORAN JEREMIĆ, VLADAN DEVEDŽIĆ, DRAGAN GAŠEVIĆ FON School of Business Administration, University of Belgrade Jove Ilića 154, POB 52, 11000 Belgrade,
More informationProduction and Maintenance of Content-Intensive Videogames: A Document-Oriented Approach
1 Production and Maintenance of Content-Intensive s: A Document-Oriented Approach Iván Martínez-Ortiz #, Pablo Moreno-Ger *, José Luis Sierra *, Baltasar Fernández-Manjón * (#) Centro de Estudios Superiores
More informationXFlash A Web Application Design Framework with Model-Driven Methodology
International Journal of u- and e- Service, Science and Technology 47 XFlash A Web Application Design Framework with Model-Driven Methodology Ronnie Cheung Hong Kong Polytechnic University, Hong Kong SAR,
More informationEvaluating OO-CASE tools: OO research meets practice
Evaluating OO-CASE tools: OO research meets practice Danny Greefhorst, Matthijs Maat, Rob Maijers {greefhorst, maat, maijers}@serc.nl Software Engineering Research Centre - SERC PO Box 424 3500 AK Utrecht
More informationImproving the Performance of a Computer-Controlled Player in a Maze Chase Game using Evolutionary Programming on a Finite-State Machine
Improving the Performance of a Computer-Controlled Player in a Maze Chase Game using Evolutionary Programming on a Finite-State Machine Maximiliano Miranda and Federico Peinado Departamento de Ingeniería
More informationThe Multi-Agent System of Accounting
Education in Accounting Using an Interactive System Bogdan Pătruţ Faculty of Sciences, Vasile Alecsandri University of Bacău, Romania bogdan@edusoft.ro Abstract This paper represents a summary of a research
More informationARCHITECTURAL DESIGN OF MODERN WEB APPLICATIONS
ARCHITECTURAL DESIGN OF MODERN WEB APPLICATIONS Lech MADEYSKI *, Michał STOCHMIAŁEK Abstract. Architectural design is about decisions which influence characteristics of arising system e.g. maintainability
More informationDynamic Adaptability of Services in Enterprise JavaBeans Architecture
1. Introduction Dynamic Adaptability of Services in Enterprise JavaBeans Architecture Zahi Jarir *, Pierre-Charles David **, Thomas Ledoux ** zahijarir@ucam.ac.ma, {pcdavid, ledoux}@emn.fr (*) Faculté
More informationName of pattern types 1 Process control patterns 2 Logic architectural patterns 3 Organizational patterns 4 Analytic patterns 5 Design patterns 6
The Researches on Unified Pattern of Information System Deng Zhonghua,Guo Liang,Xia Yanping School of Information Management, Wuhan University Wuhan, Hubei, China 430072 Abstract: This paper discusses
More informationRun-time Variability Issues in Software Product Lines
Run-time Variability Issues in Software Product Lines Alexandre Bragança 1 and Ricardo J. Machado 2 1 Dep. I&D, I2S Informática Sistemas e Serviços SA, Porto, Portugal, alexandre.braganca@i2s.pt 2 Dep.
More informationLanguage-Driven, Technology-Enhanced Instructional Systems Design
Language-Driven, Technology-Enhanced Instructional s Design Iván Martínez-Ortiz, José-Luis Sierra, Baltasar Fernández-Manjón Fac. Informática. Universidad Complutense de Madrid C/ Prof. José García Santesmases
More informationFourth generation techniques (4GT)
Fourth generation techniques (4GT) The term fourth generation techniques (4GT) encompasses a broad array of software tools that have one thing in common. Each enables the software engineer to specify some
More informationUtilizing Domain-Specific Modelling for Software Testing
Utilizing Domain-Specific Modelling for Software Testing Olli-Pekka Puolitaival, Teemu Kanstrén VTT Technical Research Centre of Finland Oulu, Finland {olli-pekka.puolitaival, teemu.kanstren}@vtt.fi Abstract
More informationMIRACLE at VideoCLEF 2008: Classification of Multilingual Speech Transcripts
MIRACLE at VideoCLEF 2008: Classification of Multilingual Speech Transcripts Julio Villena-Román 1,3, Sara Lana-Serrano 2,3 1 Universidad Carlos III de Madrid 2 Universidad Politécnica de Madrid 3 DAEDALUS
More informationInformation systems modelling UML and service description languages
Internet Engineering Tomasz Babczyński, Zofia Kruczkiewicz Tomasz Kubik Information systems modelling UML and service description languages Student Contact Hours: 25.02.2015- Location: 325 C3 room 25.03.2015:
More informationInformation Technology Career Field Pathways and Course Structure
Information Technology Career Field Pathways and Course Structure Courses in Information Support and Services (N0) Computer Hardware 2 145025 Computer Software 145030 Networking 2 145035 Network Operating
More informationQuotes from Object-Oriented Software Construction
Quotes from Object-Oriented Software Construction Bertrand Meyer Prentice-Hall, 1988 Preface, p. xiv We study the object-oriented approach as a set of principles, methods and tools which can be instrumental
More informationNEW CHALLENGES IN COLLABORATIVE VIRTUAL FACTORY DESIGN
02 NEW CHALLENGES IN COLLABORATIVE VIRTUAL FACTORY DESIGN Stefano Mottura, Giampaolo Viganò, Luca Greci, Marco Sacco Emanuele Carpanzano Institute of Industrial Technologies and Automation National Research
More informationMonitoring Infrastructure (MIS) Software Architecture Document. Version 1.1
Monitoring Infrastructure (MIS) Software Architecture Document Version 1.1 Revision History Date Version Description Author 28-9-2004 1.0 Created Peter Fennema 8-10-2004 1.1 Processed review comments Peter
More informationAerospace Software Engineering
16.35 Aerospace Software Engineering Software Architecture The 4+1 view Patterns Prof. Kristina Lundqvist Dept. of Aero/Astro, MIT Why Care About Software Architecture? An architecture provides a vehicle
More informationCAD and Creativity. Contents
CAD and Creativity K C Hui Department of Automation and Computer- Aided Engineering Contents Various aspects of CAD CAD training in the university and the industry Conveying fundamental concepts in CAD
More informationUsability-Improving Mobile Application Development Patterns
Usability-Improving Mobile Application Development Patterns Bettina Biel, Volker Gruhn University of Duisburg-Essen paluno, The Ruhr Institute for Software Technology Essen, Germany [bettina.biel,volker.gruhn]@paluno.uni-due.de
More informationProgram Visualization for Programming Education Case of Jeliot 3
Program Visualization for Programming Education Case of Jeliot 3 Roman Bednarik, Andrés Moreno, Niko Myller Department of Computer Science University of Joensuu firstname.lastname@cs.joensuu.fi Abstract:
More informationExtensible multi-platform educational game framework
Extensible multi-platform educational game framework Eugenio J. Marchiori 1, Ángel Serrano 1, Javier Torrente 1, Iván Martínez-Ortiz 1, Baltasar Fernández-Manjón 1,2 1 Facultad de Informática, Universidad
More informationImproving Decision Making in Software Product Lines Product Plan Management
Improving Decision Making in Software Product Lines Product Plan Management Pablo Trinidad, David Benavides, and Antonio Ruiz-Cortés Dpto. de Lenguajes y Sistemas Informáticos University of Seville Av.
More informationAnalyzing lifelong learning student behavior in a progressive degree
Analyzing lifelong learning student behavior in a progressive degree Ana-Elena Guerrero-Roldán, Enric Mor, Julià Minguillón Universitat Oberta de Catalunya Barcelona, Spain {aguerreror, emor, jminguillona}@uoc.edu
More informationTechnical document. Group 3 Mate Tomin Pieter van Ede Raymond Weijermars Daniel Faustino Stefan Hospes
Technical document Group 3 Mate Tomin Pieter van Ede Raymond Weijermars Daniel Faustino Stefan Hospes Table of contents 1) Introduction... 2 2) System setup... 2 3) Implementation overview... 4 3.1) Client-side...
More informationTool Support for Model Checking of Web application designs *
Tool Support for Model Checking of Web application designs * Marco Brambilla 1, Jordi Cabot 2 and Nathalie Moreno 3 1 Dipartimento di Elettronica e Informazione, Politecnico di Milano Piazza L. Da Vinci,
More informationAn Individualized Web-based Algebra Tutor Based on Dynamic Deep Model Tracing
An Individualized Web-based Algebra Tutor Based on Dynamic Deep Model Tracing Dimitrios Sklavakis 1 and Ioannis Refanidis 1 1 University of Macedonia, Department of Applied Informatics, Egnatia 156, P.O.
More informationIssues in Android on Mobile Platform and Their Resolution
Issues in Android on Mobile Platform and Their Resolution 1 Monika A. Ganpate, 2 Dipika R. Shinde 1, 2 Institute of Management and Computer Studies, Thane (West), India, University of Mumbai, India Abstract:
More informationCURRICULUM VITAE EDUCATION:
CURRICULUM VITAE Jose Antonio Lozano Computer Science and Software Development / Game and Simulation Programming Program Chair 1902 N. Loop 499 Harlingen, TX 78550 Computer Sciences Building Office Phone:
More informationOn the use of the multimodal clues in observed human behavior for the modeling of agent cooperative behavior
From: AAAI Technical Report WS-02-03. Compilation copyright 2002, AAAI (www.aaai.org). All rights reserved. On the use of the multimodal clues in observed human behavior for the modeling of agent cooperative
More informationAdaptation of Rapid Prototyping Model for Serious Games Development
Journal of Computer Science and Information Technology June 2014, Vol. 2, No. 2, pp. 173-183 ISSN: 2334-2366 (Print), 2334-2374 (Online) Copyright The Author(s). 2014. All Rights Reserved. Published by
More informationHow to Manage the Collaborative Task in Dotlrn Web Based Learning
Implementing a collaborative task in dotlrn webbased learning environment Alberto Bayón 1, Olga C. Santos 2, Jesús G. Boticario 2 1,2 adenu Research Group, Artificial Intelligence Department, Computer
More informationE- learning skills matrix 2010
E- learning skills matrix 2010 This skills matrix has been designed to help organisations to assess the impact of e- learning on the roles of learning & development professionals, subject experts, e- learning
More informationOn the motivation and attractiveness scope of the virtual reality user interface of an educational game
On the motivation and attractiveness scope of the virtual reality user interface of an educational game Maria Virvou, George Katsionis & Konstantinos Manos Department of Informatics, University of Piraeus,
More informationChap 1. Introduction to Software Architecture
Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)
More informationA Framework of Context-Sensitive Visualization for User-Centered Interactive Systems
Proceedings of 10 th International Conference on User Modeling, pp423-427 Edinburgh, UK, July 24-29, 2005. Springer-Verlag Berlin Heidelberg 2005 A Framework of Context-Sensitive Visualization for User-Centered
More informationUsing Emergent Behavior to Improve AI in Video Games
Noname manuscript No. (will be inserted by the editor) Using Emergent Behavior to Improve AI in Video Games Janne Parkkila Received: 21.01.2011 / Accepted: date Abstract Artificial Intelligence is becoming
More informationEUROPASS DIPLOMA SUPPLEMENT
EUROPASS DIPLOMA SUPPLEMENT TITLE OF THE DIPLOMA (ES) Técnico Superior en Animaciones 3D, Juegos y Entornos Interactivos TRANSLATED TITLE OF THE DIPLOMA (EN) (1) Higher Technician in 3D Animations, Games
More informationDescribe the process of parallelization as it relates to problem solving.
Level 2 (recommended for grades 6 9) Computer Science and Community Middle school/junior high school students begin using computational thinking as a problem-solving tool. They begin to appreciate the
More informationA Pattern for Designing Abstract Machines
The Machine A Pattern for Designing Machines Julio García-Martín Miguel Sutil-Martín Universidad Politécnica de Madrid 1. Because of the increasing gap between modern high-level programming languages and
More informationSchool of Computer Science
School of Computer Science Computer Science - Honours Level - 2014/15 October 2014 General degree students wishing to enter 3000- level modules and non- graduating students wishing to enter 3000- level
More informationA generic framework for game development
A generic framework for game development Michael Haller FH Hagenberg (MTD) AUSTRIA haller@hagenberg.at Werner Hartmann FAW, University of Linz AUSTRIA werner.hartmann@faw.unilinz.ac.at Jürgen Zauner FH
More informationVisual Studio 2008: Windows Presentation Foundation
Visual Studio 2008: Windows Presentation Foundation Course 6460A: Three days; Instructor-Led Introduction This three-day instructor-led course provides students with the knowledge and skills to build and
More informationzen Platform technical white paper
zen Platform technical white paper The zen Platform as Strategic Business Platform The increasing use of application servers as standard paradigm for the development of business critical applications meant
More informationLesson 1 Introduction to Rapid Application Development using Visual Basic
Lesson 1 Introduction to Rapid Application Development using Visual Basic RAD (Rapid Application Development) refers to a development life cycle designed to give much faster development and higher-quality
More informationMVC Architecture Driven Design and Implementation of Java Framework for Developing Desktop Application
, pp.317-322 http://dx.doi.org/10.14257/ijhit.2014.7.5.29 MVC Architecture Driven Design and Implementation of Java Framework for Developing Desktop Application Iqbal H. Sarker and K. Apu Department of
More information2. Analysis, Design and Implementation
2. Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Individual Programs to Complete Application Systems Software Development: Goals, Tasks, Actors,
More informationResearch and Digital Game- based Play: A Review of Martha Madison
Research and Digital Game- based Play: A Review of Martha Madison White Paper Compiled by Anne Snyder, Ph.D. Second Avenue Learning is a certified women- owned business, specializing in the creation of
More informationGame Engineering. Dennis Dedaj Department Informatik HAW Hamburg 20. Mai 2008
Game Engineering Dennis Dedaj Department Informatik HAW Hamburg 20. Mai 2008 Agenda Motivation What is Game Design? Roles What is Game Engineering? Genres Action Games Conclusion Perspective Motivation
More informationMasters in Human Computer Interaction
Masters in Human Computer Interaction Programme Requirements Taught Element, and PG Diploma in Human Computer Interaction: 120 credits: IS5101 CS5001 CS5040 CS5041 CS5042 or CS5044 up to 30 credits from
More informationLONDON SCHOOL OF COMMERCE. Programme Specification for the. Cardiff Metropolitan University. BSc (Hons) in Computing
LONDON SCHOOL OF COMMERCE Programme Specification for the Cardiff Metropolitan University BSc (Hons) in Computing Contents Programme Aims and Objectives Programme Structure Programme Outcomes Mapping of
More informationThe EMSX Platform. A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks. A White Paper.
The EMSX Platform A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks A White Paper November 2002 Abstract: The EMSX Platform is a set of components that together provide
More informationPatterns in. Lecture 2 GoF Design Patterns Creational. Sharif University of Technology. Department of Computer Engineering
Patterns in Software Engineering Lecturer: Raman Ramsin Lecture 2 GoF Design Patterns Creational 1 GoF Design Patterns Principles Emphasis on flexibility and reuse through decoupling of classes. The underlying
More information1. Scope of Games and Game Systems. 2. Evolution of Current Game Designs. 3. New Game Forms Utilising New and Emerging Technical Media
Game Development in Networks of the Future Craig Lindley craig.lindley@hgo.se Game Design, Cognition and Artificial Intelligence Research Group Department of Game Design, Narrative and Time-Based Media
More information2. Analysis, Design and Implementation
2. Analysis, Design and Implementation Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Programs to Application Systems Products Software Development:
More informationUmbrella: A New Component-Based Software Development Model
2009 International Conference on Computer Engineering and Applications IPCSIT vol.2 (2011) (2011) IACSIT Press, Singapore Umbrella: A New Component-Based Software Development Model Anurag Dixit and P.C.
More informationEfficient Agent Based Testing Framework for Web Applications
International Journal of Scientific & Engineering Research, Volume 3, Issue 2, February-2012 1 Efficient Agent Based Testing Framework for Web Applications Ms.Neha Saluja Prof.Amit Kanskar Abstract- Now
More informationBoard Games They are adaptations of classic board games. Examples of board games include Chess, Checkers, Backgammon, Scrabble and Monopoly.
Computer Games Computer games are programs that enable a player to interact with a virtual game environment for entertainment and fun. There are many types of computer games available, ranging from traditional
More informationAnalytic Modeling in Python
Analytic Modeling in Python Why Choose Python for Analytic Modeling A White Paper by Visual Numerics August 2009 www.vni.com Analytic Modeling in Python Why Choose Python for Analytic Modeling by Visual
More informationThere are a number of factors that increase the risk of performance problems in complex computer and software systems, such as e-commerce systems.
ASSURING PERFORMANCE IN E-COMMERCE SYSTEMS Dr. John Murphy Abstract Performance Assurance is a methodology that, when applied during the design and development cycle, will greatly increase the chances
More informationCity University of Hong Kong
City University of Hong Kong Information on a Course offered by Department of Computer Science with effect from Semester A in 2014 / 2015 Part I Course Title: AI Game Programming Course Code: CS4386 Course
More informationSimplifying Processes Interoperability with a Service Oriented Architecture
Why SOA? Simplifying Processes Interoperability with a Service Oriented Architecture Zak Merzouki, Software Architecture and Technology Director BDPA 11/20/2008 Perspective "Things should be made as simple
More informationAgent Models of 3D Virtual Worlds 1
Agent Models of 3D Virtual Worlds 1 Abstract Mary Lou Maher John S Gero Key Centre of Design Computing and Cognition University of Sydney Architectural design has relevance to the design of virtual worlds
More informationINTERNATIONALIZATION AND LOCALIZATION AFTER SYSTEM DEVELOPMENT: A PRACTICAL CASE 1 Jesús Cardeñosa, Carolina Gallardo, Álvaro Martín
INTERNATIONALIZATION AND LOCALIZATION AFTER SYSTEM DEVELOPMENT: A PRACTICAL CASE 1 Jesús Cardeñosa, Carolina Gallardo, Álvaro Martín Abstract: Internationalization of software as a previous step for localization
More informationUsing Workflow Technology to Manage Flexible e-learning Services
Educational Technology & Society 5(4) 2002 ISSN 1436-4522 Using Workflow Technology to Manage Flexible e-learning Services Joe Lin, Charley Ho, Wasim Sadiq, Maria E. Orlowska Distributed Systems Technology
More informationUsing Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting
Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting petemcbreen@acm.org All rights reserved. You have permission to copy and distribute the document as long as you make no changes
More informationChapter 3. Technology review. 3.1. Introduction
Technology review Chapter 3 3.1. Introduction Previous chapter covers detail description about problem domain. In this chapter I will discuss the technologies currently available to solve a problem in
More informationA Management Tool for Component-Based Real-Time Supervision and Control Systems
A Management Tool for Component-Based Real-Time Supervision and Control Systems Sandro Santos Andrade, Raimundo José de Araújo Macêdo Distributed Systems Laboratory (LaSiD) Post-Graduation Program on Mechatronics
More informationBachelor Degree in Informatics Engineering Master courses
Bachelor Degree in Informatics Engineering Master courses Donostia School of Informatics The University of the Basque Country, UPV/EHU For more information: Universidad del País Vasco / Euskal Herriko
More informationGame Design and Programming
CS 673: Spring 2012 Game Design and Programming Nintendo Introduction Andy Nealen, Rutgers, 2012 1/19/2012 1 What is this class about? Game design Real world abstractions Visuals Interaction Design iterations
More informationVisual Programming of Logic, Motion, and Robotics
ADVANCED Motion Controls October 2014 Visual Programming of Logic, Motion, and Robotics Sándor Barta Overview The art of programming consists of mentally translating a workflow into a sequential programming
More informationAn Intelligent Sales Assistant for Configurable Products
An Intelligent Sales Assistant for Configurable Products Martin Molina Department of Artificial Intelligence, Technical University of Madrid Campus de Montegancedo s/n, 28660 Boadilla del Monte (Madrid),
More informationCOMPUTER SCIENCE/ COMPUTER NETWORKING AND TECHNOLOGIES (COSC)
COMPUTER SCIENCE/ COMPUTER NETWORKING AND TECHNOLOGIES (COSC) Computer Science (COSC) courses are offered by the School of Information Arts and Technologies within the Yale Gordon College of Liberal Arts.
More informationincreasing number of researchers itself. studying these phenomena and their implications for the education systems, see e.g. (Prensky 2001).
GAME DESIGN IN EDUCATION Mark Overmars Institute of Information and Computing Sciences Utrecht University 3584 CH Utrecht, The Netherlands E-mail: markov@cs.uu.nl KEYWORDS Game design, Education, Game
More informationIntroduction to Software Paradigms & Procedural Programming Paradigm
Introduction & Procedural Programming Sample Courseware Introduction to Software Paradigms & Procedural Programming Paradigm This Lesson introduces main terminology to be used in the whole course. Thus,
More informationMasters in Artificial Intelligence
Masters in Artificial Intelligence Programme Requirements Taught Element, and PG Diploma in Artificial Intelligence: 120 credits: IS5101 CS5001 CS5010 CS5011 CS4402 or CS5012 in total, up to 30 credits
More information[2006] IEEE. Reprinted, with permission, from [M. Ye and K. Sandrasegaran, Teaching about Firewall Concepts using the inetwork Simulator, Information
[2006] IEEE. Reprinted, with permission, from [M. Ye and K. Sandrasegaran, Teaching about Firewall Concepts using the inetwork Simulator, Information Technology Based Higher Education and Training, 2006.
More informationWhat is Intelligent Device Management?
What is Intelligent Device Management? NET+Works Integrated Systems Architecture Saves Valuable Development Time, While Future-Proofing Application Design White Paper Abstract To manage devices over a
More informationManaging Variability in Software Architectures 1 Felix Bachmann*
Managing Variability in Software Architectures Felix Bachmann* Carnegie Bosch Institute Carnegie Mellon University Pittsburgh, Pa 523, USA fb@sei.cmu.edu Len Bass Software Engineering Institute Carnegie
More informationProgress Report Aspect Oriented Programming meets Design Patterns. Academic Programme MSc in Advanced Computer Science. Guillermo Antonio Toro Bayona
Progress Report Aspect Oriented Programming meets Design Patterns Academic Programme MSc in Advanced Computer Science Guillermo Antonio Toro Bayona Supervisor Dr. John Sargeant The University of Manchester
More information270015 - IES - Introduction to Software Engineering
Coordinating unit: 270 - FIB - Barcelona School of Informatics Teaching unit: 747 - ESSI - Department of Service and Information System Engineering Academic year: Degree: 2015 BACHELOR'S DEGREE IN INFORMATICS
More informationCase Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB
September Case Studies of Running the Platform NetBeans UML Servlet JSP GlassFish EJB In this project we display in the browser the Hello World, Everyone! message created in the session bean with servlets
More informationStage III courses COMPSCI 314
Stage III courses To major in Computer Science, you have to take four Stage III COMPSCI courses, plus one other Stage III course chosen from the BSc Schedule. This may be another Stage III COMPSCI course.
More informationKnowledge-based Approach in Information Systems Life Cycle and Information Systems Architecture
5 th Slovakian-Hungarian Joint Symposium on Applied Machine Intelligence and Informatics January 25-26, 2007 Poprad, Slovakia Knowledge-based Approach in Information Systems Life Cycle and Information
More informationTask-Model Driven Design of Adaptable Educational Hypermedia
Task-Model Driven Design of Adaptable Educational Hypermedia Huberta Kritzenberger, Michael Herczeg Institute for Multimedia and Interactive Systems University of Luebeck Seelandstr. 1a, D-23569 Luebeck,
More informationTHE <E-GAME> PROJECT: FACILITATING THE DEVELOPMENT OF EDUCATIONAL ADVENTURE GAMES
1 THE PROJECT: FACILITATING THE DEVELOPMENT OF EDUCATIONAL ADVENTURE GAMES P. Moreno-Ger 1, I. Martínez-Ortiz 2, B. Fernández-Manjón 1 1 Universidad Complutense de Madrid (Facultad de Informática)*
More informationMDA Transformations Applied to Web Application Development 1
MDA Transformations Applied to Web Application Development 1 Santiago Meliá 1, Andreas Kraus 2, and Nora Koch 2, 3 1 Universidad de Alicante, Spain 2 Ludwig-Maximilians-Universität München, Germany 3 F.A.S.T
More informationBachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries
First Semester Development 1A On completion of this subject students will be able to apply basic programming and problem solving skills in a 3 rd generation object-oriented programming language (such as
More informationCorrelation Map of LEARNING-FOCUSED to Marzano s Evaluation Model
Correlation Map of LEARNING-FOCUSED to Marzano s Evaluation Model Correlation Map of LEARNING-FOCUSED to Marzano s Evaluation Model LEARNING-FOCUSED provides schools and districts with the best solutions
More information1. Overview of the Java Language
1. Overview of the Java Language What Is the Java Technology? Java technology is: A programming language A development environment An application environment A deployment environment It is similar in syntax
More informationMANAGEMENT S ROLE 1/16/2002 152. Copyright 2001, Net Objectives
MANAGEMENT S ROLE 1/16/2002 152 Continuous Overtime Is Counterproductive Working more hours does not increase productivity Overwork is usually an indication of something wrong - working more doesn t fix
More informationPEDRO SEQUEIRA CURRICULUM VITAE
PEDRO SEQUEIRA CURRICULUM VITAE IST Taguspark - Av. Prof. Cavaco Silva, 2.N.9-15 2744-016 Porto Salvo, Portugal +351 214 233 508 pedro.sequeira@gaips.inesc- id.pt SUMMARY I am a post- doctoral associate
More informationQuality Ensuring Development of Software Processes
Quality Ensuring Development of Software Processes ALEXANDER FÖRSTER,GREGOR ENGELS Department of Computer Science University of Paderborn D-33095 Paderborn, Germany {alfo engels}@upb.de ABSTRACT: Software
More information