The choice of methods or design languages is a crucial phase in the development of systems and software, also for real time and embedded systems. An open question that remains in the design of these types of systems is to build a method, or to choose one among those existing, capable to cover the life cycle of a project, and particularly the development phases. This article contributes to answer the question, by proposing an approach based on a multi-criteria comparative study, of few languages and methods dedicated to the design of real time and embedded systems. The underlying objective of this work is to present to designers a wide range of approaches, and elements that can guide their choices. In order to reach this goal, we propose different comparison criteria. Each criterion is divided into sub-criteria, so that the designers can refine their choices according to the qualities they prefer and wish to have in the method or language. We also define a rating scale which is used to assess the retained languages and methods. The scores obtained from this assessment are presented in tables, one table per criterion, followed by a summary table giving the overall scores. Graphics built from these tables are provided and intend to facilitate the judgement and thus the choice of the designers.
Gomaa, H. (1989) Software Design Methods for Real-Time Systems (No. SEI-CM-22-1.0). Carnegie-Mellon Univ Pittsburgh PA Software Engineering Inst.
Staines, A.S. (2005) A Comparison of Software Analysis and Design Methods for Real Time Systems. World Academy of Science, Engineering and Technology, 55-59.
Shiraishi, S.I. (2013) Qualitative Comparison of ADL-Based Approaches to Real-World Automotive System Development. Journal of Information Processing, 21, 34-45. http://dx.doi.org/10.2197/ipsjjip.21.34
Medvidovic, N. and Taylor, R.N. (2000) A Classification and Comparison Framework for Software Architecture Description Languages. IEEE Transactions on Software Engineering, 26, 70-93. http://dx.doi.org/10.1109/32.825767
Bendraou, R., Jezequel, J.M., Gervais, M.P. and Blanc, X. (2010) A Comparison of Six UML-Based Languages for Software Process Modeling. IEEE Transactions on Software Engineering, 36, 662-675. http://dx.doi.org/10.1109/TSE.2009.85
Clements, P.C. (1996) A Survey of Architecture Description Languages. Proceedings of the 8th International Workshop on Software Specification and Design, IEEE Computer Society, 16. http://dx.doi.org/10.1109/iwssd.1996.501143
Hatley, D.J. and Pirbhai, I.A. (1988) Strategies for Real-Time System Specification. Dorset House, New York.
Gomaa, H. (2001) Designing Concurrent, Distributed, and Real-Time Applications with UML. Proceedings of the 23rd International Conference on Software Engineering, IEEE Computer Society, 737-738.
Liu, F., Narayanan, A. and Bai, Q. (2000) Real-Time Systems.
Gomaa, H. (1996) Software Design Methods for Concurrent and Real-Time Systems. Addison-Wesley Longman Publishing Co., Inc, 137-294.
Hudak, J.J. and Feiler, P.H. (2007) Developing AADL Models for Control Systems: A Practitioner’s Guide.
Cooling, J.E. (1991) Software Design for Real-Time Systems. Chapman and Hall. http://dx.doi.org/10.1007/978-1-4899-2957-0
Mullery, G.P. (1979) CORE—A Method for Controlled Requirement Specification. Proceedings of the 4th International Conference on Software Engineering, IEEE Press, 126-135.
Birrell, N.D. and Ould, M.A. (1988) A Practical Handbook for Software Development.
Faulk, S., Brackett, J., Ward, P. and Kirby Jr., J. (1992) The CoRE Method for Real-Time Requirements. Software, IEEE, 9, 22-33. http://dx.doi.org/10.1109/52.156894
Elizabeth, C.H., Jackson, K. and Dick, J. (2011) Requirements Engineering. 2nd Edition, Springer.
Williams, R. (2005) Real-Time Systems Development. Butterworth-Heinemann.
Goldsmith, S. (1993) A Practical Guide to Real-Time Systems Development. Prentice-Hall, Inc.
Pulli, P. and Elmstr?m, R. (1993) IPTES: A Concurrent Engineering Approach for Real-Time Software Development. Real-Time Systems, 5, 139-152. http://dx.doi.org/10.1007/BF01088585
Ward, P.T. (1986) The Transformation Schema: An Extension of the Data Flow Diagram to Represent Control and Timing. IEEE Transactions on Software Engineering, 2, 198-210. http://dx.doi.org/10.1109/TSE.1986.6312936
Bate, G. (1987) The Official Handbook of Mascot. Version 3.1. Issue 1. Royal Signals and Radar Establishment Malvern (England).
Simpson, H. (1986) The MASCOT Method. Software Engineering Journal, 1, 103-120. http://dx.doi.org/10.1049/sej.1986.0018
Staines, A.S. (2008) Modeling and Analysis of a Cruise Control System. World Academy of Science, Engineering and Technology, 38, 173-177.
Nielsen, K.W. and Shumate, K. (1987) Designing Large Real-Time Systems with Ada. Communications of the ACM, 30, 695-715. http://dx.doi.org/10.1145/27651.27655
Mills, K.L. (1993) Design Methods for Real-Time Systems in Ada.
Selic, B. (1996) Tutorial: Real-Time Object-Oriented Modeling (ROOM). Proceedings of Real-Time Technology and Applications Symposium, 214-217. http://dx.doi.org/10.1109/RTTAS.1996.509538
Selic, B. (1995) High Performance Implementations from ROOM Models. Proceedings of 7th Annual Embedded Systems Conference, San Jose.
Saksena, M., Freedman, P. and Rodziewicz, P. (1997) Guidelines for Automated Implementation of Executable Object Oriented Models for Real-Time Embedded Control Systems. Real-Time Systems Symposium. http://dx.doi.org/10.1109/real.1997.641286
Ellidiss Office on the Net. http://ellidiss.office-on-the.net/trac/public/wiki/hood
Burns, A. and Wellings, A.J. (1994) HRT-HOOD: A Structured Design Method for Hard Real-Time Systems. Real-Time Systems, 6, 73-114. http://dx.doi.org/10.1007/BF01245300
Bennett, S., Skelton, J. and Lunn, K. (2005) Schaum’s Outline of UML. McGraw-Hill, 5-18.
Roques, P. (2006) UML in Practice: The Art of Modeling Software Systems Demonstrated through Worked Examples and Solutions. John Wiley & Sons, 3-57.
Schach, S.R. (2004) An Introduction to Object-Oriented Systems Analysis and Design with UML and the Unified Process. McGraw-Hill/Irwin, Ch. 3 and Ch. 11.
Graham, I., O’Callaghan, A. and Wills, A.C. (2001) Object-Oriented Methods: Principles & Practice. Addison-Wesley, Harlow, Ch. 6.
Gomaa, H. (2001) Designing Concurrent, Distributed, and Real-Time Applications with UML. Proceedings of the 23rd International Conference on Software Engineering, IEEE Computer Society, 737-738.
Apvrille, L., de Saqui-Sannes, P. and Khendek, F. (2005) Synthèse d’une conception UML temps-réel à partir de diagrammes de séquences. Colloque Francophone sur l’Ingénierie des Protocols (CFIP’05), Bordeaux.
Audibert, L. (2009) UML 2: De l’apprentissage à la pratique. Ellipses.
Antonsson, M. (2001) Modeling of Real-Time Systems in UML with Rational Rose and Rose Real-Time Based on RUP. Ericsson Mobile Data Design. AB (ERV) Gothenburg, Sweden, M.S Thesis Open Rep.
Fischer, C., Olderog, E.R. and Wehrheim, H. (2001) A CSP View on UML-RT Structure Diagrams, Fundamental Approaches to Software Engineering. Springer Berlin Heidelberg, 91-108.
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-Ada-Europe.
Feiler, P.H., Gluch, D.P. and Hudak, J.J. (2006) The Architecture Analysis & Design Language (AADL): An Introduction (No. CMU/SEI-2006-TN-011). Carnegie-Mellon Univ Pittsburgh PA Software Engineering Inst.
Lasnier, G. (2008) étude et Support du Standard AADLv2 dans Ocarina. Doctoral Dissertation, Master’s Thesis, Université Pierre & Marie Curie, Paris VI.
Vergnaud, T. (2006) Modélisation des systèmes temps-réel répartis embarqués pour la génération automatique d’applications formellement vérifiées. Doctoral Dissertation, Télécom ParisTech.
Friedenthal, S., Moore, A. and Steiner, R. (2006) OMG Systems Modeling Language (OMG SysML?) Tutorial. INCOSE Intl. Symp.
SysML. http://www.uml-sysml.org/sysml
Kordon, F., Hugues, J., Canals, A. and Dohet, A. (2013) Modélisation et analyse de systèmes embarqués, Lavoisier.
Hause, M.C. and Thom, F. (2008) An Integrated MDA Approach with SysML and UML. 13th IEEE International Conference on Engineering of Complex Computer Systems, ICECCS 2008, IEEE, 249-254. http://dx.doi.org/10.1109/iceccs.2008.21
Boulet, P. (2011) Modélisation et analyse de systèmes embarqués ou temps-réel avec le profil UML MARTE. Techniques de l’Ingenieur (IN120).
Demathieu, S. (2007) MARTE Tutorial. An OMG UML Profile to Develop Real-Time and Embedded Systems. 13th SDL Forum, Paris (MARTE Tutorial).
Gérard, S., Petriu, D. and Medina, J. (2007) MARTE: A New Standard for Modeling and Analysis of Real-Time and Embedded Systems. 19th Euromicro Conference on Real-Time Systems, Pisa.
Specification, O.M.G. (2008) A UML Profile for MARTE. Object Management Group pct/08-06-09.