An Approach to Integrate Formal Validation in an OO Life-cycle of Protocols

  • C. Jard
  • J.-M. Jézéquel
  • L. Nédelka
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT)


Despite excellent results on pilot projects, formal validation based on standard Formal Description Techniques (FDTs) never really catch up in the industry. We claim that this is mainly due to standard FDTs lack of support for the modern software development methods and life-cycles needed in the construction and maintenance of open distributed systems. We propose to go the other way round, that is to integrate formal validation technology within well established object-oriented (OO) development methods. Building on the intuition that a universal language taking into account all the possible semantics aspects of parallelism and communication is a holy grail, we propose to rely on an open (but simpler) OO language to build dedicated frameworks. Such frameworks can be specialized toward classes of distributed applications, and integrate formal validation tools. We illustrate our approach using the famous alternating bit protocol example. We investigate on this example how a continuous validation framework could be set up to go smoothly from the OO analysis to the OO implementation of a validated distributed system.


Object-Oriented modeling validation and verification protocols software engineering Alternating-Bit-Protocol 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Attali I., Caromel D., Oudshoorn M. (1993) A Formal Definition of the Dynamic Semantics of the Eiffel Language. In: Proc. of the Sixteenth Australian Computer Science Conference (ACSC-16). Brisbane, Australia.Google Scholar
  2. Boehm, B. W. (1975) The High Cost of Software. In: Horowitz, Ellis (ed), Practical Strategies for Developing Large Software Systems. Addison-Wesley.Google Scholar
  3. Booch, G. (1994) Object-Oriented Analysis and Design with Applications. 2nd edn. Benjamin Cummings.Google Scholar
  4. Coplien, J.O. (1994) Generative Pattern Languages: An emerging direction of software design. C++ Report, 6(6).Google Scholar
  5. Coleman, D. et al. (1994) Object-Oriented Development — The Fusion Method. Prentice-Hall Object-Oriented Series.Google Scholar
  6. Etique, P.A., Hubaux, J.P., and Saydam, T. (1995 June) Vérification et validation de services de télécommunications spécifiés par une méthode orientée objets. Pages 469481 of: Colloque Francophone pour l’Ingénierie des Protocoles, CFIP’95, Hermès.Google Scholar
  7. Fernandez, J.-C., Garavel, II., Mounier, L., Rasse, A., Rodriguez, C., and Sifakis, J. (1992 May) A Toolbox for the Verification of Programs. Pages 246–259 of: International Conference on Software Engineering, ICSE’14, Melbourne, Australia.Google Scholar
  8. Guerber, F., Jézéquel, J.-M., and André, F. (1994 November) Conception et implantation d’un serveur SMDS sur architectures modulaires. Tech. rept. 885. IRISA.Google Scholar
  9. Guidec, F. (1995 June) Un cadre conceptuel pour la programmation par objets des architectures parallèles distribuées: application ¢ l’algèbre linéaire. Thèse de doctorat, IFSIC/Université de Rennes 1.Google Scholar
  10. Humphrey, W. (1989) Managing the Software Process. Addison Wesley.Google Scholar
  11. Jackson, M.A. (1985) System Development. Prentice-Hall International, Series in Computer Science.Google Scholar
  12. Jard, C., Groz, R., and Monin, J.F. (1988 March). Development of VEDA: a prototyping tool for distributed algorithms. Pages 339–352 of: IEEE Trans. on Software Engin., vol. 14.Google Scholar
  13. Jézéquel, J.-M. (1990 November) Experience in Validating Protocol Integration Using Estelle. In: Proc. of the Third International Conference on Formal Description Techniques, Madrid, Spain.Google Scholar
  14. Matsuoka, S. and Yonezawa, A. (1993) Analysis of Inheritance Anomaly in Object-Oriented Concurrent Programming Languages. In: Agha, G., Wegner, P. and Yonezawa, A. (eds), Research Directions in Concurrent Object Oriented Programming. MIT Press.Google Scholar
  15. Meseguer, J. (1993) Solving the Inheritance Anomaly in Concurrent Object-Oriented Programming. Pages 220–246 of: Nierstrasz, O. (ed), Proceedings ECOOP’93. LNCS 707. Kaiserslautern, Germany: Springer-Verlag.Google Scholar
  16. Meyer, B. (1992) Eiffel: The Language. Prentice-Hall.zbMATHGoogle Scholar
  17. Meyer, B. (1993) Systematic Concurrent Object-Oriented Programming. Communications of the ACM, 36 (9).Google Scholar
  18. Monarchi, D. E., and Puhr, G. I. (1992) A Research Typology for Object-Oriented Analysis and Design. Communications of the ACM, 9 (35), 35–47.CrossRefGoogle Scholar
  19. Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F. and Lorensen, W. (1991) Object-Oriented Modeling and Design. New Jersey: Prentice Hall.Google Scholar

Copyright information

© IFIP International Federation for Information Processing 1997

Authors and Affiliations

  • C. Jard
    • 1
  • J.-M. Jézéquel
    • 1
  • L. Nédelka
    • 1
  1. 1.Campus de BeaulieuIRISARennes CedexFrance

Personalised recommendations