Seamless Runtime Transformations from Natural Language to Formal Methods – A usecase of Z-Notation

Misbah Mehboob Awan, Wasi Haider Butt, Muhammad Waseem Anwar, Farooque Azam · 2022

Requirements specification in a crucial activity in Software Development Life Cycle (SDLC). Traditional requirements specification in Natural Language (NL) is error prone activity which may leads to project failure. This scenario is more critical in Systems of Systems (SOS) domain as different stakeholder have different perspectives and requirements. Hence formal requirements specification is a popular domain since many years. This is because formal methods guarantees that the software must meet the standards by clear and unambiguous specification of requirements. However, formal methods are complex and not easy to implement. Therefore, we have proposed a comprehensive automated framework which takes requirements in natural language and provides their seamless transformation in the respective formal language. This paper aims to reduce the overhead of specifying requirements in formal methods and at the same time helps to reap maximum benefits offered by formal methods. We have validated the proposed framework by implementing a popular Z-Notation case study. We have used xtext framework to write a Domain Specific Language (DSL) and provided a luxurious interface for writing requirements in NL and then provided the seamless side-by-side transformation in Z-Notation.

Read the paper · More papers on PaperTik