Project Scheduling Improvement Using Design Structure Matrix
Project Scheduling Improvement Using Design Structure Matrix
Project Scheduling Improvement Using Design Structure Matrix
4, 2010
311
312
Introduction
Traditional project management tools such as program evaluation and review technique
(PERT), critical path method (CPM) and Gantt chart tools allow the modelling of
sequential and parallel processes in projects, but they fail to address interdependency a
feedback and iteration, which is common in a complex product development and a design
process (Austin et al., 2000; Browning, 2001; Chen et al., 2004; Cho and Eppinger,
2001). In this paper, a method to account for feedback and iteration, a matrix based tool
called the design structure matrix (DSM) is presented.
The DSM also known as the dependency structure matrix, the problem solving matrix
(PSM) and the design precedence matrix is a project management tool used for
representing and analysing dependencies (Eppinger et al., 1994; Eppinger and Ulrich,
2003; Maheswari and Varghese, 2005; Mori et al., 1999). The DSM was developed by
Warfield (in the 70s) and Steward (1981). The method received attention by
Massachusetts Institute of Technology (MIT) research in the design process in 1990.
There are three basic types of task dependencies: sequential (dependent), parallel
(independent) and coupled (interdependent). Consider a system (or project) that is
composed of two elements/sub-systems (or activities/phases). A system element is
represented by a vertex/node on the graph and an edge joining two nodes to represent the
relationship between two system elements. An arrow is used instead of a link to show the
influence from one element to another, the resultant graph is called a diagraph or a
directed graph as shown in Figure 1 (Yassine, 2004).
The matrix representation of a directed graph or a digraph is a binary (i.e., matrix
with zeros and ones) square (i.e., matrix with equal number of rows and columns) matrix
with m rows and columns, and n non-zero elements. In this representation, m is the
number of nodes and n is the number of edges in the digraph.
Figure 1
313
information from that task feed into, which other tasks in the matrix use the output
information (Eppinger and Ulrich, 2003). In a DSM model, a project task is assigned to a
row and a corresponding column. The rows and columns are named and ordered
identically. Each task is defined by a row of the matrix. We represent a tasks
dependencies by placing marks (x, o or 1) in the columns to indicate the other tasks
(columns) on which it depends. Reading across a row reveals all the input tasks and
reading down a column reveals the output tasks as shown in Figure 2.
The diagonal tasks of the matrix do not have any interpretation in describing the
system, they are either left empty, blacked out, filled in with the task labels or task
duration. This is done to separate the upper and lower triangles of the matrix and to show
more clearly the tracing dependencies.
Figure 2
The marks below the diagonal indicate forward flow of information. For example, task B
needs information from task A. The marks above the diagonal indicate a feedback from a
later (downstream) task to an earlier (upstream) one. For example, task A needs
information from task F.
314
Where do these inputs come from (another activity or outside the process)?
The answers to these questions are used to fill in the rows and columns of the DSM.
Observe for any marks along the upper diagonal (feedback/loop/circuits) of the
matrix. If there are no marks along the upper diagonal it means that the matrix is
partitioned. Stop the procedure or continue with the next step.
Check for empty rows (activities that do not have input from the rest of the activities
in the matrix) and move all the empty rows to the top of the matrix and the
corresponding columns to the left of the matrix and leave out these activities from
further consideration. Empty rows represent the start activities. The remaining
activities in the matrix form the active matrix.
From the active matrix, check for any empty columns (deliver no information to
other activities in the matrix) and move all these empty columns to the right and the
corresponding rows to the bottom of the active matrix and leave out these activities
from further consideration. Empty columns represent the finish activities.
Repeat Steps 3 and 4 until there are no empty rows and columns in the active matrix.
Repeating the above process allows to identify the dependent activities. Steps 15
are known as the topological sorting algorithm.
In the path searching method, information flow is traced forwards or backwards until a
task is come across twice. To trace out the circuits/loops choose a mark in a row, then
read up to the column value. Go to the same row value of this column and read up to the
315
column. Continue reading across the rows until that same mark, read from the first
column appears again. All the tasks between the first and second occurrence of the task
form a loop of information flow. When all loops in the DSM have been identified, and all
tasks have been scheduled, the sequencing is complete and the matrix is in block
triangular form.
Restrict tears to the smallest blocks along the diagonal: This is because if there are to
be iterations within iterations (i.e., blocks within blocks), these inner iterations are
done more often. Therefore, it is desirable to restrict the inner iterations to a small
number of tasks.
To identify which task to tear and schedule first within the block, constructing and
analysing a shunt diagram (graph representation) of the tasks in the loop is used
(Steward, 1981). This method results in a series of suggested tears and a weighting of
their effectiveness in reducing the size of the iteration, on the other hand a decision is
required by the user before a tear is made. The second stage in tearing a loop is the
removal of one or more information dependencies in order to reduce the size of the loop.
The objective of the petroleum oil field development (POFD) project is to design a
development plan for a new oil field discovered after drilling a number of wells. The
development plan consists of oil producers, water/gas injectors and surface facility to
handle the produced oil, water and gas. Figure 3 shows a cross-section of an oil field
before development. In this project, DSM operations will be implemented to improve
planning, execution and managing the project by reducing the number of feedbacks and
reducing the project duration using partitioning and tearing algorithms.
316
Figure 3
The project is divided into five areas: conduct reservoir rock type (RRT) study, build
static model, conduct special core analysis (SCAL) study, build dynamic model, and
conduct pressure volume temperature (PVT) study. This project is an activity based
performed by one team involving: team leader/manager, reservoir engineers, petroleum
engineers, geologists, and petrophysists. This project involves 24 tasks as follows:
1.1 review and prepare data
1.2 collect samples
1.3 define RRTs
1.4 prepare data for static model
2.1 input data
2.2 build reservoir framework
2.3 build 3D property model (s)
2.4 manipulate and rank models
2.5 build 3D flow simulation grid (s)
3.1 study existing data sources
3.2 conduct coring
3.3 conduct rock characterisation
3.4 conduct geo-mechanical studies
3.5 conduct special core analysis (dynamic displacement experiments)
3.6 do routine and special core interpretation
4.1 input data
4.2 initialise reservoir dynamic model
4.3 do history matching
317
We interviewed a reservoir engineer specialist to determine the inputs and outputs for the
list of tasks and the task durations (days) involved in the project. We input the marks and
the task durations (along the diagonal) into the matrix as shown in Figure 4.
Figure 4
318
Partitioning the matrix sequences the tasks that do not contribute to iterative loops
and indicates the tasks that are within iterative loops, but does not sequence the tasks
within the loops. This is because the tasks that contribute to a loop are all inter-related,
and any of them can be the first task carried out in the completion of the loop. It is
desirable that the tasks within a loop are ordered to reduce the number of estimates and
iteration within the process. The first step of the process is the topological sorting before
we identify loops/circuits using path searching procedure.
319
The rearranged tasks in the DSM, showing the tasks involved in the circuit (i.e., in the
block) (see online version for colours)
We trace forward task 2.5 (because it contains a mark above the diagonal) we read across
row 2.5, identify that mark above the diagonal and read up to column 4.3. We read across
row 4.3, identify a mark and read up to column 4.2. We read across row 4.2, identify a
mark and read up to column 4.1. We read across row 4.1, identify a mark and read up to
column 2.5.
From this information, tasks 2.5, 4.1, 4.2 and 4.3 are involved in a circuit because as
we read across the rows, the first row we read (i.e., task 2.5) appeared again as we read
across row 4.1, identified a mark and read up to column 2.5. These tasks will form
another block in the matrix as shown in Figure 7.
320
Figure 7
Figure 7 shows that for the studied case DSM can simplify the project network and
reduce complications. It can be seen that now there are only two feedbacks in the project
compared to the initial project scheduling of four feedbacks as shown in Figure 4. The
number of feedbacks has been reduced by implementing DSM operations, and tasks that
are correlated have been grouped in a block.
Block 1
It consists of tasks 1.1, 1.3, 3.3 and 3.6. Task 1.1 depends on task 3.6. Task 1.3 depends
on task 1.1. Task 3.3 depends on task 1.3. Task 3.6 depends on task 3.3 as shown in
Figure 8.
From Figure 8, the shunt diagram shows that any one of these tasks will result in
breaking the circuit. We will make an assumption and tear dependency link of task 1.3 as
shown in Figure 9.
321
Figure 8 Shunt diagram (graph representation) of the constraints among tasks 1.1, 1.3, 3.3 and 3.6
Figure 9
Figure 10 Shunt diagram (graph representation) of the constraints among tasks 2.5, 4.1, 4.2 and
4.3
322
Block 2
It consists of tasks 2.5, 4.1, 4.2 and 4.3. Task 2.5 depends on task 4.3. Task 4.1 depends
on task 2.5. Task 4.2 depends on task 4.1. Task 4.3 depends on task 4.2 as shown in
Figure 10.
From Figure 10, the shunt diagram shows that any one of these tasks will result in
breaking the circuit. We will make an assumption and tear dependency link of task 4.1 as
shown in Figure 11.
Figure 11 Tearing the dependency link of task 4.1
We will re-partition the matrix where the torn tasks are scheduled first within block 1 and
2 as shown in Figure 12.
Figure 12 The torn tasks are scheduled first within the blocks (see online version for colours)
323
Because there are marks still above the diagonal after tearing the feedback marks, task
1.3 in block 1 and task 4.1 in block 2, we must re-partition (i.e., reorder the tasks) within
the blocks.
Re-partitioning Block 1
We ignore the torn row marks in task 1.3. Task 1.1 is scheduled last within the block
because it does not deliver information to other tasks, as shown by an empty column
(ignoring the torn row mark from task 1.3) in the block. This results in eliminating the
feedback mark from task 1.1. There is no need to reorder any other tasks within block 1
since the tasks (except task 1.3 was torn) are below the diagonal in the lower triangular
form as shown in Figure 13.
Re-partitioning Block 2
We ignore the torn row marks in task 4.1. Task 2.5 is scheduled last within the block
because it does not deliver information to other tasks, as shown by an empty column
(ignoring the torn row mark from task 4.1) in the block. This results in eliminating the
feedback mark from task 2.5. There is no need to reorder any other tasks within block 2
since the tasks (except task 2.5 was torn) are below the diagonal in the lower triangular
form as shown in Figure 13.
Figure 13 The torn tasks are scheduled first and re-partitioned within the blocks (see online
version for colours)
The removal of feedback link of task 1.3 and 4.1 results in breaking the circuit within the
blocks. There are no other circuits in the matrix indicated by the no X marks (except
task 1.3 and 4.1 was torn) above the diagonal, hence turning the DSM into the lower
324
triangular form. In the next section, we will present the updated list of tasks after we
performed the DSM algorithms in CPM chart. It can be observed that the project duration
is reduced significantly.
Since there are no marks above the diagonal, hence turning the DSM into the lower
triangular form, we can apply traditional project management tools such as PERT/CPM.
We will construct a table as shown in Table 1 listing the tasks, task durations and the
precedence task(s).
Table 1
Task
Precedence task(s)
1.2
15
3.1
15
3.2
5.1
10
5.2
3.4
10
3.2
3.5
10
3.2
5.3
15
5.2
5.4
30
5.2
5.5
10
3.6
10
1.1
3.6
1.3
1.2, 1.1
3.3
1.3
1.4
10
1.3
2.1
2.2
2.1
2.3
1.4, 2.2
2.4
2.3
2.5
2.4
4.1
4.2
4.1
4.3
4.2
4.4
15
4.3
Using the information from Table 1, we constructed a CPM, activities on nodes form of
the chart in Figure 14. The graphical representation shows the dependencies, duration of
each task and the critical path of the project. It can be seen from the critical path that the
project duration is 86 days. The original duration was 100 days; therefore, we have saved
325
14 working days, hence, reducing the total cost of the development plan for a new oil
field discovered after drilling a number of wells.
Figure 14 CPM chart of the petroleum oil field development project (see online version for
colours)
Discussion
It is significant to mention that when CPM or PERT does not work for identifying
activity interdependencies in terms of feedback and iteration, DSM can help to resolve
this problem. We validate DSM performance by solving special type of projects with
feedback and iteration, and solution quality. Case study example shows that after
simplifying the problem by DSM, it is possible to use CPM to determine the project
duration. This show DSM can work in conjunction with CPM.
There are four different types of data that can be represented in a DSM: parameter,
team, component, and activity base. In this paper, we use the last type of DSM
representation. Activity-based DSM representation shows the activity input/output
relationship in project scheduling. Among the other types of DSM, parameter-based
DSM decomposes tasks into design parameters. A project (or parameter) DSM describes
how the tasks (or parameters) relate to each other and in what order they should be
executed (or determined) in order to minimise guessing. Team-based DSM is used for
organisational analysis based on strength and frequency of information flow among the
development participants. Component-based DSM is used for modelling system
architectures based on components and/or subsystems and their relationships.
DSM is not free from its limitations and these are in regards to its implementation and
use. The main difficulty of DSM is the data requirements of the models. DSM can be
difficult to build initially at the project planning stage as the data are not always ready to
326
be gathered. Sometimes it is not easy to get accurate responses for data collection. People
tend to be more aware of their required inputs (what they need) than of the real use of
their outputs. These barriers for model building reflect deficiencies from a lack of
systems perspective in organisations rather than specific shortcomings of the DSM. In
addition to that, the data required to build a DSM model can be vast in number and
problematic to assimilate and verify. One way to resolve this problem is by building a
DSM hierarchically with different team contributing at each level.
In practice, DSM with fewer than ten elements is often to be analysed with visual
inspection and manual manipulation. DSM with more than ten elements can be built by
integrating smaller DSM and it is required to use specific software in order to perform
DSM operations.
Overall, with a short time of learning and implementation, people are able to
understand and develop some intuition for the DSM. Once the DSM model is built, it can
serve as a knowledge base for continued learning, improvement and innovation.
Conclusions
The DSM is a new approach to project management, used to represent and analyse
dependencies among tasks and show the order in which tasks are preformed. This method
provides a way of managing feedback in complex product development and engineering
design projects. The DSM is an alternative approach to traditional project management
tools. DSM can work in conjunction with CPM. The main advantage of the DSM over
traditional project management tools is in its compactness and ability to present an
organised and efficient mapping among tasks that is clear and easy to read regardless of
size.
In partitioning the DSM, we used a path searching method to identify loops/circuits.
Partitioning the DSM resulted in minimising the amount of iterative loops by half,
therefore reducing the amount of delay in the project. We initially had four feedbacks,
partitioning resulted in 2 feedbacks, hence we reduced the number of dependencies.
Analysing the partitioned DSM revealed which tasks were parallel, which were
sequential and which were coupled. The outcome from partitioning the DSM was a faster
development process by optimising the availability of information in the POFD project.
Tearing the DSM resulted in breaking the information cycle in block 1 and 2 in the
project, but both these methods are based on assumptions hence the torn dependency link
could be vital to the completion of the project and can cause a risk of iteration among
other tasks.
Since we reduced all the feedback marks in the DSM, we applied a traditional project
management tool and constructed a CPM chart after interviewing engineers about the
appropriate task durations. The initial estimated project duration was 100 days, by
applying partitioning and tearing algorithms we reduced the project duration to 86 days,
therefore saving 14 working days, hence reducing the total cost of the development plan
for a new oil field discovered after drilling a number of wells.
The DSM method is a promising project scheduling tool and can be applicable for
special type of projects with interdependency of feedback and iteration, which is common
in a complex product development and a design process. It will be beneficial to extend
this research to use other types of DSM representation. We also recommend considering
probabilistic time considerations in the future research.
327
References
Austin, S., Baldwin, A., Li, B. and Waskett, P. (2000) Analytical design planning technique a
dependency structure matrix tool to schedule the building design process, Construction
Management and Economics, pp.173182.
Browning, T.R. (2001) Applying the design structure matrix to system decomposition and
integration problems: a review and new directions, IEEE Transactions on Engineering
Management, pp.292300.
Chen, C., Khoo, L. and Jiao, A. (2004) Information deduction approach through quality function
deployment for the quantification of the dependency between design tasks, International
Journal of Production Research, Vol. 42, pp.46234637.
Cho, S.H. and Eppinger, S.D. (2001) Product development process modeling using advanced
simulation, Design Engineering Technical Conferences, pp.19, Pittsburgh.
Eppinger, S.D., Whitney, D.E., Smith, R.P. and Gebala, D.A. (1994) A model-based method for
organizing tasks in product development, MIT Sloan School of Management, pp.120.
Eppinger, S.D. and Ulrich, K.T. (2003) Product Design and Development, McGraw-Hill,
New York.
Maheswari, J. and Varghese, K. (2005) A structured approach to form dependency structure
matrix for construction projects, International Symposium on Automation and Robotics in
Construction, Indian Institute of Technology Madras, pp.16.
Mori, T., Kondo, K., Ishii, K. and Ohtomi, K. (1999) Task planning for product development by
strategic scheduling of design reviews, ASME Design Engineering Technical Conferences,
pp.112, Las Vegas.
Steward, D. (1981) The design structure matrix: a method for managing the design of complex
systems, IEEE Transactions on Engineering Management, Vol. 28, No. 3, pp.7174.
Yassine, A., Falkenburg, D. and Chelst, K. (1999) Engineering design management: and
information structure approach, International Journal of Production Research, Vol. 37,
pp.29572975.
Yassine, A., Whitney, D.E. and Zambito, T. (2001) Assessment of rework probabilities for
simulating product development using the design structure matrix (DSM), ASME
International Design Engineering Technical Conferences, pp.19, Pennsylvania.
Yassine, A. (2004) An Introduction to Modeling and Analyzing Complex Product Development
Processes using the Design Structure Matrix (DSM) Method, Product Development Research
Laboratory, University of Illinois, pp.117.