Transactions on Information and Communications Technologies vol 11, 1995 WIT Press, ISSN
|
|
- Evangeline McKenzie
- 8 years ago
- Views:
Transcription
1 Impact analysis of process change proposals* M. Host and C. Wohlin Department of Communication Systems, Lund University, PO Box 118, S Lund, Sweden Abstract Before software processes are changed in order to achieve improvements, an impact analysis can be performed to predict the impact of the proposed change on specific quality attributes, such as product reliability, time to market and development productivity. In this paper an impact analysis method is presented. It consists mainly of a prediction system, which based on a proper data collection can be used to derive the impact prior to making any changes. 1 Introduction Life is evolutionary and changes occur over time. Most persons strive to turn changes into improvements, for example when buying a new house, we make a very thorough impact analysis, which in turn is used to evaluate costs and benefits. The impacts when buying a house may be in terms of travel time to work and closeness to recreation areas. This type of evaluation must be made when developing software as well. The process of developing software can not be changed arbitrarily, it must be a conscious and well founded decision. Therefore impact analysis of software process change is needed as support in decision making. * This work is a part of the PERFECT project and it is sponsored by the Swedish National Board for Industrial Technical Development (NUTEK). PERFECT stands for Process Enhancement for Reduction of software defects and it denotes the ESPRIT project 9090 funded by the CEC in which the following organizations participate: CAP Gemini Innovation, Daimler Benz, LGI, Q-Labs, Robert Bosch, Siemens Norway, and University of Kaiserslautern. In PERFECT, the Department of Communication Systems at Lund University is a subcontractor of Q-Labs.
2 312 Software Quality Management The objective of the work presented subsequently is to provide a method to perform impact analysis of a software process change. The method supports impact analysis of: reliability (this must include both reliability* and the fault content in the software), cycle time (duration of a software development project) and productivity (mainly in terms of effort, which must be related to the product being developed in order to achieve productivity). The method is denoted RePlaCe, based on the three key attributes to analyse and also based on the wish to replace old techniques with new and better ones. Impact analysis provides the basis for cost/benefit analysis and hence also return-on-investment models. The objective is to provide management as well as software developers with a basis for decision making regarding a specific proposed process change. 2 Process Improvements The quality of the products developed by an organization depends on the quality of the development processes used by the organization. Therefore, to improve the quality of the products developed by an organization, the processes that are used to develop the products can be improved. Gained experiences in combination with public domain information can be used to improve the software processes, with respect to reliability, productivity, development time, predictability, etc. It is not advisable to become religious about a specific method or tool, instead a thorough impact analysis which forms the basis for cost/benefit analysis is needed and it must be combined with return-on-investment. No sensible manager would allow changes without some proof of expected success. The proof can not be based on published results as most figures presented in the software engineering literature is non-repeatable, which is quite different from most experiments etc. presented in other sciences. Therefore, a method which is able to predict the effect of a proposed change is a necessity in software engineering. This paper focuses on providing such a method. The impact analysis method is in an early version and further work is required, but it will already, in its current status, provide managers with support in their difficult task of planning an improvement programme. In an improvement programme, the best change proposals should be introduced into an organization. Improvements can be introduced in a number of different ways, such as directly if the result of the impact analysis points out a great certainty of actual improvement or in smaller steps if the impact analysis reveals a considerable uncertainty of actual improvement. Another way to learn more about actual impacts of a process change proposals is to run test projects. 1. We define reliability as "the probability of a device performing its purpose adequately for the period of time intended under the operating conditions encountered". The reliability is often expressed in terms of Mean Time Between Failures (MTBF). For a more informal definition of reliability, see for example [Sommerville92].
3 Software Quality Management PERFECT The PERFECT project is an ongoing ESPRIT project with the overall goal to assist industry in establishing measurement-based initiatives aimed at evolutionary improvement of software development processes relative to companyspecific quality goals. The project will result in both a methodology and a platform to support systematic process improvement. The PERFECT methodology provides an organization with systematic and continuous improvement of software processes, based on the Experience Factory and the Quality Improvement Paradigm (EF/QIP) [Basili93b] and three key technologies: Explicit modelling of processes, products and quality. Goal oriented measurement. Comprehensive reuse of experience. The QIP divides the improvement process into six steps, which can be iterated to continuously improve the software processes. The six steps can briefly be described as: 1. Characterize: Characterize the current processes to identify improvement needs. 2. Set goals: At this stage goals are set. It is important that the goals are realistic and measurable. 3. Choose process models: Based upon the characterization and the goals set appropriate process models are chosen. 4. Execute the processes: While a process is executed, data should be collected according to a measurement plan for real time feedback and corrective actions. 5. Analyse data: The collected data is interpreted and the process is evaluated according to the goals that were set. 6. Package experience: According to the experience gained by executing the process, models must be defined and refined for reuse in future iterations of the improvement cycle. The proposed impact analysis method, which is one technique of the PERFECT methodology, can serve as an important technique to determine if goals are realistic and if suggested process models will meet certain goals.
4 314 Software Quality Management 4 Impact analysis 4.1 Introduction As stated above, an impact analysis can be carried out to evaluate change proposals. This can either be done in a simple and basic way or in a more thorough and advanced way. A basic method can rely on expert statements of the overall impact, while an advanced method must rely on mathematical models, such as, in this case, models of reliability, productivity and cycle time, in combination with expert statements. To carry out an advanced impact analysis, the impact of the proposed change on the sub-processes of the process must be considered to derive an overall prediction of the impact. As afirststep, a basic impact analysis method can be carried out. The basic method naturally results in one of three different decisions: go, if it is obvious that the change proposal results in an improvement, no go, if it is obvious that the change proposal does not result in any improvement, or investigate further, if the overall impact of the change proposal should be further investigated. If the basic impact analysis results in the decision investigate further, then an advanced impact analysis must be carried out to find the overall impact of the change proposal. The latter outcome is unfortunately very common as it is hard to determine all implications of a specific process change. The advanced impact analysis results in one of two different decisions: go, if the change proposal turns out to result in an improvement, or no go, if the change proposal turns out not to result in any improvement. As is illustrated in figure 1, impact analysis is carried out when process models are chosen, i.e. in step 3 of the QIR To illustrate the position of the impact analysis, the third step is divided into two parts: propose change and decide upon models, where the impact analysis is carried out between these two activities. If the impact analysis results in a no go there are two different possible reasons for this: the goals may be unrealistic or the suggested process change will not meet the goals. If the impact analysis results in a go, then the next step is to introduce the change proposal as a part of an improvement programme. The accuracy of the predictions made in the impact analysis, can help to decide how to introduce the change. The change has to be systematically introduced and carefully planned. To learn more about the impact of the change in the current organization, test projects can be executed and the improvement can be introduced step by step. In the rest of this paper we will concentrate on the advanced impact analysis method. In section 4.2 we introduce RePlaCe, an advanced impact analysis method, in section 5 we describe how to collect data to this method and in
5 Software Quality Management 315 QIP Characterize Step 1 Set goals and Propose change Investigate Step 2 Step 3a I -a I no go no go go Basic IA Investigate further go _ Advanced IA Decide upon models, Execute process, Analyse data and Package experience Step 3b Step 4 Step 5 Step 6 Figure 1: Impact analysis can be carried out when models are chosen. section 6 we describe how to actually predict the overall impact of a proposed process change. 4.2 RePlaCe - an advanced impact analysis method The method consists of three steps that must be carried out to be able to decide whether or not to implement a process change proposal. The three steps are illustrated in figure 2 together with some more specific techniques which are discussed further below. First, data must be collected on the impact on quality attributes on sub-processes. This data can be collected as subjective measures, in for example interviews, or as objective measures as experience from former projects. The major reason for allowing for subjective measures on sub-processes is that it is often easier to find experts on different phases and methods in the process than trusting an overall judgement. Secondly, the impact on quality attributes for the overall process is determined with a prediction system, which consists of three different quality models: a reliability model, describing the relative improvement of fault content, which can be used to derive relative improvement of reliability. a productivity model, describing the relative improvement of the productivity.
6 316 Software Quality Management Presentation Figure 2: The advanced impact analysis method. a cycle time model, describing the relative improvement of the development time of the system. The models aim at increasing predictability of these key quality attributes. The models are also well in line with the objectives of most software organizations, which can be summarized by: reduce cost, reduce cycle time and move towards zero defects. Finally, the output of the prediction system must be presented to management, which can use this information as a basis to decide whether or not to implement the change proposal. 5 Data collection 5.1 Introduction This is thefirststep of the impact analysis method, where figures on the impact on the sub-processes are derived. These figures can be derived as subjective or objective measures of the impact of the proposed change. Impact analysis is needed in different contexts, i.e. in comparison with the experience base of the organization, for example: Internal experience is available, i.e. the process change means that experience can be reused from other projects within the organization. Public experience is available, i.e. no experience is available within the organization but experience of, for example, a new method has been published in the public domain. State-of-the-art technology, i.e. no experience is available. In this case some new techniques or methods are available but no organization has published any experience from using them. In thefirsttwo cases figures on local impact can be collected as a combination of subjective and objective measures, while in the third case figures on local impact must be collected as subjective measures. Impact analysis gives the most precise predictions in the first case, while it is obviously most needed in the third case. In this case, though, it is hard to obtain the local opinions described above which gives that the result of the analysis will be less precise than in the
7 Software Quality Management 317 first case. Therefore, it is important to consider not only mean values, but also the variance. 5.2 The Goal/Question/Metric - paradigm To obtainfigureson local impact, some kind of measurement technique must be used. It is important that this technique collects figures that represent what the models actually require as input. Goal oriented measurement provides a means to derive metrics from measurement goals. We suggest that the Goal/Question/Metric-paradigm (GQM) [Basili93a, Basili94] should be used to provide the impact analysis method with valid and relevant input data. The input requirements of the models are defined as measurement goals, which according to GQM can be used to derive metrics via questions. As examples of three measurement goals we can define: Analyse the software products for the purpose of impact analysis with respect to reliability from the point of view of the users of the products. Analyse the software development process for the purpose of impact analysis with respect to productivity from the point of view of management. Analyse the software development process for the purpose of impact analysis with respect to cycle time from the point of view of management. The models of the prediction system have been used to derive questions that must be answered to provide the prediction system with input data: 1. How many faults are introduced in the sub-processes if the improvement proposal is implemented and if it is not implemented? 2. To what extent are faults in the sub-processes discovered if the improvement proposal is implemented and if it is not implemented? 3. What is the number of person months required to complete the sub-processes if the improvement proposal is implemented and if it is not implemented? 4. What will the execution times of the sub-processes be if the improvement proposal is implemented and if it is not implemented? 5. At what stages of the sub-processes, i.e. at what time, can required products be delivered? 6. What is the accuracy of the given figures? 7. What are the required products from the other (preceding) sub-processes, if the improvement proposal is introduced and if it is not introduced? The parts of the questions referring to not implementing the proposal can in most cases be answered exactly, that is if a proper measurement programme is in place. The questions correspond to the input needed by the models of the prediction system explained in the next section. Question 1, 2 and 6 correspond to the input need of the reliability model, question 3 and 6 to the productivity
8 318 Software Quality Management Measurement goal related to impact analysis Another measurement goal Figure 3: Example of goals, questions, Qj, and metrics, M,\ model and question 4, 5, 6 and 7 correspond to the input need of the cycle time model. To increase the accuracy of the figures which serve as input to the prediction system, every question ought to be answered from more than one source. This is especially important if the questions are answered by subjective measures, such as answers in an interview. In a project or organization where GQM is applied, measures are taken on the processes and the products. These measures (or metrics, which is the notation used in GQM) include both subjective and objective measures taken both prior, during and after system development. For the impact analysis method, the most interesting measures are subjective and objective measures taken prior to the project at hand. As can be seen in the example in figure 3, some of the metrics for impact analysis and for other measurement goals may be common. This implies that the measures collected to provide the impact analysis method with input data should be collected by the same organization that collects other measures. In addition to providing the impact analysis method with input data, measurement is important to improve the impact analysis method. This type of measures include objective and subjective measures, collected during and after the execution of the processes. These measures represent the predictability of the prediction system and can be used to adjust the parameters of the models and thereby improving the prediction system. GQM can be used to provide an organization with such measures. 6 The prediction system 6.1 Introduction When measures have been collected, they must be converted to formfigures,if they were not collected as figures from the beginning. This conversion can for example be done as a transformation from subjective ratings to integers, such as from subjective ratings of improved cycle time of a sub-process to integer figures on relative improvement, such as 0%, 10%, 20%, 30%, 40% or 50% improved execution time.
9 Software Quality Management 319 "«T Figure 4: In every sub-process a number of faults is introduced and found. A number of faults remains undetected and is thus propagated to the next subprocess. The prediction system consists of a number of prediction models, which can be used to predict the overall impact of a process change proposal. In this section we give examples of three simple models: one reliability model, one productivity model and one cycle time model. 6.2 A reliability model We are interested in determining the reliability of the delivered system in terms of for example mean time between failures (MTBF), which can be estimated as a function of the number of faults in the system. Thus we can use a model as illustrated in figure 4, which is influenced by [Eick92]. A number, Z,, of faults is introduced and a number, F,, of faults is discovered in every sub-process. When a sub-process is completed, a number, X,, of faults still remains and is thus propagated to the next sub-process. Z, and F, correspond to the answers to the questions stated in the former section. If the improvement proposal is implemented then the number of faults in the delivered system can be expected to decrease by a factor r _ /i. old, old where X^ ^ denotes the estimated number of faults remaining after the last subprocess if the improvement proposal is not implemented and X^ denotes the estimated number of faults remaining after the last sub-process if the improvement proposal is implemented. If each fault is equally likely to cause a failure then the reliability of the system in terms of MTBF must also be improved by a factor /,_ This assumption does not hold in general and the subject is an area for further research. 6.3 A productivity model The productivity of an organization reflects how many person months that is needed in the development process. As an example of a very simple productivity model, we describe an effort model. The required input data to this model is
10 320 Software Quality Management Figure 5: A simple example of three sub-processes. the required number of person months for each sub-process, ej, e^^-e^. The relative improvement of the productivity, in terms of required number of person months can be expressed as: where e^^ denotes the required number of person months in sub-process / if the improvement proposal is not implemented and <?, denotes the required number of person months in sub-process / if the improvement proposal is implemented. 6.4 A cycle time model The development process is divided into a number of sub-processes, such as specification, design and test. Cycle time can be defined as the time from that the development of a system is started until it is delivered, i.e. the time required to execute all sub-processes. An improvement proposal can for example be to introduce a new method, which makes it possible to execute some of these subprocesses in parallel and thus to shorten the cycle time, or to introduce reviews in a number of sub-processes to improve the reliability of the delivered system. As input to this model, local opinions on the execution times and possibilities of parallelism are required. We have to collect local information on what products the sub-processes need from their respective preceding sub-processes and then when each sub-process can deliver the products that are needed by the succeeding sub-processes. Examples of questions that can be asked to representatives of each sub-process are stated in the previous section. When this data is collected we can estimatefigureson mean and variance of the execution times of the subprocesses and delivery times of products. A simple example of a process that consists of three sub-processes can be seen in figure 5, where the improvement proposal is to introduce a new method, which makes it possible to execute parts of the sub-processes in parallel. Two different time schedules are shown with respect to the expected values of the
11 Software Quality Management 321 execution times of the sub-processes. In the upper schedule tj ^, fj old ^d fj ^ represent the expected execution times, if the improvement proposal is not implemented and in the lower schedule f/, ^ and t$ represent the expected times if the improvement proposal is implemented, f// and ^/ represent the expected times until required products can be delivered. If the start of sub-process 3 depends on the completion of sub-process 1 and delivered products from subprocess 2 and the start of sub-process 2 depends on delivered products from sub-process 1, then the cycle time equals t=max(tjj+t2i^-t^ tj+t^, f/y+^j where 0/+'2/+0 < 0+0 corresponds to that the duration of sub-process 1 is longer than tj]+t2j and Oy+^27+0 < Oy+^2 corresponds to that sub-process 2 ends after sub-process 3. In figure 5 the cycle time of the improved process equals - The relative improvement of the cycle time can be computed as 7 = It is reasonable to suggest that the cycle time can be more precisely predicted if the old technique is used, than if the new technique is introduced. The distribution functions sketched in figure 5 indicate this. 6.5 Relationship between the models The three attributes of interest in our models are related. An improvement proposal affects more than just one of the attributes. No process change affects just one attribute and leaves the other two unaffected. Even if a process change affects the different sub-processes in such ways that the overall impact on the attribute is virtually none, this can not easily be seen in advance. As an example we can consider an improvement proposal to introduce reviews after a number of sub-processes. This process change will probably increase the execution times of thefirstsub-process and thus increase the overall cycle time, but the process change will probably increase the quality of the input to the later sub-processes and thus shorten the overall cycle time. We see that the quality attributes can be both directly affected by a process change and indirectly affected via the other quality attributes. The indirect relationship is not explicitly represented in the models presented above, but is an area for future research. 7 Data presentation The output of the prediction system, i.e. /,, 7^ and 7^, should be presented to management, to provide them with information to be able to decide whether or not to implement changes. Notice that decisions on whether or not to implement changes, are not part of the impact analysis method. Impact analysis is carried out to provide information to be able to take informed decisions. The form of the presentation is not critical, but naturally it is important that the presentation clearly states the impact of the proposed change. If the impact
12 322 Software Quality Management analysis method is applied on a number of change proposals, then the impact of each proposal should be presented. 8 Conclusions Impact analysis provides management with important information, when they decide whether to implement a change proposal or not. It is feasible to use available information on local impact to derive a prediction of the overall impact on reliability, productivity and cycle time. The presented models are so far simple and independent, but they provide a starting point for informed decisions regarding introduction of software process change proposals. Further research is however required to get a comprehensive prediction system. The reliability model must handle both fault content and reliability in terms of for example mean time between failures. The cycle time model must handle more general situations where the process can be divided into sub-processes in a number of different ways. The variance of the factors of the models and the dependencies between the models must be taken into account. References [Basili93a] V.R. Basili, Applying the Goal/Question/Metric Paradigm in the Experience Factory. Presented at the 10th Annual CSR Workshop, October [Basili93b] V.R. Basili, The Experience Factory and its Relationship to Other Improvement Paradigms. Proceedings of the 4th European Software Engineering Conference, Springer Verlag, LNCS 717, 1993, pp [Basili94] V.R. Basili, G. Caldiera, H.D. Rombach, Goal Question Metric Paradigm. In John J. Marciniak, editor, Encyclopedia of Software Engineering, John Wihley & Sons, New York, 1994, pp [Eick92] S.G. Eick, C.R. Loader, M.D. Long, L.G. Votta, S.V Wiel, Estimating Software Fault Content Before Coding. Fourteenth International Conference on Software Engineering, Melbourne, 1992, pp [Sommervile92] I. Sommerville, Software Engineering - Fourth Edition, Addison-Wesley, 1992.
C. Wohlin, "Meeting the Challenge of Large Scale Software Development in an Educational Environment", Proceedings Conference on Software Engineering
C. Wohlin, "Meeting the Challenge of Large Scale Development in an Educational Environment", Proceedings Conference on Engineering Education & Training, pp. 40-52, Virginia Beach, Virginia, USA, 1997.
More informationC. Wohlin and B. Regnell, "Achieving Industrial Relevance in Software Engineering Education", Proceedings Conference on Software Engineering
C. Wohlin and B. Regnell, "Achieving Industrial Relevance in Software Engineering Education", Proceedings Conference on Software Engineering Education & Training, pp. 16-25, New Orleans, Lousiana, USA,
More informationQuality Management of Software and Systems: Continuous Improvement Approaches
Quality Management of Software and Systems: Continuous Improvement Approaches Contents Quality Improvement Paradigm (QIP) Experience Factory (EF) Goal Question Metric (GQM) GQM + Strategies TQM Definition
More informationRisk Knowledge Capture in the Riskit Method
Risk Knowledge Capture in the Riskit Method Jyrki Kontio and Victor R. Basili jyrki.kontio@ntc.nokia.com / basili@cs.umd.edu University of Maryland Department of Computer Science A.V.Williams Building
More informationC. 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 informationGQM + Strategies in a Nutshell
GQM + trategies in a Nutshell 2 Data is like garbage. You had better know what you are going to do with it before you collect it. Unknown author This chapter introduces the GQM + trategies approach for
More information(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 informationMeasurement Information Model
mcgarry02.qxd 9/7/01 1:27 PM Page 13 2 Information Model This chapter describes one of the fundamental measurement concepts of Practical Software, the Information Model. The Information Model provides
More informationEmpirical Software Engineering Introduction & Basic Concepts
Empirical Software Engineering Introduction & Basic Concepts Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems dietmar.winkler@qse.ifs.tuwien.ac.at
More informationMeasurement and Metrics Fundamentals. SE 350 Software Process & Product Quality
Measurement and Metrics Fundamentals Lecture Objectives Provide some basic concepts of metrics Quality attribute metrics and measurements Reliability, validity, error Correlation and causation Discuss
More informationCurrent Research Topic In Software Engineering
Current Research Topic In Software Engineering A PROJECT REPORT Submitted by MD. Mithun Ahamed Id: 13-96937-2 Under the guidance of DR. Dip Nandi in partial fulfillment for the award of the degre of Master
More informationUsing Measurement to translate Business Vision into Operational Software Strategies
Using Measurement to translate Business Vision into Operational Software Strategies Victor R. Basili University of Maryland and Fraunhofer Center - Maryland BUSINESS NEEDS Any successful business requires:
More informationISO/IEC 9126 in practice: what do we need to know?
ISO/IEC 9126 in practice: what do we need to know? P. Botella, X. Burgués, J.P. Carvallo, X. Franch, G. Grau, J. Marco, C. Quer Abstract ISO/IEC 9126 is currently one of the most widespread quality standards.
More informationSoftware Process Improvement in Small Organizations Using Gradual Evaluation Schema
Software Process Improvement in Small Organizations Using Gradual Evaluation Schema Naji Habra Eustache Niyitugabira, Anne-Catherine Lamblin and Alain Renault Institut d Informatique Technology Transfer
More informationSoftware Process Improvement in Small Organizations Using Gradual Evaluation Schema
Software Process Improvement in Small Organizations Using Gradual Evaluation Schema Naji Habra Eustache Niyitugabira, Anne-Catherine Lamblin and Alain Renault Institut d Informatique Technology Transfer
More informationMeasurable Software Quality Improvement through Innovative Software Inspection Technologies at Allianz Life Assurance
Measurable Software Quality Improvement through Innovative Software Inspection Technologies at Allianz Life Assurance Bernd Freimut, Brigitte Klein, Oliver Laitenberger, Günther Ruhe Abstract The development
More informationC. Wohlin, M. Höst, P. Runeson and A. Wesslén, "Software Reliability", in Encyclopedia of Physical Sciences and Technology (third edition), Vol.
C. Wohlin, M. Höst, P. Runeson and A. Wesslén, "Software Reliability", in Encyclopedia of Physical Sciences and Technology (third edition), Vol. 15, Academic Press, 2001. Software Reliability Claes Wohlin
More informationThe Role of Controlled Experiments in Software Engineering Research
The Role of Controlled Experiments in Software Engineering Research Victor R. Basili 1 The Experimental Discipline in Software Engineering Empirical studies play an important role in the evolution of the
More informationA 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 informationMoving from ISO9000 to the Higher Levels of the Capability Maturity Model (CMM)
Moving from ISO9000 to the Higher Levels of the Capability Maturity Model (CMM) Pankaj Jalote 1 Infosys Technologies Ltd. Bangalore 561 229 Fax: +91-512-590725/590413 Jalote@iitk.ernet.in, jalote@iitk.ac.in
More informationAn Approach for assessing the Quality of Software for small and medium sized firms
An Approach for assessing the Quality of Software for small and medium sized firms N. Veeranjaneyulu Associate Professor, School of Computing, Vignan University, Vadlamudi, India 1 Abstract: Software quality
More informationC. Wohlin, "Is Prior Knowledge of a Programming Language Important for Software Quality?", Proceedings 1st International Symposium on Empirical
C. Wohlin, "Is Prior Knowledge of a Programming Language Important for Software Quality?", Proceedings 1st International Symposium on Empirical Software Engineering, pp. 27-36, Nara, Japan, October 2002.
More informationProject Control with ProTrack
Project Control with ProTrack 1.0 (last update: 11/11/08) 1 Project Control with ProTrack by Mario Vanhoucke Professor at Ghent University and Vlerick Leuven Gent Management School (Belgium) Partner OR-AS
More informationStrategies for Industrial Relevance in Software Engineering Education
Strategies for Industrial Relevance in Software Engineering Education Claes Wohlin and Björn Regnell Dept. of Communication Systems Lund Institute of Technology, Lund University P.O. Box 118, SE-221 00
More information13 Empirical Research Methods in Web and Software Engineering 1
13 Empirical Research Methods in Web and Software Engineering 1 Claes Wohlin, Martin Höst, Kennet Henningsson Abstract. Web and software engineering are not only about technical solutions. It is to a large
More informationA Tool for Mining Defect-Tracking Systems to Predict Fault-Prone Files
A Tool for Mining Defect-Tracking Systems to Predict Fault-Prone Files Thomas J. Ostrand AT&T Labs - Research 180 Park Avenue Florham Park, NJ 07932 ostrand@research.att.com Elaine J. Weyuker AT&T Labs
More informationA CASE STUDY ON SOFTWARE PROJECT MANAGEMENT IN INDUSTRY EXPERIENCES AND CONCLUSIONS
A CASE STUDY ON SOFTWARE PROJECT MANAGEMENT IN INDUSTRY EXPERIENCES AND CONCLUSIONS P. Mandl-Striegnitz 1, H. Lichter 2 1 Software Engineering Group, University of Stuttgart 2 Department of Computer Science,
More informationThe use of Trade-offs in the development of Web Applications
The use of Trade-offs in the development of Web Applications Sven Ziemer and Tor Stålhane Department of Computer and Information Science Norwegian University of Technology and Science {svenz, stalhane}@idi.ntnu.no
More informationBaselining Wireless Internet Service Development - An Experience Report
1 Baselining Wireless Internet Service Development - An Experience Report Fabio Bella, Jürgen Münch, and Alexis Ocampo Abstract New, emerging domains such as the engineering of wireless Internet services
More informationLinking Software Development and Business Strategy Through Measurement
Linking Software Development and Business Strategy through Measurement Victor R. Basili, Mikael Lindvall, Myrna Regardie, and Carolyn Seaman, Fraunhofer Center for Experimental Software Engineering Jens
More informationSoftware 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 informationA GOAL/QUESTION/METRIC RESEARCH PROPOSAL TO MONITOR USER INVOLVEMENT AND PARTICIPATION IN ERP IMPLEMENTATION PROJECTS
A GOAL/QUESTION/METRIC RESEARCH PROPOSAL TO MONITOR USER INVOLVEMENT AND PARTICIPATION IN ERP IMPLEMENTATION PROJECTS Abstract José Manuel Esteves Departament de Llenguatges i Sistemes Informàtics Universitat
More informationSoftware Engineering Reference Framework
Software Engineering Reference Framework Michel Chaudron, Jan Friso Groote, Kees van Hee, Kees Hemerik, Lou Somers, Tom Verhoeff. Department of Mathematics and Computer Science Eindhoven University of
More informationHow To Develop Software
Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) We studied the problem definition phase, with which
More informationKnowledge 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 informationUsage of Intranet Tools for Knowledge Management
Usage of Intranet Tools for Knowledge Management Findings from a medium-sized software consulting company Torgeir Dingsøyr SINTEF Torgeir.Dingsoyr@sintef.no Vrije Universiteit, Amsterdam December 10th,
More informationProcess-Family-Points
Process-Family-Points Sebastian Kiebusch 1, Bogdan Franczyk 1, and Andreas Speck 2 1 University of Leipzig, Faculty of Economics and Management, Information Systems Institute, Germany kiebusch@wifa.uni-leipzig.de,
More informationIntroduction to Software Engineering. 9. Project Management
Introduction to Software Engineering 9. Project Management Roadmap > Risk management > Scoping and estimation > Planning and scheduling > Dealing with delays > Staffing, directing, teamwork 2 Literature
More informationProject Scorecard Template
Project Scorecard Template 1. Identify criteria for success: Review the objectives and deliverables in the Project Definition, as well as any other existing information that is relevant to the project.
More informationProcess Models and Metrics
Process Models and Metrics PROCESS MODELS AND METRICS These models and metrics capture information about the processes being performed We can model and measure the definition of the process process performers
More informationGUIDELINES FOR EVALUATION AND IMPROVEMENT OF REUSE AND EXPERIENCE REPOSITORY SYSTEMS THROUGH MEASUREMENT PROGRAMS
GUIDELINES FOR EVALUATION AND IMPROVEMENT OF REUSE AND EXPERIENCE REPOSITORY SYSTEMS THROUGH MEASUREMENT PROGRAMS Markus M. Nick*, Raimund L. Feldmann** * Fraunhofer Institute for Experimental Software
More informationMETRICS DRIVEN CONTINUAL SERVICE IMPROVEMENT USING AGILE CONCEPTS
METRICS DRIVEN CONTINUAL SERVICE IMPROVEMENT USING AGILE CONCEPTS John Osteen B Cognizant Business Consulting Process Quality Consulting Cognizant Technology Solutions, Chennai, India john.b@cognizant.com
More informationCoordinating Management Activities in Distributed Software Development Projects *
Coordinating Management Activities in Distributed Software Development Projects * Fawsy Bendeck, Sigrid Goldmann, Harald Holz, Boris Kötting 1 AG Expert Systems, University of Kaiserslautern, Postfach
More informationSOPLE-DE: An Approach to Design Service-Oriented Product Line Architectures
SOPLE-DE: An Approach to Design -Oriented Product Line Architectures Flávio M. Medeiros, Eduardo S. de Almeida 2, and Silvio R.L. Meira Federal University of Pernambuco (UFPE) 2 Federal University of Bahia
More informationThe 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 informationCRISP - DM. Data Mining Process. Process Standardization. Why Should There be a Standard Process? Cross-Industry Standard Process for Data Mining
Mining Process CRISP - DM Cross-Industry Standard Process for Mining (CRISP-DM) European Community funded effort to develop framework for data mining tasks Goals: Cross-Industry Standard Process for Mining
More information2. Analysis, Design and Implementation
2. Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Individual Programs to Complete Application Systems Software Development: Goals, Tasks, Actors,
More informationAnalyze and Design of Information Systems Using OODPM for Small Scale Businesses
Analyze and Design of Information Systems Using OODPM for Small Scale Businesses Pavel Petkun Offer Drori The Hebrew University of Jerusalem E-mail: pashka, offerd {@cs.huji.ac.il} Abstract In the modern
More informationThis is an author-generated version.! The final publication is available at link.springer.org!
!! This is an author-generated version.!! The final publication is available at link.springer.org!! DOI: 10.1007/978-3-642-02574-7_94! Link: http://link.springer.com/chapter/10.1007%2f978-3-642-02574-7_94!!
More informationAn Integrated Quality Assurance Framework for Specifying Business Information Systems
An Integrated Quality Assurance Framework for Specifying Business Information Systems Frank Salger 1, Stefan Sauer 2, Gregor Engels 1,2 1 Capgemini sd&m AG, Carl-Wery-Str. 42, D-81739 München, Germany
More informationTowards Better Software Projects and Contracts: Commitment Specifications in Software Development Projects
Paper presented at the 20th International Conference on Software Engineering, April 19-25, 1998, Kyoto, JAPAN Towards Better Software Projects and Contracts: Commitment Specifications in Software Development
More informationA Framework for Software Product Line Engineering
Günter Böckle Klaus Pohl Frank van der Linden 2 A Framework for Software Product Line Engineering In this chapter you will learn: o The principles of software product line subsumed by our software product
More informationDomain 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 informationSimulation and Lean Six Sigma
Hilary Emmett, 22 August 2007 Improve the quality of your critical business decisions Agenda Simulation and Lean Six Sigma What is Monte Carlo Simulation? Loan Process Example Inventory Optimization Example
More informationRisk-driven Security Testing versus Test-driven Security Risk Analysis
Risk-driven Security Testing versus Test-driven Security Risk Analysis Gencer Erdogan 1,2 Supervised by: Ketil Stølen 1,2 1 Department of Informatics, University of Oslo, PO Box 1080 Blindern, N-0316 Oslo,
More informationMTAT.03.243 Software Engineering Management
MTAT.03.243 Software Engineering Management Lecture 17: Other SPI Frameworks and QM Systems Dietmar Pfahl Spring 2014 email: dietmar.pfahl@ut.ee Structure of Lecture 17 Other SPI Frameworks People CMM
More information707.009 Foundations of Knowledge Management Organizational Knowledge Repositories
707.009 Foundations of Knowledge Management Organizational Knowledge Repositories Markus Strohmaier Univ. Ass. / Assistant Professor Knowledge Management Institute Graz University of Technology, Austria
More informationChapter 14 Managing Operational Risks with Bayesian Networks
Chapter 14 Managing Operational Risks with Bayesian Networks Carol Alexander This chapter introduces Bayesian belief and decision networks as quantitative management tools for operational risks. Bayesian
More informationRegular Expressions with Nested Levels of Back Referencing Form a Hierarchy
Regular Expressions with Nested Levels of Back Referencing Form a Hierarchy Kim S. Larsen Odense University Abstract For many years, regular expressions with back referencing have been used in a variety
More informationRN-Codings: New Insights and Some Applications
RN-Codings: New Insights and Some Applications Abstract During any composite computation there is a constant need for rounding intermediate results before they can participate in further processing. Recently
More informationSpace project management
ECSS-M-ST-80C Space project management Risk management ECSS Secretariat ESA-ESTEC Requirements & Standards Division Noordwijk, The Netherlands Foreword This Standard is one of the series of ECSS Standards
More informationManaging Process Architecture and Requirements in a CMMI based SPI project 1
Managing Process Architecture and Requirements in a CMMI based SPI project 1 Author: Filippo Vitiello Abstract When developing or changing a process, and all its related assets, often the process engineers
More informationSTARTING A PROJECT. Sergey V. Nesterov MD, PhD, PMP
STARTING A PROJECT Sergey V. Nesterov MD, PhD, PMP QUESTIONS to ask at the start 1. What is the situation? 2. What do you need to do? 3. Why do you need to do it? 4. What will you do? 5. How will you do
More informationCSCI-485: Software Design
CSCI-485: Software Design Lecture 6 Note: Some slides adapted from Software Engineering by Ian Sommerville Software Processes Code-and-fix model Software process model used in the early days of computing
More informationProject Management Process
Project Management Process Description... 1 STAGE/STEP/TASK SUMMARY LIST... 2 Project Initiation 2 Project Control 4 Project Closure 5 Project Initiation... 7 Step 01: Project Kick Off 10 Step 02: Project
More informationSoftware Process Improvement for Small Structures : First Results of a Micro-Assessment Framework
Software Process Improvement for Small Structures : First Results of a Micro-Assessment Framework Naji Habra Eustache Niyitugabira Anne-Catherine Lamblin and Alain Renault e-mail : owpl@cttc.fundp.ac.be
More informationFALSE ALARMS IN FAULT-TOLERANT DOMINATING SETS IN GRAPHS. Mateusz Nikodem
Opuscula Mathematica Vol. 32 No. 4 2012 http://dx.doi.org/10.7494/opmath.2012.32.4.751 FALSE ALARMS IN FAULT-TOLERANT DOMINATING SETS IN GRAPHS Mateusz Nikodem Abstract. We develop the problem of fault-tolerant
More informationBRIDGING THE GAP BETWEEN BUSINESS STRATEGY AND SOFTWARE DEVELOPMENT
BRIDGING THE GAP BETWEEN BUSINESS STRATEGY AND SOFTWARE DEVELOPMENT Information Systems Strategy and Governance Victor Basili Fraunhofer CESE & University of Maryland College Park, MD, USA basili@fc-md.umd.edu
More informationFourth generation techniques (4GT)
Fourth generation techniques (4GT) The term fourth generation techniques (4GT) encompasses a broad array of software tools that have one thing in common. Each enables the software engineer to specify some
More informationModule 2. Software Life Cycle Model. Version 2 CSE IIT, Kharagpur
Module 2 Software Life Cycle Model Lesson 4 Prototyping and Spiral Life Cycle Models Specific Instructional Objectives At the end of this lesson the student will be able to: Explain what a prototype is.
More informationToward Quantitative Process Management With Exploratory Data Analysis
Toward Quantitative Process Management With Exploratory Data Analysis Mark C. Paulk Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Abstract The Capability Maturity Model
More informationProcess-centered Knowledge Organization for Software Engineering
Process-centered Knowledge Organization for Software Engineering Frank Maurer University of Calgary Department of Computer Science Calgary, Alberta, Canada, T2N 1N4 maurer@cpsc.ucalgary.ca Harald Holz
More informationInteger roots of quadratic and cubic polynomials with integer coefficients
Integer roots of quadratic and cubic polynomials with integer coefficients Konstantine Zelator Mathematics, Computer Science and Statistics 212 Ben Franklin Hall Bloomsburg University 400 East Second Street
More informationFUTURE RESEARCH DIRECTIONS OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING *
International Journal of Software Engineering and Knowledge Engineering World Scientific Publishing Company FUTURE RESEARCH DIRECTIONS OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING * HAIPING XU Computer
More informationThe Trip Scheduling Problem
The Trip Scheduling Problem Claudia Archetti Department of Quantitative Methods, University of Brescia Contrada Santa Chiara 50, 25122 Brescia, Italy Martin Savelsbergh School of Industrial and Systems
More informationIntroductory Problem Solving in Computer Science
Introductory Problem Solving in Computer Science David J. Barnes, Sally Fincher, Simon Thompson Computing Laboratory, University of Kent at Canterbury, Kent, CT2 7NF, England E-mail: D.J.Barnes@ukc.ac.uk
More informationCDC UNIFIED PROCESS PRACTICES GUIDE
Document Purpose The purpose of this document is to provide guidance on the practice of Requirements Management and to describe the practice overview, requirements, best practices, activities, and key
More informationSPARE PARTS INVENTORY SYSTEMS UNDER AN INCREASING FAILURE RATE DEMAND INTERVAL DISTRIBUTION
SPARE PARS INVENORY SYSEMS UNDER AN INCREASING FAILURE RAE DEMAND INERVAL DISRIBUION Safa Saidane 1, M. Zied Babai 2, M. Salah Aguir 3, Ouajdi Korbaa 4 1 National School of Computer Sciences (unisia),
More informationSoftware Engineering. What is a system?
What is a system? Software Engineering Software Processes A purposeful collection of inter-related components working together to achieve some common objective. A system may include software, mechanical,
More informationHow To Create A Process Measurement System
Set Up and Operation of a Design Process Measurement System Included below is guidance for the selection and implementation of design and development process measurements. Specific measures can be found
More informationTool Support for Inspecting the Code Quality of HPC Applications
Tool Support for Inspecting the Code Quality of HPC Applications Thomas Panas Dan Quinlan Richard Vuduc Center for Applied Scientific Computing Lawrence Livermore National Laboratory P.O. Box 808, L-550
More informationEconomic Risk-Based Management in Software Engineering: The HERMES Initiative
Economic Risk-Based in Software Engineering: The HERMES Initiative Stefan Biffl Vienna Univ. of Technology Inst. of Software Technology A-1040 Vienna, Austria Michael Halling Johannes Kepler Univ. Linz
More informationTowards a Measurement Framework for Security Risk Management
Towards a Measurement Framework for Security Risk Management Nicolas Mayer 1,2, Eric Dubois 1, Raimundas Matulevičius 2, and Patrick Heymans 2 1 CRP-Henri Tudor - CITI 29 Av. John F. Kennedy, L-1855 Luxembourg,
More informationAn Experience Management System for a Software Consulting Organization
An Experience Management System for a Software Consulting Organization Carolyn Seaman * Manoel Mendonça * Victor Basili * Yong-Mi Kim cseaman@umbc.edu manoel@cs.umd.edu basili@fc-md.umd.edu yong-mi.kim@q-labs.com
More informationAbout the inverse football pool problem for 9 games 1
Seventh International Workshop on Optimal Codes and Related Topics September 6-1, 013, Albena, Bulgaria pp. 15-133 About the inverse football pool problem for 9 games 1 Emil Kolev Tsonka Baicheva Institute
More informationInvestigation of Adherence Degree of Agile Requirements Engineering Practices in Non-Agile Software Development Organizations
Investigation of Adherence Degree of Agile Requirements Engineering Practices in Non-Agile Software Development Organizations Mennatallah H. Ibrahim Department of Computers and Information Sciences Institute
More informationPMLite: An Open Source Solution for Process Monitoring
PMLite: An Open Source Solution for Process Monitoring Alberto Colombo, Ernesto Damiani, and Fulvio Frati Department of Information Technology - University of Milan via Bramante 65, 26013 Crema (CR) Italy
More informationFeasibility Study Inputs based on Requirements Engineering
Feasibility Study Inputs based on Requirements Engineering Robert Pergl Department of Information Engineering, Faculty of Economics and Management, Czech University of Life Sciences, Prague, Czech Republic
More informationIMPROVING THE DESIGN-CONSTRUCTION INTERFACE
Improving the Design-Construction Interface IMPROVING THE DESIGN-CONSTRUCTION INTERFACE Luis F. Alarcón 1 and Daniel A. Mardones 2 ABSTRACT In building projects customer requirements, constructive aspects
More informationA 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 informationChapter 6: The Information Function 129. CHAPTER 7 Test Calibration
Chapter 6: The Information Function 129 CHAPTER 7 Test Calibration 130 Chapter 7: Test Calibration CHAPTER 7 Test Calibration For didactic purposes, all of the preceding chapters have assumed that the
More informationSoftware Certification and Software Certificate Management Systems
Software Certification and Software Certificate Management Systems (Position Paper) Ewen Denney and Bernd Fischer USRA/RIACS, NASA Ames Research Center, Moffett Field, CA 94035, USA {edenney,fisch}@email.arc.nasa.gov
More informationManaging Variability in ALPR Software
Managing Variability in ALPR Software Dr. Marco Sinnema Product Manager Video and ALPR, Q-Free ASA P.O. Box 180, 9410 AD Beilen, The Netherlands tel. +31 593 542055, fax. +31 593 542098 marco.sinnema@q-free.com
More information1 INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN
1 INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1.1 INTRODUCTION Systems are created to solve problems. One can think of the systems approach as an organized way of dealing with a problem. In this dynamic
More informationGoal Question Metric (GQM) and Software Quality
Goal Question Metric (GQM) and Software Quality Howie Dow SQGNE November 14, 2007 Copyright (C) 2007 H. Dow - V: 2.3 1 Topics Relationship to software quality GQM in a nutshell Types of goals Mechanics
More informationA simple criterion on degree sequences of graphs
Discrete Applied Mathematics 156 (2008) 3513 3517 Contents lists available at ScienceDirect Discrete Applied Mathematics journal homepage: www.elsevier.com/locate/dam Note A simple criterion on degree
More informationComparing Alternate Designs For A Multi-Domain Cluster Sample
Comparing Alternate Designs For A Multi-Domain Cluster Sample Pedro J. Saavedra, Mareena McKinley Wright and Joseph P. Riley Mareena McKinley Wright, ORC Macro, 11785 Beltsville Dr., Calverton, MD 20705
More informationTable of Contents Author s Preface... 3 Table of Contents... 5 Introduction... 6 Step 1: Define Activities... 7 Identify deliverables and decompose
1 2 Author s Preface The Medialogist s Guide to Project Time Management is developed in compliance with the 9 th semester Medialogy report The Medialogist s Guide to Project Time Management Introducing
More informationMahmoud Khraiwesh Faculty of Science and Information Technology Zarqa University Zarqa - Jordan mahmoud@zpu.edu.jo
World of Computer Science and Information Technology Journal (WCSIT) ISSN: 2221-0741 Vol. 1, No. 2, 26-33, 2011 Validation Measures in CMMI Mahmoud Khraiwesh Faculty of Science and Information Technology
More informationDatabase Scheme Configuration for a Product Line of MPC-TOOLS
Database Scheme Configuration for a Product Line of MPC-TOOLS Benjamin Klöpper, Tobias Rust, Bernhard Vedder, and Wilhelm Dangelmaier Heinz Nixdorf Institute, University of Paderborn, Fürstenallee 11,
More information