A Hybrid Software Process Simulation Model

Size: px
Start display at page:

Download "A Hybrid Software Process Simulation Model"

Transcription

1 Laboratory for Computer Science and CERTIA Research Center * University of Rome Tor Vergata Roma, Italy {donzelli, iazeolla}@info.uniroma2.it Keywords: Software Process Modeling, Simulation Modeling, Hybrid Simulation. Abstract This paper deals with simulation modeling of software processes and proposes the combination of three traditional modeling methods (analytical, continuous and discrete-event) into a unique hybrid two-level modeling approach. At the higher abstraction level, the process is modeled by a discreteevent queuing network, which represents the component activities (i.e. service stations), their interactions, and the exchanged artifacts. The implementation details of the introduced activities are given at the lower abstraction level, where the analytical and continuous methods are used. The proposed approach is applied to a waterfall-based software process to study the effects of requirements instability on various process quality attributes, as effort, delivery time, productivity, rework percentage, and product quality. Simulation results show that the use of the model can provide both qualitative and quantitative suggestions on how to change the software process to improve its quality or to achieve specific organizational goals. The model is primarily designed to represent the behaviour of hypothetical projects, to allow researchers to view the implications of their assumptions. However, with small improvements, it can be extended to become a tool for analysing and predicting the behaviour of actual projects. * Work partially supported by the CERTIA Research Center, and by the UNIROMA2-UMD-WVU Co-operation agreement on Concurrent Engineering and Simulation Modeling in Software Process Optimization.

2 1. Introduction Software companies are looking for ways to respond to competitive pressures and to reach new quality levels by reengineering and improving their production and operational processes. Software process improvement activities can benefit from the application of software process models to assess and analyze the as-is process, to design the to-be process, to forecast process trajectories for a better project control, and to simulate outcomes under different what-if conditions, without affecting the actual environment. Most of the process models used by the software community are analytical models, which provide average data on process behavior. Examples of such models are: Function Point-based models [1] to estimate the final product size and associated effort, the COCOMO model [2] to estimate schedule and effort for a given software product, the Rayleigh model [3] to shape the staffing profile, and the Reliability Growth models [4] to estimate the testing effort. Besides providing average data, these models cover only a strict subset of the process attributes, separate the effects of such attributes (e.g. the development effort from product defect density), and do not permit analysis of the process behavior in a perturbed environment (e.g. changes in product requirements, staff reductions, etc). More detailed and realistic predictions of the process behavior require more sophisticated models, generally based on simulation techniques. However, existing process simulation techniques also have their drawbacks, in that they only enhance the analysis of some aspects of the process, at a cost to other aspects. Such techniques are in fact either of discrete-type (discrete-event queuing based) [5] or of continuous-type (system dynamics based) [6, 7, 8], thus neglecting in either case the fact that the software process shows both discrete system aspects and continuous system ones. Only rarely such techniques are a combination of continuous-type and discrete-type simulations [9], and even more rarely a combination of three methods: analytical, continuous-type simulation, and discrete-type simulation. This paper contribution is the proposal and the experimental validation of the three-method combination (analytical, continuous simulation, and discrete-event simulation) into an unique hybrid two-level modeling approach. The two levels describe the process from two different views: the less detailed, and the more detailed view. In the less detailed view, the process is seen as network of 2

3 activities; in the more detailed view, each activity is fully described. At the higher abstraction level (less detailed view), the discrete-event method is used, while the analytical and the continuous-type methods are used at the lower abstraction level (more detailed view). In addition, as many times documented in simulation literature [10], hybrid modeling reduces the timecomplexity of the simulation run, by by replacing detailed-level simulation components with analytical equations, whose computation requires much less time than the computation of the sequence of events necessary to obtain similar results from the detailed-level components. A simulation technique is used to solve the hybrid model. The QNAP2 simulation package [11] is used, which includes many features that support hybrid modeling. It is generally argued that simulation solutions are unlikely to give exact forecasts of the real process behavior. However, they nevertheless give projections as to how the process would behave under given assumptions on external and internal factors, stimulate debate and provide a way to learn about, and to improve, the software process. From such a perspective, the proposed hybrid modeling approach is applied to a waterfall-based software process, and some example applications of the developed model are discussed. In particular, the model is applied to study the effects of requirements instability on various process quality attributes, as effort, delivery time, productivity, rework percentage, and product quality. The confidence in model representativeness is obtained by model validation against real-life process behaviors. This work is one of the results of the joint co-operation between the University of Roma-TorVergata, the Enterprise-University Consortium CERTIA, the Software Engineering Laboratory of the University of Maryland and the CERC Research Center of the University of West Virginia, on the "Concurrent Engineering and Simulation Modeling in Software Process Optimization" enterprise-university project. The paper is organized as follows. Section 2 briefly introduces the proposed modeling approach. In Section 3 such an approach is applied to model a waterfall-based software process. Some example applications of the developed model are presented and discussed in Section 4. Section 5 discusses model validation, and Section 6 gives conclusions and plans for future work. 3

4 2. The Hybrid Modeling Approach The software process is composed of various activities (e.g., the development of the specification document, the change of the specification document following requirements changes, the correction of the design document on the basis of defects discovered during the testing, etc.). Some activities are sequential, others may be carried on concurrently. Activities collaborate to develop the final product through the exchange of artifacts. Activities need resources (e.g. personnel, computer time, etc.) to carry on the required tasks and may collide on the use of the same resources. The software process does therefore show both discrete system aspects (start/end of an activity, reception/release of an artifact by an activity) and continuous system ones (resources consumption by an activity, percentage of developed product, percentage of discovered defects). As stated in Section 1, this composite (discrete-continuous) nature of the software process is disregarded by pure continuous and pure discrete current approaches. Some approaches, as in [9], include both continuous and discrete representations, however at the expense of the simulation-run time-complexity. In order to reduce such a complexity, simulation methodology [10] suggests an approach in which some of the simulative components are replaced by analytical ones. Such an approach, named hybrid simulation, is here applied. In particular, the suggested approach introduces two abstraction levels, a higher abstraction and a lower abstraction level, to represent the software process by a combination of three methods: the analytical, the continuous and the discrete-event method. At the higher abstraction level, the discrete-event modeling method is used. The process is modeled by a discrete-event queuing network, which models the component activities, their interactions, and the exchanged artifacts. The queuing model is a direct replica of the software process, with service stations used to represent activities, and circulating customers used to represent artifacts that move from one activity to another. Each activity can on its turn be described by a set of service stations to represent the component sub-activities. Some activities/sub-activities may consume resources (e.g. personnel, time), whereas others may just perform co-ordination tasks, simulating managerial policies (e.g. whether or not to release a process artifact to the next development stage depending on its quality level). 4

5 The lower abstraction level gives the implementation details of the service stations (i.e. activities) introduced at the higher level. Here the analytical and continuous methods are used. In particular each activity is modeled by either an analytical average-type function, or by a continuous type time-varying function, or by a combination thereof. Such functions are used to express the amount of resources, or time, or effort that various service stations use to simulate the corresponding activities or sub-activities. 3. A Waterfall-based Software Process Model In this Section the suggested approach is applied to model a waterfall-based software process. The software process taken into consideration is illustrated in Figure 1, where both the component activities and the exchanged artifacts are shown. According to the waterfall paradigm, the software process consists of a series of sequential phases; and the software product is the conclusive artifact of a series of intermediate artifacts: requirements, specification, high-level design, low level design, code, systemtested code and acceptance-tested code. Although phases are sequential, their respective activities can run concurrently, because of the simultaneous execution of work activities (that generate the artifacts mentioned above) and rework activities (necessary to fix defects or introduce requirement modifications). Artifacts generated by activities aiming at fixing defects are defects reports or corrections reports (e.g. low-level design defects reports, code correction reports, etc.). Artifacts generated by activities that introduce modifications due to requirements instability are changes or increments (e.g. specification changes, high-level design increments, etc.). As shown in Figure 1, the modeled process thus consists of partly sequential and partly concurrent activities. In particular, the activities take into account are both development activities, i.e. Specification (SP), High Level Design (HLD), Low Level Design (LLD), and Implementation (IMP), and testing activities, i.e. System Test (ST), and Acceptance Test (AT). According to our modeling approach, the software process is translated into a two-level model, consisting of a higher and a lower abstraction level. 5

6 requirements requirements changes requirements increments specification defects reports Process Activities specification SP changes SP increments SP corrections reports high level design HLD changes HLD increments HLD corrections reports low level design LLD changes LLD increments LLD corrections reports Specification (SP) Activity high level design defects reports High Level Design (HLD) Activity low level design defects reports Low Level Design (LLD) Activity code defects reports Implementation (IMP) Activity d e f e c t s r e p o r t s code code changes code increments code corrections reports System Test (ST) Activity system-tested code system-tested code changes system-tested code increments system-tested code corrections reports Acceptance Test (AT) Activity acceptance-tested code acceptance-tested code changes acceptance-tested code increments (the final SW_product) SP HLD LLD IMP ST AT time Process Phases over Time Figure 1- The modeled software process The main process attributes the developed model deals with are effort (W), delivery time (T), productivity (P), rework percentage (RWK), and product defect density (DFD). However, it provides valuable insights into many other aspects of the modeled process. For example, process and subactivities staffing profile, effort distribution, phase duration, rework due to defects or requirements instability, size and number of defects of the final product and of the intermediate artifacts, number of defects revealed by testing or review activities, number of defects injected by a development activity The higher abstraction level At this level, the discrete-event modeling method is used: the process is modeled as a discrete-event queueing network. In particular, two different types of queueing networks are used: one to model the 6

7 development activities (SP, HLD, LLD, IMP), and another to model the testing activities (ST, AT). Figure 2 illustrates the type of queueing network used to model the development activities. For the sake of the example, the LLD activity is taken into consideration. LLD defects reports (due to previous activities) LLD defects reports (due to locally injected defects) high-level design HLD changes HLD increments HLD corrections reports start station work station review station release station low-level design LLD changes LLD increments LLD corrections reports low-level design LLD changes LLD increments (to be corrected) external rework station low-level design LLD changes LLD increments (to be released) store station internal rework station Figure 2 Higher abstraction level of the LLD activity The main service stations are the "work station", the "external rework station", the "internal rework station" and the "review station". The work station simulates the development of the low-level design on the basis of the received highlevel design. Depending on the received HLD changes, and HLD increments, the external rework station simulates the modification of the already released low-level design, and yields the corresponding output artifacts (LLD changes and LLD increments). Similarly, on the basis of the received HLD corrections reports and LLD defects reports, the internal rework station simulates the correction of the released low-level design, and yields the corresponding LLD corrections reports. Finally, the review station simulates the review performed on the low-level design, on the LLD changes, and on the LLD increments. No review is performed on the LLD correction reports, assumed with no defects. In other words, it is assumed that no further defects (bad fixes) are injected during the correction activities performed by the internal rework station. The start, release and store stations in Figure 2 are assumed to be zero service-time stations, since they perform co-ordination activities only. 7

8 The start station takes care of routing the input artifact to the appropriate service station. Although a simple FIFO queueing discipline has been used, other solutions could be adopted to implement more sophisticated managerial policies. For example, defects and correction reports could be given a higher priority than changes and increments, by employing a priority queueing discipline. The release station and the store station take care of the release of the artifacts. The low-level design, the LLD changes and the LLD increments are released by the release station only if no defects have been found by the review station. On the contrary, the release station creates the corresponding defects reports (e.g. SP, HLD and LLD defects reports), feeding them back to the activities responsible for the defects (i.e. SP, HLD, LLD), and sends the faulty artifacts to the store station. Here they are held until all the LLD corrections reports corresponding to the released defects reports will be received (i.e. the faulty artifacts will be corrected). Also in this case different managerial policies could be implemented. For example, a decision could be made to release the faulty artifacts without waiting for them to be corrected. As example of the testing activities, Figure 3 illustrates the queueing network used to model the AT activity. The main service stations are the "work testing station", and the "external rework testing station". AT code defects reports (to previous activities) acceptance-tested code AT code changes AT code increments AT code corrections reports system-tested code ST code changes start station ST code increments St code corrections reports work testing station release station acceptance-tested code, changes and increments (to be corrected) external rework testing station acceptance-tested code, changes and increments (to be released) store station Figure 3 - Higher abstraction level of the AT activity The work testing station simulates the acceptance testing of the system-tested code, whereas the external rework testing station simulates the acceptance testing of the system-tested code changes and increments. Again, the system-tested corrections reports are assumed without defects. The start, 8

9 release and store stations are similar to the homonymous ones in Figure 2. The higher abstraction level of the entire process is illustrated in Figure 4, where the queueing networks used to model the various activities have been connected according to Figure 1, with some details left out for the sake of clarity. requirements, changes and increments SP HLD LLD IMP ST AT AT-tested code, changes and increments Figure 4 Higher abstraction level of the process By exploiting the queueing network graphical representativeness, the higher abstraction level provides 9

10 a high visibility of the modeled process and corresponding managerial policies, improving early verification and validation of the built model The lower abstraction level At the lower abstraction level the analytical and the continuous modeling methods are used. Here the dynamic behavior of the service stations previously introduced is modeled by an analytical averagetype function, or by a continuous type time-varying function, or, more likely, by a combination thereof. In particular, for each station a set of functions is adopted, suitable to express the aspects of the software process to investigate (e.g. delivery time, effort, personnel, defect density, etc.). Such a set can be easily enriched, updated or changed depending on the maturity level of the particular context, on its evolution, and on the model s goals. The functions used by the service stations in this paper model can be grouped into some broad categories: 1) COCOMO-like functions, to estimate the size of the output artifacts on the basis of the size of the input ones; 2) COCOMO-like functions, to estimate the effort and the delivery time required to perform the corresponding tasks; 3) reliability growth models, to represent the testing defect pattern in the work testing station and external rework testing station of the testing activities; 4) the Rayleigh model, to shape the effort density of the work station of the development activities (a constant function is assumed for all the other stations); 5) other functions, obtained from empirical observations in research and industrial environments [12, 13], to model the defect generation within the work station and external rework station of the development activities, and the defect removal effectiveness of the review stations. Such functions are rather simplistic and mainly used to provide a flavor of the described approach. However, the model could be easily customized to accommodate more sophisticated models that better fit the real organization behavior. For the sake of brevity only the functions used by the work station of the LLD activity (Figure 2) are presented. Further details can be found in [14, 15]. The LLD work station simulates the development of the low-level design, starting from the highlevel design, as shown in Figure 5. 10

11 0,39W staff staff E(t) T time high-level design size: HLD_size effort: W HLD defectiveness: [D SP, D HLD, 0, 0, 0] work station low-level design size: LLD_size effort: W HLD + 0,39W defectiveness: [D SP, D HLD, ID, 0, 0] Figure 5 Lower abstraction level of the work station The artifacts are described by a set of three attributes: size, total development effort and defectiveness. Size is of immediate evidence, and, according to [13], it is expressed in high-level design units, for the high-level design artifact, and in low-level design units, for the low-level design artifact. The defectiveness attribute is described by an array whose j-th element is the amount of defects injected into the artifact by the j-th development activity (j = SP, HLD, LLD, IMP). For example, the defectiveness of the high-level design is given by D= [DSP, DHLD, 0, 0], where DSP (or DHLD) is the amount of defects injected into the artifact by the SP (or HLD) activity. The effort attribute is the effort that has been spent to develop the artifact itself since the beginning of the process. Thus, it encompasses also the effort spent to develop all the artifacts from which it has been derived. On the basis of the size, effort and defectiveness attributes of the input artifact, the work station computes the corresponding attributes of the output artifact, besides the delivery time (or station service time), T, and the required personnel over time, E(t), as illustrated in Figure 5. Such quantities may have random deviations, and are therefore simulated according to gaussian-like probability distributions. More in detail, the average size of the low-level design is first derived from the size of the high-level design by use of COCOMO-like size estimator: b average _ LLD _ size = a _ 1 1 HLD size + c 1 The corresponding random low-level design size (LLD_size) is then obtained by use of a gaussian-like 11

12 pseudo-random generator. The COCOMO-like time and effort estimators: b T = a _ 2 2 LLD size + c 2 b3 W = a 3 LLD _ size + c 3 are then used to compute the random delivery time (T), and the random development effort (W). On the basis of T and W, the instantaneous staff level (E(t)), necessary to produce the low-level design artifact, is computed by use of the Rayleigh model, supported by a large amount of current literature and by marketed prediction tool as SLIM [3]: t E(t) = W 2 T 2 t 2T 2 e Unlimited staff availability is assumed. In other words, it is assumed that the organization can always supply the personnel necessary to fit the E(t) curve demand for personnel. The model, however, can easily accept more realistic assumptions on finite staff conditions. According to Putnam's assumption [3], the output artifact is released at time T, that is when the staff level E(t) reaches its peak. Thus the work station takes 0,39W (i.e. the E(t) integral up to T) as the development effort to yield the low-level design. This value (0,39W) is then added to the effort of the high-level design (WHLD) to obtain the corresponding attribute of the low-level design (WHLD + 0,39W). The development sub-activity is error prone, so some defects may be injected (injected defects, ID) into the low-level design, according to a given defect density (defects per unit of size, DD). Quantity ID is obtained by multiplying the random low-level design size (LLD_size) times the defect density, DD: ID = LLD _ size DD Defect density is a parameter the simulator uses to summarize the effects of various factors (personnel skill, team structure, supporting tools, programming language, product type, etc) on the defectiveness of a given development activity. More elaborate defect injection models could be easily accepted, as for example models in [16]. 12

13 4. Example application of the Model In this section, the two-level simulation model introduced above is applied to compare two possible software development scenarios. In both scenarios, the simulator consists of the higher level component, graphically illustrated in Figure 4, and of a series of lower level components, each of them describing a service station, as, for example, graphically illustrated in Figure 5 for the work-type station. In such a way, the lower level staffing profile, effort and size estimation models are embedded within the service stations of the higher level. In the first scenario a stable set of requirements is assumed. That is, it is assumed that the initial requirements do not change during the product development. In the second scenario, a certain amount of instability in the requirements is simulated, by allowing the user to add new requirements, or change some of the old ones. In particular, an increment of 15% and a change of 20% of the initial requirements during the product development are simulated. The process attributes taken into account are effort (W), delivery time (T), productivity (P), rework percentage (RWK), product defect density (DFD) and some sub-attributes thereof (final product size, process staffing profile, staffing profile over single activities, defects pattern, etc.). In order to simulate the first scenario, a requirements artifact of 1500 Function Points is fed in input to the process model. Simulation results give a final software product size of 116 KLOC and the following process attributes values: W = 500 person-weeks; T = 68 weeks; P = 6.3 LOC/person-hour; RWK = 17%; DFD = 0.9 defects/kloc. Figure 6 illustrates the dynamics of the personnel during the development. In particular, it shows both the staffing profiles for all the single process activities (SP, HLD, LLD, IMP, ST and AT), and for the entire project. 13

14 15 staff E(t) SP HLD LLD IM P ST AT project week Figure 6 Staffing profile in case of stable requirements In the second scenario, the user may both add new requirements, and change some of the previous ones, by feeding requirements increments and changes artifacts. In particular, increments and changes are regularly fed into the process, to simulate a continuous requirements increment and change activity. Over the development time, the requirements growths from the initial amount of 1500FP to an amount of 1500FP+20%, while the 15% of the initial requirements are changed staff E(t) 9 6 stable unstable week Figure 7 Effects of requirements instability on the staffing profile Figure 7 illustrates the effects of such instability over the staffing profile. The profiles are similar in the two scenarios at the beginning of the project and diverge when the effects of the new and changed requirements increase. 14

15 The effects of requirements instability over the main process attributes are instead summarized in Figure 8, where they are compared with the corresponding attributes obtained in case of stable requirements. The model results show that a substantial increase of effort (W) and delivery time (T) is introduced, of the 38% and the 60%, respectively. This can be partly explained by considering the rework effort needed to deal with the changed and new requirements (the size of the final product is 125 KLOC now), and partly by considering the effort required to detect and remove the further defects injected. In fact, due to requirements instability, the rework percentage has more than doubled (a 150% increase), the productivity has clearly dropped (a 21% decrease), and the defect density of the final product has increased (a 66% increase). 100% 80% 60% 40% 20% 0% Size W T P RWK DFD stable unstable Figure 8 - Effects of requirements instability upon process attributes Figure 9 details the components of the effort that play a significant role in differentiating the two scenarios. In particular, Figure 9 compares the amount of effort spent in fixing defects (internal rework stations), in dealing with new and changed requirements (external rework stations), and in detecting defects (review and work testing stations). Requirements instability yields a 210 person-weeks of external rework, and a clear increase of review (20%), testing (17%), and internal rework (18%) effort. 15

16 effort W internal rework external rework review testing stable unstable Figure 9 Details about the effort components It is worth noting that the model can be easily adapted to provide more information about the activities necessary to deal with new and changed requirements, for example by substituting each external rework station with two separate stations, one for the changes and one for the increments. Finally, the model allows us to analyze the reasons behind the increment of the final product defect density (DFD) experimented in case of unstable requirements or, in other terms, at what extend the defect detection process is hindered by the requirements instability. d e f e c t s SP HLD LLD IMP ST AT unfound unstable stable Figure 10 - Effects of requirements instability upon the defect detection pattern 16

17 The defects detection patterns for the two scenarios are compared in Figure 10. For each scenario, Figure 10 shows the amount of defects revealed by the review stations of the development activities (SP, HLD, LLD and IMP), by the rework and internal rework stations of the testing activities (ST and AT), and the amount of defects of the final product (i.e. unfound defects). By comparing the amounts of found and unfound defects in Figure 10, it can be inferred that requirements instability reduces the process total defect removal effectiveness, bringing it down to a value 89% from an initial value of 95%. The above-described application is only one of the possible ones of the model. Besides providing support to deal with requirements instability, the model can in fact be applied, for example, to study and compare the effects that different defect detection policies can have on the process behavior [17]. 5. Model Validation Validation is obtaining a good level of confidence in the representativeness of the simulation model against real-life situations. To validate the simulation model, experiments are to be carried out to reproduce empirically known facts in the simulation experiment. Many experiments have been carried out to validate the model. The one this paper presents consists in reproducing the effects of a specific defect detection policy on the process performance. The experimented policy is the defect detection policy known as find as much as early as possible. It is empirically known that such a policy improves the process delivery time (T), effort (W), productivity (P) and rework percentage (RWK). If the simulation model reproduces such improvements, we get better confidence in its representativeness of real-life situations. For the sake of conciseness, the software development scenario with stable requirements is used, in other words, as said above, the scenario in which the size of the initial requirements (1500 Function Points) does not change during product development. The validation experiment consists in studying the effects of three different defect detection policies (P1, P2 and P3). The three policies are characterized by different allocations of the defect detection 17

18 resources along the life cycle, however yielding the same final product quality (simply measured in product defect density, DFD). Such allocations are simulated by introducing 3 different levels of defect detection effectiveness (DDE) for the process defect detection activities (SP-review, HLD-review, LLD-review, IMP-review, ST and AT). To this purpose, DDE is used as a model input variable (expressed in terms of percentage of removed defects) for the review and testing stations in Figures 2 and 3 to simulate their detection effectiveness. In summary, it is assumed that in P1 (or Early Detection policy) the DDEs are higher in the initial activities of the lifecycle, in P2 (or Middle Detection policy) the DDEs are higher in the middle activities of the lifecycle, in P3 (or Late Detection policy), the DDEs are higher in the final activities of the lifecycle. Comparison is made by analyzing how the values of the process attributes W, T, P, and RWK (DFD is constant) change from P1 to P2 to P3. Figure 11 compares the staffing profiles obtained by simulation for the Early and Late Detection policies. They confirm the empirically known facts that when the Early Detection policy is applied a reduction of delivery time (T) and effort (W), represented by the area under the curve, is obtained. 12 staff E(t) early late week Figure 11 Staffing profiles for the Early Detection and Late policies 18

19 100% 80% 60% P1 - Early P2 - Middle P3 - Late 40% 20% 0% W T P RW K DFD Figure 12- Comparison of process attributes for Early, Middle and Late policies To further illustrate this point, Figure 12 has been obtained, which gives a synthetic view of the normalized values of the process effectiveness factors for all the 3 policies (P1, P2, and P3). It can be seen that moving from the Early to the Late Detection policy, the effort (W), the delivery time (T) and the rework percentage (RWK) increase, whereas the productivity (P) decreases. As assumed, the final product quality (DFD) at the lifecycle conclusion is the same for the three policies. 6. Conclusions In general, simulation results show that the use of the model can stimulate debate, and provide both qualitative and quantitative suggestions on the ways to change the software process to improve its quality, or to achieve specific organizational goals. In turn, the application of the proposed modeling approach shows that it provides a powerful method to accurately model and analyze software processes, helping in bridging the gap between modelers and process experts. The software process is described in terms of highly representative graphical models (queuing networks), providing a better visibility of the modeled process, of its operational environment and managerial policies, whereas the component activities are described in terms of well known analytical and continuous models, easily and quickly updateable. The produced models are highly flexible, being easily adaptable to the characteristics and the maturity level of the production environment, and updateable to follow its evolution (as advocated by such software process improvement methods as the Capability Maturity Model or the Quality Improvement Paradigm). 19

20 Plan for future work includes the application of the modeling method to less conventional process paradigms, such as the spiral paradigm and the concurrent engineering paradigm. 7. References [1] Albrecht, A.J. Measuring application development productivity, Proceedings of IBM Application development Joint SHARE/GUIDE Symposium, Monterey, CA, [2] Bohem, B.W. Software Engineering Economics. Prentice-Hall, N.J., [3] Putnam, L.H. and W. Meyer. Measures for Excellence: Reliable Software on Time within Budget. Prentice-Hall, N.J., [4] Fenton, N.E., and Pfleeger S.H. Software Metrics: A Rigorous and Practical Approach. International Thomson Computer Press, UK, [5] Hansen, G.A. "Simulating Software Development Processes", Computer, pp 73-77, IEEE, January [6] Abdel-Hamid, T.K. and S.E. Madnick. Software Project Dynamics: An Integrated Approach. Prentice- Hall, Englewood Cliffs, N.J., [7] Rus, I., J. Collofello, and P. Lakey. Software Process Simulation for Reliability Strategy Assessment, International Workshop on Software Process Simulation Modeling (ProSim'98), Silver Falls, Oregon, June [8] Calavaro, G.F.,Basili V.R., Iazeolla G. "Simulation Modeling of Software Development Process", Proceedings of the 7th European Simulation Symposium, Erlangen-Nuremberg, GE, October [9] Martin, R.H., D. Raffo. "A model of the Software Development Process Using bith Continuous and Discrete Models", International Journal of Software Process Improvement and Practice (to appear). [10] simulation literature cost/benefit of hybrid modelling [11] SIMULOG. QNAP 2 User Guide ver Simulog, [12] Kan, S. H. Metrics and Models in Software Quality Engineering. Addison-Wesley Publishing Company, MA, [13] SEL Software Process Improvement Guidebook, Software Engineering Laboratory Series, NASA-GSFC, Greenbelt, MD [14] Donzelli, P. and Iazeolla G. A multi-level hybrid approach to model software development processes, Proceedings of 9th European Simulation Symposium Simulation, Passau, Germany, October [15] Donzelli, P. and Iazeolla G. Performance Modelling of Software Development Processes, Proceedings of 8th European Simulation Symposium Simulation, pp , Genova, Italy, October [16] Stutzke M., Agrawal M., Smidts C. "A stochastic model of human error during software development", Proceedings of the combined 9th European Software Control and Metrics Conference and the 5th conference for the European Network of Clubs for Reliability and Safety of Software, pp , Roma, Italy, May 27-29, [17] Donzelli, P. and Iazeolla G. A Software Process Simulator for Software Product and Process Improvement, Proceedings of the International Conference on Product Focused Software Process Improvement (Profes 99), Oulu, Finland, June 22-24, Author Biographies PAOLO DONZELLI is an Advisor with the Department of Informatics, Telecommunications and Statistics of the Office of the Prime Minister, Rome, Italy. Formerly, he served as an engineering officer with the Italian Air Force, and then he was with Cranfield University (UK), as senior research fellow. Dr Donzelli received a doctorate Laurea degree from the University of Naples Federico II (Italy), a MSc degree from the Cranfield University (UK), and a PhD degree from the University of Rome at Tor Vergata (Italy). His research interests 20

21 include software process improvement, requirements engineering and business process modelling. GIUSEPPE IAZEOLLA is full professor of Computer Science, Software Engineering Chair, Faculty of Engineering, University of Roma at TorVergata, Italy. His research is in the areas of software engineering and information system engineering, in relation to system performance and dependability modeling and validation. 21

Hybrid Simulation Modelling of the Software Process

Hybrid Simulation Modelling of the Software Process Hybrid Simulation Modelling of the Software Process Paolo Donzelli and Giuseppe Iazeolla Laboratory for Computer Science and CERTIA Research Center * University of Rome "TorVergata" Roma, Italy donzelli,iazeolla@info.uniroma2.it

More information

An Approach to a Hybrid Software Process Simulation using the DEVS Formalism

An Approach to a Hybrid Software Process Simulation using the DEVS Formalism SOFTWARE PROCESS IMPROVEMENT AND PRACTICE Softw. Process Improve. Pract. 2006; 11: 373 383 Published online 12 June 2006 in Wiley InterScience (www.interscience.wiley.com) DOI: 10.1002/spip.284 An Approach

More information

A Software Development Simulation Model of a Spiral Process

A Software Development Simulation Model of a Spiral Process A Software Development Simulation Model of a Spiral Process ABSTRACT: There is a need for simulation models of software development processes other than the waterfall because processes such as spiral development

More information

A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management

A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management International Journal of Soft Computing and Engineering (IJSCE) A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management Jayanthi.R, M Lilly Florence Abstract:

More information

Optimizing IV&V Benefits Using Simulation

Optimizing IV&V Benefits Using Simulation Optimizing IV&V Benefits Using Simulation David M. Raffo, Ph.D. School of Business Administration Portland State University Motivation There is a critical need for cost effective IV&V Key Questions: What

More information

A System Dynamics Software Process Simulator for Staffing Policies Decision Support

A System Dynamics Software Process Simulator for Staffing Policies Decision Support A System Dynamics Software Process Simulator for Staffing Policies Decision Support Dr. James Collofello Dept. of Computer Science and Engineering Arizona State University Tempe, Arizona 85287-5406 (602)

More information

Hybrid Modeling of Test-and-Fix Processes in Incremental Development

Hybrid Modeling of Test-and-Fix Processes in Incremental Development He (Jason) Zhang, Ross Jeffery, and Liming Zhu Hybrid Modeling of Test-and-Fix Processes in Incremental Development - International Conference on Software Process 2008 Outline Introduction Hybrid process

More information

Feasibility of a Software Process Modeling Library based on MATLAB / Simulink

Feasibility of a Software Process Modeling Library based on MATLAB / Simulink Feasibility of a Software Process Modeling Library based on MATLAB / Simulink T. Birkhoelzer University of Applied Sciences Konstanz, Braunegger Str. 55, 7846 Konstanz, Germany, birkhoelzer@fh-kontanz.de

More information

Software project cost estimation using AI techniques

Software project cost estimation using AI techniques Software project cost estimation using AI techniques Rodríguez Montequín, V.; Villanueva Balsera, J.; Alba González, C.; Martínez Huerta, G. Project Management Area University of Oviedo C/Independencia

More information

Malay A. Dalal Madhav Erraguntla Perakath Benjamin. Knowledge Based Systems, Inc. (KBSI) College Station, TX 77840, U.S.A.

Malay A. Dalal Madhav Erraguntla Perakath Benjamin. Knowledge Based Systems, Inc. (KBSI) College Station, TX 77840, U.S.A. AN INTRODUCTION TO USING PROSIM FOR BUSINESS PROCESS SIMULATION AND ANALYSIS Malay A. Dalal Madhav Erraguntla Perakath Benjamin Knowledge Based Systems, Inc. (KBSI) College Station, TX 77840, U.S.A. ABSTRACT

More information

Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University

Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University Software Engineering Introduction & Background Department of Computer Science Kent State University Complaints Software production is often done by amateurs Software development is done by tinkering or

More information

Improving Software Project Management Skills Using a Software Project Simulator

Improving Software Project Management Skills Using a Software Project Simulator Improving Software Project Management Skills Using a Software Project Simulator Derek Merrill and James S. Collofello Department of Computer Science and Engineering Arizona State University Tempe, AZ 85287-5406

More information

Appendix: Dynamics of Agile Software Development Model Structure

Appendix: Dynamics of Agile Software Development Model Structure Appendix: Dynamics of Agile Software Development Model Structure This study was conducted within the context of a much broader research effort to study, gain insight into, and make predictions about the

More information

A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems

A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems Vincenzo Grassi Università di Roma Tor Vergata, Italy Raffaela Mirandola {vgrassi, mirandola}@info.uniroma2.it Abstract.

More information

Pragmatic Peer Review Project Contextual Software Cost Estimation A Novel Approach

Pragmatic Peer Review Project Contextual Software Cost Estimation A Novel Approach www.ijcsi.org 692 Pragmatic Peer Review Project Contextual Software Cost Estimation A Novel Approach Manoj Kumar Panda HEAD OF THE DEPT,CE,IT & MCA NUVA COLLEGE OF ENGINEERING & TECH NAGPUR, MAHARASHTRA,INDIA

More information

Bayesian Network Model of XP

Bayesian Network Model of XP BAYESIAN NETWORK BASED XP PROCESS MODELLING Mohamed Abouelela, Luigi Benedicenti Software System Engineering, University of Regina, Regina, Canada ABSTRACT A Bayesian Network based mathematical model has

More information

Simulation for Business Value and Software Process/Product Tradeoff Decisions

Simulation for Business Value and Software Process/Product Tradeoff Decisions Simulation for Business Value and Software Process/Product Tradeoff Decisions Raymond Madachy USC Center for Software Engineering Dept. of Computer Science, SAL 8 Los Angeles, CA 90089-078 740 570 madachy@usc.edu

More information

Simulating the Structural Evolution of Software

Simulating the Structural Evolution of Software Simulating the Structural Evolution of Software Benjamin Stopford 1, Steve Counsell 2 1 School of Computer Science and Information Systems, Birkbeck, University of London 2 School of Information Systems,

More information

A System Dynamics Software Process Simulator for Staffing Policies Decision Support

A System Dynamics Software Process Simulator for Staffing Policies Decision Support A System Dynamics Software Process Simulator for Staffing Policies Decision Support Dr. James Collofello Dept. of Computer Science and Engineering Arizona State University Tempe, Arizona 85287-5406 (602)

More information

A FLEXIBLE MODEL FOR MULTI-AGENT BASED SIMULATION OF SOFTWARE DEVELOPMENT PROCESS

A FLEXIBLE MODEL FOR MULTI-AGENT BASED SIMULATION OF SOFTWARE DEVELOPMENT PROCESS A FLEXIBLE MODEL FOR MULTI-AGENT BASED SIMULATION OF SOFTWARE DEVELOPMENT PROCESS Except where reference is made to the work of others, the work described in this dissertation is my own or was done in

More information

SIMPLIFIED PERFORMANCE MODEL FOR HYBRID WIND DIESEL SYSTEMS. J. F. MANWELL, J. G. McGOWAN and U. ABDULWAHID

SIMPLIFIED PERFORMANCE MODEL FOR HYBRID WIND DIESEL SYSTEMS. J. F. MANWELL, J. G. McGOWAN and U. ABDULWAHID SIMPLIFIED PERFORMANCE MODEL FOR HYBRID WIND DIESEL SYSTEMS J. F. MANWELL, J. G. McGOWAN and U. ABDULWAHID Renewable Energy Laboratory Department of Mechanical and Industrial Engineering University of

More information

Software Development and Testing: A System Dynamics Simulation and Modeling Approach

Software Development and Testing: A System Dynamics Simulation and Modeling Approach Software Development and Testing: A System Dynamics Simulation and Modeling Approach KUMAR SAURABH IBM India Pvt. Ltd. SA-2, Bannerghatta Road, Bangalore. Pin- 560078 INDIA. Email: ksaurab5@in.ibm.com,

More information

BPM and Simulation. A White Paper. Signavio, Inc. Nov 2013. Katharina Clauberg, William Thomas

BPM and Simulation. A White Paper. Signavio, Inc. Nov 2013. Katharina Clauberg, William Thomas BPM and Simulation A White Paper Signavio, Inc. Nov 2013 Katharina Clauberg, William Thomas Table of Contents 1. Executive Summary... 3 2. Setting the Scene for Process Change... 4 3. Identifying the Goals

More information

Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit

Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit Development models R. Kuiper and E.J. Luit 1 Introduction We reconsider the classical development models: the Waterfall Model [Bo76], the V-Model [Ro86], the Spiral Model [Bo88], together with the further

More information

BUSINESS RULES AS PART OF INFORMATION SYSTEMS LIFE CYCLE: POSSIBLE SCENARIOS Kestutis Kapocius 1,2,3, Gintautas Garsva 1,2,4

BUSINESS RULES AS PART OF INFORMATION SYSTEMS LIFE CYCLE: POSSIBLE SCENARIOS Kestutis Kapocius 1,2,3, Gintautas Garsva 1,2,4 International Conference 20th EURO Mini Conference Continuous Optimization and Knowledge-Based Technologies (EurOPT-2008) May 20 23, 2008, Neringa, LITHUANIA ISBN 978-9955-28-283-9 L. Sakalauskas, G.W.

More information

Optimal Resource Allocation for the Quality Control Process

Optimal Resource Allocation for the Quality Control Process Optimal Resource Allocation for the Quality Control Process Pankaj Jalote Department of Computer Sc. & Engg. Indian Institute of Technology Kanpur Kanpur, INDIA - 208016 jalote@cse.iitk.ac.in Bijendra

More information

Software Metrics: Roadmap

Software Metrics: Roadmap Software Metrics: Roadmap By Norman E. Fenton and Martin Neil Presentation by Karim Dhambri Authors (1/2) Norman Fenton is Professor of Computing at Queen Mary (University of London) and is also Chief

More information

WebSphere Business Modeler

WebSphere Business Modeler Discovering the Value of SOA WebSphere Process Integration WebSphere Business Modeler Workshop SOA on your terms and our expertise Soudabeh Javadi Consulting Technical Sales Support WebSphere Process Integration

More information

Integrated Modeling of Business Value and Software Processes

Integrated Modeling of Business Value and Software Processes Integrated Modeling of Business Value and Software Processes Raymond Madachy, USC Center for Software Engineering Department of Computer Science, SAL 8 University of Southern California Los Angeles, CA

More information

A Comparison of Software Cost, Duration, and Quality for Waterfall vs. Iterative and Incremental Development: A Systematic Review

A Comparison of Software Cost, Duration, and Quality for Waterfall vs. Iterative and Incremental Development: A Systematic Review A Comparison of Software Cost, Duration, and Quality for Waterfall vs. Iterative and Incremental Development: A Systematic Review Susan M. Mitchell and Carolyn B. Seaman Information Systems Department,

More information

A Comparison of System Dynamics (SD) and Discrete Event Simulation (DES) Al Sweetser Overview.

A Comparison of System Dynamics (SD) and Discrete Event Simulation (DES) Al Sweetser Overview. A Comparison of System Dynamics (SD) and Discrete Event Simulation (DES) Al Sweetser Andersen Consultng 1600 K Street, N.W., Washington, DC 20006-2873 (202) 862-8080 (voice), (202) 785-4689 (fax) albert.sweetser@ac.com

More information

Using Design of Experiments, Sensitivity Analysis, and Hybrid Simulation to Evaluate Changes to a Software Development Process: A Case Study

Using Design of Experiments, Sensitivity Analysis, and Hybrid Simulation to Evaluate Changes to a Software Development Process: A Case Study Using Design of Experiments, Sensitivity Analysis, and Hybrid Simulation to Evaluate Changes to a Software Development Process: A Case Study Wayne Wakeland Systems Science Ph.D. Program, Portland State

More information

Quantitative Quality Management through Defect Prediction and Statistical Process Control Τ

Quantitative Quality Management through Defect Prediction and Statistical Process Control Τ Quantitative Quality Management through Defect Prediction and Statistical Process Control Τ Pankaj Jalote, K. Dinesh, S. Raghavan, M. R. Bhashyam, M. Ramakrishnan Infosys Technologies Ltd. Summary: To

More information

Simulating Software Projects An Approach for Teaching Project Management

Simulating Software Projects An Approach for Teaching Project Management Simulating Software Projects An Approach for Teaching Project Management P. Mandl-Striegnitz 1, A. Drappa 1, H. Lichter 2 1 University of Stuttgart, Stuttgart, Germany 2 Aachen University of Technology,

More information

Software Cost Estimation: A Tool for Object Oriented Console Applications

Software Cost Estimation: A Tool for Object Oriented Console Applications Software Cost Estimation: A Tool for Object Oriented Console Applications Ghazy Assassa, PhD Hatim Aboalsamh, PhD Amel Al Hussan, MSc Dept. of Computer Science, Dept. of Computer Science, Computer Dept.,

More information

Domain Analysis for the Reuse of Software Development Experiences 1

Domain Analysis for the Reuse of Software Development Experiences 1 Domain Analysis for the Reuse of Software Development Experiences 1 V. R. Basili*, L. C. Briand**, W. M. Thomas* * Department of Computer Science University of Maryland College Park, MD, 20742 USA ** CRIM

More information

Evaluating the Use of System Dynamics Models in Software Project Management

Evaluating the Use of System Dynamics Models in Software Project Management Evaluating the Use of System Dynamics Models in Software Project Management MÁRCIO DE OLIVEIRA BARROS CLÁUDIA MARIA LIMA WERNER GUILHERME HORTA TRAVASSOS COPPE / UFRJ Computer Science Department Caixa

More information

On Project Management Scheduling where Human Resource is a Critical Variable 1

On Project Management Scheduling where Human Resource is a Critical Variable 1 On Project Management Scheduling where Human Resource is a Critical Variable 1 Valentina Plekhanova Macquarie University, School of Mathematics, Physics, Computing and Electronics, Sydney, NSW 2109, Australia

More information

The purpose of Capacity and Availability Management (CAM) is to plan and monitor the effective provision of resources to support service requirements.

The purpose of Capacity and Availability Management (CAM) is to plan and monitor the effective provision of resources to support service requirements. CAPACITY AND AVAILABILITY MANAGEMENT A Project Management Process Area at Maturity Level 3 Purpose The purpose of Capacity and Availability Management (CAM) is to plan and monitor the effective provision

More information

VoIP Network Dimensioning using Delay and Loss Bounds for Voice and Data Applications

VoIP Network Dimensioning using Delay and Loss Bounds for Voice and Data Applications VoIP Network Dimensioning using Delay and Loss Bounds for Voice and Data Applications Veselin Rakocevic School of Engineering and Mathematical Sciences City University, London, UK V.Rakocevic@city.ac.uk

More information

CHAPTER 7 Software Configuration Management

CHAPTER 7 Software Configuration Management CHAPTER 7 Software Configuration Management ACRONYMS CCB CM FCA MTBF PCA SCCB SCI SCM SCMP SCR SCSA SEI/CMMI SQA SRS USNRC INTRODUCTION Configuration Control Board Configuration Management Functional Configuration

More information

C. Wohlin, "Managing Software Quality through Incremental Development and Certification", In Building Quality into Software, pp. 187-202, edited by

C. Wohlin, Managing Software Quality through Incremental Development and Certification, In Building Quality into Software, pp. 187-202, edited by C. Wohlin, "Managing Software Quality through Incremental Development and Certification", In Building Quality into Software, pp. 187-202, edited by M. Ross, C. A. Brebbia, G. Staples and J. Stapleton,

More information

PROCESS OF MOVING FROM WATERFALL TO AGILE PROJECT MANAGEMENT MODEL

PROCESS OF MOVING FROM WATERFALL TO AGILE PROJECT MANAGEMENT MODEL PROCESS OF MOVING FROM WATERFALL TO AGILE PROJECT MANAGEMENT MODEL Sanja Vukićević 1, Dražen Drašković 2 1 Faculty of Organizational Sciences, University of Belgrade, vukicevicsanja@yahoo.com 2 Faculty

More information

Exact Fill Rates for the (R, S) Inventory Control with Discrete Distributed Demands for the Backordering Case

Exact Fill Rates for the (R, S) Inventory Control with Discrete Distributed Demands for the Backordering Case Informatica Economică vol. 6, no. 3/22 9 Exact Fill ates for the (, S) Inventory Control with Discrete Distributed Demands for the Backordering Case Eugenia BABILONI, Ester GUIJAO, Manuel CADÓS, Sofía

More information

Inthe25yearssinceTheMythicalMan-Monthwhathavewelearned about project management?

Inthe25yearssinceTheMythicalMan-Monthwhathavewelearned about project management? Information and Software Technology 41(1999) 1021 1026 www.elsevier.nl/locate/infsof Inthe25yearssinceTheMythicalMan-Monthwhathavewelearned about project management? J.M. Verner*, S.P. Overmyer, K.W. McCain

More information

Section A. Index. Section A. Planning, Budgeting and Forecasting Section A.2 Forecasting techniques... 1. Page 1 of 11. EduPristine CMA - Part I

Section A. Index. Section A. Planning, Budgeting and Forecasting Section A.2 Forecasting techniques... 1. Page 1 of 11. EduPristine CMA - Part I Index Section A. Planning, Budgeting and Forecasting Section A.2 Forecasting techniques... 1 EduPristine CMA - Part I Page 1 of 11 Section A. Planning, Budgeting and Forecasting Section A.2 Forecasting

More information

(Refer Slide Time: 01:52)

(Refer Slide Time: 01:52) Software Engineering Prof. N. L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture - 2 Introduction to Software Engineering Challenges, Process Models etc (Part 2) This

More information

Reaching CMM Levels 2 and 3 with the Rational Unified Process

Reaching CMM Levels 2 and 3 with the Rational Unified Process Reaching CMM Levels 2 and 3 with the Rational Unified Process Rational Software White Paper TP174 Table of Contents INTRODUCTION... 1 LEVEL-2, REPEATABLE... 3 Requirements Management... 3 Software Project

More information

Finally, Article 4, Creating the Project Plan describes how to use your insight into project cost and schedule to create a complete project plan.

Finally, Article 4, Creating the Project Plan describes how to use your insight into project cost and schedule to create a complete project plan. Project Cost Adjustments This article describes how to make adjustments to a cost estimate for environmental factors, schedule strategies and software reuse. Author: William Roetzheim Co-Founder, Cost

More information

AS-D2 THE ROLE OF SIMULATION IN CALL CENTER MANAGEMENT. Dr. Roger Klungle Manager, Business Operations Analysis

AS-D2 THE ROLE OF SIMULATION IN CALL CENTER MANAGEMENT. Dr. Roger Klungle Manager, Business Operations Analysis AS-D2 THE ROLE OF SIMULATION IN CALL CENTER MANAGEMENT Dr. Roger Klungle Manager, Business Operations Analysis AAA Michigan 1 Auto Club Drive Dearborn, MI 48126 U.S.A. Phone: (313) 336-9946 Fax: (313)

More information

ISO, CMMI and PMBOK Risk Management: a Comparative Analysis

ISO, CMMI and PMBOK Risk Management: a Comparative Analysis ISO, CMMI and PMBOK Risk Management: a Comparative Analysis Cristine Martins Gomes de Gusmão Federal University of Pernambuco / Informatics Center Hermano Perrelli de Moura Federal University of Pernambuco

More information

On Multi Agent Based Simulation of Software Development Processes

On Multi Agent Based Simulation of Software Development Processes On Multi Agent Based Simulation of Software Development Processes Tham Wickenberg and Paul Davidsson Department of Software Engineering and Computer Science, Blekinge Institute of Technology Soft Center,

More information

Software Maintenance Capability Maturity Model (SM-CMM): Process Performance Measurement

Software Maintenance Capability Maturity Model (SM-CMM): Process Performance Measurement Software Maintenance Capability Maturity Model 311 Software Maintenance Capability Maturity Model (SM-CMM): Process Performance Measurement Alain April 1, Alain Abran 2, Reiner R. Dumke 3 1 Bahrain telecommunications

More information

Training Software Development Project Managers with a Software Project Simulator

Training Software Development Project Managers with a Software Project Simulator Master of Science Thesis Proposal Department of Computer Science and Engineering Arizona State University Training Software Development Project Managers with a Software Project Simulator Prepared by Derek

More information

A STUDY OF THE BEHAVIOUR OF THE MOBILE AGENT IN THE NETWORK MANAGEMENT SYSTEMS

A STUDY OF THE BEHAVIOUR OF THE MOBILE AGENT IN THE NETWORK MANAGEMENT SYSTEMS A STUDY OF THE BEHAVIOUR OF THE MOBILE AGENT IN THE NETWORK MANAGEMENT SYSTEMS Tarag Fahad, Sufian Yousef & Caroline Strange School of Design and Communication Systems, Anglia Polytechnic University Victoria

More information

Software Project Level Estimation Model Framework based on Bayesian Belief Networks

Software Project Level Estimation Model Framework based on Bayesian Belief Networks Software Project Level Estimation Model Framework based on Bayesian Belief Networks Hao Wang Siemens Ltd. China CT SE Beijing, China wanghao@siemens.com Fei Peng Siemens Ltd. China CT SE Beijing, China

More information

Composite performance measures in the public sector Rowena Jacobs, Maria Goddard and Peter C. Smith

Composite performance measures in the public sector Rowena Jacobs, Maria Goddard and Peter C. Smith Policy Discussion Briefing January 27 Composite performance measures in the public sector Rowena Jacobs, Maria Goddard and Peter C. Smith Introduction It is rare to open a newspaper or read a government

More information

Utilization of Statistical Process Control in Defined Level Software Companies to Manage Processes Using Control Charts with Three Sigma

Utilization of Statistical Process Control in Defined Level Software Companies to Manage Processes Using Control Charts with Three Sigma Proceedings of the World Congress on Engineering and Computer Science 00 Vol I WCECS 00, October 0-, 00, San Francisco, USA Utilization of Statistical Process Control in Defined Level Software Companies

More information

The Challenge of Productivity Measurement

The Challenge of Productivity Measurement Proceedings: Pacific Northwest Software Quality Conference, 2006 The Challenge of Productivity Measurement David N. Card Q-Labs, Inc dca@q-labs.com Biography- David N. Card is a fellow of Q-Labs, a subsidiary

More information

Requirements Volatility in Software Development Process

Requirements Volatility in Software Development Process International Journal of Soft Computing and Engineering (IJSCE) ISSN: 2231-2307, Volume-2, Issue-4, September 2012 Requirements Volatility in Software Development Process M.P.Singh, Rajnish Vyas Abstract-

More information

Mathematical Modeling and Engineering Problem Solving

Mathematical Modeling and Engineering Problem Solving Mathematical Modeling and Engineering Problem Solving Berlin Chen Department of Computer Science & Information Engineering National Taiwan Normal University Reference: 1. Applied Numerical Methods with

More information

SOFTWARE ENGINEERING IT 0301 Semester V B.Nithya,G.Lakshmi Priya Asst Professor SRM University, Kattankulathur

SOFTWARE ENGINEERING IT 0301 Semester V B.Nithya,G.Lakshmi Priya Asst Professor SRM University, Kattankulathur SOFTWARE ENGINEERING IT 0301 Semester V B.Nithya,G.Lakshmi Priya Asst Professor SRM University, Kattankulathur School of Computing, Department of IT 1 2 Process What is it? A series of predictable steps

More information

A Project Management Approach to Using Simulation for Cost Estimation on. Large, Complex Software Development Projects

A Project Management Approach to Using Simulation for Cost Estimation on. Large, Complex Software Development Projects A Project Management Approach to Using Simulation for Cost Estimation on Large, Complex Software Development Projects Abstract: It is very difficult for project managers to develop accurate cost and schedule

More information

Project Planning and Project Estimation Techniques. Naveen Aggarwal

Project Planning and Project Estimation Techniques. Naveen Aggarwal Project Planning and Project Estimation Techniques Naveen Aggarwal Responsibilities of a software project manager The job responsibility of a project manager ranges from invisible activities like building

More information

A Configuration Management Model for Software Product Line

A Configuration Management Model for Software Product Line A Configuration Management Model for Software Product Line Liguo Yu 1 and Srini Ramaswamy 2 1 Computer Science and Informatics Indiana University South Bend South Bend, IN 46634, USA ligyu@iusb.edu 2 Computer

More information

Software Quality Assurance Software Inspections and Reviews

Software Quality Assurance Software Inspections and Reviews Software Quality Assurance Software Inspections and Reviews Contents Definitions Why software inspections? Requirements for inspections Inspection team Inspection phases 2 Definitions Manual quality assurance

More information

Software Management by Numbers

Software Management by Numbers Software Management by Numbers Towards an Engineering Discipline SE CURE AG (www.se cure.ch) Dr. Hans Sassenburg T +41 33 733 4682 M +41 79 231 6600 E hsassenburg@se cure.ch SE-CURE AG 1 Contents 1. Software

More information

How To Manage A Call Center

How To Manage A Call Center THE ROLE OF SIMULATION IN CALL CENTER MANAGEMENT Roger Klungle AAA Michigan Introduction With recent advances in technology and the changing nature of business, call center management has become a rapidly

More information

Knowledge Infrastructure for Project Management 1

Knowledge Infrastructure for Project Management 1 Knowledge Infrastructure for Project Management 1 Pankaj Jalote Department of Computer Science and Engineering Indian Institute of Technology Kanpur Kanpur, India 208016 Jalote@iitk.ac.in Abstract In any

More information

A Review of the Impact of Requirements on Software Project Development Using a Control Theoretic Model

A Review of the Impact of Requirements on Software Project Development Using a Control Theoretic Model J. Software Engineering & Applications, 2010, 3, 852-857 doi:10.4236/jsea.2010.39099 Published Online September 2010 (http://www.scirp.org/journal/jsea) A Review of the Impact of Requirements on Software

More information

CMMI STANDARDS IN SOFTWARE DEVELOPING PROCESS

CMMI STANDARDS IN SOFTWARE DEVELOPING PROCESS CMMI STANDARDS IN SOFTWARE DEVELOPING PROCESS 1 2 C. SenthilMurugan, Dr. S. Prakasam. PhD Scholar Asst., Professor 1,2 Dept of Computer Science & Application, SCSVMV University, Kanchipuram 1 Dept of MCA,

More information

Fuzzy Cognitive Map for Software Testing Using Artificial Intelligence Techniques

Fuzzy Cognitive Map for Software Testing Using Artificial Intelligence Techniques Fuzzy ognitive Map for Software Testing Using Artificial Intelligence Techniques Deane Larkman 1, Masoud Mohammadian 1, Bala Balachandran 1, Ric Jentzsch 2 1 Faculty of Information Science and Engineering,

More information

Measuring and Managing In-process Software Quality Stephen H. Kan IBM Rochester, Minnesota USA skan@us.ibm.com

Measuring and Managing In-process Software Quality Stephen H. Kan IBM Rochester, Minnesota USA skan@us.ibm.com Measuring and Managing In-process Software Quality Stephen H. Kan IBM Rochester, Minnesota USA skan@us.ibm.com Abstract Using in-process metrics to determine the quality status of a software project under

More information

A Case Study Research on Software Cost Estimation Using Experts Estimates, Wideband Delphi, and Planning Poker Technique

A Case Study Research on Software Cost Estimation Using Experts Estimates, Wideband Delphi, and Planning Poker Technique , pp. 173-182 http://dx.doi.org/10.14257/ijseia.2014.8.11.16 A Case Study Research on Software Cost Estimation Using Experts Estimates, Wideband Delphi, and Planning Poker Technique Taghi Javdani Gandomani

More information

Introduction to Engineering System Dynamics

Introduction to Engineering System Dynamics CHAPTER 0 Introduction to Engineering System Dynamics 0.1 INTRODUCTION The objective of an engineering analysis of a dynamic system is prediction of its behaviour or performance. Real dynamic systems are

More information

Reliability of a Commercial Telecommunications System

Reliability of a Commercial Telecommunications System Reliability of a Commercial Telecommunications System Mohamed Kaâniche and Karama Kanoun LAAS-CNRS 7, Avenue du Colonel Roche 77 Toulouse, France Abstract We analyze data collected on a commercial telecommunications

More information

Abstract. 1 Introduction

Abstract. 1 Introduction Amir Tomer Amir Tomer is the Director of Systems and Software Engineering Processes at RAFAEL Ltd., Israel,with whom he has been since 1982,holding a variety of systems and software engineering positions,both

More information

Risk Analysis: a Key Success Factor for Complex System Development

Risk Analysis: a Key Success Factor for Complex System Development Risk Analysis: a Key Success Factor for Complex System Development MÁRCIO DE O. BARROS CLÁUDIA M. L. WERNER GUILHERME H. TRAVASSOS COPPE / UFRJ Computer Science Department Caixa Postal: 68511 - CEP 21945-970

More information

Software Requirements Metrics Provide Leading Indicators in Measurement-Driven Dashboards for Large-Scale Systems

Software Requirements Metrics Provide Leading Indicators in Measurement-Driven Dashboards for Large-Scale Systems Software Requirements Metrics Provide Leading Indicators in Measurement-Driven Dashboards for Large-Scale Systems Richard W. Selby Head of Software Products, Northrop Grumman Space Technology, One Space

More information

Defect Detection in a Distributed Software Maintenance Project

Defect Detection in a Distributed Software Maintenance Project Defect Detection in a Software Maintenance Alessandro Bianchi, Danilo Caivano, Filippo Lanubile, Giuseppe Visaggio Dipartimento di Informatica Università di Bari - Via Orabona, 4, 70126 Bari Italy {bianchi,

More information

Project Cost Overrun Simulation in Software Product Line Development

Project Cost Overrun Simulation in Software Product Line Development Project Cost Overrun Simulation in Software Product Line Development Makoto Nonaka 1, Liming Zhu 2, Muhammad Ali Babar 3, and Mark Staples 2 1 Faculty of Business Administration, Toyo University, Japan

More information

Chapter 4 Software Lifecycle and Performance Analysis

Chapter 4 Software Lifecycle and Performance Analysis Chapter 4 Software Lifecycle and Performance Analysis This chapter is aimed at illustrating performance modeling and analysis issues within the software lifecycle. After having introduced software and

More information

Module 11. Software Project Planning. Version 2 CSE IIT, Kharagpur

Module 11. Software Project Planning. Version 2 CSE IIT, Kharagpur Module 11 Software Project Planning Lesson 29 Staffing Level Estimation and Scheduling Specific Instructional Objectives At the end of this lesson the student would be able to: Identify why careful planning

More information

Umbrella: A New Component-Based Software Development Model

Umbrella: A New Component-Based Software Development Model 2009 International Conference on Computer Engineering and Applications IPCSIT vol.2 (2011) (2011) IACSIT Press, Singapore Umbrella: A New Component-Based Software Development Model Anurag Dixit and P.C.

More information

Software Metrics and Measurements

Software Metrics and Measurements Software Metrics and Measurements Michalis Xenos School of Sciences and Technology, Hellenic Open University, 23 Saxtouri Str, Patras, GR 262 22, Greece xenos@eap.gr Tel: +30 2610 367405 Fax: +30 2610

More information

"Customer Satisfaction Metrics and Models" Sunita Chulani Sunita@us.ibm.com IBM Research

Customer Satisfaction Metrics and Models Sunita Chulani Sunita@us.ibm.com IBM Research "Customer Satisfaction Metrics and Models" Sunita Chulani Sunita@us.ibm.com IBM Research Following is a paper that was presented at the 12th Annual ESCOM (European Software Control and Metrics) conference

More information

Copyright. Network and Protocol Simulation. What is simulation? What is simulation? What is simulation? What is simulation?

Copyright. Network and Protocol Simulation. What is simulation? What is simulation? What is simulation? What is simulation? Copyright Network and Protocol Simulation Michela Meo Maurizio M. Munafò Michela.Meo@polito.it Maurizio.Munafo@polito.it Quest opera è protetta dalla licenza Creative Commons NoDerivs-NonCommercial. Per

More information

Full-time MSc in Logistics and Supply Chain Management

Full-time MSc in Logistics and Supply Chain Management Full-time MSc in Logistics and Supply Chain Management Course structure and content 2015-2016 The course has been developed to produce expert logistics and supply chain professionals who can take the skills

More information

TEACHING AGGREGATE PLANNING IN AN OPERATIONS MANAGEMENT COURSE

TEACHING AGGREGATE PLANNING IN AN OPERATIONS MANAGEMENT COURSE TEACHING AGGREGATE PLANNING IN AN OPERATIONS MANAGEMENT COURSE Johnny C. Ho, Turner College of Business, Columbus State University, Columbus, GA 31907 David Ang, School of Business, Auburn University Montgomery,

More information

Fundamentals of Measurements

Fundamentals of Measurements Objective Software Project Measurements Slide 1 Fundamentals of Measurements Educational Objective: To review the fundamentals of software measurement, to illustrate that measurement plays a central role

More information

Models of Dissertation Research in Design

Models of Dissertation Research in Design Models of Dissertation Research in Design S. Poggenpohl Illinois Institute of Technology, USA K. Sato Illinois Institute of Technology, USA Abstract This paper is a meta-level reflection of actual experience

More information

IBM Software Testing and Development Control - How to Measure Risk

IBM Software Testing and Development Control - How to Measure Risk IBM Software Group Practical Approaches to Development Governance 2007 IBM Corporation Program parameters (cost, schedule, effort, quality, ) are random variables Area under curve describes probability

More information

Maximum likelihood estimation of mean reverting processes

Maximum likelihood estimation of mean reverting processes Maximum likelihood estimation of mean reverting processes José Carlos García Franco Onward, Inc. jcpollo@onwardinc.com Abstract Mean reverting processes are frequently used models in real options. For

More information

COMMUNICATING WITH MANAGEMENT ABOUT THE BENEFITS OF BUSINESS PROCESS SIMULATION

COMMUNICATING WITH MANAGEMENT ABOUT THE BENEFITS OF BUSINESS PROCESS SIMULATION Proceedings of the 2009 Winter Simulation Conference M. D. Rossetti, R. R. Hill, B. Johansson, A. Dunkin and R. G. Ingalls, eds. COMMUNICATING WITH MANAGEMENT ABOUT THE BENEFITS OF BUSINESS PROCESS SIMULATION

More information

Simulation: An Effective Marketing Tool

Simulation: An Effective Marketing Tool Simulation: An Effective Marketing Tool Ashu Gupta Sr. Lecturer Apeejay Institute of Management, Jalandhar, Punjab, India. ABSTRACT Simulation- the study and use of models of complex relationships- is

More information

Chapter 4 SUPPLY CHAIN PERFORMANCE MEASUREMENT USING ANALYTIC HIERARCHY PROCESS METHODOLOGY

Chapter 4 SUPPLY CHAIN PERFORMANCE MEASUREMENT USING ANALYTIC HIERARCHY PROCESS METHODOLOGY Chapter 4 SUPPLY CHAIN PERFORMANCE MEASUREMENT USING ANALYTIC HIERARCHY PROCESS METHODOLOGY This chapter highlights on supply chain performance measurement using one of the renowned modelling technique

More information

Software Project Models

Software Project Models INTERNATIONAL JOURNAL OF TECHNOLOGY ENHANCEMENTS AND EMERGING ENGINEERING RESEARCH, VOL 1, ISSUE 4 135 Software Project Models Abhimanyu Chopra, Abhinav Prashar, Chandresh Saini Email-abhinav.prashar@gmail.com,

More information

Efficient Indicators to Evaluate the Status of Software Development Effort Estimation inside the Organizations

Efficient Indicators to Evaluate the Status of Software Development Effort Estimation inside the Organizations Efficient Indicators to Evaluate the Status of Software Development Effort Estimation inside the Organizations Elham Khatibi Department of Information System Universiti Teknologi Malaysia (UTM) Skudai

More information

The role of replications in Empirical Software Engineering

The role of replications in Empirical Software Engineering Empir Software Eng (2008) 13:211 218 DOI 10.1007/s10664-008-9060-1 VIEWPOINT The role of replications in Empirical Software Engineering Forrest J. Shull & Jeffrey C. Carver & Sira Vegas & Natalia Juristo

More information

Discrete-Event Simulation

Discrete-Event Simulation Discrete-Event Simulation Prateek Sharma Abstract: Simulation can be regarded as the emulation of the behavior of a real-world system over an interval of time. The process of simulation relies upon the

More information