reducing maintenance costs through the application of modern software architecture principles
Large software programs are usually long lived and continually evolve. Substantial maintenance effort is often extended by engineers trying to understand the software prior to making changes. To successfully evolve the software, a thorough understanding of the architect's intentions about software organization is required. Software maintenance costs can be reduced significantly if the software architecture is well defined, clearly documented, and creates an environment that promotes design consistency through the use of guidelines and design patterns. Building a maintainable system depends upon the consistent application of these architectural practices. This paper describes the application of modern software architecture methods to achieve a maintainable implementation of a large, distributed, real-time, embedded software system.
architecture software maintenance design patterns modeling real-time software