01.09.2017  Original Article  Ausgabe 5/2017 Open Access
Information Flow Scheduling in Concurrent MultiProduct Development Based on DSM
 Zeitschrift:
 Chinese Journal of Mechanical Engineering > Ausgabe 5/2017
Wichtige Hinweise
Supported by National Natural Science Foundation of China (Grant Nos. 51475077, 51005038) and Science and Technology Foundation of Liaoning China (Grant Nos. 201301002, 2014028012).
1 Introduction
With market competition increasing, achieving success with new product development(PD) in mechanic products markets is becoming more and more challenging, and the capability of meeting the diversified customer demands is playing more important role [
1]. Due to shortening product life cycles, businesses are also proposing a set of critical success factors to reduce product development time and respond quickly to vibrant customer demand [
2].
To meet diversified customer needs while shortening product development cycle, the product developers should concentrate on development of multiple products simultaneously and improve process efficiency and quality [
3], rather than focusing on one product atatime. However, the resource conflict among multiple PD projects often leads to the delay of project schedules, and the number of parts, tools and materials also increases linearly with number of products. Ensuring concurrent multiple PD progress [
4,
5], and managing the information difference and similarity of multiple products are the key problem of concurrent multiproduct development project management.
Anzeige
The Design Structure Matrix(DSM), also called the dependency structure matrix, has become an used modeling framework of product development management [
6]. DSM is a matrix representation of a directed graph, which allows the project or engineering manager to represent important task relationships in order to determine a sensible sequence for the tasks being modeled [
7,
8]. As compared to Critical Path Method (CPM) and Program Evaluation and Review Technique(PERT), DSM is more suitable for planning information flow in PD project [
9–
11]. The rows and columns of DSM correspond to the tasks, and the matrix reveals the inputs and outputs of tasks, by manipulating the matrix, the feedback marks can be eliminated or reduced, this process is called partitioning [
12,
13]. According to the input/output, the subsets of DSM elements that are mutually exclusive or minimally interacting should be determined, this process is called clustering [
14–
16].
In recent years, some multiple project scheduling models and methods based on DSM was brought forward, to ensure multiproject progress. P H Chen et al. proposed a hybrid of genetic algorithm and simulated annealing (GASA Hybrid) for generic multiproject scheduling problems with multiple resource constraints [
17]. C Ju and T Chen developed an improved aiNet algorithm to solve a multimode resourceconstrained scheduling problem [
18]. T Gaertner et al. presented a generic project scheduling technique for functional integration projects based on DSM, to improve the planning of delivery dates and required resources and capacities, to ensure tighter synchronization between project teams, and prioritize tasks in parallel projects [
19]. T R Browning proposed an expandable process architecture framework (PAF), which organizes all the models and diagrams into a single, rich process model with 27+ new and existing views, to synchronize various aspects of process (activity network) information in large, complex projects [
20]. The above research aims for decreasing project progress delay by arranging task sequences and allocating project resources reasonably, but the influence of task interactions on material flow or product information flow was not taken into consideration.
The product information clustering technologies based on DSM were also presented [
21–
23], DSM was adopted to cluster product components into modules with minimum interfaces externally and maximum internal integration, but these model aimed for information interaction in the single product, lacked the research about the information difference and similarity among multiple products. Such as, E P Hong and G J Park proposed a new design method to design a modular product based on relationships among products functional requirements, to overcome the difficulty of modular design, with combining axiomatic design, the functionbased design method and design structure matrix [
21]. A H Tilstra et al. presented the highdefinition design structure matrix (HDDSM) to captures a spectrum of interactions between components of a product [
22]. T AlGeddawy and H ElMaraghy proposed a hierarchical clustering (cladistics) model to automatically build product hierarchical architecture from DSM [
23].
Different from one PD project, information flow planning in concurrent multiproduct development should emphasis on two factors: first, partitioning tasks sequences according to tasks relationships and project priorities to decease influences of information feedback on project schedules. Second, clustering the similar tasks [
24] of multiple PD projects to reduce number of parts and tools, decrease interaction cost and improve development efficiency.
Anzeige
2 Task Relationships in Multiple Projects
2.1 Relationships Among Projects and Products
The concurrent multiple PD project management is the management mode of screening, evaluating, planning, executing and controlling all the projects during a certain time period, from the enterprise or department perspective. The relationships among projects and products in multiproject environment [
25] can be divided into the following three types:
(1)
Multiple projects for single product development. Each project is responsible for the development of one or more subsystems, and multiple projects cooperate with each other, to complete the development of a complex product. Cars, airplanes, and other complex PD often use this kind of management mode.
(2)
Multiple project for the interrelated multiple products. Each project is responsible for the development of one or more products, and there exist the technical or information interaction among multiple products, such as the same product structure, the similar design technology, etc. The new product is often developed based on product families, so this relationship is very common, which was the main research object of the paper.
(3)
One project for one product, and each product is independent. There exists no the same and similar parts or subsystems among multiple projects, which only occurs in the process of few new product development.
2.2 Input/Output Relationships Description
Input/output relationships of tasks in concurrent multiproduct development can be divided into four types: serial, parallel, coupling and similar, as shown in Fig.
1. Fig.
1(a) shows the serial relationship, output of
\( t_{i} \) as the input of
\( t_{j} \),
\( t_{i} \) have to finish before
\( t_{j} \). Fig.
1(b) shows the parallel relationship, output of
\( t_{k} \) as the input of
\( t_{i} \) and
\( t_{j} \),
\( t_{i} \) and
\( t_{j} \) can be executed concurrently after the previous task
\( t_{k} \), the dependency between
\( t_{i} \) and
\( t_{j} \) corresponds parallel. Fig.
1(c) shows the coupling relationship,
\( o_{i}^{\prime} \),
\( o_{i}^{\prime} \) denotes the output of
\( t_{i} \) and
\( t_{j} \),
\( o_{i}^{\prime} \),
\( o_{i}^{\prime} \) as the input of
\( t_{j} \) and
\( t_{i} \) separately. Fig.
1(d) shows the similar relationship, the output of
\( t_{i} \) and
\( t_{j} \) is identical or similar, or similar technology was adopted during perform
\( t_{i} \) and
\( t_{j} \). The first three types of relationships in Fig.
1 exist both in oneproject and multiproject environment, similar relationship is the special relationship in concurrent multiproduct development projects.
×
2.3 Task Relationships in Multiple Projects
The output of PD project includes design schemes, product drawings, process files, parts, subsystems, semifinished parts or products, bill of material, etc., which were labeled as product information, the input/output relationships of tasks can be expressed as the dependencies of product information.
where
\( I(P_{i} ) \) and
\( R(P_{i} ) \) denotes product information set and information dependencies set respectively,
\( ri_{ij} \) is dependency of information element
\( e_{i} \) on
\( e_{j} \),
\( ri_{ij} \) can be expressed as 0~5 integer,
$$ \begin{aligned} I(P_{i} ) = \left\{ {e_{1} ,e_{2} , \ldots ,e_{n} } \right\}, \hfill \\ R(P_{i} ) = \left( {\begin{array}{*{20}c} {ri_{11} } & \ldots & {ri_{1n} } \\ \vdots & {} & \vdots \\ {ri_{n1} } & \ldots & {ri_{nn} } \\ \end{array} } \right), \hfill \\ \end{aligned} $$
(1)
$$ ri_{ij} = \left\{ {\begin{array}{*{20}c} {1\sim 5 , {\text{there is information from }}e_{j} {\text{ to }}e_{i} ,} \\ {0 , {\text{there is no information from }}e_{j} {\text{ to }}e_{i} ,} \\ \end{array} } \right. $$
(2)
There exist many identical or similar parts, components and development technologies, etc. in different projects. The task dependencies in multiple projects can be expressed as:
$$ mrt_{gk} = f(ri_{gk} ) = \left\{ {\begin{array}{*{20}l} {1\sim 5,{\text{there is information from }}e_{k} {\text{ to }}e_{g} ,} \hfill \\ {  5\sim 1,e_{g} {\text{ and }}e_{k} {\text{ is indentical or similar, }}} \hfill \\ {0,\,e_{g} {\text{ and }}e_{k} {\text{ is irrelevant }}. { }} \hfill \\ \end{array} } \right. $$
(3)
3 Extended DSM Model
DSM represents the system, product or process by aggregating individual interactions among components, people, activities, or parameters. DSM is essentially an
\( N^{2} \) diagram that is structured in such a way as to facilitate systemlevel analysis and process improvement. The mark in cell
\( i \),
\( j \) of DSM indicates that the item in row
\( i \) requires information from the item in column
\( j \) as an input. Under the diagonal corresponds to the forward information flow, and above diagonal shows the feedback.
The task relationships in multiple PD projects were described as serial, parallel, coupling and similar type, the DSM description as shown in Fig.
2, Fig.
2(a)~
2(c) corresponds to serial, parallel and coupling relationship separately, and Fig.
2(d) corresponds to similar relationship.
×
To describe tasks dependencies in multiple PD projects, one extended DSM(EDSM) was brought forward.
\( \{ t_{a1} ,t_{a2} , \ldots ,t_{am} \} \),
\( \{ t_{b1} ,t_{b2} , \ldots ,t_{bn} \} \) denotes the tasks in project
\( P_{a} \) and
\( P_{b} \) separately, the extended DSM related to
\( P_{a} \) and
\( P_{b} \) can be expressed as a partitioned matrix.
where
A and
B indicates input/output dependencies matrix of project
\( P_{a} \) and
\( P_{b} \) separately,
C denotes dependencies of
\( P_{b} \) on
\( P_{a} \), and
D corresponds to dependencies of
\( P_{a} \) on
\( P_{b} \).
$$ EDSM = \left( {\begin{array}{*{20}c} {\mathbf{A}} & {\mathbf{D}} \\ {\mathbf{C}} & {\mathbf{B}} \\ \end{array} } \right), $$
$$ {\mathbf{A}} = \left( {\begin{array}{*{20}c} {rt_{a1,a1} } & {rt_{a1,a2} } & \ldots & {rt_{a1,am} } \\ {rt_{a2,a1} } & {rt_{a2,a2} } & \ldots & {rt_{a2,am} } \\ \vdots & \vdots & {} & \vdots \\ {rt_{{_{am,a1} }} } & {rt_{am,a2} } & \ldots & {rt_{am,am} } \\ \end{array} } \right), $$
$$ {\mathbf{B}} = \left( {\begin{array}{*{20}c} {rt_{b1,b1} } & {rt_{b1,b2} } & \ldots & {rt_{b1,bn} } \\ {rt_{b2,b1} } & {rt_{b2,b2} } & \ldots & {rt_{b2,bn} } \\ \vdots & \vdots & {} & \vdots \\ {rt_{bn,b1} } & {rt_{bn,b2} } & \ldots & {rt_{bn,bn} } \\ \end{array} } \right), $$
$$ {\mathbf{C}} = \left( {\begin{array}{*{20}c} {mrt_{b1,a1} } & {mrt_{b1,a2} } & \ldots & {mrt_{b1,am} } \\ {mrt_{b2,a1} } & {mrt_{b2,a2} } & \ldots & {mrt_{b2,am} } \\ \vdots & \vdots & {} & \vdots \\ {mrt_{{_{bn,a1} }} } & {mrt_{bn,a2} } & \ldots & {mrt_{bn,am} } \\ \end{array} } \right), $$
$$ {\mathbf{D}} = \left( {\begin{array}{*{20}c} {mrt_{a1,b1} } & {mrt_{a1,b2} } & \ldots & {mrt_{a1,bn} } \\ {mrt_{a2,b1} } & {mrt_{a2,b2} } & \ldots & {mrt_{a2,bn} } \\ \vdots & \vdots & {} & \vdots \\ {mrt_{{_{am,b1} }} } & {mrt_{am,b2} } & \ldots & {mrt_{am,bn} } \\ \end{array} } \right), $$
4 Information Planning Based on EDSM
Information flow planning based on the extended DSM is different from DSM, which involves four types of computation: merging, converting, partitioning and clustering.
4.1 Merging Converting and Partitioning Regardless of Project Priorities
According to the input/output relationships,
\( mrt_{ij} =  5 \) means output of
\( t_{i} \) and
\( t_{j} \) is identical. To avoid duplicate work,
\( t_{i} \) and
\( t_{j} \) can be combined, this process is called merging. Such as
\( \{ t_{ai} ,t_{aj} \} \) and
\( \{ t_{bg} ,t_{bk} \} \) is tasks set of project
\( P_{a} \) and
\( P_{b} \) separately, the initial extended DSM model was expressed as
the work content of
\( t_{ai} \) and
\( t_{bg} \) is identical,
\( t_{ai} \) and
\( t_{bg} \) can be combined into one task, furthermore task dependencies need be to reconstructed. After merging
\( t_{ai} \) and
\( t_{bg} \), the extended DSM model can be expressed as:
in multiproject environment,
\(  5 < mrt_{ij} < 0 \) means the output of
\( t_{i} \) and
\( t_{j} \) is similar, and
\( 0 < mrt_{ij} < 5 \) means that the output of
\( t_{j} \) as the input of
\( t_{i} \).
$$ \left( {\begin{array}{*{20}c} {t_{ai} } & {} & {} & {} \\ 3 & {t_{aj} } & {} & {} \\ {  5} & {} & {t_{bg} } & {} \\ {} & {} & 5 & {t_{bk} } \\ \end{array} } \right), $$
$$ \left( {\begin{array}{*{20}c} {t_{ai} } & {} & {} \\ 3 & {t_{aj} } & {} \\ 5 & {} & {t_{bk} } \\ \end{array} } \right)\;{\text{or}}\;\left( {\begin{array}{*{20}c} {t_{bg} } & {} & {} \\ 3 & {t_{aj} } & {} \\ 5 & {} & {t_{bk} } \\ \end{array} } \right), $$
When converting computation is done, the similar relationships can be converted to
\( 0 < mwr_{ij}^{'} < 5 \), so as to partitioning and clustering can be done based on the uniform algorithm,
\( mrt_{ij}^{'} = f(mrt_{ij} ) \) is the converting function, the initial extended DSM is:
\( mwr_{bg,ai} =  3 \) means the work content of
\( t_{ai} \) and
\( t_{bg} \) is similar. Supposing converting function follows the linear law,
\( mwr_{ij}^{'} = k \times mwr_{ij} + b \). Designer can choose the different value of
\( k \) and
\( b \), and analyze influence of numerical value
\( k \) and
\( b \) on partitioning and clustering results. Adopting
\( mwr_{ij}^{'} =  2 \times mwr_{ij}  3 \), the converted extended DSM is
$$ \left( {\begin{array}{*{20}c} {t_{ai} } & {} & {} & {} \\ 3 & {t_{aj} } & {} & {} \\ {  3} & {} & {t_{bg} } & {} \\ {} & {} & 5 & {t_{bk} } \\ \end{array} } \right), $$
$$ \left( {\begin{array}{*{20}c} {t_{ai} } & {} & {} & {} \\ 3 & {t_{aj} } & {} & {} \\ 3 & {} & {t_{bg} } & {} \\ {} & {} & 5 & {t_{bk} } \\ \end{array} } \right)\;{\text{or}}\;\left( {\begin{array}{*{20}c} {t_{bg} } & {} & {} & {} \\ 5 & {t_{bk} } & {} & {} \\ 3 & {} & {t_{ai} } & {} \\ {} & {} & 3 & {t_{aj} } \\ \end{array} } \right). $$
Partitioning is the computation of reordering the rows and columns in the DSM with minimizing the number of marks above the diagonal, the result is the optimal tasks ordering, which reduces feedback and rework. According to the partitioned matrix, the serial, parallel and coupling relationship can be identified. Regardless of project priorities, partitioning algorithm of the extended DSM is identical to the common DSM [
24,
25]. Tasking the parallel tasks relationships as the example.
the initial tasks sequence is
\( t_{i} \to t_{j} \to t_{k} \), and partitioned tasks sequence is
\( t_{k} \to t_{i} \to t_{j} \), the relationships between
\( t_{i} \) and
\( t_{j} \) is parallel, can be performed concurrently.
$$ \left( {\begin{array}{*{20}c} {t_{i} } & 0& 5\\ 0& {t_{j} } & 5\\ 0 & 0 & {t_{k} } \\ \end{array} } \right) \to \left( {\begin{array}{*{20}c} {t_{k} } & 0 & 0 \\ 5 & {t_{i} } & 0 \\ 5 & 0 & {t_{j} } \\ \end{array} } \right), $$
4.2 Clustering Regardless of Project Priorities
The goal of clustering is to find subsets of the extended DSM (i.e., clusters) so that the tasks within a cluster are maximally interdependent and clusters are minimally interacting. Some researchers have proposed different clustering algorithm based on different principle, such as A Yassine presented a clustering objective function by using the minimal description length principle [
26], S E Carlson and N TerMinassian proposed a clustering algorithm based on coordination cost [
27].
This paper focuses on the information flow in multiproject situation, with the goal of minimizing the influence of information interaction on project schedule, referring the algorithm of Idicula and Fernandez, etc., the clustering object function of the extended DSM was built.
where
\( Tcc(M) \) is total coordination cost of model
\( M \),which is the objective function that the algorithm attempts to minimize,
\( cc(t_{i} ) \) indicates coordination cost of task
\( t_{i} \),
\( n \) is the number of tasks in
\( M \),
\( mwr(t_{i} ,t_{j} ) \),
\( mwr(t_{j} ,t_{i} ) \) denotes the interaction between
\( t_{i} \) and
\( t_{j} \), corresponding to the value in the extended DSM,
\( size(t_{i} ,t_{j} ) \) is the size of minimum cluster which contains
\( t_{i} \) and
\( t_{j} \),
\( p\_k \) is the power coefficient corresponds to the
\( k \)th level clusters, value range of
\( p\_k \) is integer from 1 to 5. After merging, converting and partitioning, one extended DSM was obtained:
$$ \begin{aligned} Tcc(M) = \sum\limits_{i = 1}^{n} {cc(t_{i} )} , \hfill \\ cc(t_{i} ) = \sum\limits_{j = 1}^{n} {(mwr(t_{i} ,t_{j} ) + mwr(t_{j} ,t_{i} )) \times size(t_{i} ,t_{j} )^{p\_k} } , \hfill \\ \end{aligned} $$
(4)
$$ \left( {\begin{array}{*{20}c} \varvec{A} & 1 & 2 & {} & {} & {} & {} \\ {} & \varvec{B} & 4 & {} & {} & {} & {} \\ 4 & 2 & \varvec{C} & {} & {} & {} & {} \\ {} & {} & {} & \varvec{D} & {} & 3 & 2 \\ {} & {} & {} & 5 & \varvec{E} & 3 & 3 \\ {} & 5 & {} & 1 & 3 & \varvec{F} & 2 \\ {} & {} & {} & 4 & 3 & 4 & \varvec{G} \\ \end{array} } \right). $$
Clustering can be done based on the previous computation, according to Eq.
4,
\( p\_k_{1} \),
\( p\_k_{2} \),
\( p\_k_{3} \) corresponds to different level clusters,
\( p\_k_{1} \) indicates the power coefficient of smallest cluster,
\( p\_k_{2} \) corresponds to the upper level of cluster, which consists of a series of subcluster and tasks,
\( p\_k_{3} \) corresponds to the whole extended DSM, adopting
\( p\_k_{1} = 1 \),
\( p\_k_{2} = 2 \),
\( p\_k_{3} = 3 \), the clustered extended DSM can be obtained:
Adopting
\( p\_k_{1} = 1 \),
\( p\_k_{2} = 1 \),
\( p\_k_{3} = 2 \), the different clustered extended DSM can be obtained:
which means that the lower level clusters will contain more tasks as
\( p\_k_{2} /p\_k_{1} \) increase, and the upper level will contain more subclusters and tasks as
\( p\_k_{3} \) increase.
4.3 Merging Converting and Partitioning with Regarding Project Priorities
Regarding project priorities, the duplicate work in lowpriority project should be combined into the identical tasks in highpriority project, and tasks dependencies was reconstructed. Such as
\( \{ t_{ai} ,t_{aj} \} \) and
\( \{ t_{bg} ,t_{bk} \} \) is tasks set of project
\( P_{a} \) and
\( P_{b} \) separately,
\( pri_{a} \) and
\( pri_{b} \) denotes priorities of
\( P_{a} \) and
\( P_{b} \),
\( pri{}_{b} > pri_{a} \), the initial extended DSM is:
\( mwr_{bg,ai} =  5 \) means the work content of
\( t_{ai} \) and
\( t_{bg} \) is identical, and
\( t_{ai} \) and
\( t_{bg} \) can be combined into one task. To guarantee schedule requirement of highpriority project
\( P_{b} \),
\( t_{ai} \) should be combined into
\( t_{bg} \), the merged extended DSM can be expressed as
converting aims at transforming
\(  5 < mrt_{ij} < 0 \) into
\( 0 < mwr_{ij}^{'} < 5 \), so as to partitioning and clustering can be done based on the uniform algorithm,
\( mrt_{ij}^{'} = f(mrt_{ij} ) \) is the converting function. Different from computation regardless of project priorities, converting regarding priorities should guarantee the schedule of highpriority project firstly. Such as, project
\( P_{b} \) with higher priority,
\( pri{}_{b} > pri_{a} \), the initial extended DSM is
means the work content of
\( t_{ai} \) and
\( t_{bg} \) is similar, adopting
\( mwr_{ij}^{'} =  2 \times mwr_{ij}  3 \), the transformed extended DSM as follows, because
\( t_{bg} \) with high priority,
\( t_{bg} \) was arranged before
\( t_{ai} \) in task sequence,
$$ \left( {\begin{array}{*{20}c} {t_{ai} } & {} & {} & {} \\ 3 & {t_{aj} } & {} & {} \\ {  5} & {} & {t_{bg} } & {} \\ {} & {} & 5 & {t_{bk} } \\ \end{array} } \right), $$
$$ \left( {\begin{array}{*{20}c} {t_{bg} } & {} & {} \\ 3 & {t_{aj} } & {} \\ 5 & {} & {t_{bk} } \\ \end{array} } \right), $$
$$ \left( {\begin{array}{*{20}c} {t_{ai} } & {} & {} & {} \\ 3 & {t_{aj} } & {} & {} \\ {  3} & {} & {t_{bg} } & {} \\ {} & {} & 5 & {t_{bk} } \\ \end{array} } \right), $$
$$ \left( {\begin{array}{*{20}c} {t_{bg} } & {} & {} & {} \\ 5 & {t_{bk} } & {} & {} \\ 3 & {} & {t_{ai} } & {} \\ {} & {} & 3 & {t_{aj} } \\ \end{array} } \right). $$
Partitioning regarding project priorities performs the following steps: firstly, reordering the rows and columns of extended DSM, secondly, moving forward highpriority tasks, or moving backward lowpriority tasks. For example,
\( \{ t_{a1} ,t_{a2} ,t_{a3} ,t_{a4} \} \) and
\( \{ t_{b1} ,t_{b2} ,t_{b3} ,t_{b4} \} \) is tasks set of project
\( P_{a} \) and
\( P_{b} \) separately,
\( P_{a} \) with higher priority,
\( pri{}_{a} > pri_{b} \), the extended DSM model before and after partitioning is
or
tasks sequence
\( T^{'} = \{ t_{a1} ,t_{b3} ,t_{a3} ,t_{a4} ,t_{b4} ,t_{a2} ,t_{b1} ,t_{b2} \} \) can be obtained, adjusting tasks order based on project priorities and input/output dependencies, new tasks sequence can be obtained,
\( T'' = \{ t_{a1} ,t_{a3} ,t_{a4} ,t_{b3} ,t_{a2} ,t_{b4} ,t_{b1} ,t_{b2} \} \),
\( t_{a2} \) can not move to the front of
\( t_{b3} \) because that
\( t_{a2} \) depends on the output of
\( t_{b3} \),
\( mwr_{a2,b3} = 2 \). The corresponding partitioned extended DSM regarding project priorities is:
$$ \left( {\begin{array}{*{20}c} {t_{a1} } & {} & {} & {} & {} & {} & {} & {} \\ 2 & {t_{a2} } & 2 & {} & {} & {} & 2 & {} \\ 5 & {} & {t_{a3} } & {} & {} & {} & {} & 2 \\ {} & {} & 5 & {t_{a4} } & {} & {} & {} & 1 \\ {} & 2 & {} & {} & {t_{b1} } & {} & {} & {} \\ {} & 3 & {} & {} & 5 & {t_{b2} } & {} & {} \\ 3 & {} & {} & {} & {} & {} & {t_{b3} } & {} \\ {} & {} & {} & 2 & {} & {} & 3 & {t_{b4} } \\ \end{array} } \right), $$
$$ \left( {\begin{array}{*{20}c} {t_{a1} } & {} & {} & {} & {} & {} & {} & {} \\ 3 & {t_{b3} } & {} & {} & {} & {} & {} & {} \\ 5 & {} & {t_{a3} } & {} & 2 & {} & {} & {} \\ {} & {} & 5 & {t_{a4} } & 1 & {} & {} & {} \\ {} & 3 & {} & 2 & {t_{b4} } & {} & {} & {} \\ 2 & 2 & 2 & {} & {} & {t_{a2} } & {} & {} \\ {} & {} & {} & {} & {} & 2 & {t_{b1} } & {} \\ {} & {} & {} & {} & {} & 3 & 5 & {t_{b2} } \\ \end{array} } \right), $$
$$ \left( {\begin{array}{*{20}c} {t_{a1} } & {} & {} & {} & {} & {} & {} & {} \\ 5 & {t_{a3} } & {} & {} & {} & 2 & {} & {} \\ {} & 5 & {t_{a4} } & {} & {} & 1 & {} & {} \\ 3 & {} & {} & {t_{b3} } & {} & {} & {} & {} \\ 2 & 2 & {} & 2 & {t_{a2} } & {} & {} & {} \\ {} & {} & 2 & 3 & {} & {t_{b4} } & {} & {} \\ {} & {} & {} & {} & 2 & {} & {t_{b1} } & {} \\ {} & {} & {} & {} & 3 & {} & 5 & {t_{b2} } \\ \end{array} } \right). $$
4.4 Clustering with Regarding Project Priorities
The goal of clustering with regarding project priorities is dividing the tasks with similar priorities and high input/output dependencies into the same subsets, to decrease information interaction cost in multiproject situation. The object function takes influence of project priorities on coordination cost into consideration,
\( pri_{i} \) and
\( pri_{j} \) denotes priority of project
\( P_{i} \) and
\( P_{j} \) respectively. The clustering object function with regarding project priorities can be expressed as:
where
\( Tcc(M) \) is total coordination cost of model
\( M \),
\( cc(t_{i} ) \) is coordination cost of task
\( t_{i} \),
\( n \) is the number of tasks in
\( M \),
\( r(i,j) \),
\( r(j,i) \) is the interaction between
\( t_{i} \) and
\( t_{j} \),
\( p\_k \) is the power coefficient related to the
\( k \)th level clusters,
\( f_{ij} \) indicates impact factor related to project priorities,
\( pri(t_{i} ) \) and
\( pri(t_{j} ) \) denotes project priorities,
\( p\_pri \) is the power coefficient related to project priorities, value range of
\( p\_k \) and
\( p\_pri \) is 0~1, and
\( 0 { < }f_{ij} \le 1 \).
$$ \begin{aligned} Tcc(M) = \sum\limits_{i = 1}^{n} {cc(t_{i} )} , \hfill \\ cc(t_{i} ) = \sum\limits_{j = 1}^{n} {f_{ij} \times (mwr(t_{i} ,t_{j} ) + mwr(t_{j} ,t_{i} )) \times size(t_{i} ,t_{j} )^{p\_k} } , \hfill \\ f_{ij} = (\left {pri(t_{i} )  pri(t_{j} )} \right + 1)^{p\_pri} , \hfill \\ \end{aligned} $$
(5)
Different from clustering regardless of project priorities, by introducing
\( f_{ij} \), the difference in project priorities was taken into consideration, with
\( f_{ij} \) increacing, the tasks with different priorities will be divided into different clusters. Such as,
\( pri_{a} \) and
\( pri_{b} \) denotes project priority of project
\( P_{a} \) and
\( P_{b} \) respectively, adopting
\( pri_{a} = 3 \),
\( pri_{b} = 1 \),
\( p\_k_{1} = 1 \),
\( p\_k_{2} = 2 \),
\( p\_k_{3} = 3 \), after merging, converting and partitioning with regarding project priorities, the tasks sequence can be determined, and the clustered extended DSM with regarding project priorities can be obtained:
5 Example
Two machine tool products was developed during the same period, the worktable size of one machine tool is 650×650 mm
^{2}, the other is 1250×1250 mm
^{2}, two machine tools have the similar product structures.
The dependencies among tasks in multiple PD projects were determined according to the input/output relationships, the initial extended DSM model can be built:
$$ EDSM = \left( {\begin{array}{*{20}c} \varvec{A} & \varvec{D} \\ \varvec{C} & \varvec{B} \\ \end{array} } \right). $$
Fig.
3(a), Fig.
3(b) corresponds to dependencies of 650 type (
\( prj_{a} \)), 1250 type (
\( prj_{b} \)) horizontal machine center separately, Fig.
3(c) corresponds to the identical and similar relationships between two projects,
D=0.
×
According to the information planning approach of Extended DSM, the partitioning and clustering computation results related to
\( prj_{a} \) can be obtained, as shown in Fig.
4. The values of
\( p\_k_{1} \),
\( p\_k_{2} \),
\( p\_k_{3} \) have significant impact on clustering results, the size of second level clusters increases with
\( p\_k_{3} /p\_k_{2} \), the size of first level clusters increases with
\( p\_k_{2} /p\_k_{1} \).
×
Merging the duplicate work, and adopting linear function
\( mwr_{ij}^{'} = k \times mwr_{ij} + b \) to convert the similar relationships. Partitioning and clustering extended DSM with different value of
\( k \) and
\( b \), adopted
\( mwr_{ij}^{'} =  2 \times mwr_{ij}  1 \) as the converting function, the similar tasks was divided into the same clusters. Regardless of project priorities, adopting
\( p\_k_{1} = 1 \),
\( p\_k_{2} = 2 \),
\( p\_k_{3} = 2 \), merging, converting, partitioning and clustering tasks of two projects based on the extended DSM, the computation result as shown in Fig.
5(a). With regarding project priorities, adopting
\( pri_{a} = 1 \),
\( pri_{b} = 3 \), which means that
\( prj_{b} \) with high project priority, the computation result based on the extended DSM as shown in Fig.
5(b).
×
Regardless of project priorities, the similar tasks tend to be divided into the same clusters, to reduce the influence of information interaction on project schedule. the similar tasks tend to be divided into different clusters, to reduce the influence on schedule of highpriority tasks.
Adopting different
\( p\_k_{1} \),
\( p\_k_{2} \) and
\( p\_k_{3} \),
\( Tcc(M) \) was computed in four types of conditions: ① two project was independent, each project as a cluster
\( con_{1} \), ② two project was independent, clustering without regarding the relationships between two projects
\( con_{2} \), ③ clustering based on the extended DSM model, without regarding project priorities
\( con_{3} \), ④ clustering based on the extended DSM model, with regarding project priorities
\( con_{4} \), computation results as shown in Table
1.
Table 1
Total coordination cost with different power coefficient
1/1/1

1/1/2

1/1/3

1/2/2

2/2/2

1/2/3



\( con_{1} \)

4800

87 480

3 394 680

138 400

138 400

3 445 600

\( con_{2} \)

3828

86 508

3 393 672

109 254

115 000

3 416 454

\( con_{3} \)

2822

64 532

2 162 672

77 230

78 338

2 175 370

\( con_{4} \)

2325

54 306

1 867 320

56 488

68 554

1 963 882

The first two conditions didn’t take relationships between two projects into consideration, and the last two conditions was computed based on the extended DSM, with regarding dependencies among multiple projects. The differences of
\( Tcc(M) \) show that optimizing tasks sequence based on the extended DSM can decrease influence of task interactions on project schedules, and values of
\( p\_k \) influence computation results obviously, the power coefficient should be determinded according the task relationships and PD teams.
6 Discussion
The extended DSM was built to optimizing tasksequences and taskclusters in multiple PD projects, focusing on the technical information interactions and similarities in multiple projects, taking project priorities into consideration, was mainly applied to the mechanical product development projects, such as automobiles, machine tools, construction machines, etc. Although software, construction and other industries also involve multiproject management [
26,
28], but the taskrelationships are different from mechanical product development projects.
A series of coefficients was introduced in the converting and clustering calculation, such as
\( k \) and
\( b \) in converting function
\( mwr_{ij}^{'} = k \times mwr_{ij} + b \),
\( p\_k \) in Eq. (
4),
\( p\_k \) and
\( p\_pri \) in Eq. (
5). The calculation results indicated that the value of these coefficients had a great effect on the information planning. It is necessary to determine these coefficients by taking the completed projects as example, changing the values, and judging the rationality of tasksequences and task clusters combined with the expert experience.
Resources sharing and conflicting was the important feature of multiproject management [
17,
29], but the extended DSM model didn’t take resource allocation into consideration, therefore the information planning results based on extended DSM should not be the final task sequences, the further adjustment according to resource capabilities was needed.
7 Conclusions
(1)
Describing task dependencies is the basis of information flow planning based on the extended DSM, the task relationships in multiproject is divided into four types: serial, parallel, coupling, and similar. Similar is the specific dependency relationship of the extended DSM.
(2)
The initial extended DSM can be expressed as a partitioned matrix, describing task dependencies in one project and among multiple projects concurrently.
(3)
By adopting different power coefficients in converting or clustering function, different tasksequences or taskclusters can be obtained. Determining the appropriate power coefficient is important for information flow scheduling based on the extended DSM.
Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (
http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.