Designing Functional Specifications for Complex Systems

  • Olga GoubaliEmail author
  • Patrick Girard
  • Laurent Guittet
  • Alain Bignon
  • Djamal Kesraoui
  • Pascal Berruet
  • Jean-Frédéric Bouillon
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9731)


For designing complex and sociotechnical (System that strongly interact with humans (e.g., a ship is a large sociotechnical system).) systems, designers are in charge of the functional specification because they have an operational expert knowledge. However, these experts do not usually master the programming knowledge of those who design supervision systems. Complex and sociotechnical systems include supervision systems which comprise monitoring interfaces and associated control codes. In this paper we propose an approach that facilitates functional specification of supervision systems. This approach aims at exploiting Example Based Programming (EBP) to propose a specification tool, which contains a generalization module and an interface generation module. Our tool allows experts who are acting as non-professional software developers to describe high level system functional services from elementary services. These functional services contain elementary interactions and configuration data. Thus, the expert, involved in coding, avoids a lot of errors related to the interpretation of the functional specifications. Our aim is to capture expert knowledge on the system being designed in order to have verified and validated functional specifications, without having to train experts in formal methods.


Industrial supervision Functional specification Example based programming Model driven engineering 



We would like to thank teachers of the ENSM for their participation. We are grateful to Eric Le Bris, Line Poinel and Davy Rodier for their help.


  1. 1.
    AFNOR NF X50-151, Management par la valeur et ses outils, analyse fonctionnelle, analyse de la valeur, conception a objectif designe. French National StandardsGoogle Scholar
  2. 2.
    Baresi, L., Orso, A., Pezzè, M.: Introducing formal specification methods in industrial practice. In: Proceedings of the 19th International Conference on Software Engineering, pp. 56–66. ACM, May 1997Google Scholar
  3. 3.
    Bastien, J.M.C., Scapin, D.: Ergonomic Criteria for the Evaluation of Human-Computer interfaces. Institut National de recherche en informatique et en automatique, France (1993)Google Scholar
  4. 4.
    Bignon, A., Rossi, A., Berruet, P.: An integrated design flow for the joint generation of control and interfaces from a business model. Comput. Ind. 64, 634–649 (2013)CrossRefGoogle Scholar
  5. 5.
    Bévan, R.: Approche composant pour la commande multi-versions des systèmes transitiques reconfigurables (Doctoral dissertation, Lorient) (2013)Google Scholar
  6. 6.
    Bollin, A., Rauner-Reithmayer, D.: Formal specification comprehension: the art of reading and writing Z. In: Proceedings of the 2nd FME Workshop on Formal Methods in Software Engineering, pp. 3–9. ACM, June 2014Google Scholar
  7. 7.
    Clarke, E.M., Wing, J.M.: Formal methods: state of the art and future directions. ACM Comput. Surv. (CSUR) 28(4), 626–643 (1996)CrossRefGoogle Scholar
  8. 8.
    Coutaz, J., Calvary, G., Demeure, A., Balme, L.: Interactive systems and user‐centered adaptation: the plasticity of user interfaces. In: Computer Science and Ambient Intelligence, pp. 147–202 (2012)Google Scholar
  9. 9.
    Dix, A.: Formal Methods for Interactive Systems. Academic Press, London (1991)Google Scholar
  10. 10.
    Fagan, M.E.: Design and code inspections to reduce errors in program development. IBM Syst. J. 15(3), 182–211 (1976)CrossRefGoogle Scholar
  11. 11.
    Girard, P., Patry, G., Pierra, G., Potier, J.-C.: Deux exemples d’utilisation de la programmation par démonstration en conception assistée par ordinateur. In: Revue Internationale de CFAO et D’informatique Graphique, vol. 12, no. 1-2, pp. 169–188 (1997)Google Scholar
  12. 12.
    Goubali, O., Bignon, A., Berruet, P., Girard, P., Guittet, L.: Anaxagore, an example of model-driven engineering for industrial supervision. In: Proceedings of the 2014 Ergonomie et Informatique Avancée Conference-Design, Ergonomie et IHM: quelle articulation pour la co-conception de l’interaction, pp. 58–65. ACM, October 2014Google Scholar
  13. 13.
    Harrison, M., Thimbleby, H.: Formal Methods in Human-Computer Interaction. Cambridge University Press, Cambridge (1990)Google Scholar
  14. 14.
    IEEE Guide for Information Technology - System Definition - Concept of Operations (ConOps) Document. IEEE Std 1362-1998. The Institute of Electrical and Electronics Engineers, New York, p. 21Google Scholar
  15. 15.
    Jacobson, I., Booch, G., Rumbaugh, J.: The Unified Software Development Process, vol. 1. Addison Wesley, Reading (1999)Google Scholar
  16. 16.
    Khalil, C., Fernandez, V.: Agile management practices in a “lightweight” organization: a case study analysis. J. Modern Proj. Manage. 1(1) (2013)Google Scholar
  17. 17.
    Knight, J.C., Brilliant, S.S.: Preliminary evaluation of a formal approach to user interface specification. In: Till, D., Bowen, J.P., Hinchey, M.G. (eds.) ZUM 1997. LNCS, vol. 1212. Springer, Heidelberg (1997)Google Scholar
  18. 18.
    Lachaume, T., Patrick, G., Laurent, G., Allan, F.: ProtoTask, new task model simulator. In: Winckler, M., Forbrig, P., Bernhaupt, R. (eds.) HCSE 2012. LNCS, vol. 7623, pp. 323–330. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  19. 19.
    Lieberman, H., Paternò, F., Klann, M., Wulf, V.: End-User Development: An Emerging Paradigm, pp. 1–8. Springer, Netherlands (2006)Google Scholar
  20. 20.
    Martin, R.C.: Agile Software Development: Principles, Patterns, and Practices. Prentice Hall PTR, Upper Saddle River (2003)Google Scholar
  21. 21.
    Mathur, S., Malik, S.: Advancements in the V-model. Int. J. Comput. Appl. 1(12), 30–35 (2010)Google Scholar
  22. 22.
    Moussa, F., Riahi, M., Kolski, C., Moalla, M.: Interpreted petri nets used for human-machine dialogue specification. Integr. Comput. Aided Eng. 9(1), 87–98 (2002)Google Scholar
  23. 23.
    Nichols, J.: Automatically generating high-quality user interfaces for appliances (Doctoral dissertation, Hewlett-Packard) (2006)Google Scholar
  24. 24.
    Nielson, J.: Heuristic evaluation. In: Usability Inspection Methods, 17 (1), pp. 25–62 (1994)Google Scholar
  25. 25.
    OMG. MDA Guide version 1.0.1. OMG (2003)Google Scholar
  26. 26.
    Pham, H.: System Software Reality (Spring Series in Reality Engineering). Springer-Verlag, New York (2005)Google Scholar
  27. 27.
    Piernot, P.P., Yvon, M.P.: A model for incremental construction of command trees. In: HCI 1995, pp. 169–179. Huddersfield, England (1995)Google Scholar
  28. 28.
    Sourisse, C., Boudillon, L.: La sécurité des machines automatisées: Techniques et moyens de prévention opératifs, systèmes de commandes, utilisation des machines. Institut Schneider Formation (1997)Google Scholar
  29. 29.
    Trudel, S.: Using the COSMIC functional size measurement method (ISO 19761) as a software requierements improvement mechanism. Université du Québec (2012)Google Scholar
  30. 30.
    Weigers, K.E.: Software Requirements, 2nd edn, p. 350. Microsoft Press, Redmond (2003)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Olga Goubali
    • 1
    • 2
    Email author
  • Patrick Girard
    • 1
  • Laurent Guittet
    • 1
  • Alain Bignon
    • 2
  • Djamal Kesraoui
    • 2
  • Pascal Berruet
    • 3
  • Jean-Frédéric Bouillon
    • 4
  1. 1.LIAS/ENSMAChasseneuilFrance
  2. 2.SEGULA TechnologiesLanester cedexFrance
  3. 3.Lab-STICCLorient cedexFrance
  4. 4.ENSMNantesFrance

Personalised recommendations