A Rationale-based Analysis Tool
|
|
- Kory Wilkerson
- 6 years ago
- Views:
Transcription
1 A Rationale-based Analysis Tool Timo Wolf, Allen H. Dutoit Technische Universität München, Institut für Informatik Boltzmannstr. 3, Garching bei München, Germany Abstract The Rationale-based Analysis Tool (RAT) supports analysts, developers, clients and end users during the objectoriented requirements analysis activity. The tool enables different stakeholders to create, generate and refine a consistent and traceable analysis model, from a use case model. The analysis model consists of UML classes and sequence diagrams. The tool uses traceability links to propagate modifications by automated actions and to enable users to navigate through different models and to detect their interrelations. Moreover, RAT integrates requirements analysis with rationale information to support and capture model negotiations consisting of alternatives, assessments, arguments and justifications. RAT is a location independent multi-user tool that supports synchronous and asynchronous group collaboration. 1 Introduction Object-oriented requirements analysis has become popular due to Jacobson s book Object-oriented software engineering [7] and the Unified Modeling Language [3]. Requirements analysis involves clients, end users, analysts, and developers, in defining a clear, consistent, and complete model of the system under development. First, the interactions between users and the envisioned system are described in natural language as use cases, then represented as a dynamic model with UML sequence diagrams, and finally consolidated into an object model depicted as UML class diagrams [4]. Requirements analysis is an iterative activity in that multiple stakeholders with different goals are involved. End users focus on their daily work requirements whereas clients and managers focus on budget, time and maintenance. During requirements analysis, each stakeholder tries to push his goals. Different models are created, refined, extended and discussed several times. As the understanding of the problem domain and the possible solutions deepens, requirements changes, and much rationale information, such as alternative solutions, assessments, justifications, and arguments [5] is generated. Usually, only the end result of this process, that is, the use case and object model are captured. The rationale information is forgotten. Maintaining consistency and traceability between these models is difficult, as CASE tools usually treat them as separate entities. Moreover, many models (e.g., use cases) are rich in natural language and loosely structured [7]. This paper discusses the tool RAT. It supports multiple stakeholders during the object-oriented requirements analysis activity to create consistent and traceable models in distributed environments. From use cases, RAT supports the creation, generation and refinement of sequence diagrams and classes. The tool supports traceability by the creation and maintenance of links between the different models. The users are able to follow the traces and they are aware of the impact while modifying the models. Moreover, RAT maintains consistency between selected model elements by automated actions (e.g. automated renaming of related model elements). Rationale generated during modeling is captured within RAT and supports model negotiation and knowledge capturing by using an argumentation-based issue model [10], adapted from QOC [8]. Issues can be attached to any kind of model elements, such as use cases, objects, or classes. The traceability links and the containment relations between elements are used to display and propagate the status of open issues in the system models. Therefore, the reasoning and knowledge behind the models is always available. Moreover, the impact of changing decisions, nonfunctional requirements, or criteria is traceable to the related model elements. Section 2 discusses related work. Section 3 provides an overview of RAT and its use. Section 4 evaluates the current implementation and we finish the paper with the conclusion in Section 5.
2 2 Related Work Egyed [6] presents an automated approach to generate and validate trace dependencies between development artifacts, such as model descriptions, specifications, and source code. The trace dependencies are used to identify the interrelation between these artifacts. The approach assumes to have a running software system, test scenarios, a set of artifacts and some initial trace dependencies between artifacts and scenarios. By accomplishing the test scenarios and observing the code of the running system, new traces are generated and existing ones are validated. We agree to the need of automated generation and validation of traces for existing systems and artifacts, but we also believe that traces between model artifacts are needed and can be created in the early stage of requirements analysis, when no system is available. Therefore, our approach integrates traceability links and artifacts within one tool to support consistency and traceability during the creation of model artifacts. REMAP [9] is a tool to support stakeholders to create design solutions from a set of requirements, using Design Rationale. The rationale is used to capture knowledge and to negotiate over open issues, related to requirements. A decision leads to a constraint, which must be addressed by the design solution. Therefore, REMAP uses rationale to maintain traceability between requirements and design solutions. The use of rationale in REMAP is similar to RAT. In addition, RAT supports a mechanism to create traceability links. We allow to attach issues to all kinds of elements and we integrate rationale within the modeling CASE tool. We belief that the integration of rationale, in developer daily work tools, increases the acceptance, usage, and benefit of rationale. Belkhouche [2] proposes a strategy for object-oriented requirements analysis that automates and assists the refinement of the analysis model, based on a semantic-net representation. In difference to RAT, Belkhouche assumes to have an initial model, created by the analysts. RAT generates an initial set of model elements, which have to be refined by the analysts. REQuest [5] is a web-based tool that supports an integrated process for creating and capturing use case-driven requirements and its rationale. REQuest uses a refinement of QOC [8] to represent rationale. The users are able to create and attach issues to requirement elements and trace from the elements to issues and back. REQuest minimizes the work on capturing rationale by displaying the issue models in the context of the requirements specification. RAT extends REQuest by integrating rationale and object-oriented analysis. RAT is used to create the analysis model based on the requirements and to refine them. The integrated issue model not only supports developers during analysis by capturing rationale, it also supports a communication channel between the different stakeholders involved in requirements elicitation and analysis. 3 RAT The goals of RAT are to support developers in creating and maintaining consistent and traceable object-oriented requirements analysis models, capture, annotate, and cross-reference the generated rationale information with the analysis models, enable multiple stakeholders to collaborate location independent. 3.1 Analysis Activities During object-oriented analysis, developers formalize the requirements specification to produce a model that aims to be correct, complete, consistent and unambiguous [4, 7]. Therefore, the use cases, representing the functional requirements, are examined and participating objects are identified. The use cases can be validated by instantiating scenarios in form of sequence diagrams containing the identified objects. The sequence diagram messages refine the interaction between the user and the system in more detail. Missing objects and object operations can be found. By abstracting from objects and adding taxonomy a class model is created. The classes and their operations can be refined again by using the sequence diagrams. Both, the classes and the sequence diagrams support the refinement of the use case. Natural text heuristics supports analysis activity [1]. Figure 1 provides an overview of the analysis activities. object model development use case model development sequence diagram development Figure 1: The analysis activities (UML activity diagram).
3 3.2 Supporting Analysis RAT and REQuest [5] share a repository for all requirements and rationale model elements. RAT starts with the use case model from REQuest. RAT supports developers by offering a clear, structured way from the requirements to the different analysis models and maintains consistency and traceability between the different model types over time. A use case of the requirements model consists of an initiating actor, representing the user of the system and a set of flow steps, describing the interaction between the actor and the system. A flow step is either an actor step or a system step. An actor step describes an interaction from the actor to the system and a system step is the response. The model supports the concept of system services that defines reusable system functionalities. A system step can use a service to accomplish the use case behavior. Generating sequence diagrams and classes RAT can generate an initial set of sequence diagrams and classes from the use case model. A generated sequence diagram consists of an actor object for each actor participating on the use case. The system is represented as a single boundary object and each used service is added as another object. The sequence diagram messages between the actors, the system, and the services are generated from the flow steps of the use case. Figure 2 shows a UML sequence diagram that was generated from a use case. The flow steps of the use case are annotated to the left side and they are displayed as tool tips of the messages. Developers can then refine and augment the sequence diagrams. They can change the labels of the generated messages, while the flow step descriptions stay as tool tips. Additional objects and messages can be added. Moreover, the generation function creates a class for each actor and a class with an operation for each service of the use case. The generated sequence diagram objects are instances of the related classes. Additional, the service messages are mapped to the operations of the service classes. Developers can refine the classes by e.g. adding attributes, operations, associations, inheritance, or changing names. Reusing and sharing objects and messages The sequence diagrams, consisting of objects and threads of messages are scenarios (i.e., instances of use cases). Multiple sequence diagrams represent different flow of events for the same use case in different situations. Therefore, the sequence diagrams differ on small, selected parts and share the redundant parts. Changing a redundant part Figure 2: Screenshot of a sequence diagram generated from a use case. Changing the use case will immediately change the sequence diagram. would force developers to change the same part in all other sequence diagrams. RAT supports the sharing of objects and messages to enable developers to reuse objects and message threads in different sequence diagrams and to compose complex diagrams from small and manageable sequence diagrams. Modifications of shared objects and messages are visible in all related sequence diagrams. Sharing objects and messages results in a larger number of simpler and consistent sequence diagrams. Consequently, it becomes easier for developers to use simple sequence diagrams to communicate with others, while not worrying about checking large numbers of diagrams for consistency. For example, assuming the authentication mechanism of a system is modeled within a sequence diagram, starting with a message authenticate. Another sequence diagram models a system function that requires authentication. Instead of redrawing the authentication mechanism, it is automatically added by reusing the authenticate message. The authentication mechanism is always consistent in both sequence diagrams, independent of any modification. Figure 3 shows a sequence diagram containing the shared message authenticate. RAT indicates shared objects and messages with yellow labels. RAT applies the mechanism of sharing objects and messages when sequence diagrams are generated several times from the same use case. Only the first generation creates the objects and classes as described above. To ensure consistency, following generations reuse and share the existing objects, messages, classes, and operations. Modifications of previous generated diagrams like added objects and messages are included. Moreover, multiple generations create only one class, operation and object for each service of a
4 Figure 3: Screenshot of a sequence diagram containing shared objects and messages, highlighted with a yellow label. use case. The modification of the class or operation is visible in all generated sequence diagrams. In addition to the generation from use cases, RAT enables the users to create sequence diagrams and classes independently of the use case model. New objects and messages can be included in a sequence diagram. The objects can be instantiated of the classes and messages can be mapped to operations. To reduce the amount of work and to ensure consistency, existing objects can be added to sequence diagrams and are shared. Furthermore, existing received messages of objects can be reused again. Therefore, the user defines the sender object and selects an existing received message of the receiver object. The selected message is shared and is sent from different objects to the receiver object. All resulting messages of the shared message are also added into the sequence diagram and shared. Maintaining traceability links The requirements analysis model consists of different and interrelated models that need to be consistent and traceable. The analysis of a use case model leads to the creation of sequence diagrams and classes. Therefore, the use cases represent the reasoning behind the identified models. The developers must be aware of model interrelations to maintain consistency over time. For example, a use case and its sequence diagram instances must be updated to be consistent, when adding new flow steps to the use case or a sequence diagram. RAT supports awareness of interrelating models by creating and maintaining traceability links between model elements. Furthermore, the tool uses the links for a set of automated actions. Traceability links are used between use cases and their generated model elements so that selected changes to the use case are automatically propagated. Similarly, some changes in the generated models are propagated back to the originating use case. For instance, changing the use case flow step descriptions, changes the tool tips of the related sequence diagram messages. Adding or deleting a flow step of the use case will add or delete the related message. All modifications of the services used by an use case, are reflected in the generated sequence diagrams. The generation creates only a link between the service and its operation. The service class is reached through the operation. Thus, the operation can be moved to another class and two services can be merged into one class. The next generation reuses the service operation and the merged class. Furthermore, traceability links between actors, services and classes are used to propagate name changes. Classes can participate in several use cases and be included in several use case diagrams. Being able to visualize how a class is used in different context enables the developer to consolidate requirements from different sources into single classes. Therefore, RAT associates a class diagram with each use case. The class diagrams support the creation of new classes and the addition of existing classes. Traceability links are added between use cases and classes. The links enable developers to navigate from classes to use cases and back, independent of further modifications like renaming or moving classes to other packages. Based on a use case model, RAT offers multiple possibilities to create an analysis model. However, to increase the usability, the tool does not force or restrict developers to any order in the creation of model elements or modeling rules. Users have the option of generating sequence diagrams automatically or manually and can refine automatically generated diagrams. The traceability links can be added manually at any time, by a drag and drop mechanism. 3.3 Supporting Collaboration Multiple stakeholders with different goals and knowledge are involved in the requirements elicitation and analysis activities. Usually, object-oriented methods are well known to analysts and developers whereas the problem domain is not. A user focus on his daily work requirements whereas a client focus on budget, time and maintenance. As the requirements analysis document is the foundation for the system development, each stakeholder wants to push his goals. This leads to negotiating over solutions, alternatives, relevant criteria and assessments of which criteria supports which solution [5]. The stakeholders accomplish knowledge research and knowledge exchange to push their goals. Usually, only the end result of this process, that is, the functional, dynamic, and object models are captured while the reasoning of the decisions called rationale is forgotten. Rationale facilitates negotiation among stakeholders by enabling them to systematically clarify the possible options and their evaluation against well-defined criteria.
5 Tracking history RAT is a multi-user tool that enables different stakeholders to collaborate on the same set of models from different locations. Changes to the models are visible immediately to all users, thus enabling synchronous and asynchronous collaboration. To increase the quality and effectiveness of distributed collaboration, each user is able to figure out, which model elements are new or modified by other users. Therefore, RAT tracks the history of each model element by storing the author, modification date and the last read date for each user. By using the history information, the tool supports different lists to present new or modified model elements. Rationale integration RAT supports rationale by integrating the analysis models with an argumentation-based issue model [10], adapted from QOC [8]. The issue model is shared with RE- Quest [5]. It consists of issues, proposals, resolutions, comments, and criteria, which represent nonfunctional requirements. Occurring rationale information can be captured and associated with the individual model elements (e.g. objects, classes, use cases, etc.). The graphical presentations of the model elements are enriched with rationale indicators. Figure 4 presents a part of a class diagram and the model navigation tree of RAT, annotated with rationale indicators. Open issues are represented with red dots, closed issues with green ones. Moreover, the model elements in the navigation tree are annotated with red crosses to hint that a subelement has open issues. Selecting an indicator will display all issues related to the selected model element. All issues of a model element and its subelements can be requested by using the navigation tree of RAT. For instance, requesting all issues on a package, lists all package issues and all issues of the subelements like classes, class attributes, operations, and its subpackages. Moreover, the traceability links are used to list the issues of related model elements. Therefore, issues of use cases are propagated to participating objects and classes, thus enabling developers to identify the impact range of issues to the interrelated models. Furthermore, RAT enables developers to list and search through the rationale information. Each issue can be visualized with its description, proposals, criteria, comments, and its related model elements. The users are able to trace from an issue back to the related model elements. Additional model elements can be added to an issue. The integration of the issue model within the same context as the analysis model helps developers in their daily work. For instance, the refinement of a class model could lead to multiple clarification issues. RAT enables develop- Figure 4: Screenshots of the rationale indicators within a UML class diagram and the navigation tree of RAT. ers to create the issues within the class diagrams. Noticing the appearing rationale indicators, another user can resolve the issues. The created rationale knowledge remains traceable from the class model and is available to all stakeholders. Assuming multiple stakeholders negotiate over alternative solutions to resolve design problems. The issue model supports and captures the justification behind each alternative by assessing criteria, such as nonfunctional requirements. RAT presents the assessment in form of a proposalcriterion matrix (see figure 5). Therefore, the reasoning why an alternative is chosen for a specific set of model elements is captured. The traceability between issues and model elements enables the awareness of the impact and interrelation between models and changing criteria. Figure 5: Screenshot of the proposal-criterion matrix of RAT. The proposals are listed in the first column and annotated with yellow bulbs. The issue related criteria are listed in the first row. The assessment of the criteria to the proposals is done within the matrix. Issue-based inspections Enriching the analysis model with rationale can facilitate reviews and inspections of the requirements analysis document. The issues can build the foundation for meeting agendas, as they reflect the current state and open questions to resolve. RAT implements different issue filters to support issue-based agendas for individual teams as well
6 as for development phases. Reviews and inspections can be accomplished by using RAT or in a traditional meeting. Therefore, the tool supports a printable version of the requirements analysis document that includes a list of issues, cross-referenced to the model elements within the document. 4 Evaluation About 30 students of the Software Engineering project course 2003/2004 at the chair Applied Software Engineering, Technische Universität München, developing a prototype forecasting system for the Wacker chemical company used RAT to create the analysis model and generate the requirements analysis document. The requirements analysis document turned out to be one of the primary client deliverable for this project and will be used by the Wacker IT department to realize a production version of the system under development. The created application demonstrates the feasibility of using RAT for object-oriented analysis. Although the students had no experience in software engineering and rationale, they understood the concepts of RAT intuitively. Comparing the project with previous project courses that where accomplished without RAT, the communication and knowledge sharing between individual teams increased dramatically. By using RAT, each team was always aware of other team activities and could clarify questions by creating issues to related model elements. Therefore, the students did not only focus on their team related tasks and the global system domain knowledge was higher. 5 Conclusion This paper introduces the main concepts of RAT, a rationale-based analysis tool. The tool facilitates different stakeholders during object-oriented requirements analysis. It supports the creation and maintenance of consistent models, model-centered communication and negotiation, as well as capturing knowledge. Our approach includes the generation of sequence diagrams and classes from use cases, the maintenance of traceability links, and the capture of rationale together with the analysis model. We showed how traceability links can help maintaining consistency among models and how integrated rationale can support stakeholder collaboration. While initial results are encouraging, more studies are necessary to evaluate the tool and demonstrate its usefulness. We plan more studies in project courses and research projects to gather feedback from end users and address any usability issues. Furthermore, we plan to extend the tool in multiple directions. First, RAT should support developers to map the analysis model into a detailed object design, integrated with design pattern support. Second, we are planning to integrate concepts of project task management, so that each user is always aware of his current tasks and the project time line. Moreover, we made some experiences in writing IDE plug-ins to support rationale during coding and to synchronize source code and its issues with the class model and its issues from RAT. A first version of document generation is already implemented an should be extended. References [1] R. Abbott. Program design by informal english description. Comm. of the ACM, 26(11):82 94, [2] B. Belkhouche and A. M. Gamino. Object-oriented analysis through a knowledge-based system. Journal of Object-Oriented Programming, 11(7):52 59, [3] G. Booch, J. Rumbaugh, and I. Jacobson. The Unified Modeling Language User Guide. Addison-Wesley, [4] B. Bruegge and A. H. Dutoit. Object-Oriented Software Engineering Using UML, Patterns, and Java. Prentice Hall, 2nd edition, Sep [5] A. H. Dutoit and B. Paech. Rationale-based use case specification. Requirements Engineering Journal, [6] A. Egyed. A scenario-driven approach to trace dependency analysis. IEEE Trans. Softw. Eng., 29(02): , [7] I. Jacobson, M. Christerson, P. Jonsson, and G. Övergaard. Object-Oriented Software Engineering A Use Case Driven Approach. Addison Wesley Longman Ltd., [8] A. MacLean, R. M. Young, V. Bellotti, and T. Moran. Questions, options, and criteria: Elements of design space analysis. Human-Computer Interaction, 6(11): , [9] B. Ramesh and V. Dhar. Supporting systems development by capturing deliberations during requirements engineering. IEEE Trans. Softw. Eng., 18(6): , [10] S. B. Shum and N. Hammond. Argumentation-based design rationale: what use at what cost? Int. J. Hum.- Comput. Stud., 40(4): , 1994.
Implementing a tool to Support KAOS-Beta Process Model Using EPF
Implementing a tool to Support KAOS-Beta Process Model Using EPF Malihe Tabatabaie Malihe.Tabatabaie@cs.york.ac.uk Department of Computer Science The University of York United Kingdom Eclipse Process Framework
More informationIBM Software Group. Mastering Requirements Management with Use Cases Module 6: Define the System
IBM Software Group Mastering Requirements Management with Use Cases Module 6: Define the System 1 Objectives Define a product feature. Refine the Vision document. Write product position statement. Identify
More informationPROCESS USE CASES: USE CASES IDENTIFICATION
International Conference on Enterprise Information Systems, ICEIS 2007, Volume EIS June 12-16, 2007, Funchal, Portugal. PROCESS USE CASES: USE CASES IDENTIFICATION Pedro Valente, Paulo N. M. Sampaio Distributed
More informationSpecification of the Verity Learning Companion and Self-Assessment Tool
Specification of the Verity Learning Companion and Self-Assessment Tool Sergiu Dascalu* Daniela Saru** Ryan Simpson* Justin Bradley* Eva Sarwar* Joohoon Oh* * Department of Computer Science ** Dept. of
More informationFunctional requirements, non-functional requirements, and architecture should not be separated A position paper
Functional requirements, non-functional requirements, and architecture should not be separated A position paper Barbara Paech,* Allen H. Dutoit,** Daniel Kerkow,* Antje von Knethen* *Fraunhofer IESE {paech,kerkow,vknethen}@iese.fhg.de
More informationA Context-Driven Use Case Creation Process for Specifying Automotive Driver Assistance Systems
A Context-Driven Use Case Creation Process for Specifying Automotive Driver Assistance Systems Hannes Omasreiter, Eduard Metzker DaimlerChrysler AG Research Information and Communication Postfach 23 60
More informationObjects Identification in Object-Oriented Software Development - A Taxonomy and Survey on Techniques
http://jecei.srttu.edu Journal of Electrical and Computer Engineering Innovations SRTTU JECEI, Vol. 3, No. 2, 2015 Regular Paper Objects Identification in Object-Oriented Software Development - A Taxonomy
More informationExperiences Using Defect Checklists in Software Engineering Education
Experiences Using Defect Checklists in Software Engineering Education Kendra Cooper 1, Sheila Liddle 1, Sergiu Dascalu 2 1 Department of Computer Science The University of Texas at Dallas Richardson, TX,
More informationIncluding the Microsoft Solution Framework as an agile method into the V-Modell XT
Including the Microsoft Solution Framework as an agile method into the V-Modell XT Marco Kuhrmann 1 and Thomas Ternité 2 1 Technische Universität München, Boltzmann-Str. 3, 85748 Garching, Germany kuhrmann@in.tum.de
More informationGenerating Test Cases From Use Cases
1 of 13 1/10/2007 10:41 AM Generating Test Cases From Use Cases by Jim Heumann Requirements Management Evangelist Rational Software pdf (155 K) In many organizations, software testing accounts for 30 to
More informationDifferent Requirements Gathering Techniques and Issues. Javaria Mushtaq
835 Different Requirements Gathering Techniques and Issues Javaria Mushtaq Abstract- Project management is now becoming a very important part of our software industries. To handle projects with success
More informationAn Approach for Creating Sentence Patterns for Quality Requirements
An Approach for Creating Sentence Patterns for Quality Requirements Jonas Eckhardt Technische Universität München Garching b. München, Germany eckharjo@in.tum.de Andreas Vogelsang DCAITI Technische Universität
More informationJohannes Ryser Martin Glinz. SCENT - A Method Employing Scenarios to Systematically Derive Test Cases for System Test.
Johannes Ryser Martin Glinz TECHNICAL REPORT No. IFI-2011.0005 SCENT - A Method Employing Scenarios to Systematically Derive Test Cases for System Test October 2000 University of Zurich Department of Informatics
More informationThe Moodle and joule 2 Teacher Toolkit
The Moodle and joule 2 Teacher Toolkit Moodlerooms Learning Solutions The design and development of Moodle and joule continues to be guided by social constructionist pedagogy. This refers to the idea that
More informationOntologies vs. classification systems
Ontologies vs. classification systems Bodil Nistrup Madsen Copenhagen Business School Copenhagen, Denmark bnm.isv@cbs.dk Hanne Erdman Thomsen Copenhagen Business School Copenhagen, Denmark het.isv@cbs.dk
More informationPragmatic Use Case Writing
Pragmatic Use Case Writing Presented by: reducing risk. eliminating uncertainty. 13 Stonebriar Road Columbia, SC 29212 (803) 781-7628 www.evanetics.com Copyright 2006-2008 2000-2009 Evanetics, Inc. All
More informationAutomating the E-learning Personalization
Automating the E-learning Personalization Fathi Essalmi 1, Leila Jemni Ben Ayed 1, Mohamed Jemni 1, Kinshuk 2, and Sabine Graf 2 1 The Research Laboratory of Technologies of Information and Communication
More informationUnit 7 Data analysis and design
2016 Suite Cambridge TECHNICALS LEVEL 3 IT Unit 7 Data analysis and design A/507/5007 Guided learning hours: 60 Version 2 - revised May 2016 *changes indicated by black vertical line ocr.org.uk/it LEVEL
More informationUse of CIM in AEP Enterprise Architecture. Randy Lowe Director, Enterprise Architecture October 24, 2012
Use of CIM in AEP Enterprise Architecture Randy Lowe Director, Enterprise Architecture October 24, 2012 Introduction AEP Stats and Enterprise Overview AEP Project Description and Goals CIM Adoption CIM
More informationRequirements-Gathering Collaborative Networks in Distributed Software Projects
Requirements-Gathering Collaborative Networks in Distributed Software Projects Paula Laurent and Jane Cleland-Huang Systems and Requirements Engineering Center DePaul University {plaurent, jhuang}@cs.depaul.edu
More informationAn Open Framework for Integrated Qualification Management Portals
An Open Framework for Integrated Qualification Management Portals Michael Fuchs, Claudio Muscogiuri, Claudia Niederée, Matthias Hemmje FhG IPSI D-64293 Darmstadt, Germany {fuchs,musco,niederee,hemmje}@ipsi.fhg.de
More informationUsing Virtual Manipulatives to Support Teaching and Learning Mathematics
Using Virtual Manipulatives to Support Teaching and Learning Mathematics Joel Duffin Abstract The National Library of Virtual Manipulatives (NLVM) is a free website containing over 110 interactive online
More informationCREATING SHARABLE LEARNING OBJECTS FROM EXISTING DIGITAL COURSE CONTENT
CREATING SHARABLE LEARNING OBJECTS FROM EXISTING DIGITAL COURSE CONTENT Rajendra G. Singh Margaret Bernard Ross Gardler rajsingh@tstt.net.tt mbernard@fsa.uwi.tt rgardler@saafe.org Department of Mathematics
More informationCWIS 23,3. Nikolaos Avouris Human Computer Interaction Group, University of Patras, Patras, Greece
The current issue and full text archive of this journal is available at wwwemeraldinsightcom/1065-0741htm CWIS 138 Synchronous support and monitoring in web-based educational systems Christos Fidas, Vasilios
More informationA Coding System for Dynamic Topic Analysis: A Computer-Mediated Discourse Analysis Technique
A Coding System for Dynamic Topic Analysis: A Computer-Mediated Discourse Analysis Technique Hiromi Ishizaki 1, Susan C. Herring 2, Yasuhiro Takishima 1 1 KDDI R&D Laboratories, Inc. 2 Indiana University
More informationThe open source development model has unique characteristics that make it in some
Is the Development Model Right for Your Organization? A roadmap to open source adoption by Ibrahim Haddad The open source development model has unique characteristics that make it in some instances a superior
More informationClass Responsibility Assignment (CRA) for Use Case Specification to Sequence Diagrams (UC2SD)
Class Responsibility Assignment (CRA) for Use Case Specification to Sequence Diagrams (UC2SD) Jali, N., Greer, D., & Hanna, P. (2014). Class Responsibility Assignment (CRA) for Use Case Specification to
More informationPrepared by: Tim Boileau
Formative Evaluation - Lectora Training 1 Running head: FORMATIVE EVALUATION LECTORA TRAINING Training for Rapid Application Development of WBT Using Lectora A Formative Evaluation Prepared by: Tim Boileau
More informationDesigning a Rubric to Assess the Modelling Phase of Student Design Projects in Upper Year Engineering Courses
Designing a Rubric to Assess the Modelling Phase of Student Design Projects in Upper Year Engineering Courses Thomas F.C. Woodhall Masters Candidate in Civil Engineering Queen s University at Kingston,
More informationActivities, Exercises, Assignments Copyright 2009 Cem Kaner 1
Patterns of activities, iti exercises and assignments Workshop on Teaching Software Testing January 31, 2009 Cem Kaner, J.D., Ph.D. kaner@kaner.com Professor of Software Engineering Florida Institute of
More informationAn Industrial Technologist s Core Knowledge: Web-based Strategy for Defining Our Discipline
Volume 17, Number 2 - February 2001 to April 2001 An Industrial Technologist s Core Knowledge: Web-based Strategy for Defining Our Discipline By Dr. John Sinn & Mr. Darren Olson KEYWORD SEARCH Curriculum
More informationSoftware Maintenance
1 What is Software Maintenance? Software Maintenance is a very broad activity that includes error corrections, enhancements of capabilities, deletion of obsolete capabilities, and optimization. 2 Categories
More informationCollective Code Bookmarks for Program Comprehension
Collective Code Bookmarks for Program Comprehension Anja Guzzi, Lile Hattori, Michele Lanza, Martin Pinzger and Arie van Deursen Delft University of Technology, The Netherlands REVEAL @ Faculty of Informatics,
More informationOnline Marking of Essay-type Assignments
Online Marking of Essay-type Assignments Eva Heinrich, Yuanzhi Wang Institute of Information Sciences and Technology Massey University Palmerston North, New Zealand E.Heinrich@massey.ac.nz, yuanzhi_wang@yahoo.com
More informationMULTIDISCIPLINARY TEAM COMMUNICATION THROUGH VISUAL REPRESENTATIONS
INTERNATIONAL CONFERENCE ON ENGINEERING AND PRODUCT DESIGN EDUCATION SEPTEMBER 4 & 5 2008, UNIVERSITAT POLITECNICA DE CATALUNYA, BARCELONA, SPAIN MULTIDISCIPLINARY TEAM COMMUNICATION THROUGH VISUAL REPRESENTATIONS
More informationThe Role of Architecture in a Scaled Agile Organization - A Case Study in the Insurance Industry
Master s Thesis for the Attainment of the Degree Master of Science at the TUM School of Management of the Technische Universität München The Role of Architecture in a Scaled Agile Organization - A Case
More informationNonfunctional Requirements: From Elicitation to Conceptual Models
328 IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 30, NO. 5, MAY 2004 Nonfunctional Requirements: From Elicitation to Conceptual Models Luiz Marcio Cysneiros, Member, IEEE Computer Society, and Julio
More informationAn OO Framework for building Intelligence and Learning properties in Software Agents
An OO Framework for building Intelligence and Learning properties in Software Agents José A. R. P. Sardinha, Ruy L. Milidiú, Carlos J. P. Lucena, Patrick Paranhos Abstract Software agents are defined as
More informationM55205-Mastering Microsoft Project 2016
M55205-Mastering Microsoft Project 2016 Course Number: M55205 Category: Desktop Applications Duration: 3 days Certification: Exam 70-343 Overview This three-day, instructor-led course is intended for individuals
More informationOCR LEVEL 3 CAMBRIDGE TECHNICAL
Cambridge TECHNICALS OCR LEVEL 3 CAMBRIDGE TECHNICAL CERTIFICATE/DIPLOMA IN IT SYSTEMS ANALYSIS K/505/5481 LEVEL 3 UNIT 34 GUIDED LEARNING HOURS: 60 UNIT CREDIT VALUE: 10 SYSTEMS ANALYSIS K/505/5481 LEVEL
More informationLEGO MINDSTORMS Education EV3 Coding Activities
LEGO MINDSTORMS Education EV3 Coding Activities s t e e h s k r o W t n e d Stu LEGOeducation.com/MINDSTORMS Contents ACTIVITY 1 Performing a Three Point Turn 3-6 ACTIVITY 2 Written Instructions for a
More informationProblem and Design Spaces during Object-Oriented Design: An Exploratory Study
Problem and Design Spaces during Object-Oriented Design: An Exploratory Study Sandeep Purao 1,2 Ashley Bush 2 Matti Rossi 3 1: Institutt for Informasjonvitenskap, Agder University College, Kristiansand,
More informationVisual CP Representation of Knowledge
Visual CP Representation of Knowledge Heather D. Pfeiffer and Roger T. Hartley Department of Computer Science New Mexico State University Las Cruces, NM 88003-8001, USA email: hdp@cs.nmsu.edu and rth@cs.nmsu.edu
More informationPractice Examination IREB
IREB Examination Requirements Engineering Advanced Level Elicitation and Consolidation Practice Examination Questionnaire: Set_EN_2013_Public_1.2 Syllabus: Version 1.0 Passed Failed Total number of points
More informationUML MODELLING OF DIGITAL FORENSIC PROCESS MODELS (DFPMs)
UML MODELLING OF DIGITAL FORENSIC PROCESS MODELS (DFPMs) Michael Köhn 1, J.H.P. Eloff 2, MS Olivier 3 1,2,3 Information and Computer Security Architectures (ICSA) Research Group Department of Computer
More informationPESIT SOUTH CAMPUS 10CS71-OBJECT-ORIENTED MODELING AND DESIGN. Faculty: Mrs.Sumana Sinha No. Of Hours: 52. Outcomes
10CS71-OBJECT-ORIENTED MODELING AND DESIGN Faculty: Mrs.Sumana Sinha Of Hours: 52 Course Objective: The objective of this course is to enlighten students the software approach of handling large projects
More informationModeling user preferences and norms in context-aware systems
Modeling user preferences and norms in context-aware systems Jonas Nilsson, Cecilia Lindmark Jonas Nilsson, Cecilia Lindmark VT 2016 Bachelor's thesis for Computer Science, 15 hp Supervisor: Juan Carlos
More informationMaximizing Learning Through Course Alignment and Experience with Different Types of Knowledge
Innov High Educ (2009) 34:93 103 DOI 10.1007/s10755-009-9095-2 Maximizing Learning Through Course Alignment and Experience with Different Types of Knowledge Phyllis Blumberg Published online: 3 February
More informationValidating an Evaluation Framework for Requirements Engineering Tools
Validating an Evaluation Framework for Engineering Tools Raimundas Matulevicius Dept. of Computer and Information Science, Norwegian Univ. of Science and Technology Sem Sælands vei 7-9, NO-7491 Trondheim,
More informationTASK 2: INSTRUCTION COMMENTARY
TASK 2: INSTRUCTION COMMENTARY Respond to the prompts below (no more than 7 single-spaced pages, including prompts) by typing your responses within the brackets following each prompt. Do not delete or
More informationDocument number: 2013/ Programs Committee 6/2014 (July) Agenda Item 42.0 Bachelor of Engineering with Honours in Software Engineering
Document number: 2013/0006139 Programs Committee 6/2014 (July) Agenda Item 42.0 Bachelor of Engineering with Honours in Software Engineering Program Learning Outcomes Threshold Learning Outcomes for Engineering
More informationNearing Completion of Prototype 1: Discovery
The Fit-Gap Report The Fit-Gap Report documents how where the PeopleSoft software fits our needs and where LACCD needs to change functionality or business processes to reach the desired outcome. The report
More informationMinistry of Education, Republic of Palau Executive Summary
Ministry of Education, Republic of Palau Executive Summary Student Consultant, Jasmine Han Community Partner, Edwel Ongrung I. Background Information The Ministry of Education is one of the eight ministries
More informationThe Seven Habits of Effective Iterative Development
The Seven Habits of Effective Iterative Development by Eric Lopes Cardozo Director, Empulsys In his book The Seven Habits of Highly Effective People, 1 Stephen Covey describes seven related principles
More informationCONCEPT MAPS AS A DEVICE FOR LEARNING DATABASE CONCEPTS
CONCEPT MAPS AS A DEVICE FOR LEARNING DATABASE CONCEPTS Pirjo Moen Department of Computer Science P.O. Box 68 FI-00014 University of Helsinki pirjo.moen@cs.helsinki.fi http://www.cs.helsinki.fi/pirjo.moen
More informationExamining the Structure of a Multidisciplinary Engineering Capstone Design Program
Paper ID #9172 Examining the Structure of a Multidisciplinary Engineering Capstone Design Program Mr. Bob Rhoads, The Ohio State University Bob Rhoads received his BS in Mechanical Engineering from The
More informationJustin Raisner December 2010 EdTech 503
Justin Raisner December 2010 EdTech 503 INSTRUCTIONAL DESIGN PROJECT: ADOBE INDESIGN LAYOUT SKILLS For teaching basic indesign skills to student journalists who will edit the school newspaper. TABLE OF
More informationAdaptation Criteria for Preparing Learning Material for Adaptive Usage: Structured Content Analysis of Existing Systems. 1
Adaptation Criteria for Preparing Learning Material for Adaptive Usage: Structured Content Analysis of Existing Systems. 1 Stefan Thalmann Innsbruck University - School of Management, Information Systems,
More informationKnowledge Elicitation Tool Classification. Janet E. Burge. Artificial Intelligence Research Group. Worcester Polytechnic Institute
Page 1 of 28 Knowledge Elicitation Tool Classification Janet E. Burge Artificial Intelligence Research Group Worcester Polytechnic Institute Knowledge Elicitation Methods * KE Methods by Interaction Type
More informationAN ABSTRACT OF THE THESIS OF
AN ABSTRACT OF THE THESIS OF Md Tahmid-un Nabi for the degree of Master of Science in Computer Science presented on May 26, 2016. Title: Mapping Software Development Tool Design to Information Foraging
More informationProject Management for Rapid e-learning Development Jennifer De Vries Blue Streak Learning
601 Project Management for Rapid e-learning Development Jennifer De Vries Blue Streak Learning Produced by Tips, Tricks, and Techniques for Rapid e-learning Development Project Management for Rapid elearning
More informationEvaluation of Usage Patterns for Web-based Educational Systems using Web Mining
Evaluation of Usage Patterns for Web-based Educational Systems using Web Mining Dave Donnellan, School of Computer Applications Dublin City University Dublin 9 Ireland daviddonnellan@eircom.net Claus Pahl
More informationEvaluation of Usage Patterns for Web-based Educational Systems using Web Mining
Evaluation of Usage Patterns for Web-based Educational Systems using Web Mining Dave Donnellan, School of Computer Applications Dublin City University Dublin 9 Ireland daviddonnellan@eircom.net Claus Pahl
More informationModellingSpace: A tool for synchronous collaborative problem solving
ModellingSpace: A tool for synchronous collaborative problem solving Nikolaos Avouris, Vassilis Komis, Meletis Margaritis, Christos Fidas University of Patras, GR-265 Rio Patras, Greece^ N.Avouris@ee.upatras.gr,
More informationStrategic Practice: Career Practitioner Case Study
Strategic Practice: Career Practitioner Case Study heidi Lund 1 Interpersonal conflict has one of the most negative impacts on today s workplaces. It reduces productivity, increases gossip, and I believe
More informationMajor Milestones, Team Activities, and Individual Deliverables
Major Milestones, Team Activities, and Individual Deliverables Milestone #1: Team Semester Proposal Your team should write a proposal that describes project objectives, existing relevant technology, engineering
More informationIntroducing New IT Project Management Practices - a Case Study
Association for Information Systems AIS Electronic Library (AISeL) AMCIS 2004 Proceedings Americas Conference on Information Systems (AMCIS) December 2004 - a Case Study Per Backlund University of Skövde,
More informationDeploying Agile Practices in Organizations: A Case Study
Copyright: EuroSPI 2005, Will be presented at 9-11 November, Budapest, Hungary Deploying Agile Practices in Organizations: A Case Study Minna Pikkarainen 1, Outi Salo 1, and Jari Still 2 1 VTT Technical
More informationRule discovery in Web-based educational systems using Grammar-Based Genetic Programming
Data Mining VI 205 Rule discovery in Web-based educational systems using Grammar-Based Genetic Programming C. Romero, S. Ventura, C. Hervás & P. González Universidad de Córdoba, Campus Universitario de
More informationProfessional Learning Suite Framework Edition Domain 3 Course Index
Domain 3: Instruction Professional Learning Suite Framework Edition Domain 3 Course Index Courses included in the Professional Learning Suite Framework Edition related to Domain 3 of the Framework for
More informationCHANCERY SMS 5.0 STUDENT SCHEDULING
CHANCERY SMS 5.0 STUDENT SCHEDULING PARTICIPANT WORKBOOK VERSION: 06/04 CSL - 12148 Student Scheduling Chancery SMS 5.0 : Student Scheduling... 1 Course Objectives... 1 Course Agenda... 1 Topic 1: Overview
More informationECE-492 SENIOR ADVANCED DESIGN PROJECT
ECE-492 SENIOR ADVANCED DESIGN PROJECT Meeting #3 1 ECE-492 Meeting#3 Q1: Who is not on a team? Q2: Which students/teams still did not select a topic? 2 ENGINEERING DESIGN You have studied a great deal
More informationRETURNING TEACHER REQUIRED TRAINING MODULE YE TRANSCRIPT
RETURNING TEACHER REQUIRED TRAINING MODULE YE Slide 1. The Dynamic Learning Maps Alternate Assessments are designed to measure what students with significant cognitive disabilities know and can do in relation
More informationGALICIAN TEACHERS PERCEPTIONS ON THE USABILITY AND USEFULNESS OF THE ODS PORTAL
The Fifth International Conference on e-learning (elearning-2014), 22-23 September 2014, Belgrade, Serbia GALICIAN TEACHERS PERCEPTIONS ON THE USABILITY AND USEFULNESS OF THE ODS PORTAL SONIA VALLADARES-RODRIGUEZ
More informationHelping Graduate Students Join an Online Learning Community
EDUCAUSE Review. Monday, May 22, 2017 http://er.educause.edu/articles/2017/5/helping-graduate-students-join-an-online-learning-community Helping Graduate Students Join an Online Learning Community by Christina
More informationSoftware Quality Improvement by using an Experience Factory
Software Quality Improvement by using an Experience Factory Frank Houdek erschienen in Franz Leher, Reiner Dumke, Alain Abran (Eds.) Software Metrics - Research and Practice in Software Measurement Deutscher
More informationTeaching Tornado. From Communication Models to Releases. Stephan Krusche. Department of Computer Science, Technische Universitaet Muenchen
Teaching Tornado From Communication Models to Releases Bernd Bruegge Department of Computer Science, Technische Universitaet Muenchen bruegge@in.tum.de Stephan Krusche Department of Computer Science, Technische
More informationUCEAS: User-centred Evaluations of Adaptive Systems
UCEAS: User-centred Evaluations of Adaptive Systems Catherine Mulwa, Séamus Lawless, Mary Sharp, Vincent Wade Knowledge and Data Engineering Group School of Computer Science and Statistics Trinity College,
More informationA GENERIC SPLIT PROCESS MODEL FOR ASSET MANAGEMENT DECISION-MAKING
A GENERIC SPLIT PROCESS MODEL FOR ASSET MANAGEMENT DECISION-MAKING Yong Sun, a * Colin Fidge b and Lin Ma a a CRC for Integrated Engineering Asset Management, School of Engineering Systems, Queensland
More informationSpecification and Evaluation of Machine Translation Toy Systems - Criteria for laboratory assignments
Specification and Evaluation of Machine Translation Toy Systems - Criteria for laboratory assignments Cristina Vertan, Walther v. Hahn University of Hamburg, Natural Language Systems Division Hamburg,
More informationSoftware Project Visualization Using Task Oriented Metaphors
J. Software Engineering & Applications, 2010, 3, 1015-1026 doi:10.4236/jsea.2010.311119 Published Online November 2010 (http://www.scirp.org/journal/jsea) Software Project Visualization Using Task Oriented
More information3. Improving Weather and Emergency Management Messaging: The Tulsa Weather Message Experiment. Arizona State University
3. Improving Weather and Emergency Management Messaging: The Tulsa Weather Message Experiment Kenneth J. Galluppi 1, Steven F. Piltz 2, Kathy Nuckles 3*, Burrell E. Montz 4, James Correia 5, and Rachel
More informationHAZOP-based identification of events in use cases
Empir Software Eng (2015) 20: 82 DOI 10.1007/s10664-013-9277-5 HAZOP-based identification of events in use cases An empirical study Jakub Jurkiewicz Jerzy Nawrocki Mirosław Ochodek Tomasz Głowacki Published
More informationShared Mental Models
Shared Mental Models A Conceptual Analysis Catholijn M. Jonker 1, M. Birna van Riemsdijk 1, and Bas Vermeulen 2 1 EEMCS, Delft University of Technology, Delft, The Netherlands {m.b.vanriemsdijk,c.m.jonker}@tudelft.nl
More informationDesigning e-learning materials with learning objects
Maja Stracenski, M.S. (e-mail: maja.stracenski@zg.htnet.hr) Goran Hudec, Ph. D. (e-mail: ghudec@ttf.hr) Ivana Salopek, B.S. (e-mail: ivana.salopek@ttf.hr) Tekstilno tehnološki fakultet Prilaz baruna Filipovica
More informationEfficient Use of Space Over Time Deployment of the MoreSpace Tool
Efficient Use of Space Over Time Deployment of the MoreSpace Tool Štefan Emrich Dietmar Wiegand Felix Breitenecker Marijana Srećković Alexandra Kovacs Shabnam Tauböck Martin Bruckner Benjamin Rozsenich
More informationEmpirical Software Evolvability Code Smells and Human Evaluations
Empirical Software Evolvability Code Smells and Human Evaluations Mika V. Mäntylä SoberIT, Department of Computer Science School of Science and Technology, Aalto University P.O. Box 19210, FI-00760 Aalto,
More informationAutomating Outcome Based Assessment
Automating Outcome Based Assessment Suseel K Pallapu Graduate Student Department of Computing Studies Arizona State University Polytechnic (East) 01 480 449 3861 harryk@asu.edu ABSTRACT In the last decade,
More informationPRODUCT COMPLEXITY: A NEW MODELLING COURSE IN THE INDUSTRIAL DESIGN PROGRAM AT THE UNIVERSITY OF TWENTE
INTERNATIONAL CONFERENCE ON ENGINEERING AND PRODUCT DESIGN EDUCATION 6 & 7 SEPTEMBER 2012, ARTESIS UNIVERSITY COLLEGE, ANTWERP, BELGIUM PRODUCT COMPLEXITY: A NEW MODELLING COURSE IN THE INDUSTRIAL DESIGN
More informationHistorical maintenance relevant information roadmap for a self-learning maintenance prediction procedural approach
IOP Conference Series: Materials Science and Engineering PAPER OPEN ACCESS Historical maintenance relevant information roadmap for a self-learning maintenance prediction procedural approach To cite this
More informationOn the implementation and follow-up of decisions
Borges, M.R.S., Pino, J.A., Valle, C.: "On the Implementation and Follow-up of Decisions", In Proc.of the DSIAge -International Conference on Decision Making and Decision Support in the Internet Age, Cork,
More informationIntroduction to Modeling and Simulation. Conceptual Modeling. OSMAN BALCI Professor
Introduction to Modeling and Simulation Conceptual Modeling OSMAN BALCI Professor Department of Computer Science Virginia Polytechnic Institute and State University (Virginia Tech) Blacksburg, VA 24061,
More informationMathematics Success Grade 7
T894 Mathematics Success Grade 7 [OBJECTIVE] The student will find probabilities of compound events using organized lists, tables, tree diagrams, and simulations. [PREREQUISITE SKILLS] Simple probability,
More informationIndiana Collaborative for Project Based Learning. PBL Certification Process
Indiana Collaborative for Project Based Learning ICPBL Certification mission is to PBL Certification Process ICPBL Processing Center c/o CELL 1400 East Hanna Avenue Indianapolis, IN 46227 (317) 791-5702
More informationAn ICT environment to assess and support students mathematical problem-solving performance in non-routine puzzle-like word problems
An ICT environment to assess and support students mathematical problem-solving performance in non-routine puzzle-like word problems Angeliki Kolovou* Marja van den Heuvel-Panhuizen*# Arthur Bakker* Iliada
More informationChamilo 2.0: A Second Generation Open Source E-learning and Collaboration Platform
Chamilo 2.0: A Second Generation Open Source E-learning and Collaboration Platform doi:10.3991/ijac.v3i3.1364 Jean-Marie Maes University College Ghent, Ghent, Belgium Abstract Dokeos used to be one of
More informationThe IDN Variant Issues Project: A Study of Issues Related to the Delegation of IDN Variant TLDs. 20 April 2011
The IDN Variant Issues Project: A Study of Issues Related to the Delegation of IDN Variant TLDs 20 April 2011 Project Proposal updated based on comments received during the Public Comment period held from
More informationEQuIP Review Feedback
EQuIP Review Feedback Lesson/Unit Name: On the Rainy River and The Red Convertible (Module 4, Unit 1) Content Area: English language arts Grade Level: 11 Dimension I Alignment to the Depth of the CCSS
More informationPRINCE2 Practitioner Certification Exam Training - Brochure
PRINCE2 Practitioner Certification Exam Training - Brochure The Credential that makes you a Project Management Specialist Course Name : PRINCE2_P Version : INVL_PRINCE2P_BR_02_035_1.2 Course ID : PMGT
More informationBeyond the Blend: Optimizing the Use of your Learning Technologies. Bryan Chapman, Chapman Alliance
901 Beyond the Blend: Optimizing the Use of your Learning Technologies Bryan Chapman, Chapman Alliance Power Blend Beyond the Blend: Optimizing the Use of Your Learning Infrastructure Facilitator: Bryan
More information