What is the Dependency Structure Matrix Method?
Dependency Structure Matrix Method (DSM)–also called dependency structure method, is a highly flexible networking and modelling method that allows engineers, designers, business analysts and business/project managers in many industries and application fields to gain insights in the structure of complex systems and processes.
DSM focuses on the dependencies between the elements that comprise a system or a process in terms of their interactions or input and output relationships.
Depending on the system to be analyzed or developed, the elements may be materials, components in a product, software architecturecomponents or requirements. A system can also be an organizational architecture with departments, teams and in a process architecture the tasks in a project.
The main feature of the dependency structure method is the DSM – the dependency structure matrix which allows a visual representation of the interdependencies between the system or process elements.
The DSM is a square matrix in which the rows and columns are identically labelled and relationships or interactions between the elements in the rows and columns are identified by marking of the appropriate cells in the matrix, for example with a dot.
An important feature of the matrix is the diagonal. The cells on the diagonal of the matrix represent the system elements and inputs enter the element conventionally from above or below. In this way all inputs into an element in the matrix (a row) can be visualized as marked cells in that row. These inputs represent the outputs of the relevant elements in the columns. To view the outputs of a specific element to other elements one must select the element column and step down in the column from row to row and identify and mark those rows that receive inputs from the element in question.
The DSM can be analyzed for further optimization through clustering or partitioning and tearing, technical terms for specific mathematical methods of either clustering closely related element groups together, for example as potential product modules in system architectures by bringing dependencies closer to the diagonal and interacting elements close together.
Partitioning and tearing allows better and more efficient sequencing of process steps or tasks in such a manner that potential rework is minimized.