1 UML and Petri Nets for Test Case Generation From Fondue to CO-OPN: (my) first iteration.

Slides:



Advertisements
Similar presentations
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Advertisements

Unified Modeling Language
Object-Oriented Analysis and Design
1 Meta Modeling Tool Transformation from COOPN to COOPN using MDA.
1 From UML (Fondue) to COOPN An iterative approach applying MDA techniques.
NJIT Use Case Model Operation Contracts Prepared By: Sumit Sharma.
Institute For Software Integrated Systems Vanderbilt University Applications of Model Integrated Computing to The Synchronous Language Signal Ethan Jackson.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Translation of UML/OCL into BZPE format TestUML Project – INTERREG III – Meeting 12/02/04.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
1 From UML (Fondue) to COOPN. Luis Pedro2 Outline Transformation Approach COOPN2 Meta Model TOC for Models2005 paper.
CPN’04 UML and Petri Nets for Test Case Generation University of Geneva D.Buchs, L.Lúcio, L.Pedro.
Mining Metamodels From Instance Models: The MARS System Faizan Javed Department of Computer & Information Sciences, University of Alabama at Birmingham.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
חוזים – Contracts 1. Larman – Chapter 10 – SSDs 10.2 What are System Sequence Diagrams? (introduction) Use cases describe how external actors interact.
® Eurostep.ESUKPC v0.1©Copyright Eurostep Limited An Introduction to ISO STEP Part 25 David Price.
Chapter 7: The Object-Oriented Approach to Requirements
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Metadata Tools and Methods Chris Nelson Metanet Conference 2 April 2001.
SOEN 6011 Software Engineering Processes Section SS Fall 2007 Dr Greg Butler
MDE Model Driven Engineering Xavier Blanc Université Pierre et Marie Curie
Introduction to MDA (Model Driven Architecture) CYT.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Object-Oriented Analysis and Design An Introduction.
ET-ADRS-1, April ISO 191xx series of geographic information standards.
Automatic Test Generation from here until the end (of my Phd.) University of Geneva Levi Lúcio SMV & Les Diablerets.
1 Levi Lúcio © A Test Selection Language for CO-OPN Specifications Levi Lúcio, Luis Pedro and Didier Buchs University of Geneva.
111 Protocols CS 4311 Wirfs Brock et al., Designing Object-Oriented Software, Prentice Hall, (Chapter 8) Meyer, B., Applying design by contract,
Composition of UML Described Refactoring Rules Presented by Chin-Yi Tsai.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
CS 4850: Senior Project Fall 2014 Object-Oriented Design.
9-1 © Prentice Hall, 2007 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
Week III  Recap from Last Week Review Classes Review Domain Model for EU-Bid & EU-Lease Aggregation Example (Reservation) Attribute Properties.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Software Requirements: A More Rigorous Look 1. Features and Use Cases at a High Level of Abstraction  Helps to better understand the main characteristics.
The Unified Modeling Language (UML)
Apr. 8, 2002Calibration Database Browser Workshop1 Database Access Using D0OM H. Greenlee Calibration Database Browser Workshop Apr. 8, 2002.
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
ModTransf A Simple Model to Model Transformation Engine Cédric Dumoulin.
7-1 © Prentice Hall, 2007 Topic 7: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
UML - Development Process 1 Software Development Process Using UML.
Capturing Requirements. Questions to Ask about Requirements 1)Are the requirements correct? 2)Consistent? 3)Unambiguous? 4)Complete? 5)Feasible? 6)Relevant?
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
Interpreting the Object Constraint Presented by: Ed Kausmeyer.
Object Design More Design Patterns Object Constraint Language Object Design Specifying Interfaces Review Exam 2 CEN 4010 Class 18 – 11/03.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
A UML-Based Pattern Specification Technique Presented by Chin-Yi Tsai IEEE TRANSACTION ON SOFTWARE ENGINEERING, VOL. 30, NO. 3, MARCH 2004 Robert B. France,
Object Oriented Analysis & Design By Rashid Mahmood.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
Systems Analysis and Design in a Changing World, Fourth Edition
A Methodology and a Framework for Test Case Generation
Object-Oriented Analysis and Design
Lec 6: Practical Database Design Methodology and Use of UML Diagrams
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Object-Oriented Design
Model-Driven Ontology Engineering
Protocols CS 4311 Wirfs Brock et al., Designing Object-Oriented Software, Prentice Hall, (Chapter 8) Meyer, B., Applying design by contract, Computer,
Engineering Quality Software
Software Development Process Using UML Recap
Software Architecture & Design
Presentation transcript:

1 UML and Petri Nets for Test Case Generation From Fondue to CO-OPN: (my) first iteration

September 16, 2004Luis Pedro2 Outline User’s viewpoint: the 4 steps for test generation  The Model - Fondue approach  Deriving test cases and applying criteria  Implementation testing  Test results Developers viewpoint - OO Petri Nets to enable state space exploration  The Intermediate format  Steps to Transformation  …. Current work Next chapters…

3 User’s viewpoint: the 4 steps in the test generation Step 1: The Model

September 16, 2004Luis Pedro4 Step 1: The model UML (Fondue specification)  Software development process for reactive systems  Purpose is to produce description of the problem domain The functional requirements of the system  What it provides Concept Model: Defines the static structure of the information in the system Behavior Model: Defines the Input and Output communication of the system  Uses UML for notation (parts of different UML diagrams)  e.g Specification (models) Concept Model  Class Diagram Environment Model  Collaboration Diagram Protocol Model  State Diagram Operation Model  (OCL)

September 16, 2004Luis Pedro5 Step 1: The Model (cont.) Fondue (cont.)  Describes operations by operation schemas which specify operations by pre- and post conditions using OCL Effect of the operation on an abstract state representation of the system and by events sent to the outside world The change of state resulting from an operation's execution is described in terms of objects, attributes and association links, which conform to the constraints imposed by the analysis class model of the respective system. Restricted form of state diagrams is used to describe sequencing of system operations.  The Fondue process can be outlined by a UML class diagram showing usage dependencies between the models

September 16, 2004Luis Pedro6 Step 1: The Model (cont.) Fondue - ebanking example  Environment Model (messages from the user) > eBanking User loginUserName loginPasswd loginChallenge createPayment giveDetailsBeneficiary modifyPaiment deletePayment

September 16, 2004Luis Pedro7 Step 1: The Model (cont.) Fondue - ebanking example  Environment Model (messages from the system) > eBanking User sendChallengeNumber errorUserName errorPasswd errorChallenge errorUserBlocked errorPaymentCreation errorPaymentModification

September 16, 2004Luis Pedro8 Step 1: The Model (cont.) Fondue - ebanking example  Concept Model > eBanking User userName : String Passwd : Passwd Name : String loginTentativeNumber : Int userState: bool eUser id : CardId expirationDate: Date ChallengeCard position : ChallengeId anserPosition: String ChallengeCardElement position 1 table *0.. 1 > HasSessionId

September 16, 2004Luis Pedro9 The full picture Tests Model Criteria Driver Mapping Implementation Interface Oracle Assumptions Test Results Observation Mapping rules Application Production

10 Developers viewpoint - OO Petri Nets to enable state space exploration Steps to transformation and the Internal format

September 16, 2004Luis Pedro11 Steps to Transformation Goal: from Fondue to CO-OPN OCL translation  Fondue Operational Model Transformation (represents OO formalisms)  Object states and attributes;  Management of object creation and destruction  Typing references polymorphism  DataTypes: generators and operators

September 16, 2004Luis Pedro12 Step 1: Read/Load Fondue Model Export Fondue Model to XMI  Using Together Fondue export tool  Generates XMI Fondue Model Load Fondue Model  Fondue Metal Model described in terms of MOF MOF = M3 level -> Meta-MetaModel  Use of MDR Implementation of MOF Can be managed programmatically using JMI  Parse it with JMI Java Metadata Interface Rules for generating metamodel-specific Java API Defines a set of reflective interfaces that can be used similarly to the metamodel-specific Java API without prior knowledge of the metamodel

September 16, 2004Luis Pedro13 Step 1: Read/Load Fondue Model XMI [FondueMM ] Fondue Model FondueMM MOF desc Load by MDR Parse Using JMI Intermediate Format ?…

September 16, 2004Luis Pedro14 Step 2: The Environment model Environment model  1 CO-OPN Context  Operations  methods of the context  Output messages  Gates input output

September 16, 2004Luis Pedro15 Step 3: Concept model 1 Class  1 CO-OPN Class  Name  Name  Attributes  Places  Access methods: put, get, read Method put_a(x):: a y -> a x; Gate get_a(x):: a x -> a x; Gate read_a(x)::a x:: -> a x;  Associations as classes With source and target values  Instatioation of AADT Bag For each class put get

September 16, 2004Luis Pedro16 Step 3: Concept model 1 Class  1 CO-OPN Class  Name  Name  Attributes  Places  Access methods: put, get, read Method put_a(x):: a y -> a x; Gate get_a(x):: a x -> a x; Gate read_a(x)::a x:: -> a x; readput get ! Why don’t we have a Method get? Only Gates with get/read functions How can we see the difference between Gates and Methods Questions regarding this diagram

September 16, 2004Luis Pedro17 Step 4: Operation model Transform Fondue pre and post-conditions using OCL  Operation Schemas  (synchronization rules, algebraic equations)  … Not fully understood :-( Further investigation needed

September 16, 2004Luis Pedro18 Current work What’s done:  Fondue exportation XMI [FondueMM]  Read/Load Fondue Module Using a particular MDR implementation and Fondue MOF description  Parse Using JMI Environment model Concept model

September 16, 2004Luis Pedro19 Next chapters Finish the application simulated eBanking application Understand OCL and in particular Fondue Operation Schemas Prepare a first iteration for the translation process  To understand the full picture regarding relation between Fondue internal structure and CO-OPN

September 16, 2004Luis Pedro20 The end Questions... Comments