E. SYSTEM COMPLEXITY – THE ROLE OF THE ARCHITECTURE IN THE SYSTEM
E.3. T ECHNIQUES TO D EAL WITH S YSTEM C OMPLEXITY
E.3.3. M ODULARITY – H IDING I NFORMATION IN THE S YSTEM
E.3.3.3. M ETHODS TO C REATE M ODULAR S YSTEM A RCHITECTURES
The sections before described the advantages and disadvantages of modularity in system architectures. In this section, methods will be discussed that foster modularization. Then, one method, the design structure method (DSM) will be described in detail, which will be applied later in the thesis for different purposes.
There are various methods in systems engineering and product design literature that support the identification of modules in the system architecture. Holmqvist & Persson  identify six basic methods in their study that are applicable for product modularization. Each of the six methods is structured around three main modularization steps: decomposition, integration, and evaluation. However, each method applies different techniques for modularization. Furthermore, Sharman & Yassine  collect and compare similar methods for identifying modules in a design. The two studies identified the following methods for designing modular products:
1. Function Diagrams/Structures [Otto & Wood 2001]
2. Fractal Product Design [Kahmeyer et al. 1994]
3. Modular Product Development [Pahl & Beitz 1999]
4. Modular Function Deployment [Erixon 1998]
5. Axiomatic Design [Suh 1990]
6. Graph Grammars [Siddique & Rosen 1999]
7. Hatley/Pirbhai Method [Zakarian & Rushton 2001],
8. Modeling the Product Modularity with Interaction Graphs [Kusiak & Huang 1996]
9. Design Structure Matrix (DSM) [e.g., Steward 1981a, Pimmler & Eppinger 1994]
The first seven methods are traditional design methods that provide modularized products as output. All seven methods describe a design procedure for the three steps: decomposition, integration, and evaluation that deliver the desired architectures. At each method, the function structure of the product is the basis for identifying the design modules, and the goal of modularization is to map one or as few functions as possible to physical product components in the physical architecture. However, as Holmqvist & Persson  argue, all seven methods work best if the requirements and function structures are intrinsically modular. Furthermore, these methods are only effective with product designs and relatively useless with the design of other kinds of system architectures.
The last two methods are matrix-based methods that are based on earlier work by Warfield  and Steward [1981a]. The strength of these design analysis methods using adjacency matrices is the identification of strongly related components in a graph representing the components of the system and their interactions. As traditional modularizing methods use function structures as starting points, matrix methods identify related groups of system elements based on the dependency between them. While the method by Kusiak & Huang  uses binary matrices, Pimmler & Eppinger  propose a system clustering method based on the importance of the interactions (see classification of interactions between system elements earlier in Section E.3.3).
In this thesis, DSM is applied for the description and manipulation of the system structure and modularization due to its simplicity and general applicability (i.e., it can be applied to any kind of system structure, not just to products). Furthermore, the possibility to directly apply mathematical algorithms to rearrange and optimize the system matrix makes DSM appealing for system analysis. The next section deals with the DSM method. After a brief introduction, two basic types of DSM are introduced, and algorithms for DSM analysis are described.
E.184.108.40.206. Design Structure Matrix Method
The design structure matrix or dependency structure matrix (DSM) is a matrix-based modeling method for the representation of the order and structure of the elements in a system.
Hence, the purpose of DSM is slightly different from traditional methods for system architecting (e.g., IPO), where the main goal of modeling is to represent the system in its entirety and include all necessary attributes for the thorough understanding and description of the system.
DSM is one view of the system, which considers the elements to be black boxes and describes only the dependencies among elements in the system. So, DSM basically does not account for the element-internal system attributes like inputs-outputs, functions, and properties of the elements.
Two views of a system using the IPO and the DSM notations are depicted in Figure E.3 to demonstrate the difference between traditional and matrix-based modeling. Though the IPO view includes a high amount of information about the elements and their attributes, even a system with six elements and a few relations (see Figure E.3) takes some time to understand. On the contrary, the DSM view contains less information, but if someone is familiar with the notation (i.e., he or she can “read” the DSM), even a more complex system than the one in Figure E.3 is easy to handle. Hence, DSM emerged as system complexity reached a level where the number of elements and relations were so high that the transparency of the models disappeared.
In reality, complex systems like an automobile or an aircraft comprise tens of thousand of components in various hierarchy levels. This structural complexity is no longer manageable for a conventional system modeling method, which is intended to depict every element with its diverse functions, properties, and relations. Thus, the model loses its basic function, i.e., to help the modeler understand the modeled system. The famous metaphor compares highly complex conventional system models to spaghetti with meatballs, where the meatballs are the elements and the spaghetti are the numerous relations among them. This metaphor can be easily understood if one considers what an IPO model with one hundred elements and one thousand relations would look like, as an IPO view of with six elements is so complicated like the one in Figure E.3.
Figure E.3 IPO architecture and DSM structure of a system
As the behavior of systems arises from their structure [Sterman 2000], the modeling and optimization of the structure to foster system control is vital for the development. Furthermore, the greatest leverage in system architecting, process improvement and organizational planning is at the interfaces [Browning 2001]. Thus, the application of matrix representations of a system structure is not new in systems engineering, e.g., N2 charts are commonly used to display subsystem and component interactions [e.g., Grady 1994, DoD 2001a], the roofs of the houses in Quality Function Deployment (QFD) depict the interactions between the system elements in the lower parts of houses [e.g., Hauser & Clausing 1988], and element-element matrices were also proposed to show organizational dependencies in companies [Walther 1994, Igenbergs 2000].
The DSM method was originally defined by Steward [1981a, 1981b] and then further developed by Steve Eppinger and his research group at MIT [e.g., Pimmler & Eppinger 1994, Smith & Eppinger 1997a, 1997b, Browning 2001, Sharman & Yassine 2003]. Though different DSM techniques were developed to depict and analyze various types of systems, there are four basic DSM types used to model the four subsystems of the original ZOPH model2 [Browning 1998a, Browning 2001]:
• Component-based DSM: for modeling different representations of products and their components based on component interrelationships (e.g., function architecture, physical architecture, etc.)
• Team-based DSM: for modeling the organization structure based on the information flow between people and groups of people
• Activity-based DSM: for modeling the process and project schedule based on the information flow between activities
• Parameter-based DSM: for modeling the design parameter structure or goal system structure, and low-level relationships between design decisions and parameters, systems of equations, subroutine parameter exchange, etc.
Research work inside and outside of MIT was carried out to apply DSM for different purposes in the four main areas. Steward [1981a, 1981b] sees DSM as a basic system modeling and architecting tool, and uses it to model and analyze the system design process and systems of mathematic equations. Pimmler and Eppinger  explored how DSMs can be applied with product architecting and how system modules can be identified based on component interactions. The breakthrough work of Pimmler & Eppinger in the area of matrix-based product architecting was followed by others, who used and improved the first DSM models for product modularization [e.g., Kusiak 1999, Baldwin & Clark 2000, Rushton & Zakarian 2000, Sharman & Yassine 2003].
McCord & Eppinger  applied DSM for the planning and optimization of cross-functional teams in SD. Browning [1998b, 1999c] continued this work and applied DSM to study organizational dependencies and support the selection of appropriate integration mechanisms.
Wenzel  used DSM for organizational planning and team definition based on the individual skills of the members of the organization.
2 Note that the generic nature of DSM also allows the modeling of both the system environment (e.g., network of competitors or customers) and the technology system (e.g., dependencies of existing and/or emerging
technologies or tools) introduced in the ZOPH+T model. However, the author is not aware of the application of DSM in these two areas.
The application of task-based DSM for project scheduling, iteration modeling, and the implementation of concurrent engineering are the most popular DSM-related research areas. The DSM approach for managing concurrent engineering proposed by Eppinger  builds on Steward’s original work and opens a new era in matrix-based process modeling. During the last decade, various approaches were proposed for DSM-based modeling of different aspects of the development process, e.g., parallel, sequential and hybrid design iteration [Smith & Eppinger 1997a, 1997b, 1998], risk-based process simulation and the modeling of value streams in the SD process [Browning et al. 2002, Browning & Eppinger 2002], planning for concurrency [Denker et al. 2001, Yassine & Braha 2003, Yassine et al. 2003], etc..
The fourth DSM application area with maybe the least invested research effort: the parameter-based DSM. The goal of the application of this kind of DSM is to understand the parameter relationships in the system design, and rearrange parameters and thus the design activities that affect them to reduce process schedule. While there are a few examples for the application of parameter DSMs in industrial practice, research applications and method improvements are rare in literature. Rask and Sunnersjö  used a parameter-based DSM to describe the relationships between design variables of a robot arm and its housing. Black et al.
 applied a parameter-based DSM to automobile brake system design. Future research in this area is expected to concern multidisciplinary design optimization [Browning 2001].
Finally, Schulz  combined DSM with IPO in his pioneering work for the decomposition and optimization of the information architecture of the complex process of automobile SD. The proposed model uses a genetic algorithm to find the ideal information structure for a certain SD system. Schulz’s DSM approach can be considered as a fifth DSM category besides component-based, team-based, task-based, and parameter-based DSMs.
E.220.127.116.11. DSM Basics
DSM is an adjacency matrix, a matrix view of a graph depicting the elements of a graph and their relations. As shown in Figure E.3, DSMs are square matrices, i.e., the labels of the rows and columns in the DSM are identical representing the system elements. The cells of the matrix depict how elements interact with other elements in the system. The diagonal in the DSM is usually painted black, indicating that these cells are unused, because reflexive relationships (i.e., the output of an element is fed back to the input of the same element) are not allowed in DSMs.
Along the row, it is possible to see which other elements interact with the one in the row, while the marks in the columns show the other elements the element in the column depends on. That is, while the rows represent output relations, the columns show which elements provide inputs to the examined one3.
DSMs are mainly used for visualization and tracking of the element dependencies in complex structures and the identification of elements in close interaction called chunks. Regarding the function of the DSM, Browning  distinguishes between static and time-based or dynamic DSMs.
E.18.104.22.168. Static DSMs
Static DSMs are used to display and analyze systems where the elements exist simultaneously, such as product and organizational structures. In these systems, many components interact at the same time, and the changes of the system structure in time are not important for the analysis.
The DSM analysis techniques usually applied with static structures are the clustering methods. The
3 Some authors use DSMs where rows represent input and columns output relations (exactly the opposite way as here). In these DSMs the feed forward relations are under the diagonal and feed back is over it. Otherwise the
goal of DSM clustering is to find subsets of DSM elements (i.e., clusters or modules) that are mutually exclusive or minimally interacting. In other words, clusters contain most, if not all, of the internal interactions (i.e., DSM marks), and the interactions or links between separate clusters are eliminated or minimized [Fernandez 1998]. Clusters resulting from the DSM analysis are then called modules, teams, or departments that collect functionally related and thus strongly interacting components.
The DSM view of a system structure is not just simple and appealing, but it is a system representation in the language of mathematics (i.e., a matrix representation of a graph). Thus, a DSM model can be directly manipulated using existing and improved mathematical operators and algorithms. Figure E.4 depicts a system structure before and after clustering. The resulting system structure after clustering shows three main, overlapping chunks that entail all elements of the system, and are connected to each other via a minimal number of interfaces. A comparison of the results of clustering in Figure E.4 and the block diagram in Figure E.2 representing a modular system architecture shows the power of DSM concerning modularization.
As the DSM in Figure E.4 shows, the clusters have common elements belonging to two clusters4. Designers do not always desire overlapping elements, thus if a clustering algorithm shall seek overlapping elements, it also has to be part of the goal of clustering. Common clustering goals can be, e.g., minimum number of extra-cluster interfaces, minimum number of elements in a cluster, maximum number of clusters, enable overlapping cluster recognition, enable bus recognition, enable three dimensional cluster recognition, etc. [Sharman & Yassine 2003].
Numerous researchers have used DSM to propose architectural improvements by simple manipulation of the order of rows and columns in the matrix [e.g.., Kehat & Shacham 1973, Hartigan 1975, McCord & Eppinger 1993, Pimmler & Eppinger 1994, Thebeau 2001]. Fernandez  improved these first “manual” clustering algorithms in an attempt to automate DSM inspection and manipulation using simulated annealing techniques. Whitfield et al.  developed similar DSM clustering techniques using genetic algorithms. However, as Sharman  showed, both approaches are incapable of predicting the formation of “good” clustering arrangements for complex product architectures due to the oversimplification of the objective function utilized, and the frequent susceptibility of the search algorithm used to be trapped in local optimal solutions. Yu et al.  improved existing clustering techniques by using a genetic algorithm and the minimum description length principle, and validated it by comparing the results of their DSM tool with manual clustering results of experts. As their results show, they succeeded to improve both the outcomes of existing algorithms and the experts’ manual clustering results.
4 With the DSM clustering in Figure E.4, the algorithm using genetic algorithms proposed in [Yu et. al. 2003]
was applied. The author thanks Professor Ali A. Yassine at University of Illinois at Urbana Champaign for providing access to the web-based version of the DSM clustering tool proposed in [Yu et. al. 2003].
Figure E.4 DSM clustering results
E.22.214.171.124. Time-Based DSMs
Time-based DSMs depict a sequence of system elements (i.e., a process) in time. Thus, the interactions among elements in the matrix show how the output product of one element in the process activates another one through its input. Furthermore, time-based DSMs show the information needs of the activities—i.e., which activity deliverables are required for the ideal operation of an activity. In an ideal SD process, information flow is optimal among the activities (i.e., the right information is available at the right time and place), and thus process performance is maximal. However, complex SD processes are not ideal in reality. Activity deliverables do not always arrive on time and at the desired technical maturity. Hence, project managers usually have to make a tradeoff between the effectiveness and the efficiency of the SD process.
If project planning strives for process effectiveness (i.e., the goal is to produce the highest performance outputs from given inputs), theoretically the activities would have to wait for all required inputs and start only after all related upstream activities are finished and delivered the desired output products. This strategy can be dangerous, if problems occur in the SD process that can lead to long iterations. In this case, activities depending on these deliverables have to wait until adequate solutions to the problems are found. This reduces process efficiency considerably and causes costly delays in the SD.
However, process effectiveness is not the only planning goal. As the time factor in SD is the source of major competitive advantage [Smith & Reinertsen 1998], companies try to reduce the duration of the SD process and thus time-to-market as much as possible. An effective method to reduce SD time is to perform activities and sub-processes concurrently and overlapping. In this case, activities do not wait for all required input products, but start with imperfect information and update their results when the missing input products arrive. Nevertheless, concurrent engineering and activity overlapping, if not managed well, can lead to serious oscillations in the process resulting in delays and schedule overruns in the project. DSM fosters planning for concurrency by enabling the identification of blocks of activities that can be performed in parallel without paying the high penalty of oscillation.
Element relations in time-based DSMs can be twofold based on their direction. Downstream relations between elements that are parallel with the process flow are over the diagonal and often called feed forward relations. Relations indicating that the product of an element affects an upstream activity (i.e., an activity that was finished earlier in the process) are called feedback relations. The existence of feedback relations in a process implies a possible need for iteration on the deliverables of the SD that usually results in the repetition of the activities directly and indirectly affected by the feedback relation. As iterations are main causes for delays in the SD process, an objective of process planning is to reduce the number and scope of iteration cycles to the required minimum.
DSM sequencing or partitioning algorithms help optimize the sequence of activities in a process by manipulating the process structure. During partitioning, the goal is to get the DSM in an upper-triangular form to the highest possible extent with a minimum number of sub-diagonal marks pulled as closely to the diagonal as possible and grouped in blocks [Browning 2001]. These
Figure E.5 Effects of DSM partitioning on the system structure
blocks of activities are the major iteration cycles in the SD process including only the activities directly involved in the design iterations. The decomposition of the SD process into a set of clearly defined blocks of highly dependent activities makes iteration cycles leaner and more efficient. Besides, it enables the parallel execution of independent activity blocks.
Figure E.5 depicts the effects of partitioning on the process structure. The integrated process of six activities and three feedback relations in the left DSM could be transformed into a process with two sequential activity blocks without any need for iteration between the two blocks. The two activity blocks can be considered as two main stages of the SD process with clear, measurable deliverables. Thus, as a result of DSM partitioning, a complex process with high likelihood of long rework cycles could be improved to a process with two activity blocks including short, effective iteration cycles.
Numerous researchers developed algorithms for partitioning [e.g., Weil & Kettler 1971,
Numerous researchers developed algorithms for partitioning [e.g., Weil & Kettler 1971,