Design-driven Development of Dependable Applications - A Case Study in Avionics

Quentin Enard, Stéphanie Gatti, Julien Bruneau, Youg-Joo Moon, Emilie Balland, Charles Consel


Making an application dependable demands that its functional and non-functional requirements be stringently fulfilled throughout its development process. In this context, a design-driven development approach has the key advantage of enabling requirements to be traced from their high-level design forms to the resulting executable artifact. However, because such approaches are mostly general purpose, they provide little design guidance, if any. This situation makes unpredictable the coherence and the conformance of an application with respect to its requirements.\\ To address this situation, we propose an approach that leverages a design-driven development process dedicated to a specific paradigm. This approach guides the verification of the coherence and conformance of an application throughout its development. We demonstrate the benefits of our approach by applying it to a realistic case study in the avionics domain.


  1. Amey, P. (2002). Correctness by Construction: Better Can Also Be Cheaper. CrossTalk: the Journal of Defense Software Engineering, 2:24-28.
  2. ARP-4761 (1996). ARP-4761, Guidelines and Methods for Conducting the Safety Assessment Process on Civil Airborne Systems and Equipment (SAE).
  3. Avizienis, A., Laprie, J., Randell, B., and Landwehr, C. (2004). Basic concepts and taxonomy of dependable and secure computing. Dependable and Secure Computing, IEEE Transactions on, 1(1):11-33.
  4. Behrmann, G., David, A., and Larsen, K. (2004). A Tutorial on Uppaal. Formal methods for the design of real-time systems, pages 33-35.
  5. Burmester, S., Giese, H., Hirsch, M., Schilling, D., and Tichy, M. (2005). The Fujaba Real-Time Tool Suite: Model-Driven Development of Safety-Critical, RealTime Systems. In ICSE'05: Proceedings of the 27th International Conference on Software Engineering, pages 670-671. ACM.
  6. Burmester, S., Tichy, M., and Giese, H. (2004). Modeling Reconfigurable Mechatronic Systems with Mechatronic UML. In Proceedings of Model-Driven Architecture: Foundations and Applications (MDAFA 2004), Linköping, Sweden, pages 155-169.
  7. Cassou, D., Balland, E., Consel, C., and Lawall, J. (2011). Leveraging Software Architectures to Guide and Verify the Development of Sense/Compute/Control Applications. In ICSE'11: Proceedings of the 33rd International Conference on Software Engineering, pages 431-440. ACM.
  8. Cassou, D., Bertran, B., Loriant, N., and Consel, C. (2009). A Generative Programming Approach to Developing Pervasive Computing Systems. In GPCE'09: Proceedings of the 8th International Conference on Generative Programming and Component Engineering, pages 137- 146. ACM Press.
  9. Cassou, D., Bruneau, J., Consel, C., and Balland, E. (2011). Towards A Tool-Based Development Methodology for Pervasive Computing Applications. Software Engineering, IEEE Transactions on, PP(99).
  10. Dion, B. (2004). Correct-By-Construction Methods for the Development of Safety-Critical Applications. SAE transactions, 113(7):242-249.
  11. Dissaux, P. and Singhoff, F. (2008). Stood and Cheddar: AADL as a Pivot Language for Analysing Performances of Real Time Architectures. In Proceedings of the European Real Time System conference. Toulouse, France.
  12. Feiler, P. (2006). The Architecture Analysis & Design Language (AADL): An Introduction. Technical report, DTIC Document.
  13. Gatti, S., Balland, E., and Consel, C. (2011). A Step-wise Approach for Integrating QoS throughout Software Development. In FASE'11: Proceedings of the 14th European Conference on Fundamental Approaches to Software Engineering, pages 217-231.
  14. Henzinger, T. A., Nicollin, X., Sifakis, J., and Yovine, S. (1994). Symbolic Model Checking for Real-Time Systems. Inf. Comput., 111(2):193-244.
  15. Hugues, J., Zalila, B., Pautet, L., and Kordon, F. (2008). From the Prototype to the Final Embedded System Using the Ocarina AADL Tool Suite. ACM Transactions on Embedded Computing Systems, 7:1-25.
  16. Lasnier, G., Zalila, B., Pautet, L., and Hugues, J. (2009). OCARINA: An Environment for AADL Models Analysis and Automatic Code Generation for High Integrity Applications. Reliable Software Technologies-AdaEurope 2009, pages 237-250.
  17. Littlewood, B. and Strigini, L. (2000). Software Reliability and Dependability: a Roadmap. In ICSE'00: Proceedings of the Conference on The Future of Software Engineering, pages 175-188. ACM.
  18. Mercadal, J., Enard, Q., Consel, C., and Loriant, N. (2010). A Domain-Specific Approach to Architecturing Error Handling in Pervasive Computing. In OOPSLA'10: Proceedings of the Conference on Object Oriented Programming Systems Languages and Applications, volume 45, pages 47-61.
  19. Miller, S. (1998). Specifying the Mode Logic of a Flight Guidance System in CoRE and SCR. In FMSP'98: Proceedings of the Second Workshop on Formal Methods in Software Practice, pages 44-53. ACM.
  20. Perry, A. R. (2004). The FlightGear Flight Simulator. In Proceedings of the USENIX Annual Technical Conference.
  21. Shaw, M. (1995). Beyond Objects: A Software Design Paradigm Based on Process Control. SIGSOFT Software Engineering Notes, 20:27-38.
  22. Singhoff, F., Legrand, J., Nana, L., and Marcé, L. (2004). Cheddar: a Flexible Real Time Scheduling Framework. ACM SIGAda Ada Letters, XXIV:1-8.
  23. Taylor, R. N., Medvidovic, N., and Dashofy, E. M. (2009). Software Architecture: Foundations, Theory, and Practice. Wiley Publishing.
  24. Vestal, S. (2005). An Overview of the Architecture Analysis & Design Language (AADL) Error Model Annex. In AADL Workshop.
  25. Volter, M., Stahl, T., Bettin, J., Haase, A., and Helsen, S. (2006). Model-driven Software Development: Technology, Engineering, Management. John Wiley and Sons Ltd.
  26. Windsor, J. and Hjortnaes, K. (2009). Time and Space Partitioning in Spacecraft Avionics. In SMC-IT'09: Proceedings of the 3rd IEEE International Conference on Space Mission Challenges for Information Technology, pages 13-20. IEEE.

Paper Citation

in Harvard Style

Enard Q., Gatti S., Bruneau J., Moon Y., Balland E. and Consel C. (2013). Design-driven Development of Dependable Applications - A Case Study in Avionics . In Proceedings of the 3rd International Conference on Pervasive Embedded Computing and Communication Systems - Volume 1: PECCS, ISBN 978-989-8565-43-3, pages 177-186. DOI: 10.5220/0004311801770186

in Bibtex Style

author={Quentin Enard and Stéphanie Gatti and Julien Bruneau and Youg-Joo Moon and Emilie Balland and Charles Consel},
title={Design-driven Development of Dependable Applications - A Case Study in Avionics},
booktitle={Proceedings of the 3rd International Conference on Pervasive Embedded Computing and Communication Systems - Volume 1: PECCS,},

in EndNote Style

JO - Proceedings of the 3rd International Conference on Pervasive Embedded Computing and Communication Systems - Volume 1: PECCS,
TI - Design-driven Development of Dependable Applications - A Case Study in Avionics
SN - 978-989-8565-43-3
AU - Enard Q.
AU - Gatti S.
AU - Bruneau J.
AU - Moon Y.
AU - Balland E.
AU - Consel C.
PY - 2013
SP - 177
EP - 186
DO - 10.5220/0004311801770186