Disadvantages Of Modularity

839 Words4 Pages
(Tiwana et. al, 2010) define architecture as the conceptual design, which shows what the components of the platform are, how they depend on each other and how they can interact in order to perform the intended functionality. In addition, architecture defines what part of system belongs to the platform core and which to the modules. It embeds the principles guiding design and evolution of the platform. (TOGAF, 2017) For the implementation architecture is the blueprint upon which the platform developers realize the system in a specific technology. Architectural decisions restrict the level of freedom available in the system through normative decisions. (NAF, XXX) When systems are complex these decisions serve as a basis for clarity on who can do what on which layer and how the interaction between…show more content…
Modularity arguably increases software quality as it allows developers to focus only on small parts of the system for quality assurance and at the same time impedes that a badly designed or implemented module negatively impacts the overall system. It decreases dependency between design decisions in each module, thus lowering the amount a knowledge a developer needs to have in order to maintain and extend the system. This encourages specialization among component developers, increasing the specialization in the ecosystem. Modularity decreases asset specificity for module developers. Another advantage is that is reduces the need for control, thus also decreasing the costs of transactions. At the same time, it posits that danger that through too much modularization and use of standardized interfaces the system becomes non-distinct and thus loses the capability to create value by synergistically integrating innovative component functionality into the platform when developers do not need to interact with the platform to create their modules. (Tiwana et. al,
Open Document