From commercial documents to system requirements: an approach for the engineering of novel CBTC solutions

Communications-based train control (CBTC) systems are the new frontier of automated train control and operation. Currently developed CBTC platforms are actually very complex systems including several functionalities, and every installed system, developed by a different company, varies in extent, scope, number, and even names of the implemented functionalities. International standards have emerged, but they remain at a quite abstract level, mostly setting terminology. This paper presents the results of an experience in defining a global model of CBTC, by mixing semi-formal modelling and product line engineering. The effort has been based on an in-depth market analysis, not limiting to particular aspects but considering as far as possible the whole picture. The paper also describes a methodology to derive novel CBTC products from the global model, and to define system requirements for the individual CBTC components. To this end, the proposed methodology employs scenario-based requirements elicitation aided with rapid prototyping. To enhance the quality of the requirements, these are written in a constrained natural language (CNL), and evaluated with natural language processing (NLP) techniques. The final goal is to go toward a formal representation of the requirements for CBTC systems. The overall approach is discussed, and the current experience with the implementation of the method is presented. In particular, we show how the presented methodology has been used in practice to derive a novel CBTC architecture.

[1]  Ken Schwaber,et al.  Agile Project Management with Scrum , 1980 .

[2]  Hassan Gomaa The impact of rapid prototyping on specifying user requirements , 1983, SOEN.

[3]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

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

[5]  Nissim Francez,et al.  Automatic Translation of Natural Language System Specifications into Temporal Logic , 1996 .

[6]  Nissim Francez,et al.  Automatic Translation of Natural Language System Specifications , 1996, CAV.

[7]  Linda H. Rosenberg,et al.  Automated Analysis of Requirement Specifications , 1997, Proceedings of the (19th) International Conference on Software Engineering.

[8]  E. Schnieder TECHNICAL ISSUES IN MODELLING THE EUROPEAN TRAIN CONTROL SYSTEM (ETCS) USING COLOURED PETRI NETS AND THE DESIGN/CPN TOOLS , 1998 .

[9]  Marc Moens,et al.  Designing a controlled language for interactive model checking , 2000 .

[10]  Krzysztof Czarnecki,et al.  Generative programming - methods, tools and applications , 2000 .

[11]  Patrick Donohoe,et al.  Product Line Analysis: A Practical Introduction , 2001 .

[12]  Stefania Gnesi,et al.  The linguistic approach to the natural language requirements quality: benefit of the use of an automatic tool , 2001, Proceedings 26th Annual NASA Goddard Software Engineering Workshop.

[13]  Werner Damm,et al.  Modeling and Validating Train System Applications Using Statemate and Live Sequence Charts , 2002 .

[14]  Rolf Schwitter,et al.  English as a formal specification language , 2002, Proceedings. 13th International Workshop on Database and Expert Systems Applications.

[15]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[16]  Friedemann Bitsch Process model for the development of system requirements specifications for railway systems , 2002 .

[17]  Alistair G. Sutcliffe,et al.  Scenario-based requirements engineering , 2003, Proceedings. 11th IEEE International Requirements Engineering Conference, 2003..

[18]  Erik Kamsties,et al.  Higher quality requirements specifications through natural language patterns , 2003, Proceedings 2003 Symposium on Security and Privacy.

[19]  W. Rickard,et al.  Open standards for CBTC and CCTV radio-based communication , 2004 .

[20]  Ken Schwaber Agile Project Management , 2005, XP.

[21]  Klaus Pohl,et al.  Software Product Line Engineering , 2005 .

[22]  Klaus Pohl,et al.  Software Product Line Engineering - Foundations, Principles, and Techniques , 2005 .

[23]  Stephen P. Boyd,et al.  Measuring the expressiveness of a constrained natural language: an empirical study , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[24]  Don S. Batory,et al.  Feature Models, Grammars, and Propositional Formulas , 2005, SPLC.

[25]  Daniel Dollé,et al.  B in Large-Scale Projects: The Canarsie Line CBTC Experience , 2007, B.

[26]  Stephen Boyd,et al.  Optimal-Constraint Lexicons for Requirements Specifications , 2007, REFSQ.

[27]  Stefania Gnesi,et al.  Formal Modeling for Product Families Engineering , 2008, 2008 12th International Software Product Line Conference.

[28]  H. H. Kim,et al.  Developing CBTC Software Using Model-Driven Development Approach , 2008 .

[29]  R.D. Pascoe,et al.  What is communication-based train control? , 2009, IEEE Vehicular Technology Magazine.

[30]  Donald D. Cowan,et al.  S.P.L.O.T.: software product lines online tools , 2009, OOPSLA Companion.

[31]  Lin Zhao,et al.  Scenario-based modeling and verification for CTCS-3 system requirement specification , 2010, 2010 2nd International Conference on Computer Engineering and Technology.

[32]  Haifeng Wang,et al.  Modeling Communications-Based Train Control system:A case study , 2010, 2010 The 2nd International Conference on Industrial Mechatronics and Automation.

[33]  Antonio Bucchiarone,et al.  An experience in using a tool for evaluating a large set of natural language requirements , 2010, SAC '10.

[34]  L. Yuan,et al.  Modelling and Verification of the System Requirement Specification of Train Control System Using SDL , 2011, 2011 Tenth International Symposium on Autonomous Decentralized Systems.

[35]  Maurice H. ter Beek,et al.  A state/event-based model-checking approach for the analysis of abstract system properties , 2011, Sci. Comput. Program..

[36]  A. Fatwanto Specifying translatable software requirements using constrained natural language , 2012, 2012 7th International Conference on Computer Science & Education (ICCSE).

[37]  Stefania Gnesi,et al.  A logical verification methodology for service-oriented computing , 2012, TSEM.

[38]  Stefania Gnesi,et al.  Using collective intelligence to detect pragmatic ambiguities , 2012, 2012 20th IEEE International Requirements Engineering Conference (RE).

[39]  Sri Datta Virivinti,et al.  Architectural Design Pattern Representation For Communications-Based Train Control System (CBTCS) , 2012 .

[40]  Felice Dell'Orletta,et al.  Mining commonalities and variabilities from natural language documents , 2013, SPLC '13.

[41]  Alessio Ferrari,et al.  The Metrô Rio case study , 2013, Sci. Comput. Program..

[42]  Roos Frantz,et al.  Automated Analysis of Software Product Lines with Orthogonal Variability Models: Extending the Fama Ecosystem. , 2013 .

[43]  Stefania Gnesi,et al.  Model-Based Development and Formal Methods in the Railway Industry , 2013, IEEE Software.

[44]  Stefania Gnesi,et al.  Using Clustering to Improve the Structure of Natural Language Requirements Documents , 2013, REFSQ.

[45]  Andreas L. Opdahl,et al.  Requirements Engineering: Foundation for Software Quality , 2013, Lecture Notes in Computer Science.