Detecting distributed software components that will not cause emergent behavior in asynchronous communication style

In distributed software systems (DSS) the functionality and/or control are distributed. This may cause the DSS components to show an unexpected behavior known as emergent behavior in the run time, which was not seen in their requirements and design. Emergent behaviors can have irreparable damages for companies. The savings in cost of detecting and fixing emergent behaviors in early phases is more than 20 times compared to fixing them after the deployment. The detecting methodologies usually utilize behavioral modeling which can face to state space explosion problem for large scale systems. Therefore, we approach this problem by detecting components that will not show emergent behavior and remove them from further analysis to help the scalability of these approaches. Previously, we have devised and implemented the algorithm for synchronous communications. In this paper, the extension of our method for detecting these components in the asynchronous communication style is presented which is closer to the real-world systems. The details of the technique and related algorithms are discussed.

[1]  Madhavan Mukund,et al.  Causal Closure for MSC Languages , 2005, FSTTCS.

[2]  Sebastián Uchitel,et al.  Synthesis of Behavioral Models from Scenarios , 2003, IEEE Trans. Software Eng..

[3]  Brian J. Taylor,et al.  Augmentation of Current Verification and Validation Practices , 2006 .

[4]  Manfred Broy,et al.  The essence of message sequence charts , 2000, Proceedings International Symposium on Multimedia Software Engineering.

[5]  Sebastián Uchitel,et al.  Detecting implied scenarios in message sequence chart specifications , 2001, ESEC/FSE-9.

[6]  Sebastián Uchitel,et al.  Implied Scenario Detection in the Presence of Behaviour Constraints , 2002, Electron. Notes Theor. Comput. Sci..

[7]  John M. Carroll,et al.  Five reasons for scenario-based design , 2000, Interact. Comput..

[8]  Rajeev Alur,et al.  Model Checking of Message Sequence Charts , 1999, CONCUR.

[9]  Johann Schumann,et al.  Scenario-Based Engineering of Multi-Agent Systems , 2006 .

[10]  Sebastián Uchitel,et al.  Monitoring and control in scenario-based requirements analysis , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[11]  Joël Ouaknine,et al.  State/Event Software Verification for Branching-Time Specifications , 2005, IFM.

[12]  Tho T. Quan,et al.  MAFSE: A Model-Based Framework for Software Verification , 2010, 2010 Fourth International Conference on Secure Software Integration and Reliability Improvement Companion.

[13]  Manfred Broy,et al.  Seamless Method- and Model-based Software and Systems Engineering , 2010, The Future of Software Engineering.

[14]  Johann Schumann,et al.  Automatic Synthesis of Agent Designs in UML , 2000, FAABS.

[15]  John C. Knight,et al.  Challenges in the Utilization of Formal Methods , 1998, FTRTFT.

[16]  Sebastián Uchitel,et al.  Incremental elaboration of scenario-based specifications and behavior models using implied scenarios , 2004, TSEM.

[17]  Sebastián Uchitel,et al.  Detecting Implied Scenarios from Execution Traces , 2007, 14th Working Conference on Reverse Engineering (WCRE 2007).

[18]  Bill Mitchell,et al.  Characterizing Communication Channel Deadlocks in Sequence Diagrams , 2008, IEEE Transactions on Software Engineering.

[19]  Vitaliy Mezhuyev,et al.  An Industrial Case: Pitfalls and Benefits of Applying Formal Methods to the Development of a Network-Centric RTOS , 2008, FM.

[20]  Behrouz Homayoun Far,et al.  A method for detecting agents that will not cause emergent behavior in agent based systems - A case study in agent based auction systems - , 2012, 2012 IEEE 13th International Conference on Information Reuse & Integration (IRI).

[21]  Rajeev Alur,et al.  Inference of message sequence charts , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[22]  Deepak D'Souza,et al.  Analysing Message Sequence Graph Specifications , 2010, ISoLA.

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

[24]  Paul Gastin,et al.  Local Testing of Message Sequence Charts Is Difficult , 2007, FCT.

[25]  Ralf Kneuper Limits of formal methods , 2005, Formal Aspects of Computing.

[26]  Giovanni Squillero,et al.  Industrial applications of evolutionary algorithms , 2012, Intelligent Systems Reference Library.

[27]  Rajeev Alur,et al.  Realizability and verification of MSC graphs , 2005, Theor. Comput. Sci..

[28]  Dae-Kyoo Kim,et al.  Required Behavior of Sequence Diagrams: Semantics and Refinement , 2011, 2011 16th IEEE International Conference on Engineering of Complex Computer Systems.

[29]  Lionel C. Briand,et al.  Software Verification - A Scalable, Model-Driven, Empirically Grounded Approach , 2010, Simula Research Laboratory.

[30]  Henry Muccini,et al.  Detecting Implied Scenarios Analyzing Non-local Branching Choices , 2003, FASE.

[31]  Ingolf Krüger,et al.  Distributed system design with message sequence charts , 2000 .

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

[33]  Doo-Hwan Bae,et al.  An approach to identifying causes of implied scenarios using unenforceable orders , 2011, Inf. Softw. Technol..