Bauhaus Project (computing)

The Bauhaus project is a software research project collaboration among the University of Stuttgart, the University of Bremen, and a commercial spin-off company Axivion[1], also known as Bauhaus Software Technologies.

The Bauhaus project serves the fields of software maintenance and software reengineering.

Created in response to the problem of software rot,[2] the project aims to analyze and recover the means and methods developed for legacy software by understanding the software's architecture.[3] As part of its research, the project develops software tools (such as the Bauhaus Toolkit) for software architecture, software maintenance and reengineering and program understanding.[4]

The project derives its name from the former Bauhaus art school.[5]

History

edit

The Bauhaus project was initiated by Profs. Erhard Ploedereder[6] and Rainer Koschke[7] at the University of Stuttgart[8] in 1996. It was originally a collaboration between the Institute for Computer Science (ICS) of the University of Stuttgart and the Fraunhofer-Institut für Experimentelles Software Engineering (IESE),[4][9] which is no longer involved.

The Bauhaus project was fundeda by the state of Baden-Württemberg, the Deutschen Forschungsgemeinschaft, the Bundesministerium für Bildung und Forschung, T-Nova Deutsche Telekom Innovationsgesellschaft Ltd., and Xerox Research.[10]

Early versions of Bauhaus integrated and used Rigi for visualization.[11]: 143–145 

The commercial spin-off Axivion GmbH, headquartered in Stuttgart, was started in 2005.[9] Research then was done at Axivion, the Institute of Software Technology, Department of Programming Languages at the University of Stuttgart as well as at the Software Engineering Group of the Faculty 03 at the University of Bremen.

Formerly, the academic version[5] of the "Bauhaus"[12] was offered. Today, the software product is sold commercially as Axivion Suite. The latter includes MISRA C checks among other verification services.

On August 11, 2022, the Qt Group acquired Axivion GmbH. Since then, the Axivion Suite has been further developed and distributed by the Qt Group's Quality Assurance business unit.[13]

Axivion Suite
Developer(s)Axivion GmbH (part of Qt Group)
Stable release
7.8 / 2024-07-04
TypeStatic program analysis
LicenseProprietary
Websitehttps://www.qt.io/blog/quality-assurance/axivion-suite-7.8-release

Bauhaus Toolkit now Axivion Suite

edit

The Bauhaus Toolkit (or simply the "Bauhaus tool") includes a static code analysis tool for C, C++, C#, Java and Ada code. It comprises various analyses such as architecture checking, interface analysis, and clone detection. Bauhaus was originally derived from the older Rigi reverse engineering environment,[14] which was expanded by Bauhaus due to the Rigi's limitations.[15] It is considered one of the most notable visualization tools in the field.[16]

The Bauhaus tool suite aids the analysis of source code by creating abstractions (representations) of the code in an intermediate language as well as through a resource flow graph (RFG).[17] The RFG is a hierarchal graph with typed nodes and edges, which are structured in various views.

While the Axivion Suite has its origins in the Bauhaus project, it is now considered a different product with a broader range of services, such as static code analyses, such as MISRA checking, architecture verification, include analysis, defect detection, and clone management.

Reception

edit

The Bauhaus tool suite has been used successfully in research and commercial projects.[17] It has been noted that Bauhaus is "perhaps [the] most extensive" customization of the well-known Rigi environment,[15]

The members of the project were repeatedly awarded with Best Paper Awards and were invited to submit journal papers several times.[citation needed]

In 2003, the Bauhaus project received the do it software award from MFG Stiftung Baden-Württemberg.[10]

Footnotes

edit
  • ^a Regarding the project's founding, the years 1996 and 1997 seem to appear equally often among the various sources.

References

edit
  1. ^ "Technology leader for static code analysis". Axivion. Retrieved 2024-10-11.
  2. ^ Holger Bruns. "Rolle rückwärts: 'Reverse Engineering' deckt Schwachstellen in der Softwarentwicklung auf." Deutschlandfunk (Radio Germany). 08.07.2006.
  3. ^ Tullio Vardanega. Reliable software technology - Ada-Europe 2005:10th Ada-Europe International Conference on Reliable Software Technologies, York, UK, June 20 - 24, 2005, proceedings. Volume 3555 of Lecture Notes in Computer Science. Springer, 2005. ISBN 3-540-26286-5, ISBN 978-3-540-26286-2
  4. ^ a b Quigley, Aaron J. Large Scale Relational Information Visualization, Clustering, and Abstraction Archived July 17, 2011, at the Wayback Machine, pp. 155-159. Doctoral dissertation. Department of Computer Science and Software Engineering, University of Newcastle, August, 2001.
  5. ^ a b "The Bauhaus Project". Archived from the original on 2007-01-14. Retrieved 2007-03-05.
  6. ^ "Prof. Dr. rer. nat. Erhard Plödereder | Faculty 5: Computer Science, Electrical Engineering and Information Technology | University of Stuttgart". www.f05.uni-stuttgart.de. Retrieved 2024-10-11.
  7. ^ "Bauhaus - Universität Bremen". www.uni-bremen.de (in German). Retrieved 2024-10-11.
  8. ^ Keynote Speakers - WCRE 2005[permanent dead link] Working Conference on Reverse Engineering
  9. ^ a b Jochen Quante. Dynamic Object Process Graphs (Dissertation) Universität Bremen. 30 January 2009
  10. ^ a b "Bauhaustechniken – höhere Produktivität bei Wartungsingenieuren durch „Corporate Memory“" do it.software-award:Ausgezeichnete Softwareforschung aus Baden-Württemberg 2003–2007 Archived July 19, 2011, at the Wayback Machine. Page 42.
  11. ^ Koschke, Rainer (2002). "Software Visualization for Reverse Engineering". Software Visualization. Lecture Notes in Computer Science. Vol. 2269. pp. 138–150. CiteSeerX 10.1.1.465.3117. doi:10.1007/3-540-45875-1_11. ISBN 978-3-540-43323-1.
  12. ^ Raza, Aoun; Vogel, Gunther; Plödereder, Erhard (2006), Pinho, Luís Miguel; González Harbour, Michael (eds.), "Bauhaus – A Tool Suite for Program Analysis and Reverse Engineering", Reliable Software Technologies – Ada-Europe 2006, vol. 4006, Berlin, Heidelberg: Springer Berlin Heidelberg, pp. 71–82, doi:10.1007/11767077_6, ISBN 978-3-540-34663-0, retrieved 2024-10-11
  13. ^ "Axivion Suite 7.8 release". www.qt.io. Retrieved 2024-10-11.
  14. ^ Holger Kienle and Xiaomin Wu REPORT FOR THE SORTIE STRUCTURED TOOL DEMONSTRATION. Technical report, University of Victoria, 2001.
  15. ^ a b Holger M. Kienle and Muller, Hausi A. The Rigi Reverse Engineering Environment. University of Victoria, Canada. 2008.
  16. ^ Cleary, B.; Le Gear, A.; Exton, C.; Buckley, J. (2005). "A Combined Software Reconnaissance & Static Analysis Eclipse Visualisation Plug-in". 3rd IEEE International Workshop on Visualizing Software for Understanding and Analysis. 7. IEEE: 1–2. doi:10.1109/vissof.2005.1684319.
  17. ^ a b Karsten Sohr and Bernhard Berger. "Idea: Towards Architecture-Centric Security Analysis of Software." Engineering Secure Software and Systems: Second International Symposium, ESSoS 2010, Pisa, Italy, February 3-4, 2010, Proceedings. Volume 5965 of Lecture Notes in Computer Science LNCS sublibrary. SL 4, Security and cryptology Security and Cryptology. Springer, 2010. ISBN 3-642-11746-5, ISBN 978-3-642-11746-6
edit