Essay: Modular Design
Essay: Modular Design
It has also been seen that programmers often tend to choose languages which offer them the use of modular application design in their coding. This is because of the reason that the use of modular design brings in several advantages to the programmer by making the software development process easier. While the applications grow in size and functionality, they also become more complex; hence, it becomes difficult to manage the code. By using modular design and dividing the code into individual sections providing separate functionality, it becomes easy to manage the code while not compromising on the overall functionality of the applications.
Furthermore, the use of modular design also increases software quality. Using a monolithic piece of code means that each source code file included in the code can access all other included files as well, which makes the code unreadable and ultimately unreliable? The modular design forces the application to be developed using well-defined components which interact with each other only through contracted APIs. The modular design also deals with the problem of spaghetti code which included a lot of GOTO statements that facilitated random jumps between different sections of the code, making it difficult to understand. Through the use of modular design, the code is enclosed in well-defined structures which communicate with each other in a meaningful way, making the code readable and thus easily modifiable. Another advantage of using modular design lies in the maintenance phase of the software development process. The modular design of an application allows the programmer to code less in order to make any modification to an application. Thus a programmer only needs to make changes to only that part of the code where the functionality that needs to be changed is implemented. The advantages of a modular design can be shown best with the example of a car. The car is made up of several components such as the engine, body, suspension system, tires, and seats. When the car is built, its modular design makes it much easier to manage the building process, since each component can be installed and checked separately. This design also allows for expansion or modification of the capabilities of one component (such as change of tires, or installing a turbo on the engine) without affecting any other component of the car. Furthermore, when a problem occurs in a car, it is much easier to debug using the characteristics of the components (such as a punctured tire will make the car ride uneven while an engine problem will make specific noises) (Web Reference Website, 2007).