Case Study on Incremental Software Development

It has been long recognized that software development in industry is often iterative while new requirements and challenges arise along with software evolution. One of general rules for software design is to degrade coupling between modules so that software architecture is flexible and scalable. Along with software evolution it is better to keep user interface stay similar which helps users to upgrade, and to keep programming interface consistent for the same functionality which is undoubtedly beneficial to programmers. In this paper, we discuss about these situations along a real development case study and propose a few systematic solutions which facilitate source code reuse and assure software quality. Detailed analysis and comparison are provided to show their effectiveness.