Skip to main content

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2863))

Included in the following conference series:

Abstract

Class diagrams are among the most widely used object-oriented design techniques. They are effective in modeling the structure of software systems at any stages of the software life cycle. Still, class diagrams can become as complex and overwhelming as the software systems they describe. This paper describes a technique for abstracting lower-level class structures into higher-level ones by ‘collapsing’ lower-level class patterns into single, higher-level classes and relationships. This paper is an extension to an existing technique that re-interprets the transitive meaning of lower-level classes into higher-level relationships (relational reasoning). The existing technique is briefly summarized. The extensions proposed in this paper are two-fold: This paper augments the set of abstraction rules to also collapse class patterns into higher-level classes (compositional reasoning). While this augmentation is simple and in sync with traditional views of refinement and abstraction, it has drawbacks in defining class features like methods and attributes. This paper thus also demonstrates how to filter low-level class features during abstraction. Our approach requires some human guidance in deciding when to use compositional or relational reasoning but is otherwise fully automated. Our approach is conservative in its results guaranteeing completeness but at the expense of some false positives (i.e., the filter errs in favor of not eliminating in case of doubt). The proposed technique is applicable to model understanding, inconsistency detection, and reverse engineering.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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. Boehm, B., Egyed, A., Kwan, J., Madachy, R.: Using the WinWin Spiral Model: A Case Study. IEEE Computer, 33–44 (1998)

    Google Scholar 

  2. Bourdeau, R.H., Cheng, B.H.C.: A Formal Semantics for Object Model Diagrams. IEEE Transactions on Software Engineering, TSE (1995)

    Google Scholar 

  3. Egyed, A.: Semantic Abstraction Rules for Class Diagrams. In: Proceedings of the 15th IEEE International Conference of Automated Software Engineering (ASE), Grenoble, France (September 2000)

    Google Scholar 

  4. Egyed, A.: Automated Abstraction of Class Diagrams. ACM Transaction on Software Engineering and Methodology (TOSEM) 11(4), 449–491 (2002)

    Article  Google Scholar 

  5. Egyed, A., Horling, B., Becker, R., Balzer, R.: Visualization and Debugging Tools. In: Lesser, V., Ortiz Jr., C.L., Tambe, M. (eds.) Distributed Sensor Networks: A multiagent perspective, Kluwer Academic Publishers, Boston (2003)

    Google Scholar 

  6. Egyed, A., Kruchten, P.: Rose/Architect: A Tool to Visualize Architecture. In: Proceedings of the 32nd Hawaii International Conference on System Sciences (HICSS) (January 1999)

    Google Scholar 

  7. Fagan, M.E.: Advances in software inspections. IEEE Transactions on Software Engineering (TSE) 12(7), 744–751 (1986)

    Google Scholar 

  8. Fahmy, H., Holt, R.C.: Using Graph Rewriting to Specify Software Architectural Transformations. In: Proceedings of the 15th IEEE International Conference on Automated Software Engineering (ASE), Grenoble, France, September 2000, pp. 187–196 (2000)

    Google Scholar 

  9. Finkelstein, A., Kramer, J., Nuseibeh, B., Finkelstein, L., Goedicke, M.: Viewpoints: A Framework for Integrating Multiple Perspectives in System Development. International Journal on Software Engineering and Knowledge Engineering, 31–58 (1991)

    Google Scholar 

  10. Lieberherr, K.J., Hursch, W.L., Xiao, C.: Object-Extending Class Transformations. Journal Formal Aspects of Computing 6(4), 391–416 (1994)

    Article  MATH  Google Scholar 

  11. Racz, F.D., Koskimies, K.: Tool-Supported Compression of UML Class Diagrams. In: France, R.B., Rumpe, B. (eds.) UML 1999. LNCS, vol. 1723, pp. 172–187. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  12. Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual. Addison-Wesley, Reading (1999)

    Google Scholar 

  13. Snelting, G., Tip, F.: Understanding Class Hierarchies Using Concept Analysis. ACM Transactions on Programming Languages and Systems, 540–582 (2000)

    Google Scholar 

  14. Tarr, P., Osher, H., Harrison, W., Sutton Jr., S.M.: N Degrees of Separation: Multi- Dimensional Separation of Concerns. In: Proceedings of the 21st International Conference on Software Engineering (ICSE 21), May 1999, pp. 107–119 (1999)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Egyed, A. (2003). Compositional and Relational Reasoning During Class Abstraction. In: Stevens, P., Whittle, J., Booch, G. (eds) «UML» 2003 - The Unified Modeling Language. Modeling Languages and Applications. UML 2003. Lecture Notes in Computer Science, vol 2863. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-45221-8_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-45221-8_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20243-1

  • Online ISBN: 978-3-540-45221-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics