Download presentation
Presentation is loading. Please wait.
Published byArabella Hood Modified over 8 years ago
1
Inferring Declarative Requirements Specification from Operational Scenarios IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 24, NO. 12, DECEMBER, 1998 Axel van Lamsweerde and Laurent Willemet Presented by Chin-Yi Tsai Scenario Temporal Logical Assertion
2
2 Outline Introduction Introduction Goal-Based RE with KAOS Goal-Based RE with KAOS Integrating Scenario-Based and Goal-Based RE Integrating Scenario-Based and Goal-Based RE The Goal Inference Procedure The Goal Inference Procedure A Complete Example: The Lift System A Complete Example: The Lift System Goal-level Analysis of Specifications Inferred from Scenarios Goal-level Analysis of Specifications Inferred from Scenarios Related Work Related Work Conclusion Conclusion
3
3 Introduction Scenarios are easy to obtain and understand Scenarios are easy to obtain and understand Effective means of communication Effective means of communication Scenario based on requirement engineering Scenario based on requirement engineering Scenarios are increasingly recognized as an effective means for eliciting, validating, and documenting software requirements. Scenarios are increasingly recognized as an effective means for eliciting, validating, and documenting software requirements. Sequences of interaction steps Sequences of interaction steps
4
4 Introduction (cont’d) (Event trace diagram) Similar to Sequence Diagram
5
5 Introduction (cont’d) Weaknesses of scenarios Weaknesses of scenarios Scenarios are partial Scenarios are partial Scenarios leave certain properties implicit Scenarios leave certain properties implicit Scenarios are based on instance level Scenarios are based on instance level Number of scenarios required to describe a system entirely is too high (comb. explosion) Number of scenarios required to describe a system entirely is too high (comb. explosion) Infer general and explicit rules (=requirements) from scenarios. Infer general and explicit rules (=requirements) from scenarios. Temporal logic Formal specification of goals and requirements
6
6 Introduction (cont’d) The output language in which goals and requirements are specified is the KAOS goal-based specification language. The output language in which goals and requirements are specified is the KAOS goal-based specification language. Integrated in the KAOS methodology for goal-based RE Integrated in the KAOS methodology for goal-based RE Conflict analysis, obstacle analysis, the inference of higher-level goal, the derivation of alternative scenarios Conflict analysis, obstacle analysis, the inference of higher-level goal, the derivation of alternative scenarios Scenario KAOS goal-based Spec. Language infer
7
7 Goal-Based RE with KAOS The KAOS methodology is aimed at supporting the whole process of requirement The KAOS methodology is aimed at supporting the whole process of requirement From the high-level goals to be achieved to the requirements, objects and operations to be assigned to the various agents in the composite system. From the high-level goals to be achieved to the requirements, objects and operations to be assigned to the various agents in the composite system. The methodology comprises a specification language, an elaboration method, and meta-level knowledge used for local guidance during method enactment. The methodology comprises a specification language, an elaboration method, and meta-level knowledge used for local guidance during method enactment.
8
8 The Specification Language The underlying ontology The underlying ontology Object Object Entity Entity Relationship Relationship Event Event Operation Operation Agent Agent Goal Goal Requisite, requirement, assumption Requisite, requirement, assumption Language constructs Language constructs Temporal logic Temporal logic
9
9 The Elaboration Method
10
10 Using Meta-Level Knowledge At each step of goal-driven method, domain- independent knowledge can be used for local guidance and validation in the elaboration process. At each step of goal-driven method, domain- independent knowledge can be used for local guidance and validation in the elaboration process.
11
11 Integrating Scenario-Based and Goal-Based RE Experience with scenario Experience with scenario Scenarios play a decisive role in eliciting, validating, and explaining requirements. Scenarios play a decisive role in eliciting, validating, and explaining requirements. Preliminary material from interviews and existing documents Preliminary material from interviews and existing documents Narrative text describing instance-level behavior of agents Narrative text describing instance-level behavior of agents Partial Partial implicit implicit
12
12 Integrating Scenario-Based and Goal-Based RE
13
13 The Goal-Inference Problem Achieve/Cease Maintain/Avoid
14
14 The Goal Inference Procedure 1. Cleaning up scenarios 2. Mapping interaction events to operations 3. Generating state predicates along time lines 4. Inferring temporal logic assertions from a single scenario 5. Integration in the admissible set of specification 6. Validation and further goal elicitation Iterative
15
15 Cleaning Up Scenarios Clean up rules Clean up rules Event aggregation Event aggregation Elimination of non-shared phenomena Elimination of non-shared phenomena Eliminate all events generated by environment Eliminate all events generated by environment Scope restriction Scope restriction Are not relevant to some aspect of interest Are not relevant to some aspect of interest
16
16 Cleaning Up Scenarios (cont’d)
17
17 Mapping Interaction Events to Operations
18
18 Generating State Predicates along Time Lines State predicates State predicates Condition lists Condition lists The domain pre/postcondition The domain pre/postcondition The objective of this step is to determine the exact state of each agent instance before and after each interaction. The objective of this step is to determine the exact state of each agent instance before and after each interaction. infer
19
19 Inferring Temporal Logic Assertions from a Single Scenario Finding out meaningful candidate temporal logic assertions that are satisfied by the annotated agent lines in the event trace diagram considered. Finding out meaningful candidate temporal logic assertions that are satisfied by the annotated agent lines in the event trace diagram considered. A progress property is obtained by causally linking the agent’s states before and after an outgoing arrow. A progress property is obtained by causally linking the agent’s states before and after an outgoing arrow. An invariant property is obtained by finding a state transition along the agent’s line at which some condition in the agent’s condition list is true and remains subsequently true along the time line up to some point. An invariant property is obtained by finding a state transition along the agent’s line at which some condition in the agent’s condition list is true and remains subsequently true along the time line up to some point.
20
20 Integration in the Admissible set of Specification Integrating a positive scenario Integrating a positive scenario Integrating a negative scenario Integrating a negative scenario
21
21 Validation and further goal elicitation
22
22 Conclusion Scenarios are an effective means for eliciting requirements, but they are not sufficient. Scenarios are an effective means for eliciting requirements, but they are not sufficient. The suggested approach is to transform a model of various scenarios into a model of formal goal specifications. The suggested approach is to transform a model of various scenarios into a model of formal goal specifications. The benefits: The benefits: information left implicit in scenarios is made explicit information left implicit in scenarios is made explicit the obtained model is more general, more precise and more compact the obtained model is more general, more precise and more compact further formal methods can be applied further formal methods can be applied
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.