Combining Object-Oriented Paradigm and Controlled Natural Language for Requirements Specification
Natural language is the dominant form of writing software requirements. Its essential ambiguity causes inconsistency of requirements, which leads to scope creep. On the other hand, formal requirements specification notations such as Z, Petri Nets, SysML, and others are difficult to understand by non-technical project stakeholders. They often become a barrier between developers and requirements providers. The article presents a controlled natural language that looks like English but is a strongly typed object-oriented language compiled to UML/XMI. Thus, it is easily understood, at the same time, by non-technical people, programmers, and computers. Moreover, it is formally verifiable and testable. It was designed, developed, and tested in three commercial software projects in order to validate the assumption that object-oriented design can be applied to requirements engineering at the level of specifications writing. The article outlines key features of the language and summarizes the experience obtained during its practical application.
Yegor Bugayenko is a Lab Director in Huawei RRI, a founder of Zerocracy, which replaces annoying bosses with AI bots; an OOP fundamentalist; an author of “Elegant Objects” book series; a provocative blogger at yegor256.com; a creator of Zold, a non-Blockchain cryptocurrency for fast micro-payments; a hands-on Java and Ruby programmer; a creator of Cactoos, Takes, JCabi, and Rultor; a philanthropist donating four thousand dollars annually to an open source award.
Sun 17 OctDisplayed time zone: Central Time (US & Canada) change
09:00 - 10:20 | BCNC Session 1BCNC at Zurich G Chair(s): Ahmed ElBatanony Innopolis University, Giancarlo Succi Innopolis University | ||
09:00 20mTalk | Volatility Metric to Detect Anomalies in Source Code Repositories BCNC Yegor Bugayenko Huawei DOI | ||
09:20 20mTalk | Rapid Prototyping of Chatbots for Data Exploration BCNC Giuseppe Desolda University of Bari, Rosa Lanzilotti University of Bari, Maristella Matera Politecnico di Milano, Emanuele Pucci Awhy DOI Media Attached | ||
09:40 20mTalk | Combining Object-Oriented Paradigm and Controlled Natural Language for Requirements Specification BCNC Yegor Bugayenko Huawei DOI |