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


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 modeldriven 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.


  1. Alhaj, M. and Petriu, D. C. (2010). Approach for generating performance models from UML models of SOA systems. In Proc. of the 2010 Conference of the Center for Advanced Studies on Collaborative Research, CASCON 7810, pages 268-282, New York, NY, USA. ACM.
  2. Bernardi, S., Campos, J., and Merseguer, J. (2010). TimingFailure risk assessment of UML design using time petri net bound techniques. Industrial Informatics, IEEE Transactions on, PP(99):1.
  3. Bernardi, S., Merseguer, J., and Petriu, D. C. (2009). A dependability profile within MARTE. Software & Systems Modeling.
  4. Eclipse Foundation (2011). Homepage of the Eclipse MDT Papyrus project.
  5. Erl, T. (2008). SOA: Principles of Service Design. Prentice Hall, Indiana, EEUU.
  6. García-Domínguez, A. (2011). Homepage of the SODM+T project.
  7. García-Domínguez, A., Medina-Bulo, I., and MarcosBárcena, M. (2010). Inference of performance constraints in Web Service composition models. CEUR Workshop Proc. of the 2nd Int. Workshop on ModelDriven Service Engineering, 608:55-66.
  8. Kolovos, D., Paige, R., Rose, L., and Polack, F. (2010). The Epsilon Book.
  9. Lucas, H. (1971). Performance evaluation and monitoring. ACM Computing Surveys, 3(3):79-91. (2005). UML Profile for ity, Performance, and Time
  10. OMG (2008). UML Profile for Modeling Quality of Service and Fault Tolerance Characteristics and Mechanisms (QFTP) 1.1.
  11. OMG (2009). UML Profile for Modeling and Analysis of Real-Time and Embedded systems (MARTE) 1.0.
  12. Shousha, M., Briand, L., and Labiche, Y. (2009). A UML/MARTE model analysis method for detection of data races in concurrent systems. In Model Driven Engineering Languages and Systems, volume 5795 of Lecture Notes in Computer Science, pages 47-61. Springer Berlin / Heidelberg.
  13. Smith, C. U. and Williams, L. G. (2003). Software performance engineering. In Lavagno, L., Martin, G., and Selic, B., editors, UML for Real: Design of Embedded Real-Time Systems, pages 343-366. Kluwer, The Netherlands.
  14. Tribastone, M. and Gilmore, S. (2008). Automatic extraction of PEPA performance models from UML activity diagrams annotated with the MARTE profile. In Proc. of the 7th Int. Workshop on Software and Performance, pages 67-78, Princeton, NJ, USA. ACM.
  15. Weyuker, E. J. and Vokolos, F. I. (2000). Experience with performance testing of software systems: Issues, an approach, and case study. IEEE Transactions on Software Engineering, 26:1147-1156.
  16. Woodside, M. (2007). From annotated software designs (UML SPT/MARTE) to model formalisms. In Proc. of the 7th Int. Conference on Formal Methods for Performance Evaluation, pages 429-467, Bertinoro, Italy. Springer-Verlag.
  17. Woodside, M., Franks, G., and Petriu, D. (2007). The future of software performance engineering. In Proc. of Future of Software Engineering 2007, pages 171-187.
  18. Woodside, M., Petriu, D. C., Petriu, D. B., Shen, H., Israr, T., and Merseguer, J. (2005). Performance by unified model analysis (PUMA). In Proc. of the 5th Int. Workshop on Software and Performance, pages 1-12, Palma, Illes Balears, Spain. ACM.
  19. Yang, N., Yu, H., Sun, H., and Qian, Z. (2010). Modeling UML sequence diagrams using extended Petri nets. In Proc. of the 2010 Int. Conference on Information Science and Applications, pages 1-8.

Paper Citation

in Harvard Style

García-Domínguez A., Medina-Bulo I. and Marcos-Bárcena M. (2011). MODEL-DRIVEN DESIGN OF PERFORMANCE REQUIREMENTS WITH UML AND MARTE . In Proceedings of the 6th International Conference on Software and Database Technologies - Volume 2: ICSOFT, ISBN 978-989-8425-77-5, pages 54-63. DOI: 10.5220/0003506000540063

in Bibtex Style

author={Antonio García-Domínguez and Inmaculada Medina-Bulo and Mariano Marcos-Bárcena},
booktitle={Proceedings of the 6th International Conference on Software and Database Technologies - Volume 2: ICSOFT,},

in EndNote Style

JO - Proceedings of the 6th International Conference on Software and Database Technologies - Volume 2: ICSOFT,
SN - 978-989-8425-77-5
AU - García-Domínguez A.
AU - Medina-Bulo I.
AU - Marcos-Bárcena M.
PY - 2011
SP - 54
EP - 63
DO - 10.5220/0003506000540063