Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "1 UML and Petri Nets for Test Case Generation From Fondue to CO-OPN: (my) first iteration."— Presentation transcript:

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

2 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 3 User’s viewpoint: the 4 steps in the test generation Step 1: The Model

4 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)

5 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

6 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

7 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

8 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 1 0.. *0.. 1 > HasSessionId

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

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

11 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

12 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

13 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 ?…

14 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

15 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

16 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

17 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

18 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

19 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

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


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

Similar presentations


Ads by Google