Abstract
Systems based on the service-oriented architecture (SOA) principles have become an important cornerstone of the development of enterprise-scale software applications. They are characterized by separating functions into distinct software units, called services, which can be published, requested and dynamically combined in the production of business applications. Service-oriented systems (SOSs) promise high flexibility, improved maintainability, and simple re-use of functionality. Achieving these properties requires an understanding not only of the individual artifacts of the system but also their integration. In this context, non-functional aspects play an important role and should be analyzed and modeled as early as possible in the development cycle. In this paper, we discuss modeling of non-functional aspects of service-oriented systems, and the use of these models for analysis and deployment. Our contribution in this paper is threefold. First, we show how services and service compositions may be modeled in UML by using a profile for SOA (UML4SOA) and how non-functional properties of service-oriented systems can be represented using the non-functional extension of UML4SOA (UML4SOA-NFP) and the MARTE profile. This enables modeling of performance, security and reliable messaging. Second, we discuss formal analysis of models which respect this design, in particular we consider performance estimates and reliability analysis using the stochastically timed process algebra PEPA as the underlying analytical engine. Last but not least, our models are the source for the application of deployment mechanisms which comprise model-to-model and model-to-text transformations implemented in the framework VIATRA. All techniques presented in this work are illustrated by a running example from an eUniversity case study.
Similar content being viewed by others
References
Alwagait E., Ghandeharizadeh S.: DeW: a dependable web services framework. RIDE 01, 111–118 (2004)
Amsden, J., Gardner, T., Griffin, C., Iyengar, S.: Draft UML 1.4 Profile for Automated Business Processes with a Mapping to BPEL 1.0. Specification, IBM. http://www.ibm.com/developerworks/rational/library/content/04April/3103/3103_UMLProfileForBusinessProcesses1.1.pdf (2003), Last visited: 10.12.2008
Avizienis A., Laprie J.-C., Randell B., Landwehr C.: Basic concepts and taxonomy of dependable and secure computing. IEEE Trans. Dependable Secure Comput. 1(1), 11–33 (2004)
Balogh, A., Varró, D., Pataricza, A.: Model-based optimization of enterprise application and service deployment. In: ISAS, pp. 84–98, (2005)
Balsamo S., Marco A.D., Inverardi P., Simeoni M.: Model-based performance prediction in software development: a survey. IEEE Trans. Softw. Eng. 30(5), 295–310 (2004)
Baresi L., Heckel R., Thöne S., Varró D.: Style-based modeling and refinement of service-oriented architectures. J. Softw. Syst. Model. (SOSYM) 5(2), 187–200 (2005)
Bernardi, S., Donatelli, S., Merseguer, J.: From UML sequence diagrams and statecharts to analysable Petri Net models. In: Inverardi, P., Balsamo, S., Selic, B. (eds.) Proceedings of the Third International Workshop on Software and Performance, pp.35–45. ACM, Rome, Italy, (2002)
Börger E., Stärk R.: Abstract State Machines. A Method for High-Level System Design and Analysis. Springer, Berlin (2003)
Caceres, P., Marcos, E., Vera, B.: A MDA-based approach for web information system development. In: Workshop in Software Model Engineering (WiSME@UML2003) (2003)
Canevet, C., Gilmore, S., Hillston, J., Kloul, L., Stevens, P.: Analysing UML 2.0 activity diagrams in the software performance engineering process. In: Dujmovic, J.J., et al. (eds.) Proceedings of the Fourth International Workshop on Software and Performance, WOSP 2004, Redwood Shores, California, USA, January 14–16, 2004, pp. 74–78 (2004)
Cortellessa, V., Marco, A.D., Inverardi, P.: Software performance model-driven architecture. In: SAC ’06: Proceedings of the 2006 ACM symposium on Applied computing, pp. 1218–1223. ACM Press, New York (2006)
D’Ambrogio A., Bocciarelli P.: A model-driven approach to describe and predict the performance of composite services. In: Cortellessa, V., Uchitel, S., Yankelevich, D. (eds) WOSP, pp. 78–89. ACM, New York (2007)
Dujmovic, J.J., Almeida, V.A.F., Lea, D. (eds.): Proceedings of the Fourth International Workshop on Software and Performance, WOSP 2004, Redwood Shores, California, USA, January 14–16, 2004. ACM, New York (2004)
Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds): Handbook on Graph Grammars and Computing by Graph Transformation, volume 2: Applications, Languages and Tools. World Scientific, Singapore (1999)
Ermagan, V., Krüger, I.: A UML2 profile for service modeling. In: International Conference on Model Driven Engineering Languages and Systems. LNCS, vol. 4735, IEEE, pp. 360–374. Springer, Berlin (2007)
Foster, H., Göczy, L., Koch, N., Mayer, P., Montangero, C., Varró, D.: D1.4b: UML for Service-Oriented Systems. Specification, SENSORIA Project 016004 (2010)
Gönczy, L., Ávéd, J., Varró, D.: Model-based deployment of web services to standards-compliant middleware. In: Isaias, P., Nunes, M.B., Martinez, I. (eds.) Proceedings of WWW/Internet 2006(ICWI2006). Iadis Press (2006)
Gönczy, L., Déri, Z., Varró, D.: Model-Based Performability Analysis of Service Configurations with Reliable Messaging. In: Koch, N., Vallecillo, A., Houben, G.-J. (eds.) Proceedings of the Model Driven Web Engineering (MDWE), CEUR, vol. 389 (2008)
Grø nmo, R., Skogan, D., Solheim, I., Oldevik, J.: Model-Driven Web Services Development. In: Proceedings of the IEEE International Conference on e-Technology, e-Commerce and e-Service (EEE’04), pp. 42–45. IEEE, Los Alamitos, CA, USA (2004)
Gronmo, R., Skogan, D., Solheim, I., Oldevik, J.: Style-based modeling and refinement of service-oriented architectures. In: Eighth IEEE International Enterprise Distributed Object Computing Conference (EDOC’04), IEEE, pp. 47–57. IEEE (2004)
Hillston J.: A Compositional Approach to Performance Modelling. Cambridge University Press, Cambridge (1996)
Johnson, S.: UML 2.0 Profile for Software Services. Specification, IBM (2005) http://www.ibm.com/developerworks/rational/library/05/419_soa, Last visited: 10.12.2008
Jonkers, H., Iacob, M.-E., Lankhorst, M.M., Strating, P.: Integration and Analysis of Functional and Non-Functional Aspects in Model-Driven E-Service Development. In: EDOC, pp. 229–238 (2005)
Kelly S., Tolvanen J.-P.: Domain-Specific Modeling. Wiley- Interscience, IEEE Computer Society, USA (2008)
Li, P., Chen, Y., Romanovsky, A.: Measuring the Dependability of Web Services for Use in e-Science Experiments. In: Penkler, D., Reitenspieß, M., Tam, F. (eds.) Service Availability, Third International Service Availability Symposium, ISAS 2006, Helsinki, Finland, May 15–16, 2006, Revised Selected Papers. Lecture Notes in Computer Science, vol. 4328, pp. 193–205. Springer, Berlin (2006)
Looker, N., Xu, J.: Dependability assessment of grid middleware. In: Proceedings of the 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks, DSN 2007, 25–28 June 2007, Edinburgh, UK, pp. 125–130. IEEE Computer Society, USA (2007)
López-Grao, J.P., Merseguer, J., Campos, J.: From UML Activity Diagrams to Stochastic Petri Nets: Application to Software Performance Engineering. In Dujmovic, J.J., et al. (eds.) Proceedings of the Fourth International Workshop on Software and Performance, WOSP 2004, Redwood Shores, California, USA, January 14-16, 2004, pp. 25–36 (2004)
Mantell, K.: From UML to BPEL. Specification, IBM. http://www.ibm.com/developerworks/webservices/library/ws-uml2bpel/ (2005). Last visited: 10.12.2008
Mayer P., Schroeder A., Koch N.: A model-driven approach to service orchestration. In: SCC’08, IEEE, pp. 1–6. IEEE, USA (2008)
Mayer, P., Schroeder, A., Koch, N.: MDD4SOA: model-driven service orchestration. In: The 12th IEEE International EDOC Conference (EDOC 2008), pp. 203–212. IEEE Computer Society, Munich, Germany (2008)
Merseguer, J., Bernardi, S., Campos, J., Donatelli, S.: A compositional semantics for UML state machines aimed at performance evaluation. In: Silva, M., Giua, A., Colom, J. (eds.) Proceedings of the 6th International Workshop on Discrete Event Systems, pp. 295–302. IEEE Computer Society Press, Zaragoza, Spain (2002)
Object Management Group: UML Profile for Schedulability, Performance and Time Specification. http://www.omg.org/technology/documents/formal/schedulability.htm (2005)
Object Management Group: UML for Modeling Quality of Service and Fault Tolerance Characteristics and Mechanisms, v1.1. http://www.omg.org/spec/QFTP/1.1/ (2008)
Object Management Group (OMG). Unified Modeling Language: Superstructure, version 2.1.2. Specification, OMG. http://www.omg.org/docs/formal/07-11-02.pdf (2007)
Object Management Group (OMG): UML Profile for MARTE, Beta 2. Specification, OMG. http://www.omgmarte.org/Documents/Specifications/08-06-09.pdf (2008)
Object Management Group (OMG). Service Oriented Architecture Modeling Language (SoaML)—Specification for the UML Profile and Metamodel for Services (UPMS), revised submission. Specification, OMG. http://www.omg.org/cgi-bin/doc?ptc/09-04-01 (2009). Last visited: 30.08.2009
Petriu D., Woodside C.: An intermediate metamodel with scenarios and resources for generating performance models from UML designs. Softw. Syst. Model. 6, 163–184 (2007)
Röttger, S., Zschaler, S.: Model-driven development for non-functional properties: refinement through model transformation. In: Proceedings of the Unified Modeling Language (UML 2004). LNCS, vol. 3273, pp. 275–289. Springer, Berlin (2004)
Software Engineering for Service-Oriented Overlay Computers. http://www.sensoria-ist.eu
Tribastone M., Gilmore, S.: Automatic extraction of PEPA performance models from UML activity diagrams annotated with the MARTE profile. In: Proceedings of the Seventh International Workshop on Software and Performance (WOSP). ACM, Princeton, New Jersey, USA (2008)
Vara, J.M., de Castro, V., Marcos, E.: WSDL automatic generation from UML models in a MDA framework. In: NWESP 2005, pp. 319. IEEE, USA (2005)
Varró D., Balogh A.: The model transformation language of the VIATRA2 framework. Sci. Comput. Program. 68(3), 214–234 (2007)
Varró, D., Pataricza, A.: Generic and meta-transformations for model transformation engineering. In: Baar, T., Strohmeier, A., Moreira, A., Mellor, S. (eds.) Proceedings of the UML 2004: 7th International Conference on the Unified Modeling Language. LNCS, vol. 3273, pp. 290–304. Springer, Lisbon (2004)
Wada, H., Suzuki, J., Oba, K.: Modeling non-functional aspects in service oriented architecture. In: IEEE International Conference on Service Computing, Chicago, IL, pp. 222–229. IEEE, USA (2006)
Web Services Security: SOAP Message Security 1.1 (WS-Security 2004). http://docs.oasis-open.org/wss/v1.1/
Wirsing, M., Hölzl, M., Acciai, L., Clark, A., Banti, F. Fantechi, A., Gilmore, S., Gnesi, S., Gönczy, L., Koch, N., Lapadula, A., Mayer, P., Mazzanti, F., Pugliese, R., Schroeder, A., Tiezzi, F., Tribastone, M., Varró, D.: A pattern-based approach to augmenting service engineering with formal analysis, transformation and dynamicity. In: Proceedings of 3rd International Symposium on Leveraging Applications of Formal Methods, Verification and Validation (ISOLA 2008), Porto Sani, Greece, LNCS. Springer, Berlin (2008)
Woodside, C.M., Petriu, D.C., Petriu, D.B., Shen, H., Israr, T., Meseguer, J.: Performance by unified model analysis (PUMA). In: WOSP, pp. 1–12. ACM, New York (2005)
WS-Reliability 1.1 specification. http://docs.oasis-open.org/wsrm/ws-reliability/v1.1/wsrm-ws_reliability-1.1-spec-os.pdf
WS-ReliableMessaging 1.1 specification. http://docs.oasis-open.org/ws-rx/wsrm/200702/wsrm-1.1-spec-os-01.pdf
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Marko Boškovic, Bernhard Schätz, Claus Pahl, and Dragan Gasevic.
Rights and permissions
About this article
Cite this article
Gilmore, S., Gönczy, L., Koch, N. et al. Non-functional properties in the model-driven development of service-oriented systems. Softw Syst Model 10, 287–311 (2011). https://doi.org/10.1007/s10270-010-0155-y
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-010-0155-y