Supporting Scenario-Based Requirements Engineering
IEEE Transactions on Software Engineering
The unified software development process
The unified software development process
PCI system architecture (4th ed.)
PCI system architecture (4th ed.)
Concurrency: state models & Java programs
Concurrency: state models & Java programs
LSCs: Breathing Life into Message Sequence Charts
Formal Methods in System Design
PROPEL: an approach supporting property elucidation
Proceedings of the 24th International Conference on Software Engineering
Branching vs. Linear Time: Final Showdown
TACAS 2001 Proceedings of the 7th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
NuSMV 2: An OpenSource Tool for Symbolic Model Checking
CAV '02 Proceedings of the 14th International Conference on Computer Aided Verification
Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic
Logic of Programs, Workshop
Come, Let's Play: Scenario-Based Programming Using LSC's and the Play-Engine
Come, Let's Play: Scenario-Based Programming Using LSC's and the Play-Engine
Agile Project Management With Scrum
Agile Project Management With Scrum
Developing use cases and scenarios in the requirements process
Proceedings of the 27th international conference on Software engineering
From Live Sequence Charts to State Machines and Back: A Guided Tour
IEEE Transactions on Software Engineering
Requirements Engineering
A Practical Introduction to PSL (Series on Integrated Circuits and Systems)
A Practical Introduction to PSL (Series on Integrated Circuits and Systems)
Existential live sequence charts revisited
Proceedings of the 30th international conference on Software engineering
The temporal logic of programs
SFCS '77 Proceedings of the 18th Annual Symposium on Foundations of Computer Science
Embedding finite automata within regular expressions
Theoretical Computer Science
Synthesis of Partial Behavior Models from Properties and Scenarios
IEEE Transactions on Software Engineering
Software Engineering: A Practitioner's Approach
Software Engineering: A Practitioner's Approach
Applying restricted english grammar on automotive requirements: does it work? a case study
REFSQ'11 Proceedings of the 17th international working conference on Requirements engineering: foundation for software quality
Supporting incremental behaviour model elaboration
Computer Science - Research and Development
Supporting incremental behaviour model elaboration
Computer Science - Research and Development
Hi-index | 0.00 |
Scenarios and use cases are popular means of describing the intended system behaviour. They support a variety of features and, notably, allow for two different interpretations: existential and universal. These modalities allow a progressive shift from examples to general rules about the expected system behaviour. The combination of modalities in a scenario-based specification poses technical challenges when automated reasoning is to be provided. In particular, the use of conditional existential scenarios, of which use cases with preconditions are a common example, require reasoning in branching time. Yet, formally grounded approaches to requirements engineering and industrial verification approaches shy away from branching-time logics due to their relatively unintuitive semantics. In this paper, we define an extension of an (industry standard) linear-time logic with sufficient branching expressiveness to allow capturing conditional existential statements. The resulting logic, called CSSL (Conditional Scenario Specification Language), has an efficient model-checking procedure. It supports reasoning about heterogeneous requirements specifications that include universal and existential statements in the form of use cases and conditional existential scenarios, and other sequence chart variants, in addition to general (linear) liveness and safety properties. We report on two industrial case studies in which the logic was used to specify and verify scenarios and properties.