Abstract
Inspired by the abilities of contemporary autonomous vehicles to navigate with a high degree of effectiveness, the INSPEX Project aims to create a minaturised smart obstacle detection system, which could find use in a wide variety of leading edge smart applications. The primary use case focused on in the project is producing an advanced prototype for a device which can be attached to a visually impaired or blind (VIB) person’s white cane, and which, through the integration of a variety of minaturised sensors, and of the processing of their data via sophisticated algorithms, can offer the VIB user greater precision of information about their environment. The increasing complexity of such systems creates increasing challenges to assure their correct operation, inviting the introduction of formal techniques to aid in maximising system dependability. However, the major challenge to building such systems resides at the hardware end of the development. This impedes the routine application of top-down formal methods approaches. Some ingenuity must be brought to bear, in order that normally mutually hostile formal and mainstream approaches can contribute positively towards system dependability, rather than conflicting unproductively. This aspect is illustrated using two strands of the INSPEX Project.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
In some niche areas, the recognition came as a direct result of painful and expensive failure, the Pentium Bug and Arianne Disaster being iconic examples.
- 2.
It became apparent at this time that scalable formal tools were not an impossible dream, even if the degree of scalability was not as great as typically found in conventional approaches.
- 3.
For reasons of the confidentiality of the future commercial exploitation of the INSPEX platform, what is shown here is not actual code.
References
Alloy. http://alloy.mit.edu/
Abrial, J.R.: The B-Book: Assigning Programs to Meanings. Cambridge University Press (1996)
Abrial, J.R.: Formal Methods in Industry: Achievements. Problems Future. In: Proceedings of ACM/IEEE ICSE 2006, pp. 761–768 (2006)
Abrial, J.R.: Modeling in Event-B: System and Software Engineering. CUP (2010)
Andronick, J., Jeffery, R., Klein, G., Kolanski, R., Staples, M., Zhang, H., Zhu, L.: Large-scale formal verification in practice: a process perspective. In: Proceedings of ACM/IEEE ICSE 2012, pp. 374–393 (2012)
Astrée Tool. http://www.astree.ens.fr/
Baeten, J.: Process Algebra. Cambridge Tracts in Theoretical Computer Science. Cambridge University Press (1990)
Banach, R. (ed.): Special Issue on the State of the Art in Formal Methods. Journal of Universal Computer Science, vol. 13(5) (2007)
BLAST Tool. https://forge.ispras.ru/projects/blast/
Bluetooth Guide. http://ww1.microchip.com/downloads/en/DeviceDoc/50002466B.pdf
Bowen, J., Hinchey, M.: Seven more myths of formal methods. IEEE Software 12, 34–41 (1995)
Clarke, E., Wing, J.: Formal methods: state of the art and future directions. ACM Comput. Surv. 28, 626–643 (1996)
Dia, R., Mottin, J., Rakotavao, T., Puschini, D., Lesecq, S.: Evaluation of occupancy grid resolution through a novel approach for inverse sensor modeling. In: Proceedings of IFAC World Congress, FAC-PapersOnLine, vol. 50, pp. 13,841–13,847 (2017)
Divakaran, S., D’Souza, D., Kushwah, A., Sampath, P., Sridhar, N., Woodcock, J.: Refinement-based verification of the FreeRTOS scheduler in VCC. In: Butler, M., Conchon, S., Zaïdi, F. (eds.) Proceedings of ICFEM 2015. LNCS, vol. 9407, pp. 170–186. Springer (2015)
Fausten, M.: Evolution or revolution: architecture of AD cars. In: Proceedings of IEEE ESWEEK (2015)
FDR Tool. https://www.cs.ox.ac.uk/projects/fdr/
Fitzgerald, J., Gorm Larsen, P.: Modelling Systems: Practical Tools and Techniques for Software Development. Cambridge University Press (1998)
FreeRTOS. https://www.freertos.org/
Hall, A.: Seven myths of formal methods. IEEE Software 7, 11–19 (1990)
Hoare, C.: Communicating Sequential Processes. Prentice-Hall (1985)
ISO/IEC 13568: Information Technology – Z Formal Specification Notation – Syntax, Type System and Semantics: International Standard (2002). http://www.iso.org/iso/en/ittf/PubliclyAvailableStandards/c021573_ISO_IEC_13568_2002(E).zip
Jones, C.: Systematic Software Development Using VDM, 2nd edn. Prentice-Hall (1990)
Jones, C., O’Hearne, P., Woodcock, J.: Verified software: a grand challenge. IEEE Comput. 39(4), 93–95 (2006)
Lamport, L.: Specifying Systems, The TLA+ Language and Tools for Hardware and Software Engineers. Addison-Wesley (2002)
Mandruchi, R., Kurniavan, S.: Mobility-Related Accidents Experienced by People with Visual Impairment. Insight: Research and Practice in Visual Impairment and Blindness (2011)
Milner, R.: Communication and Concurrency. Prentice-Hall (1989)
NuSMV Tool. http://nusmv.fbk.eu/
Qu, Z.: Cooperative Control of Dynamical Systems: Applications to Autonomous Vehicles. Springer (2009)
RODIN Tool. http://www.event-b.org/, http://sourceforge.net/projects/rodin-b-sharp/
de Roever, W.P., Engelhardt, K.: Data Refinement: Model-Oriented Proof Methods and their Comparison. Cambridge University Press (1998)
Rosburg, T.: Tactile ground surface indicators in public places. In: Grunwald, M. (ed.) Human Haptic Perception: Basics and Applications. Springer, Birkhauser (2008)
Spivey, J.: The Z Notation: A Reference Manual, 2nd edn. Prentice-Hall International (1992)
Stepney, S.: New Horizons in Formal Methods. The Computer Bulletin, pp. 24–26 (2001)
Stepney, S., Cooper, D.: Formal Methods for Industrial Products. In: Proceedings of 1st Conference of B and Z Users. LNCS, vol. 1878, pp. 374–393. Springer (2000)
Thrun, S., Burgard, W., Fox, D.: Probabilistic Robotics. MIT Press (2005)
UPPAAL Tool. http://www.uppaal.org/
Wikipedia: List of tools for static code analysis. https://en.wikipedia.org/wiki/List_of_tools_ for_static_code_analysis
Woodcock, J.: First steps in the the verified software grand challenge. IEEE Computer 39(10), 57–64 (2006)
Woodcock, J., Banach, R.: The verification grand challenge. JUCS 13, 661–668 (2007)
Acknowledgement
This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 730953. The work was also supported in part by the Swiss Secretariat for Education, Research and Innovation (SERI) under Grant 16.0136 730953. We thank them for their support.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Banach, R. et al. (2019). Formal Methods in Systems Integration: Deployment of Formal Techniques in INSPEX. In: Bonjour, E., Krob, D., Palladino, L., Stephan, F. (eds) Complex Systems Design & Management. CSD&M 2018. Springer, Cham. https://doi.org/10.1007/978-3-030-04209-7_1
Download citation
DOI: https://doi.org/10.1007/978-3-030-04209-7_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-04208-0
Online ISBN: 978-3-030-04209-7
eBook Packages: EngineeringEngineering (R0)