Skip to main content
Log in

Reducing accidental complexity in domain models

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

A fundamental principle in engineering, including software engineering, is to minimize the amount of accidental complexity which is introduced into engineering solutions due to mismatches between a problem and the technology used to represent the problem. As model-driven development moves to the center stage of software engineering, it is particularly important that this principle be applied to the technologies used to create and manipulate models, especially models that are intended to be free of solution decisions. At present, however, there is a significant mismatch between the “two level” modeling paradigm used to construct mainstream domain models and the conceptual information such models are required to represent—a mismatch that makes such models more complex than they need be. In this paper, we identify the precise nature of the mismatch, discuss a number of more or less satisfactory workarounds, and show how it can be avoided.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Atkinson, C., Kühne, T.: Meta-level Independent Modeling, International Workshop “Model Engineering” (in conjunction with ECOOP’2000), Cannes, France (2000)

  2. Atkinson, C., Kühne, T.: The essence of multilevel metamodeling. In: Proceedings of the 4th International Conference on the Unified Modeling Language, Toronto, Canada (2001)

  3. Atkinson C. and Kühne T. (2003). Model-Driven Development: A Metamodeling Foundation. IEEE Softw. 20(5): 36–41

    Article  Google Scholar 

  4. Atkinson, C., Kühne, T.: Concepts for Comparing Modeling Tool Architectures, In: Proceedings of the ACM/IEEE 8th International Conference on Model Driven Engineering Languages and Systems, MoDELS/UML 2005

  5. Atkinson C., Kühne T. and Henderson-Sellers B. (2003). Systematic stereotype usage. J. Softw. Syst. Model. 2(3): 153–163

    Article  Google Scholar 

  6. Brooks, F.P.: No silver bullet: essence and accidents of software engineering. Comput. Archive 20(4), 10–19 (1987) ISSN:0018-9162

    Google Scholar 

  7. Coad P. (1992). Object-oriented patterns. Commun. ACM 35(9): 152–159

    Article  Google Scholar 

  8. Coleman D., Arnold P., Bodo S. Dollin C., Gilchrist H., Hayes F., Jeremaes P. (1994) Object-Oriented Development: The Fusion Method. Prentice-Hall, englewood Cliffs

    Google Scholar 

  9. Engels, G., Förster, A., Heckel, R., and Thöne, S.: Process modeling using UML. In: Process-Aware Information Systems. pp. 85–117 Wiley, Chichester,(2005)

  10. Frank, U.: Modeling products for versatile e-commerce platforms—essential requirements and generic design alternatives. In: Arisawa, H., Kambayashi, Y., Kumar, V., Mayr, H.C., Hunt, I. (eds.) Conceptual Modeling for New Information System Technologies, pp. 444–456. Springer, Heidelberg (2002)

    Google Scholar 

  11. Gonzalez-Perez, C., Henderson-Sellers, B.: A powertype-based metamodelling framework. Softw. Syste. Model. 5(1), (2006)

  12. Goldstein R.C. and Storey V.C. (1994). Materialization. IEEE Trans. Knowledge Data Eng. 6(5): 835–842

    Article  Google Scholar 

  13. Henderson-Sellers, B., Gonzalez-Perez, C.: Connecting powertypes and stereotypes. J. Object Technol. 4(7), (2005)

  14. Jarke M., Gallersdörfer R., Jeusfeld M.A., Staudt M. and Eherer S. (1995). ConceptBase—a deductive object base for metadata management. J. Intell. Information Syst. Special Issue Adv. Deductive Object-Oriented Databases 4(2): 167–192

    Google Scholar 

  15. Johnson R., Woolf B. (1997) Type Object, In Pattern Languages of Program Design 3. Addison-Wesley, Reading, pp. 47–66.

    Google Scholar 

  16. Kühne, T.: Matters of (meta-) modeling. J. Softw. Syst. Model. 5(4), (2006)

  17. Kühne, T., Steimann, F.: Tiefe Charakterisierung. In Proceedings of “Modellierung 2004”. LNI Vol. 45, pp. 121–133

  18. Larman C. (2002) Applying UML and patterns: an introduction to object-oriented analysis and design and the unified process. 2nd (edn) Prentice-Hall, Englewood cliffs

    Google Scholar 

  19. Larman C. (2002). Applying UML and patterns: an introduction to object-oriented analysis and design and the unified process.. Prentice-Hall, Englewood cliffs

    Article  MathSciNet  Google Scholar 

  20. Lyardet, F.: The dynamic template pattern. In: Proceedings of the Conference on Pattern Languages of Design (1997)

  21. Meyer, B.: Object-Oriented Software Construction. Prentice-Hall, Englewood Cliffs (1997) ISBN 0-13-629155-4

  22. Mittelstraß, J. (Ed.) Enzyklopädie Philosophie und Wissenschaftstheorie. Metzler Verlag, (2004) ISBN: 3476020126

  23. Ludewig J. (2005). Models in software engineering—an introduction. J. Softw. Syst. Model. 2(1): 5–14

    Article  Google Scholar 

  24. Odell, J.: Power Types. J. Object-Oriented Program. (1994)

  25. OMG: Unified Modeling Language, v1.1. OMG document ad/97-08-04, (1997)

  26. OMG: MDA Guide Version 1.0.1, OMG document omg/03-06-01 (2003)

  27. OMG: Unified Modeling Language, v2.0. OMG document formal/05-07-04, (2005)

  28. Pirotte, A., Zimányi, E., Massart, D., Yakusheva, T:. Materialization: a powerful and ubiquitous abstraction pattern. In: Proceedings of the Conference on Very Large Database, pp. 630–641 (1994)

  29. Riehle, D., Tilman, M., Johnson, R.: Dynamic object model, In: Pattern Languages of Program Design 5. Addison-Wesley, Reading (2005)

  30. Mylopoulos J., Borgida A., Jarke M. and Koubarakis M. (1990). Telos—a language for representing knowledge about information systems. In ACM Trans. Informat. Syst. 8(4): 325–362

    Article  Google Scholar 

  31. Yoder, J. W., Johnson, R.: The adaptive object model architectural style. In: Proceeding of The Working IEEE/IFIP Conference on Softw. Architecture 2002 (WICSA3 ’02)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Thomas Kühne.

Additional information

Communicated by Professor Bernhard Rumpe.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Atkinson, C., Kühne, T. Reducing accidental complexity in domain models. Softw Syst Model 7, 345–359 (2008). https://doi.org/10.1007/s10270-007-0061-0

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-007-0061-0

Keywords

Navigation