Simulation assisted elicitation and validation of behavioral specifications for multiple stakeholders
Upcoming SlideShare
Loading in...5
×
 

Simulation assisted elicitation and validation of behavioral specifications for multiple stakeholders

on

  • 373 views

Presentation delivered at the 3rd IEEE Track on

Presentation delivered at the 3rd IEEE Track on
Collaborative Modeling & Simulation - CoMetS'12.

Please see http://www.sel.uniroma2.it/comets12/ for further details.

Statistics

Views

Total Views
373
Views on SlideShare
373
Embed Views
0

Actions

Likes
0
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Simulation assisted elicitation and validation of behavioral specifications for multiple stakeholders Simulation assisted elicitation and validation of behavioral specifications for multiple stakeholders Presentation Transcript

    • Simulation-Assisted Elicitation & Validationof Behavioral Specifications for MultipleStakeholders3rd IEEE Track on Collaborative Modeling & Simulation – CoMetS’12Toulouse, France, 26-27 June 2012 Gregor Gabrysiak, Regina Hebig and Holger Giese System Analysis and Modeling Group Hasso Plattner Institute University of Potsdam, Germany
    • Capturing Collaborative Scenarios StH RE ... Task StH Elicitation/ Validation RE StH 1 Stakeholder StH RE Requirements Engineer RE Analysis: - consisteny/ compatibility, - identify missing scenarios RE Basic tasks • Elicitation, Validation • AnalysisRegina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 2
    • Capturing Collaborative Scenarios ... Task StH RE IR 1 Stakeholder StH Elicitation/ Validation StH RE ? StH Requirements Engineer IR RE RE FM Intuitive IR Representation ? Analysis: - consisteny/ compatibility, FM Formal Model - identify missing scenarios FM RE Language gap • Different language needsRegina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 3
    • Capturing Collaborative Scenarios StH ... Task RE IR Stakeholder StH Elicitation/ 1 Validation Translation/ StH RE Integration StH Requirements Engineer IR RE RE FM Intuitive IR Representation Translation Analysis: of Results - consisteny/ compatibility, FM Formal Model - identify missing scenarios FM RE Consequence: manual translationRegina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 4
    • Capturing Collaborative Scenarios StH ... Task RE IR Stakeholder StH Elicitation/ 1 Validation Translation/ StH RE Integration StH Requirements Engineer IR RE RE FM Intuitive IR Representation Translation Analysis: of Results - consisteny/ compatibility, FM Formal Model - identify missing scenarios FM RE Consequence: manual translation • Correctness of translation? • Very long feedback loopRegina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 4
    • Capturing Collaborative Scenarios ... Task Configure RE Domain Model 1 Stakeholder StH StH StH IR StH Elicitation/ Requirements Validation Translation/ Engineer Integration RE IR Intuitive IR Representation FM FM Formal Model Translation Analysis: of Results - consisteny/ compatibility, Simulator - identify missing scenarios FM RE Attempt: automated translation [GGS09] Gregor Gabrysiak, Holger Giese, and Andreas Seibel. Interactive Visualization for Elicitation and Validation of Requirements with Scenario-Based Prototyping. In Proc. of the 4th International Workshop on Requirements Engineering Visualization, RE’09, pages 41–45, Los Alamitos, CA, USA, 2009. IEEE Computer Society.Regina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 5
    • Capturing Collaborative Scenarios ... Task Configure RE Domain Model 1 Stakeholder StH StH StH IR StH Elicitation/ Requirements Validation Translation/ Engineer Integration RE IR Intuitive IR Representation FM FM Formal Model Translation Analysis: of Results - consisteny/ compatibility, Simulator - identify missing scenarios FM RE Attempt: automated translation • All collaborating stakeholders required at the same time • Still long feedback loop [GGS09] Gregor Gabrysiak, Holger Giese, and Andreas Seibel. Interactive Visualization for Elicitation and Validation of Requirements with Scenario-Based Prototyping. In Proc. of the 4th International Workshop on Requirements Engineering Visualization, RE’09, pages 41–45, Los Alamitos, CA, USA, 2009. IEEE Computer Society.Regina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 5
    • Capturing Collaborative Scenarios ... Task Configure RE Domain Model StH 1 Stakeholder StH IR StH Elicitation/ Requirements Validation Translation/ Engineer Integration RE StH Intuitive IR IR Story Representation Patterns FM Formal Model Translation Analysis: of Results - consisteny/ compatibility, Story - identify missing scenarios Simulator Pattners Solution: SimulationRegina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 6
    • Capturing Collaborative Scenarios ... Task Configure RE Domain Model StH 1 Stakeholder StH IR StH Elicitation/ Requirements Validation Translation/ Engineer Integration RE StH Intuitive IR IR Story Representation Patterns FM Formal Model Translation Analysis: of Results - consisteny/ compatibility, Story - identify missing scenarios Simulator Pattners Solution: Simulation • Independence and flexibility for collaborating stakeholdersRegina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 6
    • Capturing Collaborative Scenarios ... Task Configure RE Domain Model StH 1 Stakeholder StH IR StH Elicitation/ Requirements Validation Translation/ Engineer Integration RE StH Intuitive IR IR Story Representation Patterns FM Formal Model Translation Analysis: of Results - consisteny/ compatibility, Story - identify missing scenarios Simulator Pattners Solution: Simulation • Independence and flexibility for collaborating stakeholders • Already elicted behavior is simulated for other stakeholdersRegina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 6
    • Capturing Collaborative Scenarios ... Task Configure RE Domain Model StH 1 Stakeholder StH IR StH Elicitation/ Requirements Validation Translation/ Engineer Integration RE StH Intuitive IR IR Story Representation Patterns FM Formal Model Translation Analysis: of Results - consisteny/ compatibility, Story - identify missing scenarios Simulator Pattners Solution: Simulation • Independence and flexibility for collaborating stakeholders • Already elicted behavior is simulated for other stakeholders • Short feedback loop & relief for requirements engineerRegina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 6
    • Outline 1 Motivation: Capturing Collaborative Scenarios 2 Stakeholders’ Domain D 3 Simulating Actions of Stakeholders 4 Simulation Loops Configure RE Domain Model StH IR StH Elicitation/ Validation Translation/ Integration StH IR Story Patterns Translation Analysis: of Results - consisteny/ compatibility, Story - identify missing scenarios PattnersRegina Hebig, CoMetS’12, 26-27 June 2012 Motivation: Capturing Collaborative Scenarios 7
    • Modeling the Stakeholders’ Domain • Domain model D as metamodel for simulator language • D provides a set of basic concepts to construct generic sentences, e.g. a:Role knows f:Fact e:Email from a:Role to b:Role Ontology Ontology Interaction Email World Element from exchanges Visit to Artifact Role Fact Call has knows Figure: Basic domain model DRegina Hebig, CoMetS’12, 26-27 June 2012 Stakeholders’ Domain D 8
    • Modeling the Stakeholders’ Domain • D has to be extended to reflect the domain, e.g. ticket sales s:Seller knows t:TimeSlot v:Visit from m:Moviegoer to s:Seller Ontology Ontology Interaction Email World Element from exchanges Visit to Artifact Role Fact Call has knows Promotional Reservation Ticket Seller TimeSlot Number Material Money Moviegoer MovieTitle Figure: Extended domain model for ticket salesRegina Hebig, CoMetS’12, 26-27 June 2012 Stakeholders’ Domain D 9
    • Using D to Describe Situations Ontology Ontology Interaction Email World Element from exchanges Visit to Artifact Role Fact Call has knows Promotional Reservation Ticket Seller TimeSlot Number Material Money Moviegoer MovieTitle <<instanceOf>> sinit sterm ticketprice :Promotional :Promotional ticketprice seat12:Ticket :Money Material Material :Money has has has has has john john jane:Seller jane:Seller :Moviegoer :Moviegoer knows knows knows knows knows knows evening goodFather evening goodFather :TimeSlot :MovieTitle :TimeSlot :MovieTitle Figure: Domain model allows specification of statesRegina Hebig, CoMetS’12, 26-27 June 2012 Stakeholders’ Domain D 10
    • Outline 1 Motivation: Capturing Collaborative Scenarios 2 Stakeholders’ Domain D 3 Simulating Actions of Stakeholders 4 Simulation Loops Configure StH RE Domain Model IR StH Elicitation/ Validation Translation/ Integration StH IR Story Patterns Translation Analysis: of Results - consisteny/ compatibility, Story - identify missing scenarios PattnersRegina Hebig, CoMetS’12, 26-27 June 2012 Stakeholders’ Domain D 11
    • Simulating Actions of Stakeholders • Story pattern describe rules for state transitions SPc sn :TimeSlot knows :Ticket john knows goodFather knows ++has :Moviegoer :MovieTitle knows :Visit knows ? :Moviegoer :Visit this:Seller knows evening jane:Seller :TimeSlot :MovieTitle knows Figure: Can Jane already create the ticket for John?Regina Hebig, CoMetS’12, 26-27 June 2012 Simulating Actions of Stakeholders 12
    • Simulating Actions of Stakeholders • Story pattern describe rules for state transitions SPc sn :TimeSlot knows :Ticket john knows goodFather knows ++has :Moviegoer :MovieTitle knows :Visit knows ? :Moviegoer :Visit this:Seller knows evening jane:Seller :TimeSlot :MovieTitle knows Figure: Can Jane already create the ticket for John? SPc sn :TimeSlot knows :Ticket john knows goodFather knows ++has :Moviegoer :MovieTitle knows :Visit knows X :Moviegoer :Visit this:Seller knows evening jane:Seller :TimeSlot :MovieTitle knows Figure: Not without knowing when he wants to see the movieRegina Hebig, CoMetS’12, 26-27 June 2012 Simulating Actions of Stakeholders 12
    • Simulating Actions of Stakeholders SPb sn :Visit john knows goodFather :Moviegoer :MovieTitle this knows :Visit knows ? :Moviegoer :Seller evening knows ++knows jane:Seller :TimeSlot :TimeSlot Figure: Can John tell Jane the timeslot?Regina Hebig, CoMetS’12, 26-27 June 2012 Simulating Actions of Stakeholders 13
    • Simulating Actions of Stakeholders SPb sn :Visit john knows goodFather :Moviegoer :MovieTitle this knows :Visit knows ? :Moviegoer :Seller evening knows ++knows jane:Seller :TimeSlot :TimeSlot Figure: Can John tell Jane the timeslot? SPb sn+1 :Visit john knows goodFather :Moviegoer :MovieTitle this :Seller knows :Visit knows :Moviegoer evening knows ++knows jane:Seller :TimeSlot knows :TimeSlot Figure: Yes, he can share that informationRegina Hebig, CoMetS’12, 26-27 June 2012 Simulating Actions of Stakeholders 13
    • Outline 1 Motivation: Capturing Collaborative Scenarios 2 Stakeholders’ Domain D 3 Simulating Actions of Stakeholders 4 Simulation Loops Configure RE Domain Model StH IR StH Elicitation/ Validation Translation/ Integration StH IR Story Patterns Translation Analysis: of Results - consisteny/ compatibility, Story - identify missing scenarios PattnersRegina Hebig, CoMetS’12, 26-27 June 2012 Simulating Actions of Stakeholders 14
    • Simulation Loops: Play-Out I Interactive Simulator Visualization for Moviegoer Moviegoer (simulated) Seller Behavioral Behavioral Models Models of SellerRegina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 15
    • Simulation Loops: Play-Out I Interactive Simulator Visualization for Moviegoer Moviegoer (simulated) Seller Behavioral Behavioral Models Models of Seller simulator wait for check for [at least one [no SP belonging to g) chooses SP b) c) participants available SP SP available] participant available] to execute load initial a) process state start end [else] notify [final execute n) h) participants state chosen SP observed] • Step g is a random or strategy based choiceRegina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 16
    • Simulation Loops: Play-Out I Interactive Simulator Visualization simulator wait for check for [at least one [no SP belonging to for b) participants c) available SP SP available] participant available] g) chooses SP to execute Moviegoer Moviegoer load initial (simulated) a) process state Seller start end [else] Behavioral Behavioral n) notify [final execute h) Models Models of participants state observed] chosen SP Seller • Simulation of seller: SPc sn+1 :TimeSlot knows :Ticket john knows goodFather knows :Ticket ++has :Moviegoer :MovieTitle :Moviegoer :Visit this:Seller knows :Visit knows has knows evening jane:Seller :TimeSlot knows :MovieTitle knows SPd sn+2 :Visit john knows goodFather :Moviegoer :MovieTitle has knows :Visit knows :Moviegoer this:Seller evening :Ticket jane:Seller :TimeSlot knows :Ticket ++has --hasRegina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 17
    • Simulation Loops: Play-Out II Simulator Interactive Visualization for Seller Seller (simulated) Moviegoer Behavioral Behavioral Behavioral Models of Models of Models Seller MoviegoerRegina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 18
    • Simulation Loops: Play-Out II Simulator Interactive Visualization for Seller Seller (simulated) Moviegoer Behavioral Behavioral Behavioral Models of Models of Models Seller Moviegoer [at least one SP available] [no SP belonging to participant available] simulator wait for check for b) c) g) chooses SP participants available SP to execute [at least one SP belonging to participant available] load initial a) process state propose participants j) available SPs in GUI start [participant wants highlight SPs simulator to continue] k) already observed in identical sequence end [else] [else] [participant notify [final state chooses SP] n) observed] participants execute h) chosen SP • Available options proposed to user in natural languageRegina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 19
    • Simulation Loops: Play-Out II Simulator Interactive Visualization b) wait for c) check for [at least one SP available] [no SP belonging to participant available] simulator g) chooses SP participants available SP for Seller [at least one SP belonging to execute Seller (simulated) a) load initial to participant available] process state propose participants j) Moviegoer available SPs in GUI start [participant wants highlight SPs simulator to continue] k) already observed in identical sequence end [else] Behavioral Behavioral [else] [participant Behavioral Models of Models of n) notify participants [final state observed] chooses SP] execute Models Seller Moviegoer h) chosen SP • Proposed (previously observed) action for seller:Regina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 20
    • Simulation Loops: Play-In Simulator Interactive Visualization for Seller Seller (simulated) Derive from Moviegoer Session Behavioral Behavioral Behavioral Models of Models Models of Moviegoer SellerRegina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 21
    • Simulation Loops: Play-In Simulator Interactive Visualization for Seller Seller (simulated) Derive from Moviegoer Session Behavioral Behavioral Behavioral Models of Models Models of Moviegoer Seller [at least one SP available] [no SP belonging to participant available] simulator wait for check for b) c) g) chooses SP participants available SP [no SP to execute [at least one SP belonging available] to participant available] load initial observe GUI action a) d) propose participants process state of participant j) available SPs in GUI start [participant wants synchronize state highlight SPs e) simulator to continue] with GUI action k) already observed in identical sequence end [else] derive SP based f) on changes [else] notify [final state [participant chooses SP] n) observed] participants synchronize GUIs of execute m) h) affected participants chosen SP • Deriving story patterns from succeeding statesRegina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 22
    • Simulation Loops: Play-In Simulator Interactive Visualization b) wait for c) check for [at least one SP available] [no SP belonging to participant available] simulator g) chooses SP participants available SP for Seller [no SP available] [at least one SP belonging to participant available] to execute Seller a) load initial observe GUI action (simulated) process state d) of participant j) propose participants available SPs in GUI Derive from Moviegoer start synchronize state [participant wants e) highlight SPs simulator to continue] with GUI action Session k) already observed in identical sequence end [else] derive SP based f) on changes Behavioral Behavioral [else] Behavioral Models of n) notify participants [final state observed] [participant chooses SP] Models Models of m) synchronize GUIs of affected participants h) execute chosen SP Moviegoer Seller • Observation of seller’s behavior: Precondition sn john knows goodFather :Moviegoer :MovieTitle SPc :Ticket knows :Visit knows :TimeSlot ++has evening knows jane:Seller :TimeSlot knows knows :Moviegoer :Visit this:Seller sn+1 Which artifact do you want to create? john knows goodFather knows :Ticket :Moviegoer :MovieTitle Ticket :MovieTitle knows knows :Visit knows has Money evening jane:Seller Promotional Material :TimeSlot knows PostconditionRegina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 23
    • Simulation Loops: Play-In Simulator Interactive Visualization b) wait for c) check for [at least one SP available] [no SP belonging to participant available] simulator g) chooses SP participants available SP for Seller [no SP available] [at least one SP belonging to participant available] to execute Seller a) load initial observe GUI action (simulated) process state d) of participant j) propose participants available SPs in GUI Derive from Moviegoer start synchronize state [participant wants e) highlight SPs simulator to continue] with GUI action Session k) already observed in identical sequence end [else] derive SP based f) on changes Behavioral Behavioral [else] Behavioral Models of n) notify participants [final state observed] [participant chooses SP] Models Models of m) synchronize GUIs of affected participants h) execute chosen SP Moviegoer Seller • Observation of seller’s behavior: Precondition sn john knows goodFather :Moviegoer :MovieTitle SPc :Ticket knows :Visit knows :TimeSlot ++has evening knows jane:Seller :TimeSlot knows knows :Moviegoer :Visit this:Seller sn+1 Which artifact do you want to create? john knows goodFather knows :Ticket :Moviegoer :MovieTitle Ticket :MovieTitle knows knows :Visit knows has Money evening jane:Seller Promotional Material :TimeSlot knows PostconditionRegina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 23
    • Conclusions Configure RE Domain Model StH IR StH Elicitation/ Validation Translation/ Integration StH IR Story Patterns Translation Analysis: of Results - consisteny/ compatibility, Story - identify missing scenarios Pattners ⇒ Reduced elicitation/validation loop for collaborative scenariosRegina Hebig, CoMetS’12, 26-27 June 2012 Simulation Loops 24