Nothing Special   »   [go: up one dir, main page]

Skip to main content

Bauhaus – A Tool Suite for Program Analysis and Reverse Engineering

  • Conference paper
Reliable Software Technologies – Ada-Europe 2006 (Ada-Europe 2006)

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

Included in the following conference series:

Abstract

The maintenance and evolution of critical software with high requirements for reliability is an extremely demanding, time consuming and expensive task. Errors introduced by ad-hoc changes might have disastrous effects on the system and must be prevented under all circumstances, which requires the understanding of the details of source code and system design. This paper describes Bauhaus, a comprehensive tool suite that supports program understanding and reverse engineering on all layers of abstraction, from source code to architecture.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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.

Similar content being viewed by others

References

  1. Eisenbarth, T., Koschke, R., Plödereder, E., Girard, J.F., Würthner, M.: Projekt Bauhaus: Interaktive und inkrementelle Wiedergewinnung von SW-Architekturen. In: 1. Workshop Software-Reengineering, Bad Honnef, Germany (1999)

    Google Scholar 

  2. Nosek, J.T., Palvia, P.: Software Maintenance Management: Changes in the Last Decade. Journal of Software Maintenance 2, 157–174 (1990)

    Article  Google Scholar 

  3. Fjeldstadt, R.K., Hamlen, W.T.: Application Program Maintenance Study: Report to Our Respondents. In: Proc. of GUIDE 48, Philadelphia, PA (1983)

    Google Scholar 

  4. Rainer Koschke, J.F.G., Würthner, M.: An Intermediate Representation for Reverse Engineering Analyses. In: Working Conference on Reverse Engineering, Hawaii, USA, pp. 241–250. IEEE Computer Society Press, Los Alamitos (1998)

    Google Scholar 

  5. Czeranski, J., Eisenbarth, T., Kienle, H., Koschke, R., Simon, D.: Analyzing xfig Using the Bauhaus Tool. In: Working Conference on Reverse Engineering, Brisbane Australia, pp. 197–199. IEEE Computer Society Press, Los Alamitos (2000)

    Google Scholar 

  6. Wilson, R.P., Lam, M.S.: Efficient Context-Sensitive Pointer Analysis for C Programs. In: PLDI (1995)

    Google Scholar 

  7. Steensgaard, B.: Points-to Analysis in Almost Linear Time. In: POPL 1996: Proceedings of the 23rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 32–41. ACM Press, New York (1996)

    Chapter  Google Scholar 

  8. Das, M.: Unification-based Pointer Analysis with Directional Assignments. In: PLDI, pp. 35–46 (2000)

    Google Scholar 

  9. Andersen, L.O.: Program Analysis and Specialization for the C Programming Language. PhD thesis, DIKU, University of Copenhagen (1994)

    Google Scholar 

  10. Sinha, S., Harrold, M.J.: Analysis and Testing of Programs with Exception Handling Constructs. IEEE Trans. Softw. Eng. 26, 849–871 (2000)

    Article  Google Scholar 

  11. Cytron, R., Ferrante, J., Rosen, B.K., Wegman, M.N., Zadeck, F.K.: Efficiently Computing Static Single Assignment Form and the Control Dependence Graph. ACM Transaction on Programming Languages and Systems 13, 451–490 (1991)

    Article  Google Scholar 

  12. Engler, D., Ashcraft, K.: RacerX: Effective, Static Detection of Race Conditions and Deadlocks. In: SOSP 2003: Proceedings of the 19th ACM Symposium on Operating Systems Principles, pp. 237–252. ACM Press, New York (2003)

    Chapter  Google Scholar 

  13. Savage, S., Burrows, M., Nelson, G., Sobalvarro, P., Anderson, T.: Eraser: A Dynamic Data Race Detector for Multi-Threaded Programs. In: SOSP 1997: Proceedings of the 16th ACM Symposium on Operating Systems Principles, pp. 27–37. ACM Press, New York (1997)

    Chapter  Google Scholar 

  14. Helmbold, D.P., McDowell, C.E.: A Taxonomy of Race Detection Algorithms. Technical report, University of California, Santa Cruz, CA, USA (1994)

    Google Scholar 

  15. IEEE Standards Board: IEEE Recommended Practice for Architectural Description of Software-intensive Systems—Std. 1471-2000 (2000)

    Google Scholar 

  16. Koschke, R.: Atomic Architectural Component Detection for Program Understanding and System Evolution. PhD thesis, University of Stuttgart (2000)

    Google Scholar 

  17. Murphy, G.C., Notkin, D., Sullivan, K.J.: Software Reflexion Models: Bridging the Gap between Design and Implementation. IEEE Computer Society Transactions on Software Engineering 27, 364–380 (2001)

    Article  Google Scholar 

  18. Koschke, R., Simon, D.: Hierarchical Reflexion Models. In: Working Conference on Reverse Engineering, pp. 36–45. IEEE Computer Society Press, Los Alamitos (2003)

    Google Scholar 

  19. Eisenbarth, T., Koschke, R., Simon, D.: Locating Features in Source Code. IEEE Computer Society Transactions on Software Engineering 29 (2003)

    Google Scholar 

  20. Lindig, C., Snelting, G.: Assessing Modular Structure of Legacy Code Based on Mathematical Concept Analysis. In: Proceedings of the 19th International Conference on Software Engineering. IEEE Computer Society Press, Los Alamitos (1997)

    Google Scholar 

  21. Haak, D.: Werkzeuggestützte Herleitung von Protokollen. Diplomarbeit (2004)

    Google Scholar 

  22. Eisenbarth, T., Koschke, R., Vogel, G.: Static Object Trace Extraction for Programs with Pointers. Journals of Systems and Software (2005)

    Google Scholar 

  23. Larus, J.R.: Efficient Program Tracing. Computer 26, 52–61 (1993)

    Article  Google Scholar 

  24. Bellon, S., Koschke, R.: Comparison and Evaluation of Clone Detection Tools. IEEE Computer Society Transactions on Software Engineering 21, 61–72 (2004)

    Google Scholar 

  25. Vogel, G., Simon, D., Plödereder, E.: Teaching Software Engineering with Ada 95. In: Vardanega, T., Wellings, A.J. (eds.) Ada-Europe 2005. LNCS, vol. 3555, pp. 115–128. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Raza, A., Vogel, G., Plödereder, E. (2006). Bauhaus – A Tool Suite for Program Analysis and Reverse Engineering. In: Pinho, L.M., González Harbour, M. (eds) Reliable Software Technologies – Ada-Europe 2006. Ada-Europe 2006. Lecture Notes in Computer Science, vol 4006. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11767077_6

Download citation

  • DOI: https://doi.org/10.1007/11767077_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-34663-0

  • Online ISBN: 978-3-540-34664-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics