UML-based Test Generation and Execution
|
|
|
- Anthony Powell
- 10 years ago
- Views:
Transcription
1 UML-based Test Generation and Execution Jean Hartmann, Marlon Vieira, Herb Foster, Axel Ruder Siemens Corporate Research, Inc. 755 College Road East Princeton NJ 08540, USA ABSTRACT The Unified Modeling Language (UML) is gaining wide acceptance in industry and we, at Siemens Corporate Research, are seeking ways in which UML diagrams can be used as the basis for functional testing. Our approach focuses on developing effective techniques and tools for test case generation and coupling them with suitable execution tools for unit, integration and system testing. For example, our current approaches focus on integrating our techniques with the Rational Rose UML modeling tool and unit test execution tools such as Junit and system test tools, that is, capture-replay tools such as Compuware Testpartner. The goal of our approach is to generate a set of black-box conformance tests that can be used to validate a component, subsystem or application under test. 1. Introduction Improvements in software testing techniques are needed to address the increasingly complex applications that are implemented by today s software systems. The UML and its diagrams are widely used to visually depict the static structure and more importantly for us, the dynamic behavior of such applications. This trend provides us with an excellent opportunity to meld our proven test generation technology (TDE) with the UML and give developers and testers the capability of automatically generating black-box conformance tests early on. For unit and integration level testing, we can derive tests from UML Statecharts and Sequence diagrams, which embody the behavioral description of each component of interest and more importantly, the interactions or events between them. At the system level, we focus on UML Use Cases and Activity diagrams to convey the overall application behavior with users. In both cases, the diagrams are annotated with textual references, which represent the test requirements, that is, the data variations or choices as defined by the category-partition method. From these annotated diagrams, the test cases can then be derived using our test generation engine and executed with the help of the appropriate unit/integration or system test tool. Our approach aims at minimizing the testing costs, time and effort associated with initially developing customized test drivers, test stubs, and test cases as well as repeatedly adapting and rerunning them for regression testing purposes at each level of system integration. In this paper, we give an overview of some important aspects of our UML based testing techniques. However, for this workshop, we will focus on the approach for automatically generating and executing system tests. In Section 2, we present an overview of the category-partition method, which is the basis for our UML test generation methodology. Section 3 discusses our approach for unit and integration level testing using UML statechart diagrams. In Section 4, describes our approach for system level test generation. Section 5 presents conclusions and future work. 2. Category-Partition Method Underlying all of our UML-based testing approaches is the category-partition method that was developed at Siemens Corporate Research [1,2]. The method is embodied by the Test Specification Language (TSL) and realized by the Test Development Environment (TDE) tool. Thus, TSL is the notation used for writing test designs and TDE is the tool used for generating test scripts, executable or otherwise, from the test designs. 1
2 The category-partition method identifies behavioral equivalence classes within the structure of a system under test. A category or partition is defined by specifying all possible data choices that it can represent. Such choices can be either data values or references to other categories or partitions, or a combination of both. The data values may be string literals representing fragments of test scripts, code, or case definitions, which later can form the contents of a test case. In TSL, the type of a data value is dynamically determined by the context in which it is used. There are essentially five basic types: identifiers, numbers (integer and floating point), Booleans, strings, and lists. If TSL does not support a complex data structure directly, that is, the desired structure is not defined in the TSL s pre-defined functions or implemented data structures, then we can use the added power of TSL s embedded language (Tcl) to create {xe "Action block"}action blocks that can allow us to describe the desired structure. Tcl has a rich set of pre-defined functions and operators. It also supports a fairly complete set of commands for building and manipulating list structures. However, when applying the UML-based approaches below much of the knowledge required in creating TSL test designs is hidden from users, making these approaches much more userfriendly and widely applicable. 3. Unit and Integration Testing We have developed an approach for unit and integration testing, which focuses on testing the APIs of software components that form part of the server-side application or business logic [3,4]. It is important to ensure that components are delivered in conformance with their specifications, which typically consist of definitions of their interfaces and the legal order in which operations may be invoked on them. It is also important to validate if the individual components are correctly integrated into the system. While each component may have behaved correctly during unit testing, it may not do so when interacting with other components due to, for example, interface mismatches. Currently, component interfaces and their protocol specifications are being described or modeled in a variety of ways. For example, in the case of the Enterprise Java Beans Specification, this is achieved through contracts and Sequence Diagrams. While a UML Sequence Diagram is useful at describing a specific component interaction scenario, it may require a large number of such diagrams to completely specify the interaction of a complex component with its client(s). A more concise and compact way is to represent such scenarios is to depict them via a UML Statechart Diagram. Our approach requires the formulation of a UML Statechart Diagram for each component and the modeling of events or interactions between components using a CSP-like notation and the composition of these Statecharts. Such a composed Statechart model represents a global behavioral model for a set of integrated components and is automatically created using incremental composition techniques. In this global behavioral model, the significant properties, that is, behaviors, of the individual state machines are preserved. Particular consideration was given to addressing the issues of scalability and complexity with respect to the composition method. Using this model, tests cases are generated for unit and integration testing. Before our TDE/UML test generator can create test cases, the UML Statechart Diagram has to be annotated by the user with additional test data such as coverage requirements, constraints and preconditions. Once this information has been added to the diagram, our tool is able to generate the corresponding TSL test design, and then compile this test design to create the test cases. A TSL test design is created from a statechart or a global behavioral model (composed statecharts) by mapping states and transitions to TSL categories or partitions, and choices. States are the equivalence classes and are therefore represented by partitions. Each transition from the state is represented as a choice of the category/partition. Only partitions are used for equivalence class definitions, because paths through the state machine are not limited to certain outgoing transitions for a state; this would be the case when using a category. Each transition defines a choice for the current state, combining a test data string (the send and receive event) and a reference to the next state. A final state defines a choice with an empty test data string. TDE creates test cases in order to satisfy all specified coverage requirements. Input sequences for the subsystem are equivalent to paths within the global behavioral model that represents the 2
3 subsystem, starting with the initial states. Receive transitions with events from external connections stimulate the subsystem. Send transitions with events to external connections define the resulting output that can be observed by the test execution tool. All communication is performed through events. While TDE/UML is capable of generating a set of executable test cases, it does not execute them. For this purpose, we rely on generic unit testing tools such as Junit for Java, CppUnit for C++ or our own specialized C++ and COM-specific unit test harness, TECS [5]. The TECS tool includes the following features: (1) Test Harness Library this is a framework that provides the basic infrastructure for creating the executable test drivers; (2) Test Case Compiler it is used to generate test cases from a test case definition ; (3) Sink Generator it is used to generate C++ sink classes out of an COM IDL interface definition file, and (4) Test Control Center it provides the developer a way of running test cases interactively through a graphical user interface or in batch mode. The information generated during test execution is written into an XML-based tracefile. The Test Control Center provides different views of this data such as a trace view, an error list, and an execution summary. Together, these two tools, TDE/UML and TECS, form the UML-based test environment known as TnT. 3. System Testing We have also developed an approach for automatically generating and executing system tests for command-line or User Interface-based applications [6]. With this approach, tests are automatically generated from behavioral models of the application, that is, from UML Use Cases and Activity Diagrams and then executed using a UI capture/replay tool. This approach encompasses the following tasks: 1. Modeling system behavior, that is, describing it from scratch or semi-automatically converting existing textual use case specifications into the appropriate UML models. 2. Generating an executable set of test cases or test scripts using the above explicit visual models of system behavior. 3. Executing these test scripts and performing verification, both manually and automated. 3
4 The figure below shows how the different tasks described above have been realized as a suite of tools. Initially, users can either model directly in Rational Rose or make use of our UML Editor Kit to semi-automatically convert an existing set of use case specifications written in Microsoft Word into models readable by Rational Rose, the UML visual modeling tool. Users then annotate and refine the UML diagrams in preparation for test generation. Our TDE test generator is then executed in order to generate the required set of test cases in XML (EXtensible Markup Language). These test cases are then in turn converted to a set of executable test scripts via an appropriate XSL (Extensible Stylesheet Language) template and executed using the UI test execution tool of choice. Our approach considers testing interactive systems as the process of verifying sequence of user actions and system responses, that is, the relationships between a specific user action and the subsequent system response. Although the use case diagram gives an idea as to the type of functionalities that the system performs, it doesn t represent the order in which these use cases might occur or how the interactions between actors (i.e., users) and the system are conducted. Activity diagrams are generally suitable to model these sequences and interactions, since the diagrams represent the flow driven by external events and internal processing. In order to be useful for test generation, an Activity Diagram must include annotations in the form of UML stereotypes (and notes) and guard conditions specification; those annotations must adhere to certain format rules. Each activity, shown by an elliptical box in the UML activity diagram, must be annotated with one of the following stereotypes: <<UserAction>>, <<SystemResponse>> or <<Include>> to indicate whether it is a user or system activity, while the latter stereotype enables the test generator to replace this activity with the entire activity diagram for the use case specified. Depending on the complexity of the system under test, it may be necessary to specify expressions in the guard conditions, which govern conditional flows. In this case, our approach requires the test designer to define variables in the diagram using the <<define>> stereotype. This variable definition list is represented as a text label in the diagram and must be attached to the <<UserAction>> activity where the variable has its origin. A TSL test design is created from the activity diagram by mapping its activities and transitions to TSL partitions and choices. It is important to realize that the control flow within the diagram is totally determined by the diagram variables. These represent the various user inputs and the part of the system state that is relevant for this particular use case. Thus, every test case is defined by choosing values for all the variables in the diagram. With respect to the category-partition method, every variable has to be mapped to a partition, which divides the value range of the variable according to its equivalence classes. Besides variable partitions, a partition is created for every activity and a choice within the partition for every outgoing transition. We have also developed support for the test execution process that focuses on capturing, modularizing and parameterizing a representative set of executable test scripts that can be run against the system under test using a commercial UI testing tool. The original TnT environment was thus enhanced to support this additional approach. TnT is now capable of not only generating test cases from Statechart and Sequence Diagrams, but also Use Cases, that is, Activity Diagrams. The environment has been updated to work with Rational Rose 2003 and Compuware TestPartner 3.0, although other UI testing tools could be used. 4
5 5. Conclusions and Future Work In this paper, we have presented an overview of an ongoing research and development project at Siemens Corporate Research in which UML-based models are being used to improve the testing of components, subsystems and applications. We have summarized different aspects of our approach and discussed their implementation. Our approach benefits from the use of COTS tools, such as Rational Rose and Compuware TestPartner, and the mature, in house tools such as TDE. Together, they provide a solid basis to continue conducting our anticipated empirical study on the effectiveness and efficiency of this approach. Several topics for future research have been identified. Among them are ways to: (1) improve the performance of the test case generation step and the reliability of the scripts executed, and (2) implementation of a more precise measurement technique for data coverage, particularly when we want to improve the process of test data creation and utilization of the data during test execution. Supporting test generation based on the upcoming UML2.0 standard is also an important research activity. We are adapting the approaches described above, for example, to the UML 2.0 Test Profile. Two possible approaches are being prototyped. These include: (1) using TDE/UML to generate test context, test behavior and data for specific test objectives in the UML Testing Profile; (2) annotating the UML Testing Profile test behavior description (State and Activity Diagrams) to optimize test case generation. Acknowledgements We would like to thank Dr. Jürgen Kazmeier, the Head of the Software Engineering Department at Siemens Corporate Research for his continued support of our work as well as Professor Manfred Broy and Michael Meisinger at the Technical University, Munich, for their cooperation. 6. References [1] M. Balcer, W. Hasling, and T. Ostrand, Automatic Generation of Test Scripts from Formal Test Specifications, Proceedings of ACM SIGSOFT'89 - Third Symposium on Software Testing, Verification, and Analysis (TAVS-3), ACM Press, pp , June [2] T.J. Ostrand and M. Balcer, The Category-Partition Method For Specifying and Generating Functional Tests, CACM, Vol. 31, No.6, June [3] J. Hartmann, C. Imoberdorf, and M. Meisinger, UML-Based Integration Testing. Proceedings of ISSTA 2000, Aug. 2000, pp [4] M. Meisinger, Automatic Test Case Generation From Communicating State Machines, M.S. Thesis, Technical University Munich, [5] J. Hartmann, Testing and Debugging of COM Components, Windows Developer Network, June [6] J. Hartmann, M. Vieira, H. Foster and A. Ruder, TDE/UML - A UML-based Test Generator to Support System Testing, submitted to Intl. Conference on Automated Software Engineering
UML-based Test Generation and Execution
UML-based Test Generation and Execution Axel Ruder Email:[email protected] +1 (609) 734 3632 Software Engineering Department Siemens Corporate Research Princeton, NJ 1 Outline Research at SCR Model
ProGUM-Web: Tool Support for Model-Based Development of Web Applications
ProGUM-Web: Tool Support for Model-Based Development of Web Applications Marc Lohmann 1, Stefan Sauer 1, and Tim Schattkowsky 2 1 University of Paderborn, Computer Science, D 33095 Paderborn, Germany {mlohmann,sauer}@upb.de
TDDC88 Lab 2 Unified Modeling Language (UML)
TDDC88 Lab 2 Unified Modeling Language (UML) Introduction What is UML? Unified Modeling Language (UML) is a collection of graphical notations, which are defined using a single meta-model. UML can be used
How To Test On A Model Driven Test On An Embedded System
Applying Model Driven Techniques to Mobile Testing Sang-Yong Byun Division of Computer Engineering, JeJu National University, Korea [email protected] Abstract Mobile Embedded Testing is the most important
Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements
Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements
Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation
Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation SHINPEI OGATA Course of Functional Control Systems, Graduate School of Engineering Shibaura Institute of
Automatic Test Data Generation for TTCN-3 using CTE
Automatic Test Data Generation for TTCN-3 using CTE Zhen Ru Dai, Peter H. Deussen, Maik Busch, Laurette Pianta Lacmene, Titus Ngwangwen FraunhoferInstitute for Open Communication Systems (FOKUS) Kaiserin-Augusta-Allee
Modeling the User Interface of Web Applications with UML
Modeling the User Interface of Web Applications with UML Rolf Hennicker,Nora Koch,2 Institute of Computer Science Ludwig-Maximilians-University Munich Oettingenstr. 67 80538 München, Germany {kochn,hennicke}@informatik.uni-muenchen.de
To introduce software process models To describe three generic process models and when they may be used
Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
UML TUTORIALS THE USE CASE MODEL
UML TUTORIALS THE USE CASE MODEL www.sparxsystems.com.au Sparx Systems 2004 Page 1/5 describes the proposed functionality of the new system. A Use Case represents a discrete unit of interaction between
Modeling Web Applications Using Java And XML Related Technologies
Modeling Web Applications Using Java And XML Related Technologies Sam Chung Computing & Stware Systems Institute Technology University Washington Tacoma Tacoma, WA 98402. USA [email protected] Yun-Sik
Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when
Implementation of an Open Source Toolset for CCM Components and Systems Testing *
Implementation of an Open Source Toolset for CCM Components and Systems Testing * Harold Batteram 1, Wim Hellenthal 1, Willem Romijn 1, Andreas Hoffmann 2, Axel Rennoch 2, Alain Vouffo 2 1 Bell Labs Advanced
SOFTWARE TESTING TRAINING COURSES CONTENTS
SOFTWARE TESTING TRAINING COURSES CONTENTS 1 Unit I Description Objectves Duration Contents Software Testing Fundamentals and Best Practices This training course will give basic understanding on software
Development of Tool Extensions with MOFLON
Development of Tool Extensions with MOFLON Ingo Weisemöller, Felix Klar, and Andy Schürr Fachgebiet Echtzeitsysteme Technische Universität Darmstadt D-64283 Darmstadt, Germany {weisemoeller klar schuerr}@es.tu-darmstadt.de
Enterprise Application Development Using UML, Java Technology and XML
Enterprise Application Development Using UML, Java Technology and XML Will Howery CTO Passage Software LLC 1 Introduction Effective management and modeling of enterprise applications Web and business-to-business
Verification of Good Design Style of UML Models
Verification of Good Design Style of UML Models Bogumiła Hnatkowska 1 1 Institute of Applied Informatics, Wrocław University of Technology, Wybrzeże Wyspiańskiego 27, 50-370 Wrocław, Poland [email protected]
Secure Document Circulation Using Web Services Technologies
Secure Document Circulation Using Web Services Technologies Shane Bracher Bond University, Gold Coast QLD 4229, Australia Siemens AG (Corporate Technology), Otto-Hahn-Ring 6, 81739 Munich, Germany [email protected]
Tool Support for Software Variability Management and Product Derivation in Software Product Lines
Tool Support for Software Variability Management and Product Derivation in Software s Hassan Gomaa 1, Michael E. Shin 2 1 Dept. of Information and Software Engineering, George Mason University, Fairfax,
Implementation Workflow
Implementation Workflow Michael Fourman Introduction Implement the design in terms of components source code, scripts, binaries, executables, etc. Flesh out the architecture Plan system integrations in
UNIFACE Component-based. Development Methodology UNIFACE V7.2. 151157206-00 Revision 0 Dec 2000 UMET
UNIFACE Component-based Development Methodology UNIFACE V7.2 151157206-00 Revision 0 Dec 2000 UMET UNIFACE Component-based Development Methodology Revision 0 Restricted Rights Notice This document and
Model Driven Testing AGEDIS Architecture Interfaces and Tools
Model Driven Testing AGEDIS Architecture Interfaces and Tools Alan Hartman Kenneth Nagin IBM Haifa Research Laboratory Haifa University Campus Haifa 31905 ISRAEL {hartman, nagin}@il.ibm.com Page 1 of 11
Going Faster: Testing The Web Application. By Adithya N. Analysis and Testing of Web Applications Filippo Ricca and Paolo Tonella
Testing Web Applications Testing Web Applications By Adithya N. Going Faster: Testing The Web Application Edward Hieatt and Robert Mee (IEEE Software) Analysis and Testing of Web Applications Filippo Ricca
Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53
Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software
IBM Rational Rhapsody
IBM Rational Rhapsody IBM Rational Rhapsody Reference Workflow Guide Version 1.9 License Agreement No part of this publication may be reproduced, transmitted, stored in a retrieval system, nor translated
Towards Integrating Modeling and Programming Languages: The Case of UML and Java
Towards Integrating Modeling and Programming Languages: The Case of UML and Java Patrick Neubauer, Tanja Mayerhofer, and Gerti Kappel Business Informatics Group, Vienna University of Technology, Austria
Case 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
Sofware Requirements Engineeing
Sofware Requirements Engineeing Three main tasks in RE: 1 Elicit find out what the customers really want. Identify stakeholders, their goals and viewpoints. 2 Document write it down (). Understandable
Example Software Development Process.
Example Software Development Process. The example software development process is shown in Figure A. The boxes represent the software development process kernels. The Software Unit Testing, Software Component
Desktop, Web and Mobile Testing Tutorials
Desktop, Web and Mobile Testing Tutorials * Windows and the Windows logo are trademarks of the Microsoft group of companies. 2 About the Tutorial With TestComplete, you can test applications of three major
Towards Collaborative Requirements Engineering Tool for ERP product customization
Towards Collaborative Requirements Engineering Tool for ERP product customization Boban Celebic, Ruth Breu, Michael Felderer, Florian Häser Institute of Computer Science, University of Innsbruck 6020 Innsbruck,
The Expressive Power of UML-based Web Engineering 1
The Expressive Power of UML-based Web Engineering 1 NORA KOCH AND ANDREAS KRAUS Ludwig-Maximilians-Universität München. Germany UML-based Web Engineering (UWE) is a development process for Web applications
Rotorcraft Health Management System (RHMS)
AIAC-11 Eleventh Australian International Aerospace Congress Rotorcraft Health Management System (RHMS) Robab Safa-Bakhsh 1, Dmitry Cherkassky 2 1 The Boeing Company, Phantom Works Philadelphia Center
A Platform Independent Testing Tool for Automated Testing of Web Applications
A Platform Independent Testing Tool for Automated Testing of Web Applications December 10, 2009 Abstract Increasing complexity of web applications and their dependency on numerous web technologies has
Software testing. Objectives
Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating
Open EMS Suite. O&M Agent. Functional Overview Version 1.2. Nokia Siemens Networks 1 (18)
Open EMS Suite O&M Agent Functional Overview Version 1.2 Nokia Siemens Networks 1 (18) O&M Agent The information in this document is subject to change without notice and describes only the product defined
Chapter 13: Program Development and Programming Languages
Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented
Model-Based Testing of Web Applications using NModel
Model-Based Testing of Web Applications using NModel Juhan Ernits 1, Rivo Roo 2, Jonathan Jacky 3, and Margus Veanes 4 1 University of Birmingham, UK [email protected] 2 Reach-U Ltd,Tartu, Estonia
SCADE System 17.0. Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System 17.0 1
SCADE System 17.0 SCADE System is the product line of the ANSYS Embedded software family of products and solutions that empowers users with a systems design environment for use on systems with high dependability
Generating Aspect Code from UML Models
Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany [email protected] Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,
Towards a Framework for Generating Tests to Satisfy Complex Code Coverage in Java Pathfinder
Towards a Framework for Generating Tests to Satisfy Complex Code Coverage in Java Pathfinder Matt Department of Computer Science and Engineering University of Minnesota [email protected] Abstract We present
Chapter 4 Software Lifecycle and Performance Analysis
Chapter 4 Software Lifecycle and Performance Analysis This chapter is aimed at illustrating performance modeling and analysis issues within the software lifecycle. After having introduced software and
Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces
Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The
Utilizing 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
Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS
Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS In order to ease the burden of application lifecycle management,
Java (12 Weeks) Introduction to Java Programming Language
Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short
Introduction to Synoptic
Introduction to Synoptic 1 Introduction Synoptic is a tool that summarizes log files. More exactly, Synoptic takes a set of log files, and some rules that tell it how to interpret lines in those logs,
Roadmap. Software Engineering. Software Engineering. Project Life Cycle. Database. Project Lifecycle
Database Project Lifecycle Philippe Bonnet, 2006 2 Software Engineering The implementation of a database application is a significant engineering endeavor The project must complete On time On budget The
Embedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer
Generate Results. Real Models. Real Code. Real Fast. Embedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer Andreas Henriksson, Ericsson [email protected]
Chapter 10 Practical Database Design Methodology and Use of UML Diagrams
Chapter 10 Practical Database Design Methodology and Use of UML Diagrams Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 10 Outline The Role of Information Systems in
Requirements engineering
Learning Unit 2 Requirements engineering Contents Introduction............................................... 21 2.1 Important concepts........................................ 21 2.1.1 Stakeholders and
Software Requirements Specification of A University Class Scheduler
Software Requirements Specification of A University Class Scheduler Deanna M. Needell Jeff A. Stuart Tamara C. Thiel Sergiu M. Dascalu Frederick C. Harris, Jr. Department of Computer Science University
Use-Case Analysis. ! What is it? ! From where did it come? ! Now part of UML
Use-Case Analysis Use-Case Analysis! What is it?! An informal, user-friendly, technique useful for functional requirements analysis and specification! From where did it come?! Ivar Jacobson, a Swedish
Real Time Developer Studio. Emmanuel Gaudin [email protected]
Real Time Developer Studio Emmanuel Gaudin [email protected] PragmaDev French SME, Beneficiary since 2006. Dedicated to the development of a modelling tool for the development of Event driven
estatistik.core: COLLECTING RAW DATA FROM ERP SYSTEMS
WP. 2 ENGLISH ONLY UNITED NATIONS STATISTICAL COMMISSION and ECONOMIC COMMISSION FOR EUROPE CONFERENCE OF EUROPEAN STATISTICIANS Work Session on Statistical Data Editing (Bonn, Germany, 25-27 September
Software Engineering. Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti
Software Engineering Session 3 Main Theme Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical
A DIAGRAM APPROACH TO AUTOMATIC GENERATION OF JSP/SERVLET WEB APPLICATIONS
A DIAGRAM APPROACH TO AUTOMATIC GENERATION OF JSP/SERVLET WEB APPLICATIONS Kornkamol Jamroendararasame, Tetsuya Suzuki and Takehiro Tokuda Department of Computer Science Tokyo Institute of Technology Tokyo
A Meeting Room Scheduling Problem
A Scheduling Problem Objective Engineering, Inc. 699 Windsong Trail Austin, Texas 78746 512-328-9658 FAX: 512-328-9661 [email protected] http://www.oeng.com Objective Engineering, Inc., 1999-2007. Photocopying,
Introduction to Automated Testing
Introduction to Automated Testing What is Software testing? Examination of a software unit, several integrated software units or an entire software package by running it. execution based on test cases
Traceability Method for Software Engineering Documentation
www.ijcsi.org 216 Traceability Method for Software Engineering Documentation Nur Adila Azram 1 and Rodziah Atan 2 1 Department of Information System, Universiti Putra Malaysia, Company Serdang, Selangor,
Generation of test cases from functional requirements. A survey
Generation of test cases from functional requirements. A survey Javier J. Gutiérrez, María J. Escalona, Manuel Mejías, Jesús Torres Department of Computer Languages and Systems University of Seville {javierj,
A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor
A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor Klaus Krogmann, Steffen Becker University of Karlsruhe (TH) {krogmann, sbecker}@ipd.uka.de Abstract: The actual benefits
Model Driven Interoperability through Semantic Annotations using SoaML and ODM
Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:
Test Driven Mobile Applications Development
, 23-25 October, 2013, San Francisco, USA Test Driven Mobile Applications Development Haeng Kon Kim Abstract Mobile applications testing is the most important factor in its software development. Mobile
Meta-Framework: A New Pattern for Test Automation
Meta-Framework: A New Pattern for Test Automation Ryan Gerard Symantec, Security 2.0 6595 Dumbarton Circle Fremont, CA 1-310-892-0821 [email protected] Amit Mathur Symantec, Security 2.0 6595 Dumbarton
Revel8or: Model Driven Capacity Planning Tool Suite
Revel8or: Model Driven Capacity Planning Tool Suite Liming Zhu 1,2, Yan Liu 1,2, Ngoc Bao Bui 1,2,Ian Gorton 3 1 Empirical Software Engineering Program, National ICT Australia Ltd. 2 School of Computer
Requirements Definition and Management Processes
Software Engineering G22.2440-001 Session 1 Sub-Topic 1 Requirements Definition & Management Processes and Tools Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute
DIABLO VALLEY COLLEGE CATALOG 2014-2015
COMPUTER SCIENCE COMSC The computer science department offers courses in three general areas, each targeted to serve students with specific needs: 1. General education students seeking a computer literacy
A SURVEY AND CLASSIFICATION OF SOFTWARE TESTING TOOLS
LAPPEENRANTA UNIVERSITY OF TECHNOLOGY Department of Information Technology Master of Science Thesis A SURVEY AND CLASSIFICATION OF SOFTWARE TESTING TOOLS The topic of the master s thesis has been accepted
A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT
A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT Cléver Ricardo Guareis de Farias, Marten van Sinderen and Luís Ferreira Pires Centre for Telematics and Information Technology (CTIT) PO Box
Unit Testing webmethods Integrations using JUnit Practicing TDD for EAI projects
TORRY HARRIS BUSINESS SOLUTIONS Unit Testing webmethods Integrations using JUnit Practicing TDD for EAI projects Ganapathi Nanjappa 4/28/2010 2010 Torry Harris Business Solutions. All rights reserved Page
Model-based Testing: Next Generation Functional Software Testing
Model-based Testing: Next Generation Functional Software Testing By Dr. Bruno Legeard Model-based testing (MBT) is an increasingly widely-used technique for automating the generation and execution of tests.
TATJA: A Test Automation Tool for Java Applets
TATJA: A Test Automation Tool for Java Applets Matthew Xuereb 19, Sanctuary Street, San Ġwann [email protected] Abstract Although there are some very good tools to test Web Applications, such tools neglect
Compliance and Requirement Traceability for SysML v.1.0a
1. Introduction: Compliance and Traceability for SysML v.1.0a This document provides a formal statement of compliance and associated requirement traceability for the SysML v. 1.0 alpha specification, which
Applying 4+1 View Architecture with UML 2. White Paper
Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was
Object-Oriented Design Guidelines
Adaptive Software Engineering G22.3033-007 Session 8 Sub-Topic 3 Presentation Object-Oriented Design Guidelines Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute
Execution of A Requirement Model in Software Development
Execution of A Requirement Model in Software Development Wuwei Shen, Mohsen Guizani and Zijiang Yang Dept of Computer Science, Western Michigan University {wwshen,mguizani,zijiang}@cs.wmich.edu Kevin Compton
A generic framework for game development
A generic framework for game development Michael Haller FH Hagenberg (MTD) AUSTRIA [email protected] Werner Hartmann FAW, University of Linz AUSTRIA [email protected] Jürgen Zauner FH
CDC UNIFIED PROCESS JOB AID
CDC UNIFIED PROCESS JOB AID Independent Verification & Validation Activities Document Purpose This Job Aid is a brief document listing the items to be noted, checked, remembered, and delivered when completing
Towards Flexible Business Process Modeling and Implementation: Combining Domain Specific Modeling Languages and Pattern-based Transformations
Towards Flexible Business Process Modeling and Implementation: Combining Domain Specific Modeling Languages and Pattern-based Transformations Steen Brahe 1 and Behzad Bordbar 2 1 Danske Bank and IT University
National University of Ireland, Maynooth MAYNOOTH, CO. KILDARE, IRELAND. Testing Guidelines for Student Projects
National University of Ireland, Maynooth MAYNOOTH, CO. KILDARE, IRELAND. DEPARTMENT OF COMPUTER SCIENCE, TECHNICAL REPORT SERIES Testing Guidelines for Student Projects Stephen Brown and Rosemary Monahan
Manage 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
Secure State UML: Modeling and Testing Security Concerns of Software Systems Using UML State Machines
Research Journal of Applied Sciences, Engineering and Technology 7(18): 3786-3790, 2014 ISSN: 2040-7459; e-issn: 2040-7467 Maxwell Scientific Organization, 2014 Submitted: October 26, 2013 Accepted: December
Mapping Business Process Modeling constructs to Behavior Driven Development Ubiquitous Language
Mapping Business Process Modeling constructs to Behavior Driven Development Ubiquitous Language Rogerio Atem de Carvalho, Fernando Luiz de Carvalho e Silva, Rodrigo Soares Manhaes Emails: [email protected],
Modeling Kahn Process Networks in the Dynamic Dataflow Formalism
Roy Kensmil Page 1 6/20/2013 Modeling Kahn Process Networks in the Dynamic Dataflow Formalism Roy Kensmil Leiden Institute of Advanced Computer Science (LIACS), Leiden, The Netherlands [email protected]
A Framework of Model-Driven Web Application Testing
A Framework of Model-Driven Web Application Testing Nuo Li, Qin-qin Ma, Ji Wu, Mao-zhong Jin, Chao Liu Software Engineering Institute, School of Computer Science and Engineering, Beihang University, China
Chapter 13: Program Development and Programming Languages
15 th Edition Understanding Computers Today and Tomorrow Comprehensive Chapter 13: Program Development and Programming Languages Deborah Morley Charles S. Parker Copyright 2015 Cengage Learning Learning
What is a life cycle model?
What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each
Appendix... B. The Object Constraint
UML 2.0 in a Nutshell Appendix B. The Object Constraint Pub Date: June 2005 Language The Object Constraint Language 2.0 (OCL) is an addition to the UML 2.0 specification that provides you with a way to
In this Lecture you will Learn: Implementation. Software Implementation Tools. Software Implementation Tools
In this Lecture you will Learn: Implementation Chapter 19 About tools used in software implementation How to draw component diagrams How to draw deployment diagrams The tasks involved in testing a system
Analysis of the Specifics for a Business Rules Engine Based Projects
Analysis of the Specifics for a Business Rules Engine Based Projects By Dmitri Ilkaev and Dan Meenan Introduction In recent years business rules engines (BRE) have become a key component in almost every
MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems http://www.sparxsystems.com. by Sparx Systems
OMG MDA Overview by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page:1 Trademarks Object Management Group, OMG, CORBA, Model Driven Architecture, MDA, Unified Modeling Language, UML,
Aspect Oriented Strategy to model the Examination Management Systems
Aspect Oriented Strategy to model the Examination Management Systems P.Durga 1, S.Jeevitha 2, A.Poomalai 3, Prof.M.Sowmiya 4 and Prof.S.Balamurugan 5 Department of IT, Kalaignar Karunanidhi Institute of
UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts
UPROM Tool: A Unified Business Process Modeling Tool for Generating Software Life Cycle Artifacts Banu Aysolmaz 1 and Onur Demirörs 2 1, 2 Informatics Institute, Middle East Technical University, Ankara,
WebSphere Business Modeler
Discovering the Value of SOA WebSphere Process Integration WebSphere Business Modeler Workshop SOA on your terms and our expertise Soudabeh Javadi Consulting Technical Sales Support WebSphere Process Integration
Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models?
Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models? Ludmila Penicina Institute of Applied Computer Systems, Riga Technical University, 1 Kalku, Riga, LV-1658,
