Skip to main content

Towards Managing Software Architectures with Ontologies

  • Chapter
Book cover Graph Transformations and Model-Driven Engineering

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5765))

Abstract

Software architectures are key enabling assets within organizations that develop complex software systems. Among other purposes, software architectures are useful to maintain intellectual control over a software product. We propose a method to continuously check the consistency between a specified architecture model and structural information reverse engineered from the code. We develop criteria that a design language for architectures should fulfill and show that an ontology based description has substantial benefits over the standard modeling languages MOF/UML/OCL. Using ontologies allows the explicit modelling of architectural styles as well as concrete system structures in a single architecture design language. The resulting specifications are modular, compositional and evolvable. Using ontologies we can apply an ontology reasoner to implement consistency checks. Our method integrates previously separate checks such as checking for allowed dependencies and coding style into a single framework and enables more powerful and flexible analyses.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Antoniou, G., Van Harmelen, F.: A Semantic Web Primer (Cooperativer Information Systems). MIT Press, Cambridge (2004)

    Google Scholar 

  2. Baader, F., Calvanese, D., McGuinness, D., Nardi, D., Patel-Schneider, P.F. (eds.): The Description Logic Handbook: Theory, Implementation and Applications. Cambirdge University Press, New York (2003)

    MATH  Google Scholar 

  3. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice. Addison-Wesley, Reading (2003)

    Google Scholar 

  4. Becker-Pechau, P., Karstens, B., Lilienthal, C.: Automatisierte Softwareüberprüfung auf der Basis von Architekturregeln. In: Gruhn, V., Biel, B., Book, M. (eds.) Lecture Notes in Informatics (LNI) - Proceedings, Series of the Gesellschaft für Informatik (GI), pp. 27–38 (2006)

    Google Scholar 

  5. Bennicke, M., Baresel, A.: Establishing efficient code quality reviews to monitor external projects. In: Proceedings of International Conference on Maintenance Engineering (ICME), Chengdu, China (2006)

    Google Scholar 

  6. Berners-Lee, T., Hendler, J., Lassila, O.: The semantic web: a new form of web content that is meaningful to computers will unleash a revolution of new possibilities. Scientific American 284(5), 34–43 (2001)

    Article  Google Scholar 

  7. Bischofberger, W., Kühl, J., Löffler, S.: Sotograph - a pragmatic approach to source code architecture conformance checking. In: Oquendo, F., Warboys, B.C., Morrison, R. (eds.) EWSA 2004. LNCS, vol. 3047, pp. 1–9. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  8. Bosch, J.: Design & Use of Software Architectures. Addison-Wesley, Reading (2000)

    Google Scholar 

  9. Brooks, F.P.: The Mythical Man-Month, anniversary edition. Addison-Wesley, Reading, (1995)

    Google Scholar 

  10. Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, J., Little, R., Nord, R., Stafford, J.: Documenting Software Architectures: Views and Beyond. Addison-Wesley, Reading (2002)

    Google Scholar 

  11. European commission research project. Marrying Ontology and Software Technology (MOST) (2009), Project Homepage: http://www.most-project.eu/

  12. Favre, J.-M.: Languages evolve too! changing the software time scale. In: Eighth International Workshop on Principles of Software Evolution (IWPSE 2005) (2005)

    Google Scholar 

  13. Grau, B.C., Horrocks, I., Motik, B., Parsia, B., Patel-Schneider, P.F., Sattler, U.: Owl 2: The next step for owl. Journal of Web Semantics 6(4), 309–322 (2008)

    Article  Google Scholar 

  14. Horrocks, I., Sattler, U., Tobies, S.: Practical reasoning for very expressive description logics. Logic Journal of the IGPL 8, 239–264 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  15. ISO/IEC/(IEEE). ISO/IEC 42010: International Standard Systems and software engineering - Recommended practice for architectural description of software-intensive systems (2007)

    Google Scholar 

  16. Jouault, F., Kurtev, I.: Transforming models with atl. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  17. Koschke, R., Simon, D.: Hierarchical reflexion models. In: Proc. of 10th Working Conference on Reverse Engineering (WCRE 2003), pp. 36–45. IEEE Computer Society, Los Alamitos (2003)

    Google Scholar 

  18. Kruchten, P.: The 4+1 view model of architecture. IEEE Software 12(6), 42–50 (1995)

    Article  Google Scholar 

  19. Motik, B., Grau, B.C., Horrocks, I., Wu, Z., Fokoue, A., Lutz, C.: Owl 2 web ontology language profiles (October 2009), http://www.w3.org/TR/owl2-profiles/

  20. Motik, B., Sattler, U., Studer, R.: Query answering for owl-dl with rules. Journal of Web Semantics: Science, Services and Agents on the World Wide Web 3(1), 41–60 (2005)

    Article  Google Scholar 

  21. Motik, B., Shearer, R., Horrocks, I.: Hypertableau reasoning for description logics. Journal of Artificial Intelligence Research 36, 165–228 (2009)

    MathSciNet  MATH  Google Scholar 

  22. Murphy, G.C., Notkin, D., Sullivan, K.: Software reflexion models. bridging the gap between source and high-level models. In: Proc. of the Third ACM SIGSOFT Symposium on the Foundations of Software Engineering, pp. 18–28. ACM Press, New York (1995)

    Chapter  Google Scholar 

  23. Object Management Group: MDA Guide V1.0.1 (2003)

    Google Scholar 

  24. Object Management Group: Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification (July 2007)

    Google Scholar 

  25. OpenGALEN Foundation: Opengalen website, http://www.opengalen.org (last visited September 2010)

  26. Parreiras, F.S., Staab, S., Winter, A.: On marrying ontological and metamodeling technical spaces. In: Foundations of Software Engineering, The 6th Joint Meeting on European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering: Companion Papers (2007)

    Google Scholar 

  27. Sangal, N., Jordan, E., Sinha, V., Jackson, D.: Using dependency models to manage complex software archi-tecture. In: Proceedings of the 20th Annual ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages, and Applications, OOPSLA 2005, pp. 167–176. ACM Press, New York (2005)

    Chapter  Google Scholar 

  28. Siedersleben, J.: Moderne Software-Architektur. dpunkt.verlag (2004)

    Google Scholar 

  29. Sirin, E., Parsia, B., Grau, B., Kalyanpur, A., Katz, Y.: Pellet: A practical owl-dl reasoner. Web Semantics: Science, Services and Agents on the World Wide Web In Software Engineering and the Semantic Web 5(2), 51–53 (2007)

    Article  Google Scholar 

  30. TopQuadrant, Inc. Topbraid vendor website, http://www.topquadrant.com (last visited September 2010)

  31. Stanford University. The protégé ontology editor and knowledge acquisition system, http://protege.stanford.edu/ (last visited September 2010)

  32. Völter, M.: Software architecture: A pattern language for building sustainable software architectures (March 2005), http://www.voelter.de/data/pub/ArchitecturePatterns.pdf (last visited September 2010)

  33. Völter, M.: Architecture as a language. IEEE Software 27(2), 56–64 (2010)

    Article  Google Scholar 

  34. von Zitzewitz, A.: Erosion vorbeugen. Javamagazin, 28–33 (February 2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Bennicke, M., Lewerentz, C. (2010). Towards Managing Software Architectures with Ontologies. In: Engels, G., Lewerentz, C., Schäfer, W., Schürr, A., Westfechtel, B. (eds) Graph Transformations and Model-Driven Engineering. Lecture Notes in Computer Science, vol 5765. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-17322-6_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-17322-6_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-17321-9

  • Online ISBN: 978-3-642-17322-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics