Model-Driven Development with the jABC

  • Bernhard Steffen
  • Tiziana Margaria
  • Ralf Nagel
  • Sven Jörges
  • Christian Kubczak
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4383)


We present the jABC, a framework for model driven application development based on Lightweight Process Coordination. With jABC, users (product developers and system/software designers) easily develop services and applications by composing reusable building-blocks into hierarchical (flow-) graph structures that are executable models of the application. This process is supported by an extensible set of plugins providing additional functionalities, so that the jABC models can be animated, analyzed, simulated, verified, executed and compiled. This way of handling the collaborative design of complex software systems has proven to be effective and adequate for the cooperation of non-programmers and technical people, and it is now being rolled out in the operative practice.


Model Check Java Class Computation Tree Logic Intelligent Network Execution Context 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Eclipse Website.
  2. 2.
    jABC Website.
  3. 3.
  4. 4.
    Andrade, L., et al.: Coordination technologies for component-based systems. In: Proc. Integrated Design and Process Technology (2002)Google Scholar
  5. 5.
    Bajohr, M., Margaria, T.: MATRICS: A Management Tool for Remote Intelligent Configuration of Systems. Innovations in System and Software Engineering - a NASA Journal (July 2006)Google Scholar
  6. 6.
    Bakera, M., Renner, C.: GEAR - A Model Checking Plugin for the jABC framework.
  7. 7.
    Berg, T., Raffelt, H., Steffen, B.: LearnLib: A Library for Automata Learning and Experimentation. In: Proc. FMICS’05, ACM 10th Int. Worksh. on Formal Methods for Industrial Critical Systems, Lissabon, Portugal, Sept. 2005, ACM Press, New York (2005)Google Scholar
  8. 8.
    Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (2001)Google Scholar
  9. 9.
    Clarke, S., et al.: Subject-oriented design: towards improved alignment of requirements, design, and code. ACM SIGPLAN Notices 34(10), 325–339 (1999)CrossRefGoogle Scholar
  10. 10.
    Czarnecki, K.: Overview of generative software development. In: UPP, pp. 326–341 (2004)Google Scholar
  11. 11.
    Dwyer, M., Avrunin, G., Corbett, J.: Specification Patterns Website.
  12. 12.
    Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: Proc. ICSE’99, pp. 411–420. IEEE Press, Los Alamitos (1999)Google Scholar
  13. 13.
    Gouveia, J., et al.: Tool support for coordination-based software evolution. In: Proc. TOOLS’01: Technology of Object-Oriented Languages and Systems, Washington DC, p. 184. IEEE Press, Los Alamitos (2001)CrossRefGoogle Scholar
  14. 14.
    Högl, M., Margaria, T., Steffen, B.: The GalileoGate Solution Factory for Location-Based Integrated Services. In: Proc. IDPT 2006, Int. Conf. on Integrated Design and Process Technologies, San Diego (June 2006)Google Scholar
  15. 15.
    Hörmann, M., et al.: The jABC Appraoch to Collaborative Development of Embedded Applications. In: CCE’06, Int. Workshop on Challenges in Collaborative Engineering - State of the Art and Future Challenges on collaborative Design, Prag, CZ, April 2006 (Industry day) (2006)Google Scholar
  16. 16.
    Hungar, H., Margaria, T., Steffen, B.: Test-Based Model Generation for Legacy Systems. In: Proc. IEEE ITC’03, Charlotte, pp. 971–980. IEEE Computer Society Press, Los Alamitos (2003)Google Scholar
  17. 17.
    Jörges, S.: FormulaBuilder Website.
  18. 18.
    Jörges, S., Margaria, T., Steffen, B.: Formulabuilder: A tool for graph-based modelling and generation of formulae. In: Proc. ICSE’06 Shanghai (May 2006)Google Scholar
  19. 19.
    Karusseit, M., Margaria, T.: Feature-based Modelling of a Complex, Online-Reconfigurable Decision Support Service. In: WWV’05, 1st Int. Worksh. Automated Specif. and Verification of Web Sites, Valencia, March 2005. ENTCS, vol. 1132 (2005)Google Scholar
  20. 20.
    Katz, S.: A superimposition control construct for distributed systems. ACM TOPLAS 15(2), 337–356 (1993)CrossRefGoogle Scholar
  21. 21.
    Kozen, D.: Results on the propositional mu-calculus. Theoretical Computer Science 27, 333–354 (1983)zbMATHCrossRefMathSciNetGoogle Scholar
  22. 22.
    Kubczak, C., et al.: The jABC Approach to Mediation and Choreography. In: Semantic Web Services Challenge 2006, Phase I-III Workshops, DERI, Stanford University, U. of Georgia (March–November 2006)Google Scholar
  23. 23.
    I.T.U.: General recommendations on telephone switching and signaling - intelligent network: Introduction to intelligent network capability set 1. Recommendation Q.1211, Telecommunic. Standardization Sector of ITU, Geneva (Mar. 1993)Google Scholar
  24. 24.
    ITU-T: Intelligent Network - Global Functional Plane Architecture. Recommendation Q.1203 (Oct. 1992)Google Scholar
  25. 25.
    ITU-T: Distributed Functional Plane for Intelligent Network Capability Set 2: Parts 1-4. Recommendation Q.1204 (Sept. 1997)Google Scholar
  26. 26.
    Lamprecht, A.L., Margaria, T., Steffen, B.: Data-Flow Analysis as Model Checking within the jABC. In: Mycroft, A., Zeller, A. (eds.) CC 2006 and ETAPS 2006. LNCS, vol. 3923, pp. 101–104. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  27. 27.
    Margaria, T., et al.: Model-based Design of Distributed Collaborative Bioinformatics Processes in the jABC. In: Proc. ICECCS 2006, Stanford Univ., CA, USA, August 2006, IEEE, Los Alamitos (2006)Google Scholar
  28. 28.
    Margaria, T., Nagel, R., Steffen, B.: Remote Integration and Coordination of Verification Tools in JETI. In: Proc. IEEE ECBS 2005, Greenbelt, USA, April 2005, pp. 431–436. IEEE Computer Society Press, Los Alamitos (2005)Google Scholar
  29. 29.
    Margaria, T., Steffen, B.: Lightweight coarse-grained coordination: a scalable system-level approach. STTT 5(2-3), 107–123 (2004)Google Scholar
  30. 30.
    Margaria, T., Steffen, B., Reitenspieß, M.: Service-Oriented Design: The Roots. In: Benatallah, B., Casati, F., Traverso, P. (eds.) ICSOC 2005. LNCS, vol. 3826, pp. 450–464. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  31. 31.
    Müller-Olm, M., Yoo, H.: Metagame: An animation tool for model-checking games. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 163–167. Springer, Heidelberg (2004)Google Scholar
  32. 32.
    Queille, J.-P., Sifakis, J.: Specification and verification of concurrent systems in cesar. In: Dezani-Ciancaglini, M., Montanari, U. (eds.) International Symposium on Programming. LNCS, vol. 137, pp. 337–351. Springer, Heidelberg (1982)Google Scholar
  33. 33.
    Steffen, B., et al.: Intelligent Software Synthesis in the ”DaCapo” Environment. BRICS Report, Proc. 6th /Nordic Workshop on Programming Theory/, Aarhus, Denmark, October 1994 94(6) (1994)Google Scholar
  34. 34.
    Steffen, B., Margaria, T.: METAFrame in Practice: Design of Intelligent Network Services. In: Olderog, E.-R., Steffen, B. (eds.) Correct System Design. LNCS, vol. 1710, pp. 390–415. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  35. 35.
    Stirling, C., Stevens, P.: Practical model-checking using games. In: Steffen, B. (ed.) ETAPS 1998 and TACAS 1998. LNCS, vol. 1384, pp. 85–101. Springer, Heidelberg (1998)Google Scholar
  36. 36.
    Thomas, W.: On the synthesis of strategies in infinite games. In: Mayr, E.W., Puech, C. (eds.) STACS 95. LNCS, vol. 900, pp. 1–13. Springer, Heidelberg (1995)Google Scholar
  37. 37.
    Topnik, C., et al.: jMosel: A Stand-Alone Tool and jABC Plugin for M2L(Str). In: Valmari, A. (ed.) Model Checking Software. LNCS, vol. 3925, pp. 293–298. Springer, Heidelberg (2006)CrossRefGoogle Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Bernhard Steffen
    • 1
  • Tiziana Margaria
    • 2
  • Ralf Nagel
    • 1
  • Sven Jörges
    • 1
  • Christian Kubczak
    • 1
  1. 1.Chair of Programming Systems, University of DortmundGermany
  2. 2.Chair of Service and Software Engineering, University of PotsdamGermany

Personalised recommendations