The Dynamics of Software Project Staffing: A System Dynamics Based Simulation Approach

Similar documents
Appendix: Dynamics of Agile Software Development Model Structure

Value Creation and Capture: A Model of the Software Development Process

STAFFING HUMAN RESOURCES

Workforce Planning for Human Resource Professionals

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

Abstract. Introduction

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

MATHEMATICAL MODELS OF TUMOR GROWTH INHIBITION IN XENOGRAFT MICE AFTER ADMINISTRATION OF ANTICANCER AGENTS GIVEN IN COMBINATION

Software Engineering Teams. Software Requirements & Project Management CITS3220

Time-line based model for software project scheduling

Cash flow is the life line of a business. Many start-up

Independent t- Test (Comparing Two Means)

System Behavior and Causal Loop Diagrams

Non Linear Control of a Distributed Solar Field

Kevin James. MTHSC 102 Section 1.5 Exponential Functions and Models

Integrating Newcomers into The Workplace Presented by Tonya Syvitski

Project Management. Software Projects vs. Engineering Projects

Introduction to Software Engineering. 9. Project Management

THE IMPACT OF A NURSING TRANSITIONS PROGRAM ON RETENTION AND COST. Rhonda R. Foster, Ed.D,MPH,MS,RN,NEA-BC Lynne A. Hillman, MEd,BEd,BScN

Diagnostic Tests. Brad Spring Director, Regulatory Affairs

Structural Transparency of a

ISO 9000 FOR SOFIYifrARE QUALITY SYSTEMS

Technical Report - Practical measurements of Security Systems

New Method for Optimum Design of Pyramidal Horn Antennas

Controller Design in Frequency Domain

And the Models Are System/Software Development Life Cycle. Why Life Cycle Approach for Software?

Simulation for Business Value and Software Process/Product Tradeoff Decisions

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

LAGUARDIA COMMUNITY COLLEGE CITY UNIVERSITY OF NEW YORK DEPARTMENT OF MATHEMATICS, ENGINEERING, AND COMPUTER SCIENCE

Temperature Control Loop Analyzer (TeCLA) Software

MCQ: Unit -2: Operation processes

TEST METRICS AND KPI S

Helping our clients win in the changing world of work:

ICS 121 Lecture Notes Spring Quarter 96

SE351a: Software Project & Process Management

Simulation Exercises to Reinforce the Foundations of Statistical Thinking in Online Classes

Multi-core real-time scheduling

Dynamic Change Management for Fast-tracking Construction Projects

9Lenses: Human Resources Suite

Measurement and Metrics Fundamentals. SE 350 Software Process & Product Quality

System Dynamics Modelling using Vensim

OPERATIONAL AMPLIFIERS

4. Software Project Management

Time series Forecasting using Holt-Winters Exponential Smoothing

A COMPARISON OF REGRESSION MODELS FOR FORECASTING A CUMULATIVE VARIABLE

Software Engineering Compiled By: Roshani Ghimire Page 1

System Modeling and Control for Mechanical Engineers

AC : MATHEMATICAL MODELING AND SIMULATION US- ING LABVIEW AND LABVIEW MATHSCRIPT

Chapter 3 Managing the Information Systems (IS) Project

Introduction to Economics, ECON 100:11 & 13 Multiplier Model

Falcon 9 Launch Vehicle NAFCOM Cost Estimates. August 2011 NASA Associate Deputy Administrator for Policy

Software Testing & Analysis (F22ST3): Static Analysis Techniques 2. Andrew Ireland

THE ROLE OF IV&V IN THE SOFTWARE DEVELOPMENT LIFE CYCLE

Chapter 7. (PMBOK Guide)

The Value of Consulting

City and County of Denver 2015 Employee Engagement Survey

Interaction between quantitative predictors

CTC Technology Readiness Levels

Performance Analysis of a Telephone System with both Patient and Impatient Customers

You Can Create Measurable Training Programs A White Paper For Training Professionals

THE PROJECT MANAGEMENT KNOWLEDGE AREAS

Systems Analysis and Design in a Changing World, Fifth Edition

Talent Acquisition STAFFING. By Steven V. Manderscheid, Ed.D. Learning Module Outline, Syllabus and Worksheets

Content and Process Theories of Motivation

Step Response of RC Circuits

Effect of Lead Time on Anchor-and-Adjust Ordering Policy in Continuous Time Stock Control Systems 1

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology

The HR Image Makeover: From Cost Center to Profit Maker

Digital Video Broadcasting By Satellite

A CONCEPTUAL DESIGN INITIATION FOR PRODUCTION-INVENTORY SYSTEM BASED ON MACROECONOMICS

Scheduling Algorithms in MapReduce Distributed Mind

Gap Analysis of the Change Control Process The History of a Transformed Change Control System

PENALTIES Employer Shared Responsibility under the Affordable Care Act (ACA)

G(s) = Y (s)/u(s) In this representation, the output is always the Transfer function times the input. Y (s) = G(s)U(s).

PTC Thermistor: Time Interval to Trip Study

LM1084 5A Low Dropout Positive Regulators

JOB DESCRIPTION FORM. Location: FHP

Accessing finance. Developing a business case for your resource efficiency projects

Coder ICD-10 Productivity: A Time Study

MAT12X Intermediate Algebra

Change Management in Projects

Transcription:

The Dynamics of Software Project Staffing: A System Dynamics Based Simulation Approach IEEE Transactions on Software Engineering(TSE, 1989) TAREK K. ABDEL-HAMID Park, Ji Hun 2010.5.10

Contents Introduction Background Overall approach Conclusion Discussion 2 / 24

Problem statement Introduction In 1989, people issues have gained recognition There is lack of researches on the whole life cycle of software development as an integral It is remarkably difficult to test hypothesis in software engineering In this paper, Suggests system dynamics simulation of software development process Integral model to describe software development process Formal method to verify hypothesis in software engineering 3 / 24

Background (1/3) System dynamics model Approach to understanding the behavior of complex system over time Looking at things as a whole Simulation large system with feedback and loop Source Rate LEVEL 4 / 24

Background (2/3) System dynamics model (cont d) Source Rate LEVEL Rate Sink Level : accumulation over time of flows Rate : The flows increasing and decreasing a level Input Auxiliary Output Input Auxiliary : Intangible, additional algebraic computations 5 / 24

Background (3/3) System dynamics model (cont d) Flows Information Flows Other Flows (e.g., People, Software) Constant Constant Variable cross-reference Influencing Variable that is on Other Diagram Variable Being Influenced on Other Diagram 6 / 24

Integrative System Dynamics Model of Software Development An integrative perspective Including management-type functions and software production-type activities Four subsystems Human resource management Progress status Software Production Work force available Work force needed Tasks completed Schedule Controlling Effort remaining Planning 7 / 24

The human resource management subsystem(1/8) CEILING ON NEW HIRES MOST NEW HIRES PER FT EXP STAFF HIRING DELAY AVEARAGE ASSIMILATION DELAY FTE EXPERIENCED WORKFORCE AVEARGE EMPLOYMENT TIME HIRING RATE NEWLY HIRED TRANFER RATE TRANSFER DELAY NEWLY HIRED WORKFORCE WORKFORCE ASSIMILATION RATE TOTAL WORKFORCE EXPERIENCED WORKFORCE EXPERIENCED TRANFER RATE TRANSFER DELAY QUIT RATE CEILING ON TOTAL WORKFORCE WORKFORCE GAP WF LEVEL SOUGHT WORKFORCE LEVEL NEEDED

The human resource management subsystem(2/8) Separating the workforce into two categories Orientation phase For newly hired and transferred from other project members Both technical as well as social dimensions They are less than fully productive Training process Training of new comers is usually carried by experienced staffs Newly hired It takes 15% ~ 25% of an experienced employee s time Experienced Communication overhead 9 / 24

The human resource management subsystem(3/8) Workforce level needed Indicated workforce level Workforce level which is necessary to complete the project on schedule Workforce level needed = (Indicated workforce level) * (WCWF) + (Current workforce) * (1 WCWF) WCWF : Willingness to Change WorkForce gap Weight factor Indicated workforce level Current workforce WCWF : 1-WCWF 10 / 24

The human resource management subsystem(4/8) Willingness to Change WorkForce(WCWF) WCWF-1 Capturing the pressures for workforce stability Increases when Time remaining / Time parameter increases Time parameter = Hiring delay + Average assimilation delay 11 / 24

The human resource management subsystem(5/8) Willingness to Change WorkForce(WCWF) (cont d) WCWF-2 In organizations such as NASA, serious schedule slippages could not be tolerated Increases when Scheduled completion date / Maximum tolerable completion date increases 12 / 24

The human resource management subsystem(6/8) Willingness to Change WorkForce(WCWF) (cont d) WCWF = MAX ( WCWF-1, WCWF-2) When the early phase of the project, WCWF-2 would be zero When the project reaches to the end, usually WCWF is dominated by WCWF-2 WCWF is an expression of a policy for managing Also, the shapes of the WCWF policy curves can be derived on the basis of historical project records 13 / 24

The human resource management subsystem(7/8) Ceiling on total workforce Workforce Level Needed level does not translate necessarily into actual hiring goal Full-time-equivalent Exp workforce Most new hires per FT Exp Staff Ceiling on new hires 14 / 24

The human resource management subsystem(8/8) Workforce gap Workforce Level Sought = MIN(CELTWF, WFNEED) CELTWF = CEiLing on Total WorkForce WFNEED = WorkForce level NEEDed Workforce gap = Total Workforce Workforce level sought Workforce gap < 0 Total Workforce Workforce gap > 0 Hiring delay Transfer delay Hire new employees Transfer workforce out of the project 15 / 24

The model s other subsystem(1/2) Software production subsystem Software development rate Software development productivity Man power Software developed Software testing rate Software testing productivity Software tested 16 / 24

The model s other subsystem (2/2) Planning Subsystem Indicated workforce = Man-days remaining Time remaining 40 = (per day) Required time to complete project Man-days remaining Workforce Level sought 17 / 24

Model experimentation (1/2) NASA s DE-A software development project NASA s launch of the DE-A satellite was tied to the completion of the DE-A software Because of strict deadline, workforce curve rises in the final stages of the project Brooks law? Adding manpower to a late software project makes it later 18 / 24

Model experimentation (2/2) The simulated project behavior The model s results conformed quite accurately to the project s actual behavior 19 / 24

Applicability of Brook s law to the DE-A Project (1/2) Time Parameter as a hiring policy No more hiring on the project s final stage It shows that the simulated project takes 60 more days than actual project Simulating DE-A with the time parameter set to 100 (Time parameter = Hiring delay + average assimilation delay In this case, WCWF = WCWF-1) 20 / 24

Applicability of Brook s law to the DE-A Project (2/2) Training & communication overhead vs. productivity gained Net impact of adding more people The cumulative contribution Impact of different staffing policies on cost and schedule Brook s law only holds in this range In this model, Brooks law is not supported totally 21 / 24

Contribution Conclusion An integrative model that captures the multiple functions of software development The computer simulation tools of system dynamics A formal model of the software development process Future work Model enhancement Extending on requirements analysis phase, multiple projects, large-scale project, quality New modeling applications 22 / 24

Pros Discussion It gives comprehensive simulation model Cons Considering this paper(book) s scope, more case studies are needed 23 / 24

Brooks law Brooks law Adding manpower to a late software project makes it later» F. P. Brooks, Fr. The Mythical Man-Month. It has not been formally tested 25 / 24

Average assimilation delay Average assimilation delay Formulated as a first-order exponential delay Average Time Delay (T) At any time (t), R(t) = L(t) / T Also, d/dt L(t) = -R(t) = -L(t)/T LEVEL (L) Rate (R) Finally, L(t) = L(0)e -t/t And it can be shown that the average time spent in the delay = T 26 / 24

Communication overhead Communication overhead Increases in proportion to n 2 where n is the size of team >> F. P. Brooks, Jr. The Mythical man-month >> H. D. Mills, Software development, IEEE Trans. Software Eng. Vol. SE-2 no. 5, Dec. 1976 27 / 24

How is progress measured? (1/2) How is progress measured in a s/w project? (1/2) In the early phase, progress is measured by the rate of expenditure of resources In this situation, MDPRNT = MDPNNT MDPRNT : Man-Days Perceived Remaining for New Tasks MDPNNT : Man-Days Perceived still Needed for New Task 28 / 24

How is progress measured? (2/2) How is progress measured in a s/w project? (2/2) MDPRNT = MDPNNT MDPNNT = TSKPRM / PRDPRD MDPRNT = TSKPRM / PRDPRD As a result, the assumption suggests that value of productivity is solely a f u n c t i o n of f u t u r e p r o j e c t i o n s PRDPRD = TSKPRM / MDPNNT TSKPRM : Tasks Perceived Remaining PRDPRD : Perceived Development Productivity As the project advances towards its final stages, ACTPRD = CUMTKD / CUMDMD ACTPRD : Actual Development Productivity CUMTKD : Cumulative Tasks Developed CUMDMD : Cumulative Man-Days Expended 29 / 24

De-A Project s actual statistics De-A Project s actual statistics Name Value Project size 24000 DSI Cost - Initial estimate 1100 man-days Cost - actual 2220 man-days Completion time - initial 320 days Completion time - actual 380 days Staffing-type parameter Average productivity of exp. staff vs. that for new hires 2 : 1 Hiring delay 1.5 months Average assimilation delay 1 month Average transfer delay 2 weeks Turnover rate 20 percent Average effort committed to train new hires 25 percent c KAIST SE LAB 2009