Abstract
RoboStar is a toolkit for model-based development using a domain-specific notation, RoboChart, with enriched UML-like state machines and a custom component model. We present RoboCert: a novel notation, based on UML sequence diagrams, which facilitates the specification of properties over RoboChart components. With RoboCert, we can express properties of a robotic system in a user-friendly, idiomatic manner. RoboCert specifications can be existential or universal, include timing notions such as deadlines and budgets, and both safety and liveness properties. Our work is faithful to UML where it can be, but presents significant extensions to fit the robotics application needs. RoboCert comes with tooling support for modelling and verification by model checking, and formal semantics in tock-CSP, the discrete-time variant of CSP.
Keywords
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
- 3.
Nondeterministic waits, taking range expressions, are planned for future revisions.
- 4.
- 5.
References
Autili, M., Inverardi, P., Pelliccione, P.: Graphical scenarios for specifying temporal properties: an automated approach. Autom. Softw. Eng. 14, 293–340 (2007). https://doi.org/10.1007/s10515-007-0012-6
Baxter, J., Ribeiro, P., Cavalcanti, A.L.C.: Sound reasoning in tock-CSP. Acta Inform. (2021). https://doi.org/10.1007/s00236-020-00394-3, April 2021
Buchanan, E., Pomfret, A., Timmis, J.: Dynamic task partitioning for foraging robot swarms. In: Dorigo, M., et al. (eds.) ANTS 2016. LNCS, vol. 9882, pp. 113–124. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-44427-7_10
Damm, W., Harel, D.: LSCs: breathing life into message sequence charts. Formal Methods Syst. Des. 19(1), 45–80 (2001). https://doi.org/10.1023/A:1011227529550
Gibson-Robinson, T., Armstrong, P., Boulgakov, A., Roscoe, A.W.: FDR3 — a modern refinement checker for CSP. In: Ábrahám, E., Havelund, K. (eds.) TACAS 2014. LNCS, vol. 8413, pp. 187–201. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-54862-8_13
Grosu, R., Smolka, S.A.: Safety-liveness semantics for UML 2.0 sequence diagrams. In: 5th ACSD, pp. 6–14 (2005). https://doi.org/10.1109/ACSD.2005.31
Haugen, Ø., Husa, K.E., Runde, R.K., Stølen, K.: Why timed sequence diagrams require three-event semantics. In: Leue, S., Systä, T.J. (eds.) Scenarios: Models, Transformations and Tools. LNCS, vol. 3466, pp. 1–25. Springer, Heidelberg (2005). https://doi.org/10.1007/11495628_1
Haugen, Ø., Stølen, K.: STAIRS – steps to analyze interactions with refinement semantics. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 388–402. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45221-8_33
Jacobs, J., Simpson, A.: On a process algebraic representation of sequence diagrams. In: Canal, C., Idani, A. (eds.) SEFM 2014. LNCS, vol. 8938, pp. 71–85. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-15201-1_5
Lima, L., Iyoda, J., Sampaio, A.: A formal semantics for sequence diagrams and a strategy for system analysis. In: MODELSWARD, pp. 317–324. SciTePress (2014). https://doi.org/10.5220/0004711603170324
Lindoso, W., Nogueira, S.C., Domingues, R., Lima, L.: Visual specification of properties for robotic designs. In: Campos, S., Minea, M. (eds.) SBMF 2021. LNCS, vol. 13130, pp. 34–52. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-92137-8_3
Micskei, Z., Waeselynck, H.: The many meanings of UML 2 sequence diagrams: a survey. Softw. Syst. Model. 10(4), 489–514 (2011). https://doi.org/10.1007/s10270-010-0157-9
Miyazawa, A., Ribeiro, P., Li, W., Cavalcanti, A., Timmis, J., Woodcock, J.: RoboChart: modelling and verification of the functional behaviour of robotic applications. Softw. Syst. Model. 18(5), 3097–3149 (2019). https://doi.org/10.1007/s10270-018-00710-z
Petre, M.: UML in practice. In: ICSE, pp. 722–731. IEEE Press (2013). https://doi.org/10.1109/ICSE.2013.6606618
Roscoe, A.W.: Understanding Concurrent Systems. Texts in Computer Science, Springer, London (2011). https://doi.org/10.1007/978-1-84882-258-0
Ye, K., Cavalcanti, A., Foster, S., Miyazawa, A., Woodcock, J.: Probabilistic modelling and verification using RoboChart and PRISM. Softw. Syst. Model. 21(2), 667–716 (2021). https://doi.org/10.1007/s10270-021-00916-8
Message Sequence Chart (MSC). Standard, ITU-T, February 2011. https://www.itu.int/rec/T-REC-Z.120-201102-I/en
OMG Unified Modeling Language. Standard, Object Management Group, December 2017. https://www.omg.org/spec/UML/2.5.1/PDF
RoboCert Reference Manual. Report, RoboStar, May 2022. https://robostar.cs.york.ac.uk/publications/reports/robocert.pdf
Acknowledgements
This work has been funded by the UK EPSRC Grants EP/M025756/1, EP/R025479/1, and EP/V026801/2, and by the UK Royal Academy of Engineering Grant No CiET1718/45. We are also grateful to members of the RoboStar (www.cs.york.ac.uk/robostar/) group for several useful discussions; in particular, Pedro Ribeiro and Alvaro Miyazawa have given many insights as to how to best integrate RoboCert with the RoboStar ecosystem.
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 Springer Nature Switzerland AG
About this paper
Cite this paper
Windsor, M., Cavalcanti, A. (2022). RoboCert: Property Specification in Robotics. In: Riesco, A., Zhang, M. (eds) Formal Methods and Software Engineering. ICFEM 2022. Lecture Notes in Computer Science, vol 13478. Springer, Cham. https://doi.org/10.1007/978-3-031-17244-1_23
Download citation
DOI: https://doi.org/10.1007/978-3-031-17244-1_23
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-17243-4
Online ISBN: 978-3-031-17244-1
eBook Packages: Computer ScienceComputer Science (R0)