Skip to main content

Understanding Architecture through Structure and Behavior Visualization

  • Chapter

Part of the book series: The Springer International Series in Engineering and Computer Science ((SECS,volume 734))

Abstract

Understanding the architecture of a legacy system is essential for the further development, the maintenance and the re-engineering of this system. Unfortunately, architecture is hardly documented in such systems. The only trustworthy source of information is the system implementation. Hence, the architecture has to be retrieved from this source. As real world legacy systems tend to be large, the source code cannot be read directly. Instead, we propose to use (semi-)automatic program analyses to extract the information.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   169.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   219.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   219.99
Price excludes VAT (USA)
  • Durable hardcover 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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ball, T. and S. G. Erick (1996), “Software Visualization in the Large”, IEEE Computer 29, 4, 33–43.

    Article  Google Scholar 

  2. Bär, H., M. Bauer, O. Ciupke, S. Demeyer, S. Ducasse, M. Lanza, R. Marinescu, R. Nebbe, O. Nierstrasz, T. Richner, M. Rieger, C. Riva, A.-M. Sassen, B. Schulz, P. Steyaert, S. Tichelaar, and J. Weisbrod (1999), “The FAMOOS Object-Oriented Reengineering Handbook”, Technical report, Forschungszentrum Informatik, Karlsruhe, Software Composition Group, University of Berne, ESPRIT Program Project 21975.

    Google Scholar 

  3. Bass, L., P. Clements, and R. Kazman (1998), Software Architecture in Practice, Addison Wesley.

    Google Scholar 

  4. Brown, K. (1997), “Design Reverse-Engineering and Automated Design Pattern Detection in Smalltalk”, Master Thesis, http://www2.ncsu.edu/eos/info/tasug/kbrown/thesis2.htm.

  5. Brown, W. J., R. C. Malveau, H. W. S. McCormick III, and T. J. Mowbray (1998), AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis, John Wiley, New York, NY.

    Google Scholar 

  6. Carriere, S. J., S. G. Woods, and R. Kazman (1999), “Software Architectural Transformation”, In Proceedings of the 6th Working Conference on Reverse Engineering 1999.

    Google Scholar 

  7. Chidamber, S. R. and C. F. Kemerer (1994), “A Metric Suite for Object-Oriented Design”, IEEE Transactions on Software Engineering 20, 6, 476–493.

    Article  Google Scholar 

  8. 8. Ciupke, O. (1999), “Automatic Detection of Design Problems in Object-Oriented Reengineering”, In Technology of Object-Oriented Languages and Systems — TOOLS 30, IEEE Computer Society, pp. 18–32.

    Google Scholar 

  9. Demeyer, S., S. Ducasse, and M. Lanza (1999), “A Hybrid Reverse Engineering Approach Combining Metrics and Program Visualization”, In Proceedings: Sixth Working Conference on Reverse Engineering, IEEE Computer Society Press, pp. 175–186.

    Google Scholar 

  10. Eisenbarth, T., R. Koschke, and D. Simon (2001), “Aiding Program Comprehension by Static and Dynamic Feature Analysis”, In Proceedings of the International Conference on Software Maintenance, IEEE Computer Society Press.

    Google Scholar 

  11. Gamma, E., R. Helm, R. Johnson, and J. Vlissides (1995), Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley Professional Computing Series, Addison-Wesley Publishing Company, New York, NY.

    Google Scholar 

  12. Garlan, D. and M. Shaw (1993), “An Introduction to Software Architecture”, In Advances in Software Engineering and Knowledge Engineering, V. Ambriola and G. Tortora, Eds., Vol. 1, World Scientific Publishing Company, Singapore, pp. 1–40.

    Chapter  Google Scholar 

  13. Girard, J.-F. and R. Koschke (1997), “Finding Components in a Hierarchy of Modules: a Step towards Architectural Understanding”, In Proc. of the International Conference on Software Maintenance — ICSM ′97.

    Google Scholar 

  14. Heuzeroth, D., T. Holl, and W. Löwe (2002), “Combining Static and Dynamic Analyses to Detect Interaction Patterns”, In Proceedings of the Sixth International Conference on Integrated Design and Process Technology (IDPT).

    Google Scholar 

  15. Heuzeroth, D., W. Löwe, A. Ludwig, and U. Aßmann (2001), “Aspect-Oriented Configuration and Adaptation of Component Communication”, In Third International Conference on Generative and Component-Based Software Engineering, GCSE, J. Bosch, Ed., Springer, LNCS 2186, p. 58 ff.

    Google Scholar 

  16. IBM (2000), “JInsight”, http://www.research.ibm.com/jinsight.

    Google Scholar 

  17. Keller, R. K., R. Schauer, S. Robitaille, and P. Page (1999), “Pattern-Based Reverse-Engineering of Design Components, In International Conference on Software Engineering, pp. 226–235.

    Google Scholar 

  18. Kleyn, M. F. and P. C. Gingrich (1988), “GraphTrace — Understanding Object-Oriented Systems Using Concurrently Animated Views”, In OOPSLA88: Object-Oriented Programming Systems, Languages and Applications: Conference Proceedings, N. Meyrowitz, Ed., pp. 191–205.

    Chapter  Google Scholar 

  19. Koschke, R. (2000), “Atomic Architectural Component Recovery for Program Understanding and Evolution”, Ph.D. thesis, Institute for Computer Science, University of Stuttgart.

    Google Scholar 

  20. Koskimies, K. and H. Mössenböck (1996), “Scene: Using Scenario Diagrams and Active Text for Illustrating Object-Oriented Programs”, In Proceedings of the 18th International Conference on Software Engineering, IEEE Computer Society Press/ACM Press, pp. 366–375.

    Google Scholar 

  21. Löwe, W. (2002), “VizzEditor, VizzScheduler, and VizzAnalyzer”, http://www.msi.vxu.se/~vizz.

    Google Scholar 

  22. Löwe, W. and A. Liebrich (2001), “VizzScheduler — A Framework for the Visualization of Scheduling Algorithms”, In Euro-Par 2001, Springer, LNCS 2150, p. 62 ff.

    Google Scholar 

  23. Luckham, D. C., J. J. Kenney, L. M. Augustin, J. Vera, D. Bryan, and W. Mann (1995), “Specification and Analysis of System Architecture Using Rapide”, IEEE Transactions on Software Engineering 21, 4.

    Google Scholar 

  24. Ludwig, A., R. Neumann, U. Aßmann, and D. Heuzeroth (2001), “RECODER Homepage”, http://recoder.sf.net.

    Google Scholar 

  25. Melton, R. (2002), The Aesop System: A Tutorial, School of Computer Science Carnegie Mellon University, http://www-2.cs.cmu.edu/~able/aesop/aesop_home.html.

    Google Scholar 

  26. Pauw, W. D., R. Helm, D. Kimelman, and J. Vlissides (1993), “Visualizing the Behavior of Object-Oriented Systems”, In Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications, pp. 326–337.

    Google Scholar 

  27. Prechelt, L. and C. Krämer (1998), “Functionality versus Practicality: Employing Existing Tools for Recovering Structural Design Patterns”, J.UCS: Journal of Universal Computer Science 4, 12, 866ff.

    Google Scholar 

  28. Price, B., R. Baecker, and I. Small (1998), “An Introduction to Software Visualization”, In Stasko, Domingue, Brown, Price (eds.) — Software Visualization: Programming as a Multimedia Experience, pp. 3–28.

    Google Scholar 

  29. Schwind, A. (2000), “Visualisierung von Strukturen in Softwaresystemen”, Diplomarbeit, Universität Karlsruhe, Fakultät für Informatik.

    Google Scholar 

  30. Shaw, DeLine, and Zelesnik (1996), “Abstraction and Implementations for Architectural Connections”, In 3rd International Conference on Configurable Distributed Systems (ICCDS ′96).

    Google Scholar 

  31. Shaw, M. and D. Garlan (1996), Software Architecture in Practice — Perspectives on an Emerging Discipline, Prentice Hall.

    Google Scholar 

  32. Sun Mircosystems (2001), “Java Platform Debugger Architecture”, http://java.sun.com/products/jpda/.

    Google Scholar 

  33. TogetherSoft (2000), http://www.togethersoft.com.

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer Science+Business Media New York

About this chapter

Cite this chapter

Heuzeroth, D., Löwe, W. (2003). Understanding Architecture through Structure and Behavior Visualization. In: Zhang, K. (eds) Software Visualization. The Springer International Series in Engineering and Computer Science, vol 734. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-0457-3_9

Download citation

  • DOI: https://doi.org/10.1007/978-1-4615-0457-3_9

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-1-4613-5086-6

  • Online ISBN: 978-1-4615-0457-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics