A systematic approach to transforming system requirements into model checking specifications

We propose a method that addresses the following dilemma: model checking can formally expose off-nominal behaviors and unintended scenarios in the requirements of concurrent reactive systems. Requirements engineers and non-technical stakeholders who are the system domain experts can greatly benefit from jointly using model checking during the elicitation, analysis, and verification of system requirements. However, model checking is formal verification and many requirements engineers and domain experts typically lack the knowledge and training needed to apply model checking to the formal verification of requirements. To get full advantages of model checking and domain experts’ knowledge in verifying the system, we proposed a front end framework to model checking and evaluated our approach using a real world application.

[1]  Fausto Giunchiglia,et al.  NUSMV: A New Symbolic Model Verifier , 1999, CAV.

[2]  S. Krishna,et al.  Requirements engineering: problem domain knowledge capture and the deliberation process support , 1999, Proceedings. Tenth International Workshop on Database and Expert Systems Applications. DEXA 99.

[3]  David L. Dill,et al.  Automatic verification of the SCI cache coherence protocol , 1995, CHARME.

[4]  Martin Giese,et al.  From Informal to Formal Specifications in UML , 2004, UML.

[5]  Seok-Won Lee,et al.  Evaluating the use of model-based requirements verification method: A feasibility study , 2011, Workshop on Empirical Requirements Engineering (EmpiRE 2011).

[6]  Edmund M. Clarke,et al.  Compositional model checking , 1989, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science.

[7]  Nancy G. Leveson SYSTEMIC FACTORS IN SOFTWARE-RELATED SPACECRAFT ACCIDENTS , 2001 .

[8]  Somesh Jha,et al.  Verification of the Futurebus+ cache coherence protocol , 1993, Formal Methods Syst. Des..

[9]  Naoyasu Ubayashi,et al.  A context analysis method for embedded systems — Exploring a requirement boundary between a system and its context , 2011, 2011 IEEE 19th International Requirements Engineering Conference.

[10]  Myla Archer,et al.  Using Abstraction and Model Checking to Detect Safety Violations in Requirements Specifications , 1998, IEEE Trans. Software Eng..

[11]  Marco Pistore,et al.  Model checking early requirements specifications in Tropos , 2001, Proceedings Fifth IEEE International Symposium on Requirements Engineering.

[12]  Eric S. K. Yu,et al.  Social Modeling and i* , 2009, Conceptual Modeling: Foundations and Applications.

[13]  Barry W. Boehm,et al.  Software Defect Reduction Top 10 List , 2001, Computer.

[15]  David Notkin,et al.  Model checking large software specifications , 1996, SIGSOFT '96.

[16]  George S. Avrunin,et al.  Property specification patterns for finite-state verification , 1998, FMSP '98.

[17]  Chao Wang,et al.  Peephole Partial Order Reduction , 2008, TACAS.

[18]  Joanne M. Atlee,et al.  Feasibility of model checking software requirements: a case study , 1996, Proceedings of 11th Annual Conference on Computer Assurance. COMPASS '96.

[19]  Sanjai Rayadurgam,et al.  Toward Automation for Model-Checking Requirements Specifications with Numeric Constraints , 2002, Requirements Engineering.

[20]  Bashar Nuseibeh,et al.  Requirements engineering: a roadmap , 2000, ICSE '00.

[21]  Joanne M. Atlee,et al.  State-Based Model Checking of Event-Driven System Requirements , 1993, IEEE Trans. Software Eng..

[22]  N. Rani,et al.  The Importance of 'Risk Radar' in Software Risk Management: A Case of a Malaysian Company , 2010 .

[23]  Betty H. C. Cheng,et al.  Facilitating the construction of specification pattern-based properties , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[24]  Becky L. Hooey,et al.  IMPROVING EVALUATION AND SYSTEM DESIGN THROUGH THE USE OF OFF-NOMINAL TESTING: A METHODOLOGY FOR SCENARIO DEVELOPMENT , 2003 .

[25]  Seok-Won Lee,et al.  Interactive requirements validation for reactive systems through virtual requirements prototype , 2011, 2011 Model-Driven Requirements Engineering Workshop.

[26]  Nancy G. Leveson,et al.  The Role of Software in Recent Aerospace Accidents , 2001 .

[27]  Axel van Lamsweerde,et al.  Formal specification: a roadmap , 2000, ICSE '00.

[28]  Barry Boehm,et al.  Top 10 list [software development] , 2001 .

[29]  Stefania Gnesi,et al.  Assisting requirement formalization by means of natural language translation , 1994, Formal Methods Syst. Des..

[30]  Armin Biere,et al.  Bounded model checking , 2003, Adv. Comput..

[31]  Barry W. Boehm,et al.  Anchoring the Software Process , 1996, IEEE Softw..

[32]  Stephan Merz,et al.  Model Checking , 2000 .

[33]  Mats Per Erik Heimdahl,et al.  Model checking RSML/sup -e/ requirements , 2002, 7th IEEE International Symposium on High Assurance Systems Engineering, 2002. Proceedings..

[34]  Ofer Strichman,et al.  Bounded model checking , 2003, Adv. Comput..

[35]  George S. Avrunin,et al.  Patterns in property specifications for finite-state verification , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).