Supporting incremental behaviour model elaboration

Behaviour model construction remains a difficult and labour intensive task which hinders the adoption of model-based methods by practitioners. We believe one reason for this is the mismatch between traditional approaches and current software development process best practices which include iterative development, adoption of use-case and scenario-based techniques and viewpoint- or stakeholder-based analysis; practices which require modelling and analysis in the presence of partial information about system behaviour.Our objective is to address the limitations of behaviour modelling and analysis by shifting the focus from traditional behaviour models and verification techniques that require full behaviour information to partial behaviour models and analysis techniques, that drive model elaboration rather than asserting adequacy. We aim to develop sound theory, techniques and tools that facilitate the construction of partial behaviour models through model synthesis, enable partial behaviour model analysis and provide feedback that prompts incremental elaboration of partial models.In this paper we present how the different research threads that we have and currently are developing help pursue this vision as part of the “Partial Behaviour Modelling—Foundations for Iterative Model Based Software Engineering” Starting Grant funded by the ERC. We cover partial behaviour modelling theory and construction, controller synthesis, automated diagnosis and refinement, and behaviour validation.

[1]  Melvin Fitting,et al.  Many-valued modal logics , 1991, Fundam. Informaticae.

[2]  Sebastián Uchitel,et al.  The Modal Transition System Control Problem , 2012, FM.

[3]  Jeff Magee,et al.  Plan-directed architectural change for autonomous systems , 2007, SAVCBS '07.

[4]  Marsha Chechik,et al.  Finding Environment Guarantees , 2007, FASE.

[5]  Axel van Lamsweerde,et al.  Deriving operational software specifications from system goals , 2002, SIGSOFT '02/FSE-10.

[6]  Rajeev Alur,et al.  Deterministic generators and games for LTL fragments , 2001, Proceedings 16th Annual IEEE Symposium on Logic in Computer Science.

[7]  Neil Maiden,et al.  Scenarios, Stories, Use Cases: Through the Systems Development Life-Cycle , 2004 .

[8]  Roger Pressman,et al.  Software Engineering: A Practitioner's Approach, 7Th Edition , 2009 .

[9]  Dalal Alrajeh,et al.  Generating obstacle conditions for requirements completeness , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[10]  Sebastián Uchitel,et al.  Deriving event-based transition systems from goal-oriented requirements models , 2008, Automated Software Engineering.

[11]  David Harel,et al.  Come, Let’s Play , 2003, Springer Berlin Heidelberg.

[12]  Stephen Fickas,et al.  Goal-Directed Requirements Acquisition , 1993, Sci. Comput. Program..

[13]  Dario Fischbein Foundations for behavioural model elaboration using modal transition systems , 2012 .

[14]  A. Pnueli,et al.  CONTROLLER SYNTHESIS FOR TIMED AUTOMATA , 2006 .

[15]  Marsha Chechik,et al.  Synthesis of Partial Behavior Models from Properties and Scenarios , 2009, IEEE Transactions on Software Engineering.

[16]  Michael Jackson,et al.  Software requirements & specifications , 1995 .

[17]  Rob J. van Glabbeek,et al.  Branching time and abstraction in bisimulation semantics , 1996, JACM.

[18]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[19]  David S. Rosenblum A Practical Approach to Programming With Assertions , 1995, IEEE Trans. Software Eng..

[20]  Kim G. Larsen,et al.  Equation solving using modal transition systems , 1990, [1990] Proceedings. Fifth Annual IEEE Symposium on Logic in Computer Science.

[21]  Dimitra Giannakopoulou,et al.  Fluent model checking for event-based systems , 2003, ESEC/FSE-11.

[22]  Robert M. Keller,et al.  Formal verification of parallel programs , 1976, CACM.

[23]  W. M. Wonham,et al.  The control of discrete event systems , 1989 .

[24]  Bertrand Meyer,et al.  Applying 'design by contract' , 1992, Computer.

[25]  Dalal Alrajeh,et al.  Learning operational requirements from goal models , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[26]  Sebastián Uchitel,et al.  Weak Alphabet Merging of Partial Behavior Models , 2012, TSEM.

[27]  David Lorge Parnas,et al.  Functional Documents for Computer Systems , 1995, Sci. Comput. Program..

[28]  Axel van Lamsweerde,et al.  Formal refinement patterns for goal-driven requirements elaboration , 1996, SIGSOFT '96.

[29]  Sebastián Uchitel,et al.  A Sound Observational Semantics for Modal Transition Systems , 2009, ICTAC.

[30]  Saul A. Kripke,et al.  Semantical Considerations on Modal Logic , 2012 .

[31]  Axel van Lamsweerde,et al.  Handling Obstacles in Goal-Oriented Requirements Engineering , 2000, IEEE Trans. Software Eng..

[32]  Marsha Chechik,et al.  How Vacuous Is Vacuous? , 2004, TACAS.

[33]  Marsha Chechik,et al.  Multi-valued symbolic model-checking , 2003, TSEM.

[34]  Randal E. Bryant,et al.  Formally Verifying a Microprocessor Using a Simulation Methodology , 1994, 31st Design Automation Conference.

[35]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[36]  Rogério de Lemos,et al.  Software Engineering for Self-Adaptive Systems [outcome of a Dagstuhl Seminar] , 2009, Software Engineering for Self-Adaptive Systems.

[37]  Dalal Alrajeh,et al.  Learning from Vacuously Satisfiable Scenario-Based Specifications , 2012, FASE.

[38]  Jeff Magee,et al.  A Case Study in Goal-Driven Architectural Adaptation , 2009, Software Engineering for Self-Adaptive Systems.

[39]  Axel van Lamsweerde,et al.  Requirements Engineering: From System Goals to UML Models to Software Specifications , 2009 .

[40]  Paola Inverardi,et al.  Automatic synthesis of behavior protocols for composable web-services , 2009, ESEC/FSE '09.

[41]  Sebastián Uchitel,et al.  Synthesis of live behaviour models for fallible domains , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[42]  Sebastián Uchitel,et al.  Behaviour model elaboration using partial labelled transition systems , 2003, ESEC/FSE-11.

[43]  Sebastián Uchitel,et al.  Automated Abstractions for Contract Validation , 2012, IEEE Transactions on Software Engineering.

[44]  Sebastián Uchitel,et al.  CSSL: a logic for specifying conditional scenarios , 2011, ESEC/FSE '11.

[45]  Dalal Alrajeh,et al.  Using abduction and induction for operational requirements elaboration , 2009, J. Appl. Log..

[46]  Sebastián Uchitel,et al.  Synthesizing nonanomalous event-based controllers for liveness goals , 2013, TSEM.

[47]  Sebastián Uchitel,et al.  Contractor.NET: inferring typestate properties to enrich code contracts , 2011, TOPI '11.

[48]  Sebastián Uchitel,et al.  Program abstractions for behaviour validation , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[49]  Marsha Chechik,et al.  Merging partial behavioural models , 2004, SIGSOFT '04/FSE-12.

[50]  Sebastián Uchitel,et al.  MTSA: The Modal Transition System Analyser , 2008, 2008 23rd IEEE/ACM International Conference on Automated Software Engineering.

[51]  Piergiorgio Bertoli,et al.  MBP: a Model Based Planner , 2001 .

[52]  Michael Jackson,et al.  The World and the Machine , 1995, 1995 17th International Conference on Software Engineering.

[53]  Krishnendu Chatterjee,et al.  Environment Assumptions for Synthesis , 2008, CONCUR.

[54]  Philippe Massonet,et al.  Goal-oriented requirements animation , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[55]  Sebastián Uchitel,et al.  On correct and complete strong merging of partial behaviour models , 2008, SIGSOFT '08/FSE-16.

[56]  Thomas A. Henzinger,et al.  Interface automata , 2001, ESEC/FSE-9.

[57]  K. Larsen A Constraint Oriented Proof Methodology based on Modal Transition Systems , 1994 .

[58]  David Harel,et al.  Come, let's play - scenario-based programming using LSCs and the play-engine , 2003 .

[59]  Dalal Alrajeh,et al.  Deriving non-Zeno behaviour models from goal models using ILP , 2009, Formal Aspects of Computing.

[60]  Kim G. Larsen,et al.  A modal process logic , 1988, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science.

[61]  Piergiorgio Bertoli,et al.  Planning with Extended Goals and Partial Observability , 2004, ICAPS.

[62]  Morris Sloman,et al.  CONIC: an integrated approach to distributed computer control systems , 1983 .

[63]  Sebastián Uchitel,et al.  Existential live sequence charts revisited , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[64]  Martin S. Feather,et al.  Quantitative risk-based requirements reasoning , 2003, Requirements Engineering.

[65]  Robert DeLine,et al.  Typestates for Objects , 2004, ECOOP.

[66]  Amir Pnueli,et al.  Synthesis of Reactive(1) Designs , 2006, VMCAI.

[67]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[68]  Marsha Chechik,et al.  Behaviour Model Synthesis from Properties and Scenarios , 2007, 29th International Conference on Software Engineering (ICSE'07).

[69]  C. A. R. Hoare,et al.  Communicating Sequential Processes (Reprint) , 1983, Commun. ACM.

[70]  Marsha Chechik,et al.  Exploring inconsistencies between modal transition systems , 2011, Software & Systems Modeling.

[71]  Walter F. Tichy,et al.  Proceedings 25th International Conference on Software Engineering , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[72]  Anca Muscholl,et al.  Message Sequence Charts , 2003, Lectures on Concurrency and Petri Nets.

[73]  Marek J. Sergot,et al.  A logic-based calculus of events , 1989, New Generation Computing.

[74]  Amir Pnueli,et al.  On the synthesis of a reactive module , 1989, POPL '89.

[75]  Anna Philippou,et al.  Tools and Algorithms for the Construction and Analysis of Systems , 2018, Lecture Notes in Computer Science.

[76]  Orna Grumberg,et al.  Abstract interpretation of reactive systems , 1997, TOPL.

[77]  Dalal Alrajeh,et al.  Deriving Non-zeno Behavior Models from Goal Models Using ILP , 2008, FASE.

[78]  P. S. Thiagarajan,et al.  Message Sequence Charts , 2003, UML for Real.

[79]  Joseph Sifakis,et al.  Controller Synthesis for Timed Automata 1 , 1998 .

[80]  Wolfgang Grieskamp,et al.  Model‐based quality assurance of protocol documentation: tools and methodology , 2011, Softw. Test. Verification Reliab..