Improving Software Project Management Skills Using a Software Project Simulator

Size: px
Start display at page:

Download "Improving Software Project Management Skills Using a Software Project Simulator"

Transcription

1 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 USA collofello@asu.edu Abstract Software project management skills are becoming an important component of software engineering education. Software engineers working in teams need to carefully plan and coordinate their efforts in order to be successful. Unfortunately, most universities provide inadequate education in software project management. Most use lecture-based approaches which provide the necessary steps in software project management, but are deficient in providing the students with hands-on experience. Software project simulation provides a bridge between course-based and hands-on experience. It provides an interactive environment of repeatable exercises. It also provides a medium for measurable evaluation of student performance which can be used to customize the education process to fit the needs of individual students. Our work focuses on using system dynamics modeling for simulating software development activities because of its ability to dynamically represent relevant project attributes in the software development process. A system dynamics model of the incremental software development process has been developed and validated. This paper describes a process for utilizing this system dynamics model to create simulation environments suitable for addressing specific education objectives. Benefits and guidelines for use of a tool of this kind are provided. Our experience with using this tool in a large class is also described. 1: Background 1.1: Why Focus on Software Project Management? There is a clear need for effective software project management. The software crisis, the long proclaimed ineffectiveness of software development projects to maintain their schedule, cost, and quality, continues to plague most development projects [3][5]. However, many of these projects may not have been a failure if certain common project management pitfalls had been avoided. Barry Boehm notes in [3], Poor management can increase software costs more rapidly than any other factor. Moreover, both Capers Jones and Joyce Statz note inadequate project management training and inadequate standards with which to judge project management performance as the root causes of poor project management [5][8]. A standard for judging project management performance is needed because it is difficult to improve an activity without a method for evaluating that activity s performance. 1.2: How Can Software Project Management Training Be Improved? Software project management involves, among other tasks: planning, tracking, and control of a software development project. These abilities require two things: knowledge, such as knowing common project management pitfalls, and skills, such as the ability to recognize those pitfalls and formulate a new project plan. The methods by which software project management skills are improved in an academic environment are summarized as: Texts and Journals, Facilitated Video, Lecture and Discussion, Computer Simulation, Model Project, and a combination of these, such as a typical software course consisting of reading, lecture, and a model project. These different methods can be compared in terms of their ability to educate (i.e. each method s effectiveness) and their practical costs (i.e. each method s efficiency). The motivation for exploring computer simulation as a software

2 project management training vehicle is best introduced by the following analogy. Software project management is a highly complex, ongoing process similar to flying a plane in rough conditions. A pilot must plan the course, continually track progress, monitor the condition of the plane, and react to problems as they are encountered. Pilots are often trained in flight simulators which provide the pilot with experience in many different scenarios without the high risk and expense of learning using a real plane. A pilot could not be expected to learn piloting skills from a text or instructor alone, because a pilot needs hands-on, active experience to become effective. Similarly, hands-on, active experience is needed to build effective project management skills. The basis for this flight simulation analogy was given in [7] which was built upon the system dynamics modeling of the software development process documented in [1]. An analysis of the advantages and effort required to apply the computer simulation approach to software project management training is given in Section 4. The next section introduces system dynamics models which are used as the simulation engine of this research effort. 2: System Dynamics Modeling The system dynamics approach to modeling complex systems was first introduced in the late 1950 s at M.I.T. s Sloan School of Management [4]. The first widely recognized application of this modeling approach to software development processes was presented in [1]. Many other modeling approaches are applicable to modeling software development processes; however, system dynamics modeling provides the ability to capture all relevant attributes of the software development process, product, and personnel which relate to the planning, tracking, and control involved in software project management. In any modeling approach, the boundaries of what is to be modeled must be defined. For software project management training, the model must represent: Undiscovered Code Errors escape rate Escaped Errors test exec done test rate Test Completion test rework done test done error detection rate quality of code test thoroughness Unit Test Unit Test error detection and correction Detected Code Errors code rework rate Reworked Test Errors very complex as these relationships connect in cycles to form feedback dynamics. These feedback dynamics are both the power of the system dynamics approach and the reason software project management is very difficult [2]. An example system dynamics model is given in Figure 1. The model is designed graphically with each icon storing the value of an attribute of the system that changes over time. An example system dynamics simulation tool user interface is given in Figure 2. Depending upon the purpose of the model, some of the attributes and relationships may be left hidden in the user interface. If the purpose is to learn software development processes, the structure of the model and its inner relationships will be open for the user to modify. If the Test Size ~ rework prod test productivity test rate percentage mp for test Unit Test Execution Completed Test Figure 1. An example system dynamics model of the unit testing process. daily mp process attributes such as the number and overlap of development increments, product attributes such as product size and complexity, and personnel attributes such as engineer productivity and schedule pressure. The value of these attributes can change over time based on the cause-effect and quantitative relationships between them -- such as the relationship between schedule pressure and engineer productivity. The system becomes Figure 2. An example user interface to a system dynamics simulation tool for understanding the inspection process.

3 purpose is to learn the management of a given process, without questioning its structure, the model will be closed and a user interface will abstract the structure of the model for the user. Since the goal here is training in project management, the model structure is hidden from the user. Guidelines for creating and validating system dynamics models can found in [9] and [6]. 3: A Process For Developing System Dynamics Simulation Training The process, given in Table 1, for creating a simulation environment is followed in order to be certain the training objectives are satisfied. The steps are iterated in order to capture more training objectives each loop around. 4: Guidelines For Use The decision to use system dynamics flight simulation for training is based upon its effectiveness and efficiency. The effectiveness of this approach is divided between the benefits given in Table 2 and the limitations listed below. This approach is only applicable to training objectives that focus upon the planning, tracking, and control of development. Other software project management skills (e.g. communication skills) are better learned using other methods. Also, this approach requires clearly defined training objectives. If the objectives are not clear, the training is less likely to be effective and it will be difficult to fit the training into the framework of the rest of the course. The efficiency of this approach is limited by the one time effort of creating the training tool; however, the tool can easily be recalibrated for different scenarios and reused by any number of students. 5: Application of the Approach To evaluate the usefulness of simulation in software project management training, we performed a case study in a graduate level software project management course at Arizona State University. The participants were all graduate students some of whom had industry experience. The objective of the case study was to evaluate whether the use of simulation helps students better learn software project management lessons. The students were surveyed as to their project management background and a snapshot of their understanding of the dynamics of software project management was taken by having them describe the direction and strength of relationships in an abstract system Table 1. An iterative process for developing a system dynamics simulation training tool. Objective Task Summary 1. Lesson Plan Decompose the training objectives into topical subunits. Create a lesson plan for each subunit. Determine if simulation is the appropriate approach for each lesson plan. 2. Simulation Interface 3. Simulation Engine 4. Simulation Scenarios Determine the relevant process, product, and personnel attributes that will be displayed to the user. Determine which attributes are controllable by the user. Determine the model boundaries Select or create an appropriate model. Add any lesson specific model components. Automate all parts of the model that are not relevant to the lesson. Specify values for the scenarios (e.g. the number of engineers) Determine thresholds for judging student performance. 5. Validation Verify the model s behavior Verify that the scenarios are realistic Verify that the thresholds for student performance are satisfactory with respect to the training objectives given in step 1.

4 Table 2. The potential benefits of system dynamics flight simulation. Attribute Realism Duration Extensibility Repeatability Measurability Benefit The results of the student s decisions are animated. Students can immediately compare the simulated project s results with what they had planned. Any project can be simulated and one model can easily run multiple scenarios. A scenario can be repeated until it is mastered. The simulator can assess a student s abilities in order to tailor the training to the student. Also, the simulator can evaluate each student s abilities to verify the training objectives were satisfied. dynamics model. After the survey, student teams were formed (including students from industry taking the course via real-time televised broadcasts). Each team was given the role of managing a simulated project. The project was simulated on a training tool built upon a validated, comprehensive model of the concurrent incremental development process created by [9]. All teams were introduced to the details of the project and given historical metrics from past projects. The project was a two increment development project estimated at 40,000 assembly equivalent lines of code. Details of the development process, product, and personnel, including a project plan based upon COCOMO cost estimation data, was provided to the students. The first increment was run without student control and ends on time, within budget, and at the required quality standards. This allowed the students to become familiar with the simulation tool and the simulated project. The student teams were then presented the problem of replanning the second increment with respect to a new 10% increase in product requirements. The controls available to the student teams given at the bottom of Figure 3 are: increase mandatory worker overtime, hire more inexperienced or experienced engineers, modify the amount of engineer effort allocated to quality assurance activities, extend the scheduled completion date, and cut the product functionality by up to 10%. The teams choose their strategy based upon the following guidelines: the project is considered a failure if it does not have a shorter cycle time, fewer defects, and lower cost than the same project developed with no changes in the project plan; and successful projects are judged by their cycle time, quality (consisting of the number of delivered defects and the delivered product s functionality), and cost (consisting of the number of inexperienced and experienced engineer days multiplied by their costs). The student teams then defined their plan and documented their expected results. In class, several student teams strategies were introduced then played out on the simulator. The whole class watched the result of the teams development plan unfold as six months of the development project played out in a matter of minutes. The students could graphically see the changing value of discovered defects, engineering productivity, etc. The results were then discussed and compared to the performance criteria, the team s expected results, and other teams results. The students were then surveyed again and asked their opinions of the exercise. Of the twelve teams that participated, three performed better than the unmodified project plan in cycle time, quality, and cost. All teams performed better in one of the three areas. The most successful strategies involved some combination of: pushing back the scheduled completion date to handle the new development work, increasing the number of experienced engineers on the project, and forcing worker overtime. The least successful strategies involved adding inexperienced engineers who introduced more defects during development and thus more unexpected rework. As a result of the exercise, the students gained some insight into the dynamics of a large development project as evidenced by the difference between their initial and final surveys.

5 Figure 3. A user interface of the software project management training tool. 6: Future Work We are continuing to expand and refine the capabilities of our software project management simulator for use in both academia and industry. In academia our target audience of users consists of graduate students in a project management course and undergraduates learning basic software project management in an introductory software engineering course. In industry we are teaming up with a local software development organization to provide support for their project management training. We are also teaming with a management professor to provide higher level software project management training to non-technical project managers. We are also in the process of creating custom interfaces to our simulator rather than utilizing the standard interfaces provided by system dynamics modeling software. Expansions of our modeling capabilities are planned to reflect the key software engineering practices reflected in the Software Engineering Institute Capability Maturity Model. In particular we will be expanding our simulator to reflect software risk management as well as cost of quality issues. References

6 [1] Abdel-Hamid, T., Madnick S., Software Project Dynamics An Integrated Approach, Prentice-Hall, Englewood Cliffs, New Jersey, [2] Abdel-Hamid, T., "Thinking in Circles," American Programmer, May 1993, pp [3] Boehm, B., Software Engineering Economics, Prentice-Hall, Englewood Cliffs, New Jersey, [4] Forrester, J., Industrial Dynamics, The M.I.T. Press, Cambridge, MA, [5] Jones, C., Applied Software Measurement: Assuring Productivity and Quality, McGraw-Hill, New York, [6] Richardson, G., Pugh, A., Introduction to System Dynamics Modeling with DYNAMO, The M.I.T. Press, Cambridge, MA, [7] Rubin, H., Johnson, M., Yourdon, E., "With the SEI as My Copilot Using Software Process 'Flight Simulation' to Predict the Impact of Improvements in Process Maturity," American Programmer, September 1994, pp [8] Statz, J., "Training Effective Project Managers," American Programmer, June 1994, pp [9] Tvedt, J., An Extensible Model for Evaluating the Impact of Process Improvements on Software Development Cycle Time, Ph.D. Dissertation, Arizona State University, Tempe, Arizona, 1996.

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 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 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

Integrating Risk Management into an Undergraduate Software Engineering Course

Integrating Risk Management into an Undergraduate Software Engineering Course Integrating Risk Management into an Undergraduate Software Engineering Course James S. Collofello Department of Computer Science and Engineering Tempe, Arizona 85287-5406 collofello@asu.edu Andrew K. Pinkerton

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

Maturity, motivation and effective learning in projects - benefits from using industrial clients

Maturity, motivation and effective learning in projects - benefits from using industrial clients Maturity, motivation and effective learning in projects - benefits from using industrial clients C Johansson Ericsson Software Technology AB/University of Karlskrona/Ronneby P Molin University of Karlskrona/Ronneby,

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

Dynamic Change Management for Fast-tracking Construction Projects

Dynamic Change Management for Fast-tracking Construction Projects Dynamic Change Management for Fast-tracking Construction Projects by Moonseo Park 1 ABSTRACT: Uncertainties make construction dynamic and unstable, mostly by creating non value-adding change iterations

More information

Developing and Teaching a Hybrid Software Engineering Introductory Course

Developing and Teaching a Hybrid Software Engineering Introductory Course Developing and Teaching a Hybrid Software Engineering Introductory Course Anna Koufakou 1 Florida Gulf Coast University Abstract This paper summarizes the author s experiences in developing and teaching

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

Survey Results and Further Issues in Construction Automation Education

Survey Results and Further Issues in Construction Automation Education 327 Survey Results and Further Issues in Construction Automation Education Dr. R. Navon Lecturer, Faculty of Civil Engineering Senior Research Engineer, National Building Research Institute Technion -

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

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 28 COCOMO Model Specific Instructional Objectives At the end of this lesson the student would be able to: Differentiate among organic, semidetached and embedded

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

Recent Results in Software Process Modeling

Recent Results in Software Process Modeling Recent Results in Software Process Modeling Ray Madachy, Ph.D. C-bridge Internet Solutions University of Southern California Center for Software Engineering rmadachy@c-bridge.com, madachy@usc.edu 1 Introduction

More information

Monte Carlo Simulation for Software Cost Estimation. Pete MacDonald Fatma Mili, PhD.

Monte Carlo Simulation for Software Cost Estimation. Pete MacDonald Fatma Mili, PhD. Monte Carlo Simulation for Software Cost Estimation Pete MacDonald Fatma Mili, PhD. Definition Software Maintenance - The activities involved in implementing a set of relatively small changes to an existing

More information

PROCESS IMPROVEMENT CAPABILITY MATURITY MODEL

PROCESS IMPROVEMENT CAPABILITY MATURITY MODEL PROCESS IMPROVEMENT CAPABILITY MATURITY MODEL Immature versus Mature Software Organisations In an immature software organisation, software processes are generally improvised by practitioners and their

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

HOW TO SUCCESSFULLY USE SOFTWARE PROJECT SIMULATION FOR EDUCATING SOFTWARE PROJECT MANAGERS

HOW TO SUCCESSFULLY USE SOFTWARE PROJECT SIMULATION FOR EDUCATING SOFTWARE PROJECT MANAGERS HOW TO SUCCESSFULLY USE SOFTWARE PROJECT SIMULATION FOR EDUCATING SOFTWARE PROJECT MANAGERS Patricia Mandl-Striegnitz 1 Abstract A crucial factor for the success or failure of software development projects

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

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

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

TEACHING QUALITY ASSURANCE AND PROJECT MANGEMENT TO UNDERGRDUATE COMPUTING STUDENTS IN PAKISTAN

TEACHING QUALITY ASSURANCE AND PROJECT MANGEMENT TO UNDERGRDUATE COMPUTING STUDENTS IN PAKISTAN TEACHING QUALITY ASSURANCE AND PROJECT MANGEMENT TO UNDERGRDUATE COMPUTING STUDENTS IN PAKISTAN ABSTRACT Zaigham Mahmood University of Derby, UK School of Computing, University of Derby, Derby, DE22 1GB,

More information

Cost Estimation Strategies COST ESTIMATION GUIDELINES

Cost Estimation Strategies COST ESTIMATION GUIDELINES Cost Estimation Strategies Algorithmic models (Rayleigh curve Cost in week t = K a t exp(-a t 2 ) Expert judgment (9 step model presented later) Analogy (Use similar systems) Parkinson (Work expands to

More information

Lessons from Software Work Effort Metrics 1

Lessons from Software Work Effort Metrics 1 Lessons from Software Work Effort Metrics 1 Karl E. Wiegers Process Impact www.processimpact.com How many of these questions about your software development organization can you answer with confidence?

More information

CUT COSTS, NOT PROJECTS

CUT COSTS, NOT PROJECTS CUT COSTS, NOT PROJECTS Understanding and Managing Software Development Costs A WEBINAR for State of Washington Agencies Critical Logic, Inc. July 9 2009 Starting at 3pm, Pacific Daylight Time Critical

More information

The ROI of Systems Engineering: Some Quantitative Results

The ROI of Systems Engineering: Some Quantitative Results The ROI of Systems Engineering: Some Quantitative Results Barry Boehm Center for Systems and Software Engineering University of Southern California boehm@usc.edu Ricardo Valerdi Lean Aerospace Initiative,

More information

Driving Quality Improvement and Reducing Technical Debt with the Definition of Done

Driving Quality Improvement and Reducing Technical Debt with the Definition of Done Driving Quality Improvement and Reducing Technical Debt with the Definition of Done Noopur Davis Principal, Davis Systems Pittsburgh, PA NDavis@DavisSys.com Abstract This paper describes our experiences

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

MKS Integrity & CMMI. July, 2007

MKS Integrity & CMMI. July, 2007 & CMMI July, 2007 Why the drive for CMMI? Missed commitments Spiralling costs Late delivery to the market Last minute crunches Inadequate management visibility Too many surprises Quality problems Customer

More information

V. Phani Krishna et al, / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 2 (6), 2011, 2915-2919

V. Phani Krishna et al, / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 2 (6), 2011, 2915-2919 Software Quality Assurance in CMM and XP- A Comparative Study CH.V. Phani Krishna and Dr. K.Rajasekhara Rao CSE Department, KL University, Guntur dt., India. Abstract Software Quality Assurance is a planned

More information

Manual Techniques, Rules of Thumb

Manual Techniques, Rules of Thumb Seminar on Software Cost Estimation WS 2002/2003 Manual Techniques, Rules of Thumb Pascal Ziegler 1 Introduction good software measurement and estimation are important simple methods are widely used simple,

More information

PUBLIC RELEASE PATENT AND TRADEMARK OFFICE. Inadequate Contractor Transition Risks Increased System Cost and Delays

PUBLIC RELEASE PATENT AND TRADEMARK OFFICE. Inadequate Contractor Transition Risks Increased System Cost and Delays PUBLIC RELEASE PATENT AND TRADEMARK OFFICE Inadequate Contractor Transition Risks Increased System Cost and Delays Inspection Report No. OSE-10084-8-0001 / December 1997 Office of Systems Evaluation PTO

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

Stochastic simulation of risk factor potential e ects for software development risk management

Stochastic simulation of risk factor potential e ects for software development risk management The Journal of Systems and Software 59 2001) 247±257 www.elsevier.com/locate/jss Stochastic simulation of risk factor potential e ects for software development risk management Dan X. Houston a, *, Gerald

More information

TABLE 7-1. Software Reliability Prediction Techniques

TABLE 7-1. Software Reliability Prediction Techniques 7.0 PREDICTION Reliability prediction is useful in a number of ways. A prediction methodology provides a uniform, reproducible basis for evaluating potential reliability during the early stages of a project.

More information

Teaching Software Engineering Using Simulation Games

Teaching Software Engineering Using Simulation Games Teaching Software Engineering Using Simulation Games Emily Oh Navarro, Alex Baker, André van der Hoek School of Information and Computer Science University of California, Irvine Irvine, CA 92697-3425 USA

More information

The Risk Management Process Defined

The Risk Management Process Defined Automating Risk Management with Rational RequisitePro Cindy Van Epps, Rational Software Software development is inherently a risky business. In his book Assessment and Control of Software Risks, Capers

More information

Risk Management for IT Projects

Risk Management for IT Projects Introduction There are a variety of standards associated with risk management including PMI s Project Management Body of Knowledge (PMBOK), Australia-New Zealand ANZ- 4360, International Standards Organization

More information

Building Reusable Testing Assets for a Product Line

Building Reusable Testing Assets for a Product Line Building Reusable Testing Assets for a Product Line John D. McGregor Visiting Scientist - SEI Senior Partner - Korson-McGregor Associate Professor - Clemson University johnmc@cs.clemson.edu Qualifications

More information

Business Process Reengineering (BPR) for Engineering Management (EM) Majors: Industry Perspective and Students Feedback

Business Process Reengineering (BPR) for Engineering Management (EM) Majors: Industry Perspective and Students Feedback Business Process Reengineering (BPR) for Engineering Management (EM) Majors: Industry Perspective and Students Feedback Rashmi Jain, PhD Associate Professor Stevens Institute of Technology Rashmi.Jain@stevens.edu

More information

True Cost of Developing Software

True Cost of Developing Software A CresSoft, Inc. White Paper True Cost of Developing Software CresSoft, Inc. 6025 S. Quebec Street, Suite 310 Englewood, CO 80111-4551 Ph: 303-488-2126 www.cressoft.com Executive Summary This document

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

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

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

In the IEEE Standard Glossary of Software Engineering Terminology the Software Life Cycle is:

In the IEEE Standard Glossary of Software Engineering Terminology the Software Life Cycle is: In the IEEE Standard Glossary of Software Engineering Terminology the Software Life Cycle is: The period of time that starts when a software product is conceived and ends when the product is no longer

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

Measurement Information Model

Measurement 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 information

A Software Development Process for Small Projects. Melissa L. Russ and John D. McGregor, Korson-McGregor, A Software Technology Company

A Software Development Process for Small Projects. Melissa L. Russ and John D. McGregor, Korson-McGregor, A Software Technology Company focus SE in the small A Software Development Process for Small Projects The authors development process integrates portions of an iterative, incremental process model with a quality assurance process and

More information

Software Development Life Cycle (SDLC)

Software Development Life Cycle (SDLC) Software Development Life Cycle (SDLC) Supriyo Bhattacharjee MOF Capability Maturity Model (CMM) A bench-mark for measuring the maturity of an organization s software process CMM defines 5 levels of process

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

SoftwareCostEstimation. Spring,2012

SoftwareCostEstimation. Spring,2012 SoftwareCostEstimation Spring,2012 Chapter 3 SOFTWARE COST ESTIMATION DB Liu Software Cost Estimation INTRODUCTION Estimating the cost of a software product is one of the most difficult and error-prone

More information

THE DYNAMICS OF SOFTWARE PROJECT SCHEDULING

THE DYNAMICS OF SOFTWARE PROJECT SCHEDULING REPOTrs AND ARTICLES THE DYNAMICS OF SOFTWARE PROJECT SCHEDULING TAREK K, ABDEL.HAMID and STUART E, MADNICK Massachusetts Institute of Technology Tarek K. Abdel-Hamid' s present research interests include

More information

CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS)

CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality

More information

Best Practices, Process

Best Practices, Process Best Practices, Process Nathaniel Osgood MIT 15.879 May 16, 2012 Recall: Process Suggestions Use discovery of bugs & oversights to find opportunities to improve Q & A and broader modeling process Use peer

More information

Why Aircraft Fly and Software Systems Don t

Why Aircraft Fly and Software Systems Don t Why Aircraft Fly and Software Systems Don t Robert Howe Copyright Verum Consultants BV 1 Contents Introduction Aeronautical Engineering Circuit Engineering Software Engineering Analytical Software Design

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

Rapid Bottleneck Identification A Better Way to do Load Testing. An Oracle White Paper June 2009

Rapid Bottleneck Identification A Better Way to do Load Testing. An Oracle White Paper June 2009 Rapid Bottleneck Identification A Better Way to do Load Testing An Oracle White Paper June 2009 Rapid Bottleneck Identification A Better Way to do Load Testing. RBI combines a comprehensive understanding

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

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

Name of chapter & details

Name of chapter & details Course Title Course Code Software Testing IT905 (Elective-IV) Theory : 03 Course Credit Practical : 01 Tutorial : 00 Course Learning Outcomes Credits : 04 On the completion of the course, students will

More information

Lessons in Estimating Agile vs. Waterfall Agile and Waterfall. Jerry Richardson, PMP Sohail Thaker, PMP

Lessons in Estimating Agile vs. Waterfall Agile and Waterfall. Jerry Richardson, PMP Sohail Thaker, PMP Lessons in Estimating Agile vs. Waterfall Agile and Waterfall Jerry Richardson, PMP Sohail Thaker, PMP 2 3 Workshop Overview Why do we estimate? Developing Waterfall estimates Developing Agile estimates

More information

SIMULATION SOFTWARE AND NUMERICAL ISSUES. Alexander L. Pugh Massachusetts Institute of Technology, Cambridge, USA

SIMULATION SOFTWARE AND NUMERICAL ISSUES. Alexander L. Pugh Massachusetts Institute of Technology, Cambridge, USA SIMULATION SOFTWARE AND NUMERICAL ISSUES Alexander L. Pugh Massachusetts Institute of Technology, Cambridge, USA Keywords: Adams integration method, adaptive integration methods, Euler integration method,

More information

Effective Peer Reviews: Role in Quality

Effective Peer Reviews: Role in Quality Effective Peer Reviews: Role in Quality Anil Chakravarthy (Anil_Chakravarthy@mcafee.com) Sudeep Das (Sudeep_Das@mcafee.com) Nasiruddin S (nasiruddin_sirajuddin@mcafee.com) Abstract The utility of reviews,

More information

Course duration Author name Course overview

Course duration Author name Course overview Course duration Author name Course overview Course 3: DESIGNING AND DEVELOPING YOUR ONLINE COURSE 3 hours Professor Jennifer C. Richardson, Ph.D., Purdue University The purpose of this course is to help

More information

Conceptualizing Total Quality Management (TQM) for Improving Housing Areas for the Urban Poor

Conceptualizing Total Quality Management (TQM) for Improving Housing Areas for the Urban Poor Conceptualizing Total Quality Management (TQM) for Improving Housing Areas for the Urban Poor Abstract This paper examines the concept of TQM and investigates and identifies factors in all three phases

More information

Enabling Economics-Driven System Development through Return-on-Investment Analysis of Software Defect Prevention

Enabling Economics-Driven System Development through Return-on-Investment Analysis of Software Defect Prevention 47th AIAA Aerospace Sciences Meeting Including The New Horizons Forum and Aerospace Exposition 5-8 January 29, Orlando, Florida AIAA 29-12 Enabling Economics-Driven System Development through Return-on-Investment

More information

AC 2012-3752: USE OF A COMPREHENSIVE SIMULATION IN TECH- NICAL MANAGEMENT COURSES

AC 2012-3752: USE OF A COMPREHENSIVE SIMULATION IN TECH- NICAL MANAGEMENT COURSES AC 2012-3752: USE OF A COMPREHENSIVE SIMULATION IN TECH- NICAL MANAGEMENT COURSES Dr. Allan W. Bjerkaas, Johns Hopkins University Ms. Mary L. Fletcher, Johns Hopkins University Mary Laurette (Laurie) Fletcher

More information

What is a life cycle model?

What is a life cycle model? What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each

More information

Repair Station Training Program

Repair Station Training Program AC 145 RSTP DATE: Repair Station Training Program Initiated by: AFS-300 TABLE OF CONTENTS CHAPTER 1. INTRODUCTION... 1 100. Purpose of this advisory circular (AC).... 1 101. Who should use this AC....

More information

Netstar Strategic Solutions Practice Development Methodology

Netstar Strategic Solutions Practice Development Methodology Netstar Strategic Solutions Practice Development Methodology Netstar Corporation Abstract This document contains a high level description of the development methodology used by the Netstar Strategic Solutions

More information

SEI Level 2, 3, 4, & 5 1 Work Breakdown Structure (WBS)

SEI Level 2, 3, 4, & 5 1 Work Breakdown Structure (WBS) SEI Level 2, 3, 4, & 5 1 Work Breakdown Structure (WBS) 1.0 SEI Product 1.1 SEI Level 2 Product 1.1.1 SEI Level 2 Process 1.1.1.1 Requirements Management Process 1.1.1.2 Software Project Planning Process

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

PA-14 CANADORE COLLEGE PROCEDURES MANUAL. STUDENT COURSE FEEDBACK Procedures:

PA-14 CANADORE COLLEGE PROCEDURES MANUAL. STUDENT COURSE FEEDBACK Procedures: PA-14 CANADORE COLLEGE PROCEDURES MANUAL STUDENT COURSE FEEDBACK Procedures: 1. Introduction 1.1. The Vice President Academic implements the student course feedback process by providing leadership, support,

More information

Software Quality Data Part 1: Basic and Derived Metrics

Software Quality Data Part 1: Basic and Derived Metrics Abstract We measure, quantify and report on software quality. But can we control it? Can we actually assure quality (as opposed to just measuring it)? This is the first of three papers in which we will

More information

Aircraft System Identification Theory and Practice Professional Development Short Course

Aircraft System Identification Theory and Practice Professional Development Short Course Aircraft System Identification Theory and Practice Professional Development Short Course Instructor: Dr. Eugene A. Morelli NASA Langley Research Center Hampton, Virginia Overview This course teaches the

More information

DYNAMIC RESOURCE SCHEDULING THE MOST EFFECTIVE WAY TO DELIVER FIELD BASED SERVICES

DYNAMIC RESOURCE SCHEDULING THE MOST EFFECTIVE WAY TO DELIVER FIELD BASED SERVICES DYNAMIC RESOURCE SCHEDULING THE MOST EFFECTIVE WAY TO DELIVER FIELD BASED SERVICES 2 FIELD BASED SERVICE GETTING EVERY STEP RIGHT PLANNING & SCHEDULING Manage planned, cyclical and responsive work Align

More information

LECTURE # 2. 4 P s in Project Management

LECTURE # 2. 4 P s in Project Management SOFTWARE PROJECT MANAGEMENT LECTURE # 2 4 P s in Project Management 15 th September, 2011 Contact Information 2 Instructor: Lecturer Department of Software Engineering U.E.T Taxila Email: ali.javed@uettaxila.edu.pk

More information

Business Case for Better Software. Practices

Business Case for Better Software. Practices 98 0 pp00-6 r6jm.ps 6//03 :3 PM Page Bchapter thirteen Practices Business Case for Better Software When you can measure what you are speaking about, and express it in numbers, you know something about

More information

StrateJect: An Interactive Game for Project Management Experiential Learning

StrateJect: An Interactive Game for Project Management Experiential Learning StrateJect: An Interactive Game for Project Management Experiential Learning Dr. Srinivas Telukunta 1, Mr. Srikanth Kumar Kota, Mr. Srinivas Potti, Mr. Harsha Shashank, Mr. Triloknath Reddy Abstract: The

More information

Waterloo Engineering Design Case Studies Group

Waterloo Engineering Design Case Studies Group Waterloo Engineering Design Case Studies Group Colin Campbell, Steve Lambert, Oscar Nespoli University of Waterloo, Ontario, Canada (http://design.uwaterloo.ca) 1. Abstract In this paper we provide an

More information

A CASE STUDY ON SOFTWARE PROJECT MANAGEMENT IN INDUSTRY EXPERIENCES AND CONCLUSIONS

A 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 information

Measurement Strategies in the CMMI

Measurement Strategies in the CMMI Measurement Strategies in the CMMI International Software Measurement & Analysis Conference 9-14 September 2007 Rick Hefner, Ph.D. Director, Process Management Northrop Grumman Corporation One Space Park,

More information

EVALUATING SOFTWARE ENGINEERING PRACTICES IN PALESTINE

EVALUATING SOFTWARE ENGINEERING PRACTICES IN PALESTINE International Journal of Soft Computing, Mathematics and Control (IJSCMC),Vol., No.1, February 1 EVALUATING SOFTWARE ENGINEERING PRACTICES IN PALESTINE Mohammed Alnajjar 1, Prof. Samy S. Abu Naser 1 Faculty

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

CMMI KEY PROCESS AREAS

CMMI KEY PROCESS AREAS CMMI KEY PROCESS AREAS http://www.tutorialspoint.com/cmmi/cmmi-process-areas.htm Copyright tutorialspoint.com A Process Area is a cluster of related practices in an area that, when implemented collectively,

More information

Software Engineering: Analysis and Design - CSE3308

Software Engineering: Analysis and Design - CSE3308 CSE3308/DMS/2004/25 Monash University - School of Computer Science and Software Engineering Software Engineering: Analysis and Design - CSE3308 Software Quality CSE3308 - Software Engineering: Analysis

More information

Creating Online Courses A Collaborative Design Process that Works

Creating Online Courses A Collaborative Design Process that Works Creating Online Courses A Collaborative Design Process that Works Online Courses Don t Simply Happen In recent years, the phrase online learning has taken a prominent seat whenever education reform is

More information

PROJECT MANAGEMENT PLAN TEMPLATE < PROJECT NAME >

PROJECT MANAGEMENT PLAN TEMPLATE < PROJECT NAME > PROJECT MANAGEMENT PLAN TEMPLATE < PROJECT NAME > Date of Issue: < date > Document Revision #: < version # > Project Manager: < name > Project Management Plan < Insert Project Name > Revision History Name

More information

An Oracle White Paper February 2010. Rapid Bottleneck Identification - A Better Way to do Load Testing

An Oracle White Paper February 2010. Rapid Bottleneck Identification - A Better Way to do Load Testing An Oracle White Paper February 2010 Rapid Bottleneck Identification - A Better Way to do Load Testing Introduction You re ready to launch a critical Web application. Ensuring good application performance

More information

A Tailored Approach to Effective and Efficient Software Process Maturity Improvement

A Tailored Approach to Effective and Efficient Software Process Maturity Improvement A Tailored Approach to Effective and Efficient Software Process Maturity Improvement Richard Léveillé Synopsys Inc. Mountain View, California, USA Richard.Leveille@synopsys.com Abstract A well defined

More information

The level of abstraction at

The level of abstraction at A Software Development Process for COTS-Based Information System Infrastructure: Part 1 Greg Fox, TRW Systems Integration Group Karen Lantner, EDS Steven Marcom, TRW Information Services Division The Infrastructure

More information

SOFTWARE RISK MANAGEMENT

SOFTWARE RISK MANAGEMENT SOFTWARE RISK MANAGEMENT Linda Westfall The Westfall Team westfall@idt.net PMB 383, 3000 Custer Road, Suite 270 Plano, TX 75075 972-867-1172 (voice) 972-943-1484 (fax) SUMMARY This paper reviews the basic

More information

Total Quality. 1) Quality

Total Quality. 1) Quality Total Quality 1) Quality 1.1 Quality assurance (QA) refers to the engineering activities implemented in a quality system so that requirements for a product or service will be fulfilled. It is the systematic

More information

Defect Management in Agile Software Development

Defect Management in Agile Software Development I.J. Modern Education and Computer Science, 2014, 3, 55-60 Published Online March 2014 in MECS (http://www.mecs-press.org/) DOI: 10.5815/ijmecs.2014.03.07 Defect Management in Agile Software Development

More information

Evolving a New Software Development Life Cycle Model SDLC-2013 with Client Satisfaction

Evolving a New Software Development Life Cycle Model SDLC-2013 with Client Satisfaction International Journal of Soft Computing and Engineering (IJSCE) ISSN: 2231-2307, Volume-3, Issue-1, March 2013 Evolving a New Software Development Life Cycle Model SDLC-2013 with Client Satisfaction Naresh

More information

Symantec Cyber Security Services: A Recipe for Disaster

Symantec Cyber Security Services: A Recipe for Disaster When On-The-Job Training Is a Recipe for Disaster How security simulation prepares IT staff for APTs, breaches and data leakages Contents Sometimes On-The-Job Training Is a Lousy Idea... 2 On-The-Job Training

More information

Achieving Business Analysis Excellence

Achieving Business Analysis Excellence RG Perspective Achieving Business Analysis Excellence Turning Business Analysts into Key Contributors by Building a Center of Excellence 11 Canal Center Plaza Alexandria, VA 22314 HQ 703-548-7006 Fax 703-684-5189

More information

Project Management. Massimo Felici Room 1402, JCMB, KB 0131 650 5899 mfelici@inf.ed.ac.uk

Project Management. Massimo Felici Room 1402, JCMB, KB 0131 650 5899 mfelici@inf.ed.ac.uk Project Management Massimo Felici Room 1402, JCMB, KB 0131 650 5899 mfelici@inf.ed.ac.uk Project Management Software project management is an essential part of software engineering Concerned with activities

More information