Software Acumen Home Page

Axivion Bauhaus Suite - Stopping Software Erosion

Axivion Bauhaus Suite - Stopping Software Erosion

Software erosion is the constant decay of the internal structure of a software system that occurs in all phases of software development and maintenance.

Software Erosion is extremely costly

Maintenance, adaptation, and evolution accounts for up to 90% of the total cost of software development on some projects.

During maintenance, programmers spend up to half of their time analyzing existing code in an attempt to understand it.

Software Erosion is the main cause of the high cost of software maintenance and the high amount of time it takes for program understanding.

Stopping Software Erosion with Bauhaus

Bauhaus cures the symptoms and eliminates the causes of software erosion:

Architecture Visualization gives you direct access to the facts of your software. This enables quicker and easier understanding of the software. This means that it becomes quicker and easier to maintain and enhance the software, especially when you are unfamiliar with it. The symptoms of software erosion are reduced.

Architecture Checking allows you to quickly compare the software architecture as it is implemented with a specification of the software architecture as you would like it to be. Bauhaus pinpoints both important and detailed differences between this architecture specification and the architecture implementation. The hidden causes of software erosion are immediately highlighted and so can be eliminated.

Keeping Software Erosion in check

Continuous use of architecture checking and architecture visualization can be used to guarantee that the implemented software architecture is always consistent with the intended architecture.

Benefits of stopping software erosion

  • Reducing the time it takes to understand (unfamiliar) software means that you can spend more time fixing problems or adding new features.
  • Changing the code becomes less risky. Having a solid understanding of the software increases your chances of modifying the code successfully. This means that there will also be fewer test / debug / fix cycles.
  • More time can be spent fixing things properly rather than adding workarounds (further eroding the software).
  • The life of the software is extended, protecting the organisations' investment (and maybe your job).
  • It takes less time for new people to become productive with the software. It makes it easier for people to work on unfamiliar parts of the software.
  • It becomes possible to make more accurate work estimates.
  • Overall project duration and risk is reduced.


Read our Architectural Analysis success story or find out about other Bauhaus Success Stories.

Read the next usage scenario: Enforcing Software Quality.

Contact us to discuss your requirements.

AddThis Social Bookmark Button

Where are you on the software erosion path?

Take our 1 Minute Software Erosion Quick Check

Take our 1 Minute Software Erosion Quick Check.