Abstract
Simulation of models that specify behaviour of software in robots, embedded systems, and safety critical systems is crucial to ensure correctness. This is particularly important in conjunction with model-driven development, which is highly prevalent due to its numerous benefits. We use vectors of finite-state machines (FSMs) as our modelling tool. Our FSMs can have their transitions labeled by expressions of a common sense logic, and they are more expressive than other modelling approaches (such as Behavior Trees, Petri nets, or plain FSMs). We interpret the models using the same round-robin scheduler which is integrated into the simulator. Execution on a platform is exactly the same as in the simulator (where sensors and actuators are masqueraded by proxies) and coincides with the generator of the Kripke structure for formal model-checking. In three ubiquitous case studies we show that our simulation discovers issues where those models were incomplete, ambiguous, or incorrect. This further illustrates that simulation and monitoring need to complement formal verification.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Agrawal, A., Simon, G., Karsai, G.: Semantic translation of simulink/stateflow models to hybrid automata using graph transformations. Electr. Notes Theor. Comput. Sci. 109, 43–56 (2004)
Baier, C., Katoen, J.-P.: Principles of model checking. MIT Press (2008)
Billington, D., Estivill-Castro, V., Hexel, R., Rock, A.: Architecture for Hybrid Robotic Behavior. In: Corchado, E., Wu, X., Oja, E., Herrero, Á., Baruque, B. (eds.) HAIS 2009. LNCS, vol. 5572, pp. 145–156. Springer, Heidelberg (2009)
Billington, D., Estivill-Castro, V., Hexel, R., Rock, A.: Non-monotonic reasoning for requirements engineering. In: Proc. 5th Int. Conf. on Evaluation of Novel Approaches to Software Engineering (ENASE), Athens, pp. 68–77. SciTePress (2010)
Billington, D., Estivill-Castro, V., Hexel, R., Rock, A.: Modelling Behaviour Requirements for Automatic Interpretation, Simulation and Deployment. In: Ando, N., Balakirsky, S., Hemker, T., Reggiani, M., von Stryk, O. (eds.) SIMPAR 2010. LNCS, vol. 6472, pp. 204–216. Springer, Heidelberg (2010)
Burns, A., Lister, A.M.: A framework for building dependable systems. The Computer Journal 34(2), 173–181 (1991)
Clarke, E.M., Grumberg, O., Peled, D.: Model checking. MIT Press (2001)
Dromey, R.G., Powell, D.: Early requirements defect detection. TickIT Journal 4Q05, 3–13 (2005)
Estivill-Castro, V., Hexel, R., Rosenblueth, D.A.: Efficient model checking and fmea analysis with deterministic scheduling of transition-labeled finite-state machines. In: 3rd World Congress Software Engineering, China (to appear, 2012)
Grunske, L., Winter, K., Yatapanage, N., Zafar, S., Lindsay, P.A.: Experience with fault injection experiments for FMEA. Software, Practice and Experience 41(11), 1233–1258 (2011)
Harel, D., Politi, M.: Modeling Reactive Systems with Statecharts: The STATEMATE Approach. McGraw-Hill (1998)
Mahmood, T., Kazmierczak, E.: A knowledge-based approach for safety analysis using system interactions. In: 13th Asia Pacific Software Engineering Conf., APSEC 2006, pp. 445–452 (2006)
McDermid, J., Kelly, K.: Industrial press: Safety case. Technical report, High Integrity Systems Engineering Group, University of York (1996)
Mellor, S.J.: Embedded systems in UML. OMG White paper (2007) label: We can generate Systems Today, www.omg.org/news/whitepapers/
Mellor, S.J., Balcer, M.: Executable UML: A foundation for model-driven architecture. Addison-Wesley Publishing Co., Reading (2002)
Myers, T., Dromey, R.G.: From requirements to embedded software - formalising the key steps. In: 20th Australian Software Engineering Conf. (ASWEC), Gold Cost, Australia, pp. 23–33. IEEE Computer Society (2009)
OMG. OMG systems modeling language (OMG SysMLTM). Version 1.3 with change bars (June 2012)
Rumbaugh, J., Blaha, M.R., Lorensen, W., Eddy, F., Premerlani, W.: Object-Oriented Modelling and Design. Prentice-Hall, Inc., Englewood Cliffs (1991)
Samek, M.: Practical UML Statecharts in C/C++, 2nd edn: Event-Driven Programming for Embedded Systems, Newnes (2008)
Shlaer, S., Mellor, S.J.: Object lifecycles: modeling the world in states. Yourdon Press, Englewood Cliffs (1992)
Shrivastava, S.K., Mancini, L.V., Randell, B.: The duality of fault-tolerant system structures. Software — Practice and Experience 23(7), 773–798 (1993)
Sloman, M., Kramer, J.: Distributed systems and computer networks. Prentice Hall, UK (1987)
Sommerville, I.: Software engineering, 9th edn. Addison-Wesley, Boston (2010)
Wagner, F., Schmuki, R., Wagner, T., Wolstenholme, P.: Modeling Software with Finite State Machines: A Practical Approach. CRC Press, NY (2006)
Wen, L., Dromey, R.G.: From requirements change to design change: A formal path. In: 2nd Int. Conf. on Software Engineering and Formal Methods (SEFM 2004), pp. 104–113. IEEE Computer Society, Beijing (2004)
Winter, K., Yatapanage, N.: The metal press case study. Technical report, University of Queensland. Supplement in www.itee.uq.edu.au/~docs/FMEA
Winter, K., Yatapanage, N.: The mine pump case study. Technical report, University of Queensland. Supplement in www.itee.uq.edu.au/~docs/FMEA
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Coleman, R., Estivill-Castro, V., Hexel, R., Lusty, C. (2012). Visual-Trace Simulation of Concurrent Finite-State Machines for Validation and Model-Checking of Complex Behaviour. In: Noda, I., Ando, N., Brugali, D., Kuffner, J.J. (eds) Simulation, Modeling, and Programming for Autonomous Robots. SIMPAR 2012. Lecture Notes in Computer Science(), vol 7628. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-34327-8_8
Download citation
DOI: https://doi.org/10.1007/978-3-642-34327-8_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-34326-1
Online ISBN: 978-3-642-34327-8
eBook Packages: Computer ScienceComputer Science (R0)