||This article provides insufficient context for those unfamiliar with the subject. (October 2009)|
When designing a system synthetically (such as an electronic machinery, a biological enzyme or a building), the system could be designed by two broad ways. The first way would be to design the complete system using the known theories, and use the system, as it is designed, in the real conditions. An alternative way would be to design the different components of the system separately, and test each component in separate conditions. Modular design, or "modularity in design", is an approach that subdivides a system into smaller parts (modules or skids) that can be independently created and then used in different systems to drive multiple functionalities. A modular system can be characterized by the following:
- (1) Functional partitioning into discrete scalable, reusable modules consisting of isolated, self-contained functional elements
- (2) Rigorous use of well-defined modular interfaces, including object-oriented descriptions of module functionality
- (3) Ease of change to achieve technology transparency and, to the extent possible, make use of industry standards for key interfaces.
Besides reduction in cost (due to lesser customization, and less learning time), and flexibility in design, modularity offers other benefits such as augmentation (adding new solution by merely plugging in a new module), and exclusion. Examples of modular systems are cars, computers, process systems, and high rise buildings. Earlier examples include looms, railroad signaling systems, telephone exchanges, pipe organs and electric power distribution systems. Computers use modularity to overcome changing customer demands and to make the manufacturing process more adaptive to change (see modular programming). Modular design is an attempt to combine the advantages of standardization (high volume normally equals low manufacturing costs) with those of customization. A downside to modularity (and this depends on the extent of modularity) is that modular systems are not optimized for performance. This is usually due to the cost of putting up interfaces between modules.
Proper inter-modular design
Recognizing that excessive inter-module dependencies are an indicator of poor software design, a system should be intended to be loosely coupled to avoid unnecessary dependencies. Thus, inter-modular design should be easy to work with because modules can be easily understood in isolation, and changes or extensions to functionality would be easily localized.
Modular design in cars
Aspects of modular design can be seen in cars or other vehicles to the extent of there being certain parts to the car that can be added or removed without altering the rest of the car.
A simple example of modular design in cars is the fact that, while many cars come as a basic model, paying extra will allow for "snap in" upgrades such as a more powerful engine or seasonal tires; these do not require any change to other units of the car such as the chassis, steering or exhaust systems.
Modular design in buildings
Modular design can be seen in certain buildings, especially modular buildings. Modular buildings (and also modular homes) generally consist of universal parts (or modules) that are manufactured in a factory and then shipped to a build site where they are assembled into a variety of arrangements.
Modular buildings can be added to or reduced in size by adding or removing certain components. This can be done without altering larger portions of the building. Modular buildings can also undergo changes in functionality using the same process of adding or removing modular components.
For example, an office building can be built using modular parts such as walls, frames, doors, ceilings, and windows. The office interior can then be partitioned (or divided) with more walls and furnished with desks, computers, and whatever else is needed for a functioning workspace. If the office needs to be expanded or redivided to accommodate employees, modular components such as wall panels can be added or relocated to make the necessary changes without altering the whole building. Later on, this same office can be broken down and rearranged to form a retail space, conference hall or any other possible type of building using the same modular components that originally formed the office building. The new building can then be refurnished with whatever items are needed to carry out its desired functions.
Other types of modular buildings that are offered from a company like Allied Modular are a guardhouse, machine enclosure, press box, conference room, two-story building, cleanroom and much more applications.
Modular design in computer hardware
Modular design in computer hardware is the same as modular design in other things (e.g. cars, fridges, even furniture). The idea is to build computers with easily replaceable parts that use standardized interfaces. This technique allows you to upgrade certain aspects of the computer easily without having to buy another computer altogether.
A computer is actually one of the best examples of modular design - typical modules are power supply units, processors, mainboards, graphics cards, hard drives, optical drives, etc. All of these parts should be easily interchangeable as long as you use parts that support the same standard interface as the part you replaced.
- Configuration design
- Integrating functionality
- Modular building
- Modular Function Deployment
- Modular programming
- Separation of concerns
- Systems engineering
- Erixon, O.G. and Ericsson, A., "Controlling Design Variants" USA: Society of Manufacturing Engineers 1999  ISBN 0-87263-514-7 
- Clark, K.B. and Baldwin, C.Y., "Design Rules. Vol. 1: The Power of Modularity" Cambridge, Massachusetts: MIT Press 2000 ISBN 0-262-02466-7
- Baldwin, C.Y., Clark, K.B., "The Option Value of Modularity in Design" Harvard Business School, 2002 
- Modularity in Design Formal Modeling & Automated Analysis
- "Modularity: upgrading to the next generation design architecture", an interview