Abstract
Embedded software engineering very often involves development of complex, mission critical software; wherein it is imperative that the developed software fulfills its requirements to achieve high quality. In such cases, there are several advantages of using specialized Requirements Management (RM) tools for managing the requirements. Critical timing requirements are among the foremost non-functional (quality) requirements to be fulfilled by increasingly complex embedded software. Further, a correct and effective timing behavior is among the characteristics of high-quality software. On the other hand, Model-Driven Development (MDD) is considered as the next paradigm shift to address the increasing complexity in embedded software development and to achieve high-quality standards. Similarly, there are specialized tools for validating and analyzing the timing behavior of the embedded software. However, such tools are used very late in the development process, when the actual timing errors occur. Thus, it is intuitive to perceive that an integrated model-based framework encompassing a complete workflow from specification until validation of timing requirements in embedded software systems is very beneficial for high-quality software development, nevertheless is still missing. Addressing the aforementioned gap, this paper proposes an approach toward a complete workflow for managing timing requirements in RM tools, specifying timing behavior in MDD tools and their validation in specialized tools for timing analyses. A prototype implementation of the proposed framework and its experimental evaluation are discussed.
Similar content being viewed by others
References
Albinet, A., Begoc, S., Boulanger, J. L., Casse, O., & Dal, I. et al. (2008). The MeMVaTEx methodology: From requirements to models in automotive application design. In 4th European congress ERTS (embedded real time software), Toulouse, France.
ATESST Consortium. (2008). East-ADL2 Specification. Technical report, ITEA. http://www.atesst.org/home/liblocal/docs/EAST-ADL-2.0-Specification_2008-02-29.pdf. Accessed on 18 November 2015
AUTOSAR. AUTomotive Open System ARchitecture Website. (2016). http://www.autosar.org/. Accessed on 09 May 2016
Burke, P. W., & Sweany, P. (2007). Automatic code generation through model-driven design. In 20th system and software technology conference, Las Vegas, NV.
Cansell, D., Méry, D., & Rehm, J. (2007). Time constraint patterns for event B development. In B 2007: Formal specification and development in B (pp. 140–154). Berlin, Heidelberg: Springer
Delgado, N., Gates, A. Q., & Roach, S. (2004). A taxonomy and catalog of runtime software-fault monitoring tools. IEEE Transactions on Software Engineering, 30(12), 859–872.
Eclipse Foundation. (2015a). ProR requirements engineering platform website. http://eclipse.org/rmf/pror/. Accessed on 18 November 2015
Eclipse Foundation. (2015b). Papyrus UML website. http://www.eclipse.org/papyrus/. Accessed on 18 November 2015
Eclipse Foundation. (2015c). Atlas transformation language (ATL). https://eclipse.org/atl/. Accessed on 18 November 2015
Eclipse Foundation. (2015d). Requirements management for eclipse—Requirements modeling framework (RMF). http://www.eclipse.org/rmf/. Accessed on 18 November 2015
Ellidiss Software. (2015). AADL inspector website. http://www.ellidiss.com/products/aadl-inspector/. Accessed on 18 November 2015
Event-B. (2016). Event-B and the Rodin platform. http://www.event-b.org/index.html. Accessed on 12 May 2016
Fischmeister, S., & Lam, P. (2010). Time-aware instrumentation of embedded software. IEEE Transactions on Industrial Informatics, 6(4), 652–663.
France, R. B., Ghosh, S., Dinh-Trong, T., & Solberg, A. (2006). Model-driven development using UML 2.0: Promises and pitfalls. Computer, 39, 59–66.
Ganssle, J. (2008). The art of designing embedded systems. Oxford: Newnes.
Gérard, S., Terrier, F., & Tanguy, Y. (2002). Using the model paradigm for real-time systems development: Accord/uml. In J.-M. Bruel, & Z. Bellahsene (Eds.), Advances in object-oriented information systems (pp. 260–269). Berlin, Heidelberg: Springer.
Graf, P., Müller, K. D., & Reichmann, C. (2007). Nonintrusive black-and white-box testing of embedded systems software against UML models. In 18th IEEE/IFIP international workshop on rapid system prototyping, 2007. RSP 2007 (pp. 130–138). IEEE.
Hagner, M., & Goltz, U. (2010). Integration of scheduling analysis into UML based development processes through model transformation. In Proceedings of the 2010 international multiconference on computer science and information technology (IMCSIT) (pp. 797–804). IEEE.
Hagner, M., & Huhn, M. (2008). Tool support for a scheduling analysis view. In MARTE workshop at DATE’08 (pp. 41–46).
Henia, R., Hamann, A., Jersak, M., Racu, R., Richter, K., & Ernst, R. (2005). System level performance analysis—The SymTA/S approach. IEE Proceedings-Computers and Digital Techniques, 152(2), 148–166.
Huang, X., Seyster, J., Callanan, S., Dixit, K., Grosu, R., Smolka, S. A., et al. (2012). Software monitoring with controllable overhead. International Journal on Software Tools for Technology Transfer, 14(3), 327–347.
IBM. (2009). Rational rhapsody API reference manual. https://www.ibm.com/developerworks/community/blogs/a8b06f94-c701-42e5-a15f-e86cf8a8f62e/resource/Documents/rhapsody_api_reference_manual.pdf?lang=en. Accessed on 18 November 2015
IBM. (2010). IBM rational rhapsody gateway add on user manual. http://pic.dhe.ibm.com/infocenter/rhaphlp/v7r5/topic/com.ibm.rhapsody.oem.pdf.doc/pdf/manual.pdf. Accessed on 18 November 2015
IBM. (2015a). Rational DOORS website. http://www-03.ibm.com/software/products/en/ratidoor. Accessed on 18 November 2015
IBM. (2015b). Rational rhapsody family website. http://www-03.ibm.com/software/products/en/ratirhapfami. Accessed on 18 November 2015
IBM. (2015c). Rational DOORS next generation website. http://www-03.ibm.com/software/products/en/ratidoorng/. Accessed on 18 November 2015
ISO/IEC. (2011). ISO/IEC 25010:2011—Systems and software engineering—Systems and software Quality Requirements and Evaluation (SQuaRE)—System and software quality models. http://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=35733. Accessed on 18 November 2015
Iyenghar, P., Pulvermueller, E., Spieker, M., Wuebbelmann, J., & Westerkamp, C. (2013). Time and memory-aware runtime monitoring for executing model-based test cases in embedded systems. In 2013 11th IEEE international conference on industrial informatics (INDIN) (pp. 506–512). IEEE.
Iyenghar, P., Samson, B., Spieker, M., Noyer, A., Wuebbelmann, J., Westerkamp, C., Pulvermueller, E. (2015). A mechanism for data interchange between embedded software sub-systems developed using heterogenous modeling domains. In International conference on model-driven engineering and software development (MODELSWARD 2015)
Iyenghar, P., Westerkamp, C., Wuebbelmann, J., & Pulvermueller, E. (2010, October). A model based approach for debugging embedded systems in real-time. In Proceedings of the tenth ACM international conference on embedded software (pp. 69–78). ACM.
Iyenghar, P., Westerkamp, C., Wuebbelmann, J., Pulvermueller, E. (2011). Design level debugging of timing behavior in embedded systems: Using a model-based approach. In 2011 9th IEEE international conference on industrial informatics (INDIN) (pp. 889–894). IEEE.
Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I., & Valduriez, P. (2006). ATL: a QVT-like transformation language. In Companion to the 21st ACM SIGPLAN symposium on object-oriented programming systems, languages, and applications (pp. 719–720). ACM.
Karlsson, D. (2012). TIMMO-2-USE innovation report. In ITEA-2 Magazine, 14, 24-25. https://itea3.org/project/result/download/6631/09033-TIMMO-2-USE-TIMMO-2-USE%20Innovation%20Report.pdf. Accessed on 18 November 2015
Le Dang, H., Dubois, H., & Gérard, S. (2008). Towards a traceability model in a MARTE-based methodology for real-time embedded systems. Innovations in Systems and Software Engineering, 4(3), 189–193.
Mathworks. (2016). Matlab, Simulink, http://www.mathworks.com/. Accessed on 12 May 2016
Medina, J. L., & Cuesta, Á. G. (2011). From composable design models to schedulability analysis with uml and the uml profile for marte. ACM SIGBED Review, 8(1), 64–68.
Mraidha, C., Tucci-Piergiovanni, S., & Gerard, S. (2011). Optimum: A marte-based methodology for schedulability analysis at early design stages. ACM SIGSOFT Software Engineering Notes, 36(1), 1–8.
Noyer, A., Iyenghar, P., Pulvermueller, E., Engelhardt, J., Pramme, F., Bikker, G. (2015). A model-based workflow from specification until validation of timing requirements in embedded software systems. In 10th IEEE international symposium on industrial embedded systems (SIES) (pp. 1–4)
Noyer, A., Iyenghar, P., Pulvermueller, E., Pramme, F., Engelhardt, J., Samson, B., & Bikker, G. (2014). Tool independent code generation for the UML closing the gap between proprietary models and the standardized UML model. In 2014 International conference on evaluation of novel approaches to software engineering (ENASE) (pp. 1–9). IEEE.
Object Management Group. (2011). UML Profile for MARTE: Modeling and analysis of real-time embedded systems Version 1.1. http://www.omg.org/spec/MARTE/1.1/PDF. Accessed on 18 November 2011
Object Management Group. (2012). SysML specification Version 1.3. http://www.omg.org/spec/SysML/1.3/PDF. Accessed on 18 November 2015
Object Management Group. (2013). Requirements interchange format (ReqIF) Version 1.1. http://www.omg.org/spec/ReqIF/1.1/PDF. Accessed on 18 November 2015
Object Management Group. (2015a). Object Management Group website. http://www.omg.org. Accessed on 18 November 2015
Object Management Group. (2015b). OMG unified modeling language (OMG UML) Version 2.5 http://www.omg.org/spec/UML/2.5/PDF. Accessed on 18 November 2015
Open Services for Lifecycle Collaboration. (2015). OSLC website. http://open-services.net/. Accessed on 18 November 2015
Peraldi-Frati, M. A., & Sorel, Y. (2008). From high-level modelling of time in MARTE to real-time scheduling analysis. In International workshop on model based architecting and construction of embedded systems, ACESMB (p. 129).
Plattner, B. (1984). Real-time execution monitoring. IEEE Transactions on Software Engineering, 6, 756–764.
Polarion Software. (2015). Polarion ALM website. https://www.polarion.com/products/alm/index.php. Accessed on 18 November 2015
Roemer, E., & Willert, A. (2014). RXF certification package—Specification and delivery. http://www.willert.de/assets/Datenblaetter/DatS-RXF-Safety-Package-V2.0.pdf. Accessed on 18 November 2015
Selic, B., & Gérard, S. (2013). Modeling and analysis of real-time and embedded systems with UML and MARTE: Developing cyber-physical systems. London: Elsevier.
Sparx Systems. (2010). Enterprise Architect Software Developer’s kit. http://www.sparxsystems.com.au/downloads/resources/booklets/enterprise_architect_sdk.pdf. Accessed on 18 November 2015
Sparx Systems. (2015). Enterprise Architect Website. http://www.sparxsystems.de/. Accessed on 18 November 2015
Symtavision. (2015). SymTA/S and traceanalyzer website. https://www.symtavision.com/products/symtas-traceanalyzer/. Accessed on 18 November 2015
Ul Haq, E. (2013). Tool integration using OSLC. Master Thesis, Mälardalen University, Västeras, Sweden. http://www.idt.mdh.se/utbildning/exjobb/files/TR1420.pdf. Accessed on 18 November 2015
University of Cantabria. (2015). Modeling and analysis suite for real-time applications. http://mast.unican.es/. Accessed on 18 November 2015
Walderhaug, S., Stav, E., Johansen, U., & Olsen, G. K. (2008). Traceability in model-driven software development. In P. Tiako (Ed.), Designing software-intensive systems: Methods and principles, (pp. 133–159). Idea Group Publishing: Hershey. doi:10.4018/978-1-59904-699-0.ch006
Watterson, C., & Heffernan, D. (2007). Runtime verification and monitoring of embedded systems. Software, IET, 1(5), 172–179.
Winkler, S., & Pilgrim, J. (2010). A survey of traceability in requirements engineering and model-driven development. Software and Systems Modeling, 9(4), 529–565.
Acknowledgment
This project is supported by a grant from the Federal ministry of Economics and Technology (BMWi), Germany. This project work is carried out in cooperation with Willert Software Tools GmbH, Symtavision GmbH, Ostfalia University of Applied Sciences and the University of Osnabrueck.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Noyer, A., Iyenghar, P., Engelhardt, J. et al. A model-based framework encompassing a complete workflow from specification until validation of timing requirements in embedded software systems. Software Qual J 25, 671–701 (2017). https://doi.org/10.1007/s11219-016-9323-9
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11219-016-9323-9