Model-driven design of performance requirements with UML and MARTE

Antonio García-Domínguez*, Inmaculada Medina-Bulo, Mariano Marcos-Bárcena

*Corresponding author for this work

Research output: Chapter in Book/Published conference outputConference publication


High-quality software needs to meet both functional and non-functional requirements. In some cases, software must accomplish specific performance requirements, but most of the time, only high-level performance requirements are available: it is up to the developer to decide what performance should be expected from each part of the system. In this context, the MARTE profile was proposed by the OMG to extend UML for model-driven development of real-time and embedded systems, focusing on assisting early performance analysis and scheduling. We propose using the MARTE profile to derive the performance requirements of each action in an UML activity diagram from the requirements of the containing activity and some local annotations. In this work, we show how the MARTE profile can be used for this purpose, define algorithms for computing the required throughput and time limit for each action and study their theoretical and empirical performance. The algorithms have been integrated into the Papyrus UML diagram editor and feed back their results into the original model. Running both algorithms on activities with 225 paths requires 10 seconds on average.

Original languageEnglish
Title of host publicationICSOFT 2011 - Proceedings of the 6th International Conference on Software and Database Technologies
Number of pages10
Publication statusPublished - 14 Sept 2011
Event6th International Conference on Software and Database Technologies, ICSOFT 2011 - Seville, Spain
Duration: 18 Jul 201121 Jul 2011


Conference6th International Conference on Software and Database Technologies, ICSOFT 2011


  • Model-driven engineering
  • Non-functional requirements
  • Performance testing
  • UML


Dive into the research topics of 'Model-driven design of performance requirements with UML and MARTE'. Together they form a unique fingerprint.

Cite this