Prema: A Tool for Precise Requirements Editing, Modeling and Analysis

We present Prema, a tool for Precise Requirement Editing, Modeling and Analysis. It can be used in various fields for describing precise requirements using formal notations and performing rigorous analysis. By parsing the requirements written in formal modeling language, Prema is able to get a model which aptly depicts the requirements. It also provides different rigorous verification and validation techniques to check whether the requirements meet users' expectation and find potential errors. We show that our tool can provide a unified environment for writing and verifying requirements without using tools that are not well inter-related. For experimental demonstration, we use the requirements of the automatic train protection (ATP) system of CASCO signal co. LTD., the largest railway signal control system manufacturer of China. The code of the tool cannot be released here because the project is commercially confidential. However, a demonstration video of the tool is available at https://youtu.be/BX0yv8pRMWs.

[1]  Yang Liu,et al.  Automated Requirements Validation for ATP Software via Specification Review and Testing , 2016, ICFEM.

[2]  Saheed A. Busari Towards search-based modelling and analysis of requirements and architecture decisions , 2017, 2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE).

[3]  Kim Guldstrand Larsen,et al.  Formal Methods for the Design of Real-Time Systems , 2004, Lecture Notes in Computer Science.

[4]  Ajitha Rajan,et al.  The effect of program and model structure on mc/dc test adequacy coverage , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[5]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[6]  Joseph Sifakis,et al.  Configuration logics: Modeling architecture styles , 2017, J. Log. Algebraic Methods Program..

[7]  Terence Parr,et al.  The Definitive ANTLR 4 Reference , 2013 .

[8]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[9]  Darren D. Cofer,et al.  DO-333 Certification Case Studies , 2014, NASA Formal Methods.

[10]  Christel Baier,et al.  Principles of model checking , 2008 .

[11]  Kim G. Larsen,et al.  MDM: A Mode Diagram Modeling Framework for Periodic Control Systems , 2012, ArXiv.

[12]  Joseph Sifakis,et al.  Early validation of system requirements and design through correctness-by-construction , 2018, J. Syst. Softw..

[13]  Aurora Vizcaíno,et al.  Requirements engineering tools: Capabilities, survey and assessment , 2012, Inf. Softw. Technol..

[14]  Wang Yi,et al.  Timed Automata: Semantics, Algorithms and Tools , 2003, Lectures on Concurrency and Petri Nets.

[15]  Tony Gorschek,et al.  Requirements Engineering for Safety-Critical Systems: An Interview Study with Industry Practitioners , 2020, IEEE Transactions on Software Engineering.