Service-Orientation: Conquering Complexity with XMDD

Abstract

We advocate a new direction for mastering complexity in service-oriented design of complex applications: eXtreme Model-Driven Development (XMDD). It is a new application development paradigm that is extreme in that it is designed to involve the customer/application expert continuously throughout the whole systems’ life cycle, and it is model-driven because it is based on the ‘One-Thing Approach’, which works by successively enriching and refining one single artifact that is a rich model. With XMDD, system development becomes in essence a pathway to user-centric orchestration of intuitive service functionality. XMDD differs radically from classical software development, which in our opinion, is no longer adequate for the bulk of application programming, because the profile of todays’s applications has changed and demands agility and a leaner development style. This need is particularly evident when it comes to heterogeneous, cross-organizational systems, which must adapt to rapidly changing market requirements. XMDD addresses the needs via a model-driven, lightweight, and cooperative development paradigm that puts the user process at the center of development and the application expert in control of the process evolution.

Keywords

Migration Manifold Product Line Ruby 

References

  1. 1.
    Andrade, L., Fiadeiro, J.L.: Architecture based evolution of software systems. In: Formal Methods for Software Architectures. Lecture Notes in Computer Science, vol. 2804, pp. 148–181. Springer, Berlin (2003) CrossRefGoogle Scholar
  2. 2.
    Bajohr, M., Margaria, T.: MaTRICS: a service-based management tool for remote intelligent configuration of systems. Innovations Syst. Softw. Eng. 2, 99–111 (2006) CrossRefGoogle Scholar
  3. 3.
    Bajohr, M., Margaria, T.: High service availability in MaTRICS for the OCS. In: Margaria, T., Steffen, B. (eds.) Leveraging Applications of Formal Methods, Verification and Validation. Communications in Computer and Information Science, vol. 17, pp. 572–586. Springer, Berlin (2009) CrossRefGoogle Scholar
  4. 4.
    Ball, T., Cook, B., Das, S., Rajamani, S.K.: Refining approximations in software predicate abstraction. In: Tools and Algorithms for the Construction and Analysis of Systems, 10th International Conference, TACAS 2004, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2004, Barcelona, Spain, March 29–April 2, 2004. Lecture Notes in Computer Science, vol. 2988, pp. 388–403. Springer, Berlin (2004) Google Scholar
  5. 5.
    Colyer, A., Clement, A., Harley, G., Webster, M.: Eclipse Aspectj: Aspect-Oriented Programming with Aspectj and the Eclipse Aspectj Development Tools. Addison-Wesley, Reading (2004) Google Scholar
  6. 6.
    Corbett, J.C., Dwyer, M.B., Hatcliff, J., Robbie: Bandera: a source-level interface for model checking Java programs. In: ICSE, pp. 762–765 (2000) CrossRefGoogle Scholar
  7. 7.
    Hagerer, A., Hungar, H., Niese, O., Steffen, B.: Model generation by moderated regular extrapolation. In: Kutsche, R.-D., Weber, H. (eds.) Fundamental Approaches to Software Engineering, 5th International Conference, FASE 2002, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2002, Grenoble, France, April 8–12, 2002. Lecture Notes in Computer Science, vol. 2306, pp. 80–95. Springer, Berlin (2002) Google Scholar
  8. 8.
    Hörmann, M., Margaria, T., Mender, T., Nagel, R., Steffen, B., Trinh, H.: The jABC approach to rigorous collaborative development of SCM applications. In: Margaria, T., Steffen, B. (eds.) Leveraging Applications of Formal Methods, Verification and Validation, Third International Symposium, ISoLA 2008, Porto Sani, Greece, October 13–15, 2008. Communications in Computer and Information Science, vol. 17, pp. 724–737. Springer, Berlin (2008) CrossRefGoogle Scholar
  9. 9.
    Jörges, S., Margaria, T., Steffen, B.: Genesys: service-oriented construction of property conform code generators. Innovations Syst. Softw. Eng. 4(4), 361–384 (2008) CrossRefGoogle Scholar
  10. 10.
    Jörges, S., Margaria, T., Steffen, B.: Assuring property conformance of code generators via model checking. Form. Asp. Comput. 1–18 (2010). doi: 10.1007/s00165-010-0169-9
  11. 11.
    Jörges, S., Steffen, B.: Leveraging service-orientation for combining code generation frameworks. In: 16th Annual IEEE International Conference on the Engineering of Complex Computer Systems (ICECCS), pp. 198–207 (2011) CrossRefGoogle Scholar
  12. 12.
    Jörges, S., Steffen, B., Margaria, T.: Building code generators with Genesys: a tutorial introduction. In: 3rd International Summer School Conference on Generative and Transformational Techniques in Software Engineering III. GTTSE’09, pp. 364–385. Springer, Berlin (2011) CrossRefGoogle Scholar
  13. 13.
    Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: ECOOP, pp. 220–242 (1997) Google Scholar
  14. 14.
    Kozen, D.: Results on the propositional mu-calculus. Theor. Comput. Sci. 27, 333–354 (1983) CrossRefMATHMathSciNetGoogle Scholar
  15. 15.
    Kubczak, C., Margaria, T., Steffen, B.: Mashup development for everybody: a planning-based approach. In: 3rd Int. Worksh. on Service Matchmaking and Resource Retrieval in the Semantic Web, Colocated with ISWC-2009, Washington, DC, USA. CEUR Workshop Proceedings, vol. 525 (2009) Google Scholar
  16. 16.
    Kubczak, C., Margaria, T., Steffen, B., Nagel, R.: Service-oriented mediation with jABC/jETI. In: Petrie, C., Margaria, T., Zaremba, M., Lausen, H. (eds.) Semantic Web Services Challenge: Results from the First Year, pp. 71–99. Springer, Berlin (2009) CrossRefGoogle Scholar
  17. 17.
    Lamprecht, A.-L., Margaria, T., Steffen, B.: Seven variations of an alignment workflow—an illustration of agile process design and management in Bio-jETI. In: Mandoiu, I.I., Sunderraman, R., Zelikovsky, A. (eds.) Bioinformatics Research and Applications, Fourth International Symposium, ISBRA 2008, Atlanta, GA, USA, May 6–9, 2008. Lecture Notes in Computer Science, vol. 4983, pp. 445–456. Springer, Berlin (2008) Google Scholar
  18. 18.
    Lamprecht, A.-L., Margaria, T., Steffen, B.: Bio-jETI: a framework for semantics-based service composition. BMC Bioinform. 10(S-10), 8 (2009) CrossRefGoogle Scholar
  19. 19.
    Lamprecht, A.-L., Margaria, T., Steffen, B.: Supporting process development in Bio-jETI by model checking and synthesis. In: SWAT4LS-2009, Semantic Web Applications and Tools for Life Sciences. Proceedings of the Workshop on Semantic Web Applications and Tools for Life Sciences, Amsterdam, The Netherlands, November 20, 2009. CEUR Workshop Proceedings, vol. 559 (2009) Google Scholar
  20. 20.
    Lamprecht, A.-L., Margaria, T., Steffen, B., Sczyrba, A., Hartmeier, S., Giegerich, R.: GeneFisher-P: variations of genefisher as processes in Bio-jETI. BMC Bioinform. 9(S-4) (2008). doi: 10.1186/1471-2105-9-S4-S13
  21. 21.
    Lamprecht, A.-L., Naujokat, S., Margaria, T., Steffen, B.: Semantics-based composition of EMBOSS services. J. Biomed. Semant. 2(Suppl 1), 5 (2011) CrossRefGoogle Scholar
  22. 22.
    Lamprecht, A.-L., Naujokat, S., Steffen, B., Margaria, T.: Constraint-guided workflow composition based on the EDAM ontology. CoRR arXiv:1012.1640 (2010)
  23. 23.
    Lausen, H., Künster, U., Petrie, C., Zaremba, M., Komazec, S.: SWS challenge scenarios. In: Semantic Web Services Challenge Results from the First Year. Springer, Berlin (2009) Google Scholar
  24. 24.
    Margaria, T., Karusseit, M.: Community usage of the online conference service: an experience report from three CS conferences. In: Monteiro, J.L., Swatman, P.M.C., Tavares, L.V. (eds.) Towards the Knowledge Society: eCommerce, eBusiness, and eGovernment, the Second IFIP Conference on E-Commerce, E-Business, E-Government (I3E 2002), Lisbon, Portugal, October 7–9, 2002, pp. 497–511 (2002) Google Scholar
  25. 25.
    Margaria, T., Kubczak, C., Steffen, B.: Bio-jETI: a service integration, design, and provisioning platform for orchestrated bioinformatics processes. BMC Bioinform. 9(S-4) (2008). doi: 10.1186/1471-2105-9-S4-S12
  26. 26.
    Margaria, T., Meyer, D., Kubczak, C., Isberner, M., Steffen, B.: Synthesizing semantic web service compositions with jMosel and Golog. In: Bernstein, A., Karger, D.R., Heath, T., Feigenbaum, L., Maynard, D., Motta, E., Thirunarayan, K. (eds.) 8th International Semantic Web Conference, ISWC 2009, Chantilly, VA, USA, October 25–29, 2009. Lecture Notes in Computer Science, vol. 5823, pp. 392–407. Springer, Berlin (2009) CrossRefGoogle Scholar
  27. 27.
    Margaria, T., Nagel, R., Steffen, B.: jETI: a tool for remote tool integration. In: Halbwachs, N., Zuck, L.D. (eds.) Tools and Algorithms for the Construction and Analysis of Systems, 11th International Conference, TACAS 2005, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2005, Edinburgh, UK, 4–8 April 2005, pp. 557–562 (2005) Google Scholar
  28. 28.
    Margaria, T., Nagel, R., Steffen, B.: Remote integration and coordination of verification tools in JETI. In: 12th IEEE International Conference on the Engineering of Computer-Based Systems (ECBS 2005), Greenbelt, MD, USA, 4–7 April 2005, pp. 431–436 (2005) Google Scholar
  29. 29.
    Margaria, T., Steffen, B.: Backtracking-free design planning by automatic synthesis in metaframe. In: FASE, pp. 188–204 (1998) Google Scholar
  30. 30.
    Margaria, T., Steffen, B.: Lightweight coarse-grained coordination: a scalable system-level approach. Int. J. Softw. Tools Technol. Transf. 5(2–3), 107–123 (2004) Google Scholar
  31. 31.
    Margaria, T., Steffen, B.: From the how to the what. In: Meyer, B., Woodcock, J. (eds.) Verified Software: Theories, Tools, Experiments, First IFIP TC 2/WG 2.3 Conference, VSTTE 2005, Zurich, Switzerland, October 10–13, 2005, Revised Selected Papers and Discussions, pp. 448–459 (2005) Google Scholar
  32. 32.
    Margaria, T., Steffen, B.: LTL guided planning: revisiting automatic tool composition in ETI. In: 31st Annual IEEE / NASA Software Engineering Workshop (SEW-31 2007), Loyola College, Columbia, MD, USA, 6–8 March 2007, pp. 214–226 (2007) CrossRefGoogle Scholar
  33. 33.
    Margaria, T., Steffen, B.: Agile IT: Thinking in user-centric models. In: Margaria, T., Steffen, B. (eds.) Leveraging Applications of Formal Methods, Verification and Validation, Third International Symposium, ISoLA 2008, Porto Sani, Greece, October 13–15, 2008, pp. 490–502 (2008) Google Scholar
  34. 34.
    Margaria, T., Steffen, B.: Business process modelling in the jABC: the one-thing approach. In: Cardoso, J., van der Aalst, W. (eds.) Handbook of Research on Business Process Modeling, pp. 1–26. IGI Global, Hershey (2009) CrossRefGoogle Scholar
  35. 35.
    Margaria, T., Steffen, B.: Continuous model-driven engineering. IEEE Comput. 42(10), 106–109 (2009) CrossRefGoogle Scholar
  36. 36.
    Margaria, T., Steffen, B., Kubczak, C.: Evolution support in heterogeneous service-oriented landscapes. J. Braz. Comput. Soc. 16(1), 35–47 (2010) CrossRefGoogle Scholar
  37. 37.
    Margaria, T., Steffen, B., Reitenspieß, M.: Service-oriented design: the roots. In: Benatallah, B., Casati, F., Traverso, P. (eds.) Service-Oriented Computing—ICSOC 2005, Third International Conference, Amsterdam, The Netherlands, December 12–15, 2005. Lecture Notes in Computer Science, vol. 3826, pp. 450–464 (2005) CrossRefGoogle Scholar
  38. 38.
    Marowsky-Brée, L.: A new cluster resource manager for heartbeat. In: UKUUG LISA/Winter Conf. on High-Availability and Reliability, Bournemouth (UK) (2004) Google Scholar
  39. 39.
    Niese, O., Margaria, T., Hagerer, A., Nagelmann, M., Steffen, B., Brune, G., Ide, H.-D.: An automated testing environment for CTI systems using concepts for specification and verification of workflows. Annu. Rev. Commun. 54, 927–936 (2001) Google Scholar
  40. 40.
    Niese, O., Steffen, B., Margaria, T., Hagerer, A., Brune, G., Ide, H.-D.: Library-based design and consistency checking of system-level industrial test cases. In: Proceedings of the 4th International Conference on Fundamental Approaches to Software Engineering. FASE ’01, pp. 233–248. Springer, London (2001) Google Scholar
  41. 41.
    Shankar, N., Owre, S.: Principles and pragmatics of subtyping in PVS. In: Bert, D., Choppy, C., Mosses, P.D. (eds.) Recent Trends in Algebraic Development Techniques, 14th International Workshop, WADT ’99, Château de Bonas, France, September 15–18, 1999, Selected Papers, pp. 37–52 (1999) Google Scholar
  42. 42.
    Steffen, B.: Unifying models. In: Reischuk, R., Morvan, M. (eds.) STACS 97, 14th Annual Symposium on Theoretical Aspects of Computer Science, Lübeck, Germany, February 27–March 1, 1997, pp. 1–20 (1997) Google Scholar
  43. 43.
    Steffen, B., Margaria, T.: METAFrame in practice: design of intelligent network services. In: Olderog, E.-R., Steffen, B. (eds.) Correct System Design, Recent Insight and Advances, pp. 390–415, (to Hans Langmaack on the occasion of his retirement from his professorship at the University of Kiel) (1999) Google Scholar
  44. 44.
    Steffen, B., Margaria, T., Braun, V.: The electronic tool integration platform: concepts and design. Int. J. Softw. Tools Technol. Transf. 1(1–2), 9–30 (1997) MATHGoogle Scholar
  45. 45.
    Steffen, B., Margaria, T., Braun, V., Kalt, N.: Hierarchical service definition. Annu. Rev. Commun. 51, 847–856 (1997) Google Scholar
  46. 46.
    Steffen, B., Margaria, T., Claßen, A., Braun, V.: Incremental formalization: a key to industrial success. Softw. Concepts Tools 17(2), 78 (1996) Google Scholar
  47. 47.
    Steffen, B., Margaria, T., Nagel, R., Jörges, S., Kubczak, C.: Model-driven development with the jABC. In: Bin, E., Ziv, A., Ur, S. (eds.) Hardware and Software, Verification and Testing, Second International Haifa Verification Conference, HVC 2006, Haifa, Israel, October 23–26, 2006. Revised Selected Papers. Lecture Notes in Computer Science, vol. 4383, pp. 92–108. Springer, Berlin (2006) Google Scholar
  48. 48.
    Steffen, B., Narayan, P.: Full life-cycle support for end-to-end processes. IEEE Comput. 40(11), 64–73 (2007) CrossRefGoogle Scholar
  49. 49.
    Steffen, B., Wagner, C., Margaria, T.: Round-trip engineering vs. one-thing approach. In: Laplante, P.A. (ed.) Encyclopedia of Software Engineering. Auerbach Publications, Boca Raton (2010) Google Scholar

Copyright information

© Springer-Verlag London Limited 2012

Authors and Affiliations

  1. 1.Chair Service and Software EngineeringUniversity of PotsdamPotsdamGermany
  2. 2.Chair Programming SystemsTU DortmundDortmundGermany

Personalised recommendations