1 Introduction

Product development (PD) is the process of developing new products and services in order to meet the demand and expectations of evolving customer needs (Ulrich and Eppinger 2008). An essential element for the success of PD projects is to meet customer needs on timely basis (Takeuchi and Nonaka 1986; Hum and Sim 1996; Majava et al. 2013). When a target launch date is set for a product, the company must ensure meeting such deadline or else it risks losing substantial market share (Hendricks and Singhal 1997; Herm 2013). Setting a suitable deadline requires calculating the expected completion time (and variance) for the PD project. The problem arises not only because some of these activities have stochastic durations, but also some activities may be repeated several times due to the existence of feedback dependencies with the potential to generate rework; i.e., the repetition of already finished or completed activities (Browning and Ramasesh 2007; Unger and Eppinger 2009). Feedbacks are a typical characteristic of any complex design and development project and a potential source of design iterations, which can account for one-third to two-thirds of the project duration and cost (Osborne 1993; Meier et al. 2007). This fact makes the study of project management in the presence of iteration, as suggested in this paper, a central issue for the engineering design community.

When feedback does not exist, well-known techniques such as CPM, critical path method and PERT, program evaluation and review technique, are normally used to determine sufficiently accurate distributions for project duration (Mantel et al. 2007; Pinto 2012). In the presence of feedback, simulation techniques have been used for finding the accurate distribution of a PD project duration (Browning and Eppinger 2002; Cho and Eppinger 2005; Abdelsalam and Bao 2006). However, few analytical techniques have also been proposed such as the reward Markov chain (Smith and Eppinger 1997) and signal flow graph (Eppinger et al. 1997) to estimate PD project duration, but can only tackle limited activity network structures, specifically sequential networks. The purpose of this paper is to find the expected duration and variance of any PD project network using analytical methods.

We present an approach to efficiently and accurately calculate the mth moment of the duration of a stochastic network with feedback. The sources of randomness are the durations of the individual activities and the probability of feedback after completing an activity. A design structure matrix (DSM) representing the dependency or information flow between activities provides valuable insight when determining the sequence of activity execution and provides managerial insights on which activities/teams need to be grouped or supervised collectively. The objective of this work is to investigate the duration of a network given the information flow and rework proportions via a DSM. This work bridges the literature on DSM and project management.

The method presented in this paper transforms a project network with feedback into a traditional project network (i.e., without feedback) by fitting an approximate probability distribution to the rework resulting from the initial completion of every activity. We refer to this approach by cycle elimination (CE) which results in an acyclical network for which classical project scheduling techniques such as PERT/CPM can be utilized. The complexity involved in simulating the resulting simplified network decreases significantly when compared to the original network or DSM.

The rest of the paper is organized as follows. In the next section, a detailed literature review is presented. The proposed base methodology, which is called CE approach, is discussed in Sect. 3. We investigate a fully sequential network, where a linear set of equations is presented to solve for the moments of the network duration. In Sect. 4, we extend our methodology to allow for mixed networks, which include a mixture of sequential and parallel activities. In Sect. 5, we introduce another feature to the method which considers coupled activities in the network. Section 6 relaxes the assumption of sequential rework and proposes an extension to the base methodology which allows for parallel rework. A case study is presented in Sect. 7 to illustrate the proposed methodology. Finally, a summary discussion, future recommendations and conclusions are presented in Sect. 8.

2 Literature review

As mentioned earlier, product development (PD) project networks differ from traditional project networks mainly due to the existence of feedback dependencies with the potential to generate rework (Browning and Ramasesh 2007). Incorporating rework potential into the project network makes the task of determining the project duration difficult (Karniel and Reich 2009). Few analytical and simulation techniques exist in the literature dealing with the analysis of iterative projects; however, these techniques suffer from serious limitations. In this section, we discuss these approaches and their limitations, but first we start by introducing the design structure matrix (DSM) as an alternative approach to compactly represent project networks.

The design structure matrix (DSM) was developed to represent networks with feedback (Steward 1981; Browning 2001; Yassine and Braha 2003). Three types of relationships are represented in a DSM, parallel, sequential and coupled (Eppinger et al. 1994; Yassine 2004). Figure 1 shows the network representations versus the DSM representations for these three configurations. The “X” mark in the DSM indicates the presence of a predecessor relationship (arrow in the graph representation) between two different activities. This representation can be extended to an \(\left( {n \times n} \right)\) matrix, i.e., network with n activities. A DSM with 10 activities is considered in Fig. 2. An “X” at the intersection of Column 2 and Row 4 infers a connection between Activity 2 and Activity 4; specifically, Activity 4 requires input from Activity 2 or Activity 2 is the predecessor of Activity 4. If the activities are executed in the order they appear in the DSM, then all elements above the diagonal indicate the possibility of feedback after completing an activity for the first time. As such, Fig. 2 shows Activities 1, 2 and 3 as sequential activities, Activities 3 and 4 as parallel activities, Activities 5 and 6 are coupled, and Activities 7, 8 and 9 as also coupled.

Fig. 1
figure 1

Configurations that characterize a system (adapted from Yassine 2004)

Fig. 2
figure 2

10 × 10 DSM

To quantify the possibility of feedback, a rework probability DSM substitutes an “X” with the probability of rework. Similarly, a rework proportion DSM substitutes an “X” with the rework impact or the proportion of rework to be performed (Browning and Eppinger 2002). The duration for each activity is usually entered in the diagonal elements.

Smith and Eppinger (1997) present an approach which considers a Markovian representation for a sequential PD network with feedback and solves a modified form of Gaussian elimination to find the expected duration. Our proposed approach, in this paper, builds on the sequential and iterative model of Smith and Eppinger (1997), where we utilize a similar definition of a stage. A stage in Smith and Eppinger (1997) corresponds to the nominal-completion of an activity along with the resulting rework. A reward Markov chain (RMC) approach is utilized to determine the expected duration of the network, where neither parallel work/rework, nor stochastic activity durations are considered.

Smith and Eppinger (1997) approach works as follows. Let R I be the remaining duration of the network given that we just started activity I for the first time, for \(i = 1, \ldots ,n.\) The approach begins with the final node N and calculates the expected time to finish the project given that the project is currently at this node, \(E\left[ {r_{n} } \right]\). The next step excludes the final node \(n\) and calculates \(E\left[ {r_{n - 1} } \right]\). Similarly, \(E\left[ {r_{i} } \right],\) is calculated for \(i = 1, \ldots ,n\) and the expected duration of the entire network is set to \(\mathop \sum \nolimits_{i = 1}^{n} E\left[ {r_{i} } \right].\) This approach assumes that activity execution is sequential and parallel work is not allowed. That is, the completion of an activity cannot result in the immediate rework of two or more activities in parallel (i.e., only one activity at a time is reworked), and the event of reworking a task is mutually exclusive from the event of reworking any other task. The completion of an activity for the first time can result in a stream of upstream activities to be reworked sequentially.

Along similar lines, Eppinger et al. (1997) consider a deterministic network where signal flow graph (SFG) analysis is utilized to compute the mean and variance of the network duration. The base model is represented by a signal flow network where activities are represented by nodes. In such a network, the logical relationship at the exit from a node is an OR relationship. As a result, it is not possible to model an activity having more than one immediate predecessor. Extensions which include random activity durations or parallel rework are also addressed. Stochastic durations are achieved by allowing an activity to take on discrete durations with associated probabilities. Every possible discrete duration, which an activity can assume, results in an additional network state. Extensions also allow for parallel rework where combinations of activities being reworked simultaneously are denoted by additional states. A path is defined by a sequence of activities to be executed sequentially where the same activity can appear more than once. Parallel rework of activities is also considered in terms of paths where every path is denoted by a state and assigned a deterministic duration and a probability.

The signal flow graph (SFG) approach and the reward Markov chain (RMC) of Smith and Eppinger (1997) are equivalent and calculate the same expected network duration (Pinkett 1998). More recent approaches consider merging the DSM approach with the Graphical Evaluation Review Technique (GERT), Martinez Leon et al. (2013), where a framework is also presented to quantify the impact of looping.

Browning and Eppinger (2002), Cho and Eppinger (2005) and Abdelsalam and Bao (2006) develop a simulation algorithm to determine the expected duration and cost for a PD project. Only minor differences exist between these various DSM simulation models. The core difference lies in two aspects of the simulation: the sampling of the activity durations from known distributions and the modeling of the dynamic progress of the project.

Browning and Eppinger (2002) simulation approach utilizes two inputs: the rework probabilities and proportions (represented by two DSMs). Every iteration within the simulation identifies the set of active activities as being the most upstream and not requiring information from any unfinished upstream activities. The active activity with the shortest duration is reworked, and the residual work of the remaining activities is shortened accordingly. The resulting rework is evaluated (which might trigger rework on completed upstream activities), and the set of active activities is updated as well as the proportion of completed work. The simulation approach assumes that the set of active activities are adjacent within the DSM sequence. The approach also requires that all activities which are upstream relative to the active set of adjacent activities and input information to the active set have been completed. A drawback for such an approach is that coupled activities that share information cannot both be simultaneously part of the set of active activities. One of the coupled activities has to wait for the other to be completed.

The simulation approach of Browning and Eppinger (2002) accounts for the entire state of the network at every iteration by defining a work vector which identifies the work remaining for every activity. An advantage of such an approach is that it accounts for the dependencies between activities across different stages. Our approach assumes that the duration of a stage is independent of other stages. This allows for network decomposition where each stage is analyzed independently within a network structure. This significantly reduces the computational complexity of analyzing the entire network which is mainly a result of the large number of possible states which identify the state of the network at any point in time.

Existing approaches to analyzing the resulting stochastic networks with no feedback include the classical CPM/PERT and Monte-Carlo simulation approaches (Pinto 2012). In the case study, in this paper, we selected a Monte-Carlo simulation approach which is relatively straightforward in a no feedback activity network (Mantel et al. 2007). Simulating a stochastic network with feedback as is the case in Browning and Eppinger (2002) is much more computationally complex where at any point in time the network is defined by the set of active activities as well as the residual times of the activities.

Utilizing our proposed approach maintains the precedence relationships within the network which allows a manager to view the project schedule as an activity network with no feedback. Consequently, this preserves the advantages of using an activity network in project management which include easily identifiable milestones, facilitates the communication of time estimates relating to start and end dates of stages, among other well-established advantages of activity network techniques.

3 The proposed cycle elimination (CE) method

This paper investigates the duration of a stochastic and iterative project network and assumes the following inputs are provided: (1) the feedback probabilities and rework proportions via two DSMs; (2) the deterministic activity duration or the probability distributions of activity durations; and (3) the sequence of activity execution. Notice that the sequence of executing activities can either be suggested from the DSM structure (Yassine and Braha 2003; Yassine 2004), or from a classical network representation such as an activity-on-node (AON) representation (Pinto 2012).Footnote 1

An iterative PD network allows an activity to be reworked (i.e., repeated) multiple times. We refer to the process of completing an activity for the first time by the nominal-execution of the activity. Denote the time to complete Activity i for the first time (nominal-time of Activity i) by T I . We make the following assumptions: (1) If Activity i is an immediate predecessor for Activity j, then we cannot begin working on Activity j unless the nominal-execution of Activity i is completed along with the rework resulting from the nominal-execution of Activity i; and (2) the rework resulting from the nominal-execution of an activity can result in a succession of upstream activities to be reworked where rework is sequential. Notice that although rework is assumed to be sequential, the sequence in which the nominal-execution of the activities occurs is not necessarily sequential. Assumptions i and ii constitute the basis of our approach where the nominal-execution of an activity along with the feedback resulting from the nominal-execution is augmented to form a stage. An important characteristic of a stage is that its completion does not result in feedback to other activities or stages. In this section, we present the steps of the approach in detail on a network where the nominal-execution of activities is sequential. We extend our approach, in Sect. 4, to the general case of mixed networks, where the nominal-execution of activities includes activities that can be performed in parallel.

3.1 Sequential networks

In this paper, we refer to a network as sequential if the nominal-execution of the activities is performed sequentially and the order in which activities appear in a DSM determines the sequence of the nominal-execution of the activities. Consider a sequential network with n activities where the nominal-time of Activity I is T I for \(i = 1, \ldots ,n\), and the nominal-execution of Activity i can result in rework in upstream activities. In this paper, we represent the feedback probabilities and rework proportions by two (n × n) DSMs, DSM1 and DSM2, respectively. We utilize the commonly used DSM notation where the entries of the ith column of DSM1 represent the rework probabilities resulting from the nominal-completion of Activity i. If P ij is the probability of reworking Activity j after completing Activity i, then P ij  = DSM1( j, i ). Similarly, W ij is the proportion of rework that is required on Activity j after performing Activity i, W ij  = DSM2( j, i ). In this work, we set P II  = 0 and W II  = 0 for \(i = 1, \ldots n\), and we assume any immediate feedback (i.e., self-iteration) is accounted for by the probability distribution of the activity. The mean and standard deviation of the nominal-completion times for each activity are presented in the diagonal entries of the DSM1 and DSM2 matrices, respectively; i.e., DSM1(i, i) = E[t i ] and DSM2(i,i) = Stdev(t i ) for i = 1,…, n.

Define Stage k as the combination of performing the nominal-execution of Activity k and all the rework resulting from the nominal-execution of Activity k before proceeding to Activity K + 1, for \(k = 1, \ldots n\). If \(T_{k}\) is the time required to complete Stage k, then:

$$T_{K} = T_{K} + R_{K} ,{\text{ for}}\quad k = 1, \ldots ,n.$$
(1)

where \(R_{k}\) is the time required to complete the rework resulting from Activity \(k\) before proceeding to Activity \(k + 1\). A six-stage network is represented in Fig. 3 where a circle node represents the nominal-execution of an activity with duration, T K , and a square node represents rework with duration R K , for \(k = 1, \ldots ,6\). Stage k requires a square rework node if there exists at least one nonzero entry above the diagonal in Column k of the probability DSM. Such a representation accounts for rework within a stage, and the moments of the duration of each stage,\(E\left[ {T_{k}^{m} } \right]\) for \(m \ge 1\), are calculated independently.

Fig. 3
figure 3

Stage network

Therefore, the mth moment of the duration to complete Stage k is:

$$E\left[ {T_{k}^{m} } \right] = E\left[ {T_{k}^{m} |{\text{no}}\,{\text{rework}}} \right]{\text{Prob}}\left( {{\text{no}}\,{\text{rework}}} \right) + \mathop \sum \limits_{i = 1}^{k} E[T_{k}^{m} |{\text{rework}} i]{\text{Prob}}\left( {{\text{rework}} i} \right)$$
(2)

where \(E\left[ {T_{k}^{m} |{\text{no}}\,{\text{rework}}} \right]\) and \(E[T_{k}^{m} |{\text{rework}} i]\) are the mth moments of the duration of Stage k conditioned on reworking Activity i. Equation 2 assumes that one activity is reworked at a time (parallel rework is not allowed) and the event of reworking an upstream activity is mutually exclusive from the event of working any other upstream activity. Consequently, the sum of the non-diagonal entries in any column of the probability DSM cannot exceed 1.

Let \(R_{ij;k}\) be the remaining time required to complete Stage k given that Activity i has just been reworked and resulted in further rework in Activity j. At Stage k, the mth moment of \(R_{ij;k}^{m}\) is calculated by conditioning on the probability of having no rework after Activity j is reworked or conditioning on reworking Activity u after j has been reworked for \(u = 1, \ldots ,k\). The mth moment of \(R_{ij;k}\) (for k = 1,…,n; and i, j = 1,…,k) is:

$$\begin{aligned} E\left[ {R_{ij;k}^{m} } \right] & = E\left[ {\left( {R_{ij;k}^{m} } \right)^{m} |{\text{no}}\,{\text{rework}}} \right]{\text{Prob}}({\text{no}}\,{\text{rework)}} \\ & \quad + \mathop \sum \limits_{u = 1}^{k} E\left[ {\left( {R_{ij;k}^{m} } \right)^{m} |{\text{rework}} u} \right] {\text{Prob}}\left( {{\text{rework}} u} \right) \\ & = E\left[ {(W_{ij} t_{j} )^{m} } \right]{\text{Prob}}({\text{no}}\,{\text{rework}}) + \mathop \sum \limits_{u = 1}^{k} E\left[ {(W_{ij} t_{j} + R_{ju;k} )^{m} } \right] {\text{Prob}}\left( {{\text{rework}} u} \right). \\ \end{aligned}$$
$$\Rightarrow E\left[ {R_{ij;k}^{m} } \right] = E\left[ {(W_{ij} t_{j} )^{m} } \right]\left( {1 - \mathop \sum \limits_{u = 1}^{k} P_{ju} } \right) + \mathop \sum \limits_{u = 1}^{k} E\left[ {(W_{ij} t_{j} + R_{ju;k} )^{m} } \right]P_{ju} .$$
(3)

Similarly Eq. (2) is expressed as,

$$E[T_{k}^{m} ] = E[t_{k}^{m} ]{\text{Prob}}({\text{no}}\,{\text{rework}}) + \mathop \sum \limits_{u = 1}^{k} E\left[ {(t_{k} + R_{ku;k} )^{m} } \right]{\text{Prob}}\left( {{\text{rework}} u} \right).$$
$$\Rightarrow E[T_{k}^{m} ] = E[t_{k}^{m} ]\left( {1 - \mathop \sum \limits_{u = 1}^{k} P_{ku} } \right) + \mathop \sum \limits_{u = 1}^{k} {\text{E}}\left[ {(t_{k} + R_{ku;k} )^{m} } \right]P_{ku} .$$
(4)

The random variable \(R_{ku,k}\) represents the duration of the rework generated by completing Activity k given that Activity u is the first upstream activity to be reworked. The duration \(R_{ku,k}\) is incurred with probability \(P_{ku}\) where \(\mathop \sum \nolimits_{u = 1}^{k} P_{ku} \le 1,\) and \(\left( {1 - \mathop \sum \nolimits_{u = 1}^{k} P_{ku} } \right)\) is the probability of no rework after completing Activity k for the first time.

At Stage \(k\), for \(k = 1, \ldots ,n\), the starting (k × k) partition only, of matrices DSM1 and DSM2, is utilized. Although the entries of the probability and rework proportion DSMs are not a function of the stage, it is useful to note that it is possible to dynamically adjust DSM1 and DSM2 at each stage. This can be accounted for in Eqs. (3) and (4) by simply replacing P IJ and W IJ by P IJ;K and W IJ;K , respectively, for all \(k = 1, \ldots ,n\) and \(i,j = 1, \ldots ,k\). Dynamically changing the matrices DSM1 and DSM2 might be necessary if the nominal-completion of an activity indirectly alters the rework probabilities and proportions of upstream activities.

We summarize the implementation of the CE approach for a sequential network as follows:

  • Step 1: If column i of the probability DSM has at least one nonzero entry above the diagonal, then a square node is inserted after Activity i in the AON network or the DSM for i = 1,…,n.

  • Step 2: Feedback originating from Activity i is eliminated, and Stage i is now composed of a circle node representing the nominal-execution of Activity i and a square node representing the rework resulting from the nominal-execution of Activity i before proceeding to subsequent activities.

  • Step 3: The first two moments of the stage durations, \(E[T_{i} ]\) and \(E[T_{i}^{2} ]\), for i = 1,…,n, are calculated by solving the system of linear equations in (3) and (4) for m = 1, 2. Note that the mean and variance of the rework nodes (square nodes) are calculated as \(E[R_{i} ] = E[T_{i} ] - E[t_{i} ]\) and \({\text{Var}}(R_{i} ) = {\text{Var}}(T_{i} ) - {\text{Var}}(t_{i} )\), respectively, for i = 1,…,n.

  • Step 4: The mean and variance of the entire project network duration are calculated by summing the expected duration and variance, \(\mathop \sum \nolimits_{i = 1}^{n} E\left[ {T_{i} } \right]\) and \(\mathop \sum \nolimits_{i = 1}^{n} {\text{Var}}\left[ {T_{i} } \right]\) , respectively, over all stages.

Next, we present the system of linear equations for the first two moments of the network duration. An algorithm to efficiently generate a matrix representation of the system of linear equations to compute the first two moments is presented in “Appendix.”

3.1.1 Calculating the expected duration

The expected duration at Stage K can be calculated using Eqs. (3) and (4) for m = 1. Equation (3) requires solving a set of \(k^{2}\) linear equations. For \(m = 1\) and for \(k = 1, \ldots ,n\), \(i,j = 1, \ldots ,k\), Eqs. (3) and (4), respectively, are reduced to,

$$\begin{aligned} E[R_{ij;k} ] & = E[W_{ij} t_{j} ]\left( {1 - \mathop \sum \limits_{u = 1}^{k} P_{ju} } \right) + \mathop \sum \limits_{u = 1}^{k} E[W_{ij} t_{j} + R_{ju;k} ]P_{ju} \\ & = E[W_{ij} t_{j} ] + \mathop \sum \limits_{u = 1}^{k} E\left[ {R_{ju;k} } \right]P_{ju} \\ \end{aligned}$$
(5)
$$\begin{aligned} E[T_{k} ] & = E[t_{k} ]\left( {1 - \mathop \sum \limits_{u = 1}^{k} P_{ku} } \right) + \mathop \sum \limits_{u = 1}^{k} E[t_{k} + R_{ku;k} ]P_{ku} \\ & = E\left[ {t_{k} } \right] + \mathop \sum \limits_{u = 1}^{k} E[R_{ku;k} ]P_{ku} \\ \end{aligned}$$
(6)

At each Stage K, the system of linear Equations in (5) and (6) is represented by the following compact matrix representation,

$${\mathbf{AX}}_{1} = {\mathbf{b}}_{1}$$
(7)

where A is a \(\left( {k^{2} + 1) \times (k^{2} + 1} \right)\) square matrix, and X 1 and b 1 are \((k^{2} + 1) \times (1)\). The first \(k^{2 }\) entries of X 1 correspond to the expected rework as denoted by the right-hand-side expression of Eq. (6). The K 2 + 1 entry of X 1 corresponds to \(E\left[ {T_{k} } \right]\). We present two algorithms in “Appendix” to efficiently populate the entries of matrices A and b 1 , respectively. The expected duration of the entire sequential network is sum of the expected durations of all the stages. The expected network duration is obtained by calculating \(\mathop \sum \limits_{i = 1}^{n} E\left[ {T_{i} } \right].\)

3.1.2 Calculating the variance

The variance of the time to complete Stage k is,

$${\text{Var}}\left( {T_{k} } \right) = E\left[ {T_{k}^{2} } \right] - E^{2} \left[ {T_{k} } \right].$$
(8)

Here we make the assumption that the stage durations are independent. The variance of the entire network is:

$${\text{Var}} \left( {\text{Project}} \right) = \sum {\text{Var}} \left( {T_{k} } \right).$$
(9)

The second moment, \(E\left[ {T_{k}^{2} } \right]\), at Stage K,  is calculated using Eq. (4) for M = 2 and solving Eq. (3) requires solving the set of K 2 linear equations. For \(m = 2\), Eqs. (3) and (4), respectively, are,

$$\begin{aligned} E[R_{ij;k}^{2} ] & = E\left[ {(W_{ij} t_{j} )^{2} } \right]\left( {1 - \mathop \sum \limits_{u = 1}^{k} P_{ju} } \right) + \mathop \sum \limits_{u = 1}^{k} E\left[ {(W_{ij} t_{j} + R_{ju;k} )^{2} } \right]P_{ju} \\ & = E[(W_{ij} t_{j} )^{2} ] + \mathop \sum \limits_{u = 1}^{k} E\left[ {2W_{ij} t_{j} R_{ju;k} + R_{ju;k}^{2} } \right]P_{ju} \\ \end{aligned}$$
(10)
$$\begin{aligned} E[T_{k}^{2} ] & = E[t_{k}^{2} ]\left( {1 - \mathop \sum \limits_{u = 1}^{k} P_{ku} } \right) + \mathop \sum \limits_{u = 1}^{k} E\left[ {(t_{k} + R_{ku,k} )^{2} } \right]P_{ku} \\ & = E[t_{k}^{2} ] + \mathop \sum \limits_{u = 1}^{k} E\left[ {2t_{k} R_{ku,k}^{ } + R_{ku,k}^{2} } \right]P_{ku} \\ \end{aligned}$$
(11)

The following system of linear equations is solved to obtain the second moment of the duration of Stage k, \(E[T_{k}^{2} ]\):

$${\mathbf{AX}}_{2} = {\mathbf{b}}_{2} ,$$
(12)

where A is a \(\left( {k^{2} + 1) \times (k^{2} + 1} \right)\) square matrix, and X 2 and b 2 are \((k^{2} + 1) \times (1)\). Notice that the matrix A is obtained when solving for the expected duration of the Stage k. The algorithm to obtain b 2 is presented in “Appendix.” The \(k^{2} + 1\) entry of X corresponds to \(E[T_{k}^{2} ]\). Note that the activity duration, \(t_{i}\), is a random number where the first two moments \(E[t_{i} ]\) and \(E[t_{i}^{2} ]\) are assumed to be known.

The \(k^{2} + 1\) entry of X 2 corresponds to \(E[T_{k}^{2} ]\). The variance of the duration of the entire network is calculated as the sum of the variances of all stages. Obviously, the assumption made here is that the duration of Stage \(i\) is independent of the duration of Stage J, for \(i,j = 1, \ldots n\) and \(i \ne j.\) The variance of the entire network duration is obtained by calculating \(\mathop \sum_{i = 1}^{n} {\text{Var}}\left[ {T_{i} } \right].\) Next, we present an example to illustrate the stage computations for a sequential network with rework.

3.2 Example 1: Sequential network

Consider a sequential network with rework probabilities and stochastic activity durations. The DSM for the corresponding rework probabilities and proportions is presented in Fig. 4. The mean and standard deviation for each activity are presented in the diagonal entries of the rework probabilities and proportions matrices, respectively, Fig. 4.

Fig. 4
figure 4

DSM—Example 1

Feedback is eliminated by calculating the mean and variance of the time to complete each of the six stages, \(E[T_{k} ]\) and \({\text{Var}}(T_{k} )\) for k = 1, 2,…, 6. As an illustration on how the algorithm operates, we present the calculations of the mean of the first four stages: \(E[T_{1} ]\), \(E[T_{2} ]\) \(E[T_{3} ]\) and \(E[T_{4} ]\). The time to complete Stage 1 is simply T 1, since the nominal-completion of Activity 1 does not result in rework. This results in \(E[T_{1} \left] { = E[t_{1} } \right] = 74.\) The completion of Stage 2 considers the following DSM partitions, Fig. 5.

Fig. 5
figure 5

DSM at Stage 2—Example 1

Notice that the nominal-completion of Activity 2 does not result in feedback to Activity 1 which is the only upstream activity at this stage. The time to complete Stage 2 is simply T 2, and \(E[T_{2} ] { = E[t_{2} } ] = 20.\) The expected time to begin work on Activity 3 for the first time (i.e., nominal-execution) is \(E[T_{1} ] { + E[T_{2} } ] = 94.\) Similarly, solving for the completion time of Stage 3 considers the following DSM partitions, Fig. 6. The expected time to complete the first three stages is \(E[T_{1} ] { + E[T_{2} } ] + E[T_{3} ] = 166.\)

Fig. 6
figure 6

DSM at Stage 3—Example 1

At Stage 4, the following DSM is considered, Fig. 7, where completing Activity 4 for the first time can result in rework in Activity 2 which in turn can result in rework in Activities 3 and 4, Fig. 8.

Fig. 7
figure 7

DSM at Stage 4—Example 1

Fig. 8
figure 8

Cycle elimination at Stage 4

The nominal-completion of Activity 4 can result in rework in Activity 2 with probability \(P_{42} = 0.31\). This is represented by the following equation,

$$E[T_{4} ] = E[t_{4} ] + P_{42} E[R_{42;4} ] = 41 + 0.31 \times E[R_{42;4} ] ,$$
(13)

where \(R_{42;4}\) represents the amount of rework required to complete Stage 4 given that Activity 4 has just been completed and requested rework from Activity 2. Reworking Activity 2 can result in further rework in either Activity 3 or 4, but not both (as depicted by P 23 and P 24). Notice that this is a result of the sequential rework assumption.Footnote 2 Note that although P 35 = 0.29, reworking Activity 5 is obviously not considered at Stage 4 since the nominal-execution of Activity 5 has not been initiated. Reworking Activity 5 is only considered at Stages 5 and 6. Solving for the expected value of \(R_{42;4}\) requires solving the following system of 4 equations and 4 unknowns:

$$\begin{aligned} E[R_{42;4} ] & = E[W_{42} t_{2} ] + P_{23} E[R_{23;4} ] + P_{24} E[R_{24;4} ] \\ & = 0.30 \times E\left[ {t_{2} } \right] + 0.32 \times E[R_{23;4} ] + 0.55 \times E[R_{24;4} ] \\ \end{aligned}$$
(14)
$$E[R_{23;4} ] = E[W_{23} t_{3} + P_{34} E[R_{34;4} = 0.27 \times E[t_{3} ] + 0.23 \times E[R_{34;4} ]$$
(15)
$$E[R_{24;4} ] = E[W_{24} t_{4} ] + P_{42} E[R_{42;4} ] = 0.86 \times E[t_{4} ] + 0.31 \times E[R_{42;4} ]$$
(16)
$$E[R_{34;4} ] = E[W_{34} t_{4}] + P_{42} E[R_{42;4}] = 0.18 \times E[t_{4}] + 0.31 \times E[R_{42;4}]$$
(17)

This results in a value of \(E[R_{42;4} ] = 39.86\). The expected duration of Stage 4 becomes, \(E[T_{4} ] = 41 + 0.31 \times 39.86 = 53.36\). The expected time to complete Stage 4 and all the resulting rework before proceeding to Activity 5 for the first time is \(E[T_{1}] { + E[T_{2} } ] + E[T_{3} ] { + E[T_{4} } ] = 74 + 20 + 72 + 53.36 = 219.36.\)

Similarly, the second moment of the duration of Stage 4 can be calculated by the following equation,

$$\begin{aligned} E\left[ {T_{4}^{2} } \right] & = E\left[ {t_{4}^{2} } \right] + P_{42} E\left[ {R_{42;4}^{2} } \right] + P_{42} E[2t_{4} R_{42;4} ] \\ & = 2101.25 + 0.31 \times E\left[ {R_{42;4}^{2} } \right] + 0.31\left( {2 \times 41 \times 39.86} \right) \\ \end{aligned} ,$$
(18)

Solving for the second moment of \(R_{42;4}\) requires solving the following system of 4 equations:

$$\begin{aligned} E[R_{42;4}^{2} ] & = E[(W_{42} t_{2} )^{2} ] + P_{23} E[2W_{42} t_{2} R_{23;4} ] + P_{23} E\left[ {R_{23;4}^{2} } \right] \\ & \quad + P_{24} E[2W_{42} t_{2} R_{24;4} ] { + P_{24} E} [R_{24;4}^{2} ] \\ \end{aligned}$$
(19)
$$\begin{aligned} E[R_{23;4}^{2}] & = E[ (W_{23} t_{3} )^{2}] + P_{34} E[2W_{23} t_{3} R_{34;4}] \\&\quad+ P_{34} E[R_{34;4}^{2}]\\ \end{aligned}$$
(20)
$$\begin{aligned} E[R_{24;4}^{2}] = E[(W_{24} t_{4} )^{2}] + P_{42} E[2W_{24} t_{4} R_{42;4}]\\&\quad + P_{42} E[R_{24;4}^{2}] \\ \end{aligned}$$
(21)
$$\begin{aligned} E[R_{34;4}^{2}] = E[(W_{34} t_{4} )^{2}] + P_{42} E[2W_{24} t_{4} R_{42;4}]\\&\quad + P_{42} E[R_{24;4}^{2}] \\ \end{aligned}$$
(22)

This results in \(E\left[ {R_{42;4}^{2} } \right] = 2493.8\) and \({\text{Var}}\left( {T_{4} } \right) = E\left[ {T_{4}^{2} } \right] - E\left[ {T_{4} } \right]^{2} = 1040.5\). The variance of the time to complete Stage 4 and all the resulting rework before proceeding to Activity 5 for the first time is \({\text{Var}}(T_{1} ) + {\text{Var}}E(T_{2} ) + {\text{Var}}(T_{3} ) + {\text{Var}}(T_{4} ) = 1369.0 + 100.0 + 1296.0 + 1040.5 = 3805.5\).

Similarly, we solve for the first two moments of Stages 5 and 6 and we obtain, \(E[T_{5} ] = 64.48\), \(E[T_{6} ] = 83.20\), \({\text{Var}}(T_{5} ) = 1980.0,\) and \({\text{Var}}(T_{6} ) = 3022.9.\) Adding the mean and variance at each stage, we obtain the mean and standard deviation of the entire network as 367.04 and 93.85, respectively. Table 1 summarizes the results of this example.

Table 1 Stage durations (Example 1)

For a system where the sequential rework assumption holds (i.e., activities cannot be reworked in parallel) and the nominal-execution of activities is performed sequentially, our proposed method provides numerically exact results for the mean and variance of the network completion time.

Recent research by Braha and Bar-Yam (2007) has shown that the underlying network structure of a PD network can provide useful information about its performance. Additionally, they have also shown that real-world PD networks indeed deviate from sequential structures; many of these networks exhibit the “small world” property and follow a “scale-free” distribution (for the nodal degrees). Although the sequential work and rework assumption, made in Sect. 3, is useful to simplify the calculations of the various moments for project duration, this assumption must be relaxed to be able to properly capture the underlying network structure of a PD projects. Accordingly, Sect. 4 considers networks where the nominal-completion of activities is not necessarily sequential. Section 6 addresses the complexity involved in relaxing the sequential rework assumption, and we present approximations to analyze networks with parallel rework.

4 Solving mixed activity networks

In this section, we consider mixed networks where nominal-execution of activities is not necessarily sequential. However, the finish to start relationship between activities can be inferred from the DSM (as illustrated in Fig. 2) and easily represented by the commonly used AON representation. If there is no feedback and the activity durations are deterministic, then the project’s duration can be calculated by the critical path method (CPM). In the case of no feedback but the duration of the activities are stochastic, PERT can be used or the AON network can be simulated efficiently to obtain accurate point estimates (Mantel et al. 2007; Pinto 2012). Eliminating feedback from a mixed network significantly reduces the complexity involved in analyzing the network. This serves as a motivation behind applying the CE approach on a mixed network to obtain an approximate acyclic AON network (i.e., with no feedback).

Implementing the CE approach on a mixed network is comparable to the sequential case presented in Sect. 3 where a stage denotes the nominal-execution of an activity as well as the resulting rework that is performed on upstream activities before proceeding to subsequent stages. Again, the duration of Stage k is the time to complete Activity k for the first time, t i , in addition to the time to complete the resulting upstream rework, R k . Also, the rework resulting from the nominal-execution of an activity is represented by a square node.

However, in the mixed network case, the completion of a stage can initiate the nominal-execution of more than one subsequent stage in accordance to the AON/DSM precedence relationships. The CE approach preserves the sequence of the nominal activity execution and eliminates feedback by inserting a square node following an activity which can result in reworking upstream activities. The rework associated with the nominal-execution of an activity is also assumed to be performed sequentially. This assumption allows us to utilize Eqs. (5) and (6) to calculate the first moments of the stage durations. Similarly, due to the sequential rework assumption, Eqs. (10) and (11) are solved to obtain the second moments of the stage durations.

The CE approach for mixed networks is similar to the sequential approach, but excludes Step 4 where the mean and variance of the network duration are obviously not obtained by simply summing the mean and variance at each stage. As stated earlier, the motivation behind implementing the CE approach for mixed networks is to transform a network with feedback into a no feedback network. This is achieved by fitting a distribution to the first two moments of the rework at each stage. So Step 4 is replaced by:

Step 4: An approximate probability distribution is fitted to the first two moments of the rework duration R I ,  for i = 1,…,n.

Notice that Step 4 is required if the network is to be analyzed via Monte-Carlo simulation; otherwise, the CE approach results in an approximate stochastic network with no feedback with known mean and variance at every node.Footnote 3 Obviously, more accurate approximate distributions can be obtained by fitting higher-order moments which can be calculated by solving the system of linear equations of (3) and (4) for m > 2.

4.1 Example 2: Mixed networks

We consider the probability and rework DSMs of Example 1, but assume that reworking Activity 2 does not result in rework in Activity 3 and reworking Activity 3 does not result in rework in Activity 4 (i.e., P 23 = W 23 = 0 and P 34 = W 34 = 0). The resulting probability and rework proportion DSMs are presented in Fig. 9.

Fig. 9
figure 9

DSM—Example 2

According to the DSM of Fig. 9, Activity 1 is the predecessor for Activities 2 and 3 and Activity 2 is the predecessor for Activity 4. However, Activity 3 does not require information from Activities 2 and 4. Therefore, the nominal-execution of Activity 3 can be performed in parallel with the nominal-execution of Activity 2 or 4. Furthermore, Activities 3 and 4 are both the predecessors of Activity 5, and finally Activity 5 is the predecessor of Activity 6. Figure 10 depicts an AON network which illustrates the sequence in which the nominal-execution of the activities is performed according to the DSM model.

Fig. 10
figure 10

Sequence of nominal-execution via an AON representation

According to the DSM of Fig. 9, Activities 4, 5 and 6 have at least one nonzero entry above the diagonal. Accordingly, the nominal-execution of Activities 4, 5 and 6 can result in feedback. Feedback is eliminated by implementing Step 1 of the CE method where a square node is inserted after Activities 4, 5 and 6, Fig. 11.

Fig. 11
figure 11

Network with rework nodes (Example 2)

The network is composed of six stages where Stages 4, 5 and 6 have a rework component in addition to the nominal-execution time. The expected duration of Stages 1, 2 and 3 are 74, 20 and 72, respectively (Fig. 9). At Stage 4, the DSM of Fig. 9 is partitioned to include the first four activities resulting in the DSM partition shown in Fig. 12. Figure 13 illustrates the sequence of feedback that might occur when the nominal-execution of Activity 4 is completed.

Fig. 12
figure 12

DSM at Stage 4—Example 2

Fig. 13
figure 13

Rework at Stage 4 (Example 2). Dotted arrows represent probabilistic feedback/rework

At Stage 4, Activity 4 can result in the first-order rework in Activity 2 which in turn can result in the second-order rework in Activity 4 and so on. The expected duration for Stage 4 is calculated using the following equation.

$$E[T_{4} ] = E[t_{4} ] + P_{42} E[R_{42;4} ] = 41 + 0.31 \times E[R_{42;4} ] ,$$
(23)

Solving for the expected value of \(R_{42;4}\) requires solving the following system of linear equations.

$$E[R_{42;4} ] = E[W_{42} t_{2} ] + P_{24} E[R_{24;4} ] = 0.30 \times E[t_{2} ] + 0.55 \times E[R_{24;4} ]$$
(24)
$$E[R_{24;4} ] = E[W_{24} t_{4} ] + P_{42} E[R_{42;4} ] = 0.86 \times E[t_{4} ] + 0.31 \times E[R_{42;4} ]$$
(25)

Implementing Step 3 of the CE algorithm, the mean and variance of the rework resulting from completing Stage 4 are 9.49 and 494, respectively. Similarly at Stage 5, the DSM is partitioned to include the first five activities only. Implementing Step 3 of the CE algorithm, the mean and variance of the rework resulting from completing Stage 5 are 24.61 and 1,219, respectively.

The complete DSM is considered when evaluating the rework resulting from the nominal-execution of Activity 6. The sequence of feedback as a result of completing Activity 6 is illustrated in Fig. 14. It is worth noting that the nominal-completion of Activity 6 can result in rework in Activity 1 which in turn can result in rework in Activities 2 or 3, but not both. Although the nominal-completion of Activities 2 and 3 can be performed in parallel, the rework in Activities 2 and 3 (if triggered due to feedback) cannot be performed in parallel. This is based on the sequential rework assumption. Implementing Step 3 of the CE algorithm, the mean and variance of the rework resulting from completing Stage 6 are 20.28 and 1,417, respectively.

Fig. 14
figure 14

Rework at Stage 6 (Example 2)

At Step 3 of the CE algorithm, the mean and variance of the rework at each stage is added to the corresponding mean and variance of the nominal-duration. Figure 11 represents the resulting no feedback network with mean and variance at each stage given in Table 2.

Table 2 Stage durations (Example 2)

The CE approach results in an approximate stochastic network with no feedback with known mean and variance at every node. Implementing Step 4 of the CE algorithm is relatively simple since simulating the network in Fig. 11 is relatively straightforward where the network has two paths, 1–2–4–5–6 and 1–3–5–6, with no feedback.

5 Solving coupled-activity networks

We define coupled activities as a set of activities that are the predecessors of each other; however, they can be started together (i.e., there is no obvious execution order). Note that if the set of activities are nominally sequential as in Figs. 12 and 13, Activities 2 and 4, then we do not consider them coupled, but sequential with feedback.

Consider two coupled activities, i and j, where Activity j appears after Activity i in the DSM. The rework at Stage j of the CE approach accounts for the rework in Activity i due to the nominal-completion of Activity j, but the CE approach does not consider the rework in Activity j due to the nominal-completion of Activity i. In the case where the nominal-completion of Activities i and j are performed in parallel, there is a need to account for the rework in Activity j due to the nominal-completion of Activity i. To account for the rework in Activity j, an artificial activity, i′, is inserted after Activity j in the DSM where completing Activity i′ results in rework in Activity i with probability of 1. As a result, the rework resulting from Activity i’ captures the rework generated by completing Activity i and accounts for reworking Activity j. So the artificial activity, i’, is inserted after Activity j in the probability and rework DSMs, and we set \(P_{{i^{\prime } i}} = W_{{i^{\prime } i}} = 1\). The final step is to replace the rework at Stage i with the rework resulting from completing the artificial activity, i′.

The purpose behind inserting the dummy activity, i′, is to capture the rework invoked by reworking Activity i which also accounts for reworking Activity j. This would not be possible otherwise since Activity i is considered upstream relative to Activity j according to the DSM sequence. The dummy activity achieves this purpose by (1) appearing after Activity j in the DSM and (2) reworking 100 % of Activity i with certainty, \(P_{{i^{\prime } i}} = W_{{i^{\prime } i}} = 1.\) Evaluating the duration of the dummy stage, i′, is equivalent to revaluating the duration of Stage i where the rework of all the activities appearing before i′ in the DSM is accounted for (which now include Activity j).

In the case where n activities are coupled, i.e., the nominal-completion of the n activities is performed in parallel and feedback can occur between the n activities, a similar approach can be implemented where N − 1 artificial activities are required. Note that the artificial activities are inserted in the DSM after the coupled block.

5.1 Example 3: Coupled activities in a network

Here we reconsider the probability and rework proportion DSMs of Example 2 as well as the nominal-execution sequence, with the added modification of making Activities 2 and 3 coupled. This is implemented by providing P 23, W 23, P 32 and W 32 with positive values. The resulting probability and rework proportion DSMs are presented in Fig. 15. Since Activities 2 and 3 are coupled, we insert an artificial Activity 2′ after Activity 3. This is illustrated in the DSM of Fig. 16.

Fig. 15
figure 15

DSM—Example 3

Fig. 16
figure 16

DSM with artificial Activity 2′—Example 3

The rework resulting from Activity 2 captures the rework generated from the nominal-completion of Activity 2 which also accounts for reworking Activity 3. As a result, the rework at Stage 3 accounts for the rework in Activity 2 due to completing Activity 3. Also at Stage 2′, which follows Stage 3, the rework in Activity 3 due to the nominal-completion of Activity 2 is now accounted for. Implementing the CE approach on the DSM of Fig. 16 results in the stage durations shown in Table 3. The rework resulting from completing the artificial Activity 2′ replaces the rework for the nominal-completion of Activity 2.

Table 3 Stage durations (Example 3)

6 Accounting for parallel rework

The model considered up to this point assumes that rework generated from the completion of an activity is performed sequentially. The sequential rework assumption is comparable to the reward Markov chain approach presented by Smith and Eppinger (1997), where the sum of the off-diagonal probabilities in each column of the DSM must be ≤1.

For clarity, let \({\mathbf{P}}^{\left( p \right)}\) denote the probability rework matrix which allows for parallel rework (i.e., the sum of the off-diagonal probabilities in a column can exceed 1). For example, consider the case where Activity k can result in reworking upstream activities i and j independently. If \(P_{ki}^{\left( p \right)} = 0.3\) and \(P_{kj}^{\left( p \right)} = 0.8\), then the probability of reworking both activities in parallel after completing Activity k is \(P_{ki}^{\left( p \right)} P_{kj}^{\left( p \right)} = 0.24\). In such a case, the event of reworking Activity i and the event of reworking Activity j are not mutually exclusive events.

Notice that artificial activities can be created to account for situations where activities are allowed to be executed in parallel. Adding artificial activities to account for all combinations of scenarios where activities could be worked in parallel would significantly increase the computational complexity involved in the system-state representation, making the analysis computationally prohibitive. This is due to the very large number of states or artificial activities that would have to be accounted for. For example, in a situation where eight activities are to be reworked in parallel, the resulting system–state representation has 28−1 = 255 states.

We present an approximation approach to reduce the computational complexity due to parallel rework where we introduce a priority vector at Stage k, \(v_{k} ,\) of length k, where \(1 \le v_{k} \left( j \right) \le k\). Let \(v_{k} \left( j \right)\) denote the activity with the jth priority at Stage k for k = 1,…,n and j = 1,…,k. The activity with the highest priority is \(v_{k} \left( 1 \right)\), the activity with the second highest priority is \(v_{k} \left( 2 \right)\) and so forth. The assumption here is that the activity with the highest priority, out of the pool of activities being called for parallel rework, determines the additional rework.

The nominal-completion of an activity can result in the parallel execution of different rework paths, where a rework path is defined by a sequence of activities being reworked in series. Notice that the number of possible rework paths can be infinite, but a finite subset of paths is activated for rework [see Eppinger et al. (1997)]. The probability that a rework path is initiated can be calculated from the rework probabilities of the activities comprising the path. Our approach accounts for the random selection of the set of paths to be reworked in parallel and considers the duration of the path with the highest priority. This is achieved as follows. Whenever multiple activities are called for parallel rework, the approximation only accounts for the activity with the highest priority. The completion of the activity with highest priority in turn might activate a random set of activities for rework where the priority vector is utilized again to select the next activity to be reworked. In a similar fashion, the next activity to be reworked is selected until no further activities are called for rework. Accordingly, the parallel rework probabilities along with the priority vector would result in an approximate sequential probability vector.

Utilizing the prioritization vector, we present a transformation from the parallel rework probability DSM,\({\mathbf{P}}^{\left( p \right)}\), to the sequential rework probabilities. At Stage k, for i = 1,…,k, u = 1…k and \(i \ne v_{k} \left( u \right)\),

$$P_{{i,v_{k} \left( u \right)}} = P_{{i,v_{k} \left( u \right)}}^{\left( p \right)} \mathop \prod \limits_{{z = 1,v_{k} \left( z \right) \ne j}}^{u - 1} \left( {1 - P_{{j,v_{k} \left( z \right)}}^{\left( p \right)} } \right)$$
(26)

Equations (3) and (4) only consider sequential rework where the sum of the off-diagonal probabilities in a DSM column is <1. The transformations in (26) utilize prioritization in order to utilize Eqs. (3) and (4) for the case where the sum of the off-diagonal probabilities in a DSM column is allowed to be >1.

7 Case study

A simulation algorithm is developed in Browning and Eppinger (2002) to approximate the duration and cost of a PD network. The inputs to the simulation algorithm include the rework probability and proportion DSMs, information on the probability distribution of the activity durations, and improvement curves (IC) to account for learning factors. They simulate an actual industrial case of an uninhabited combat aerial vehicle (UCAV). We utilize inputs presented in Browning and Eppinger (2002) to illustrate the CE approach and compare our results to their simulation algorithm results. The rework probabilities and proportions as provided by Browning and Eppinger (2002) are presented in Fig. 17 along with the improvement curves. The first two moments of the nominal-completion of the 14 activities is provided in Table 4.

Fig. 17
figure 17

Rework probabilities and proportions

Table 4 Activity durations

The first step is to transform the probability DSM of Fig. 17 to a sequential probability DSM using Eqs. (26). The activity prioritization vector,\(v_{k}\), is determined by the sequence of activity execution as presented by the DSM where the more upstream the activity, the higher the priority (i.e., lower numbered activities have a higher priority). The resulting sequential DSM is presented in Fig. 17. Consider Column 11 in Fig. 17 to illustrate the implementation of the probability transformation of Eq. (26). Activity 11 can cause rework to activities 10, 12 or 14 depending on the current stage. Activity 10 has the highest priority, and as a result \(P_{11,10} = P_{11,10}^{\left( p \right)} = 0.4\). In the case where Activity 11 is recalled at a Stage K, for K = 12 or K = 13, then activities 10 or 12 can be recalled. As a result, the probability of recalling Activity 12 is \(P_{11,12} = P_{11,12}^{\left( p \right)} \left( {1 - P_{11,10}^{\left( p \right)} } \right) = 0.24\). Similarly, if Activity 11 is reworked at Stage 14, the next resulting activity to be reworked can be 10, 12, or 14. Since Activity 14 has the lowest probability, it is reworked with probability \(P_{11,14} = P_{11,14}^{\left( p \right)} \left( {1 - P_{11,10}^{\left( p \right)} } \right)\left( {1 - P_{11,12}^{\left( p \right)} } \right) = 0.144\).

Notice that according to the UCAV DSM, completing Activity 14 does not result in any rework. The probability \(P_{11,14}\) is calculated for completeness in Fig. 18 although Activity 11 is recalled for rework at Stage 14 with probability 0. The learning proportions are accounted for by multiplying the IC with the associated rework proportion. The activity precedence relationships and AON are inferred from the DSM, Fig. 19. The CE approach is implemented, and the resulting mean and variance at each stage are given in Table 5. Traditional project management techniques can be used to analyze the obtained network. We choose spreadsheet Monte-Carlo simulation for our analysis (Seal 2001; Davis 2008). A relatively straightforward approach is to simulate the duration of the five possible paths in the network of Fig. 19 where the probability distribution of each activity is approximated by a lognormal distribution. At each iteration of the Monte-Carlo simulation, the network duration is the maximum duration of the paths. We perform 10,000 iterations and present the simulated point estimate of the network duration and half-width in Table 6. The resulting point estimate obtained by simulating the no feedback network is compared to the simulation results of Browning and Eppinger (2002) where the percentage difference is 1.99 %.

Fig. 18
figure 18

Probability DSM after prioritization

Fig. 19
figure 19

Network with rework nodes (UCAV case study)

Table 5 Stage durations
Table 6 UCAV case study results

8 Summary and concluding remarks

The approach presented in this paper merges the literature on DSM with classical project management techniques. The CE approach is introduced to reduce a PD project stochastic network (i.e., with feedback) to a traditional project management network (i.e., with no feedback). The no feedback network is obtained analytically without resorting to simulation. The proposed method requires the user to input the rework probability and proportion DSMs as well as the calculated first two moments of the duration of each activity. The first two moments at every stage can be calculated using the Algorithm presented in the Appendix.Footnote 4 An AON with stochastic durations and no feedback is obtained where every stage represents a node. Achieving the stochastic and no feedback network does not require simulation, and the moments of the stage durations can be automatically computed based on the DSM rework probabilities and proportions. Existing approaches to analyzing the resulting stochastic networks with no feedback include the classical CPM/PERT approaches and Monte-Carlo simulation, which is relatively straightforward in no feedback project networks.

The main source of computational complexity involved in obtaining the expected duration is to solve a system of linear equations where the number of equations does not exceed (k 2 + 1). The complexity to obtain a higher moment requires an additional system of linear equations to be solved which does not exceed (k 2 + 1) as well. An algorithmic approach is presented in the Appendix to generate the system of linear equations for the first two moments for any probability and proportion rework DSMs. It is worth noting again that obtaining the stochastic no feedback network does not require Monte-Carlo simulation.

The computations are efficient for networks with <30 activities where the solution can be obtained within seconds. The computational effort increases exponentially as the number of activities increases. A fully connected 50 activity DSM requires 3.75 min to solve and around 15 min to solve a 100 activity DSM on a core i5 CPU with 6 GB RAM. This paper considers sequential and mixed networks where every activity and the rework resulting from completing the activity for the first time denote a stage. At the stage level, modeling parallel rework can be computationally extensive. The computational complexity of reworking activities in parallel is accounted for by prioritizing the activities that need to be reworked simultaneously. Prioritization schemes can be as straightforward as giving priority to the more upstream activities or can involve a thorough investigation of the looping generated by each activity. Future work can incorporate more complex looping prioritizations schemes to account for parallel rework. The authors in Martinez Leon et al. (2013) for example present a loop criticality index. Future work can also address dynamically changing PD networks where the DSM entries are dependent on the stage or on the rework order.

A main approximation of the CE approach is that the durations of the stages are independent. The independence approximation would not work well if the rework at a certain stage is highly correlated with the rework involved in different stages. For example, Activities i and j are reworked at Stage z if and only if they are reworked at Stage x. An approach to account for high dependency between stages can take place during the analysis of the stochastic no feedback network. For example, if simulation is used to obtain point estimates on the duration of the resulting stochastic network, then correlation between stages can be accounted for when generating the associated random variates.

Another source of error is a consequence of the priority approximations presented in Sect. 6 to account for parallel rework. The approximations could provide inaccurate results in the case where the rework within a stage constitutes several paths to be reworked in parallel where the durations of the paths are comparable in expected value and exhibit high variability. In such a case, the stage will have to be investigated independently where an approximate distribution of the rework duration should be provided.