Three Things I Wish I Learned in School

Size: px
Start display at page:

Download "Three Things I Wish I Learned in School"

Transcription

1 Three Things I Wish I Learned in School Construx Software Builders, Inc. All Rights Reserved.

2 #1 Motion = Progress

3 The Cost of Defects X Phase in which a Defect Is Introduced Requirements Design Cost to Correct Construction Requirements Design Construction System test Post-Release Reference: [McConnell98] Phase in Which a Defect Is Corrected Software Development Best Practices 3

4 The Cost of Defects (cont) Decades of research confirm defect-cost increase Fagan, Michael E Design and Code Inspections to Reduce Errors in Program Development. IBM Systems Journal 15, no. 3: Humphrey, Watts S., Terry R. Snyder, and Ronald R. Willis Software Process Improvement at Hughes Aircraft. IEEE Software 8, no. 4 (July): Leffingwell, Dean, Calculating the Return on Investment from More Effective Requirements Management, American Programmer, 10(4):13-16 Willis, Ron R., et al, Hughes Aircraft s Widespread Deployment of a Continuously Improving Software Process, Software Engineering Institute/Carnegie Mellon University, CMU/SEI-98-TR-006, May 1998 Grady, Robert B An Economic Release Decision Model: Insights into Software Project Management. In Proceedings of the Applications of Software Measurement Conference, Orange Park, FL: Software Quality Engineering Shull, et al, What We Have Learned About Fighting Defects, Proceedings, Metrics IEEE; pp Boehm, Barry and Richard Turner, Balancing Agility and Discipline: A Guide for the Perplexed, Boston, Mass.: Addison Wesley, 2004 Software Development Best Practices 4

5 Frequency of Defects Code 7% Other 10% De s ign 27% Requirement 56% About 83% of of all all defects exist before a single line of of code is is written! Reference: [Mogyorodi03] Software Development Best Practices 5

6 Software Project Effort in Theory Requirements w% Design x% Construction y% Testing z% Total 100% Software Development Best Practices 6

7 Rework Percentage (R%) R% = Project effort spent on rework Total effort spent on project Estimates of of defect defect rework rework ranged ranged from from to to percent percent of of total total development effort effort (when (when no no form form of of peer peer review review is is used) used) [Fagan96] Software Development Best Practices 7

8 Software Project Effort in Practice Requirements w% Design x% Construction y% Testing z% Rework (R%) 51% Total 100% Rework Rework is is not not only only the the single single largest largest driver driver of of cost cost and and schedule on on a typical typical software project it is is larger larger than than all all others others combined! Software Development Best Practices 8

9 Early Defect Detection is Key Fix Here Not Here X Phase in which a Defect Is Introduced Requirements Design Cost to Correct Construction Requirements Design Construction System test Post-Release Phase in Which a Defect Is Corrected Software Development Best Practices 9

10 Inspections Critical examinations of software deliverables Performed by technically competent individuals who did not produce the deliverable being considered Identify defects as early in the software lifecycle as possible Defects can be removed while the cost of removal is still low Software Development Best Practices 10

11 Testing vs. Inspections Testing Inspections Effectiveness (%defects found) Efficiency (hours/defect found) Cost to repair (hours/defect fixed) 60% 70% 60% 90% References: [Jones99], [O Neill97], [Russell91], [Wagner06] Software Development Best Practices 11

12 #2 Estimate = Commitment

13 Estimates Have Probabilities There is no such thing as a single-point estimate that is correct/meaningful Probability of a specific schedule outcome All estimates include probabilities stated or implied (even if the estimator doesn t know it) Estimate probabilities are not symmetrically distributed about a mean Nominal Project Schedule (50/50 schedule) Schedule Reference: [Tockey05] Software Development Best Practices 13

14 Sources of Estimation Uncertainty Will the customer want Feature X? Will the customer want the cheap or expensive version of Feature X? If you implement the cheap version of Feature X, will the customer later want the expensive version after all? How will Feature X be designed? How long will it take to debug and correct mistakes made in implementing Feature X? Software Development Best Practices 14

15 Measuring Estimate Uncertainty Project: Framus Estimate Act/Est Scope defined 7 mos 1.43 Requirements 11 mos 0.91 Design 10 mos 1.00 Code 9 mos 1.11 Test 9.5 mos 1.05 Project 10 mos 1.00 Software Development Best Practices 15

16 Relative Error in Estimates Project schedule 1.6x 1.25x 1.15x 1.1x 1.0x 0.9x 0.85x 0.8x 0.6x Scope defined Requirements Design Code Test Project Software Development Best Practices 16

17 Relative Error in Estimates (cont) 2.0 R e l a t i v e V a l u e Scope defined Requirements Design Code Testing Actual Milestone Software Development Best Practices 17

18 The Cone of Uncertainty Project scope (effort, size, features) Project schedule 4x 1.6x 2x 1.25x 1.5x 1.15x 1.25x 1.0x 0.8x 1.1x 1.0x 0.9x 0.67x 0.85x 0.5x 0.8x 0.25x 0.6x Initial product definition Approved product definition Requirements specification Product design specification Detailed design specification Product Source: Software Cost Estimation with Cocomo II (Boehm 2000) Software Development Best Practices 18

19 Using Your Cone of Uncertainty 40 W e e k s Scope defined Requirements Design Code Testing Actual Milestone Software Development Best Practices 19

20 Cloud of Uncertainty? Project scope (effort, size, features) 4x 2x 1.5x 1.25x 1.0x 0.8x 0.67x 0.5x Product Definition Detailed Requirements Product Design Detailed Design Project schedule 1.6x 1.25x 1.15x 1.1x 1.0x 0.9x 0.85x 0.8x 0.25x 0.6x Time Software Development Best Practices 20

21 Cone of Uncertainty Given Fixed Schedule Priority Feature Best-case estimate Worst-case estimate 1 F F F F F F F F F F Software Development Best Practices 21

22 Cone of Uncertainty Given Fixed Schedule (cont) P r i o r i t i e d F e a t u r e s In Not sure Out Scope defined Requirements Design Code Testing Actual Milestone Software Development Best Practices 22

23 #3 One software process does not fit all projects

24 One Size Does Not Fit All Extent of Distribution Horizontal market Vertical market Custom, In-House Personal card game mailing-label printer sales-lead tracker useful wordprocessor macro website (brochure-ware) desktop publishing software video-store management software management information system e-commerce site, spreadsheet, tax program video-display driver insurance quote program realtime racetrack betting system, single race track desktop operatingsystem mainframe operating-system embedded pacemaker control, embedded fuelinjector system 777 flight-control software Applications Systems Required Reliability Life-critical systems Software Development Best Practices 24

25 Activity = Phase Software development consists of wellknown activities: Requirements Design Construction Test These activities may or may not be performed in phases Software Development Best Practices 25

26 The Two Extremes: 100% Sequential vs. 100% Iterative 100% Sequential (e.g., Waterfall Development) 100% 100% 100% 100% Requirements Design Construction System Test 100% Iterative (e.g., Extreme Programming) Iteration 1 Iteration 2 Iteration 3 Iteration 4 Iteration n Software Development Best Practices 26

27 A Spectrum of Software Processes Pure Waterfall Staged Delivery Planned Iterations Feature Driven Development Scrum XP RUP Plan-based lifecycles Production-oriented Development Agile lifecycles Research-oriented Development Software Development Best Practices 27

28 Selecting a Lifecycle Does the lifecycle meet the project s need to: Control cost and schedule? Provide progress visibility? Handle requirements or design uncertainty? Produce reliable, maintainable products? Deliver business value early (i.e., in stages)? Be simple to understand and easy to use? Software Development Best Practices 28

29 References [Fagan96] Michael Fagan, Foreword in Wheeler, Brykczynski, Meeson, Software Inspection - An Industry Best Practice, IEEE Computer Society Press, 1996 [Jones99] Capers Jones, Software Quality in 1999: What Works and What Doesn t, Software Quality Research Inc., 1999 [McConnell98] Steve McConnell, Software Project Survival Guide, Microsoft Press, 1998 [Mogyorodi03] Gary Mogyoridi, What is Requirements-Based Testing, Crosstalk, March 2003 [O Neill97] Don O Neill, Setting Up a Software Inspection Program, CrossTalk, February, 1997 [Russell91] Glen Russell, Experience with Inspection in Ultralarge- Scale Developments, IEEE Software, Vol 8, No 1, January, 1991 [Tockey05] Steve Tockey, Return on Software: Maximizing the Return on your Software Investment, Addison Wesley, 2005 [Wagner06] Stefan Wagner, A literature survey of the quality economics of defect-detection techniques, Proceedings of the 2006 ACM/IEEE International Symposium on Empirical Software Engineering ISESE '06, 2006 Software Development Best Practices 29

30 Contact Information Construx Delivering Software Project Success Training Consulting/Coaching Software Tools construx.com (425) Software Development Best Practices 30

The 10 Best Ideas in Software Development

The 10 Best Ideas in Software Development The 10 Best Ideas in Software Development 2006 Construx Software Builders, Inc. All Rights Reserved. www.construx.com Special Bonus: The 8 Worst Ideas! Most Key Ideas Are Not New Q: What are the most exciting/promising

More information

The 10 Most Important Ideas in Software Development

The 10 Most Important Ideas in Software Development Construx Software Development Best Practices The 10 Most Important Ideas in Software Development 2006 Construx Software Builders, Inc. All Rights Reserved. www.construx.com Most Key Ideas Are Not New Q:

More information

Business Case for Better Software Practices

Business Case for Better Software Practices BEST PRACTICES WHITE PAPER Business Case for Better Software Practices Steve McConnell, Chief Software Engineer, Construx Software Version 1, June 2008 In software organizations, the best organizations

More information

10 Keys to Successful Software Projects: An Executive Guide

10 Keys to Successful Software Projects: An Executive Guide 10 Keys to Successful Software Projects: An Executive Guide 2000-2006 Construx Software Builders, Inc. All Rights Reserved. www.construx.com Background State of the Art vs. State of the Practice The gap

More information

Agile Development and Software Architecture: Understanding Scale and Risk

Agile Development and Software Architecture: Understanding Scale and Risk Agile Development and Software Architecture: Understanding Scale and Risk Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Robert L. Nord SSTC, April 2012 In collaboration

More information

Lessons Learned in Software Project Outsourcing

Lessons Learned in Software Project Outsourcing Lessons Learned in Software Project Outsourcing 2000-2005 2005 Construx Software Builders, Inc. All Rights Reserved. www.construx.com Construx Delivering Software Project Success Outsourcing Outsourcing

More information

Software Development Process Selection Approaches

Software Development Process Selection Approaches The Journal of Applied Science Vol. 11 No. Vol. 2:45-50 11 No. 2 [2012] ISSN 1513-7805 Printed in Thailand Review Article Software Development Process Selection Approaches Phongphan Danphitsanuphan Department

More information

Software Quality Assurance in Agile, XP, Waterfall and Spiral A Comparative Study

Software Quality Assurance in Agile, XP, Waterfall and Spiral A Comparative Study Software Quality Assurance in Agile, XP, Waterfall and Spiral A Comparative Study S. Vijayakumar vijsy003@students.unisa.edu.au School of Computer and Information Science University of South Australia,

More information

The Business Case for Requirements Engineering

The Business Case for Requirements Engineering The Business Case for Requirements Engineering RE 2003 12 September 2003 Donald Firesmith Acquisition Improvement Team Acquisition Support Program Software Engineering Institute (SEI) Carnegie Mellon University

More information

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of

More information

Introduction to Agile Software Development

Introduction to Agile Software Development Introduction to Agile Software Development Word Association Write down the first word or phrase that pops in your head when you hear: Extreme Programming (XP) Team (or Personal) Software Process (TSP/PSP)

More information

Software Development s Low Hanging Fruit. www.construx.com

Software Development s Low Hanging Fruit. www.construx.com Software Development s Low Hanging Fruit www.construx.com Copyright Notice These class materials are 2007-2008 Construx Software Builders, Inc. All Rights Reserved. No part of the contents of this seminar

More information

A Survey of Plan-Driven Development Methodologies

A Survey of Plan-Driven Development Methodologies A Survey of Plan-Driven Development Methodologies Plan-driven methodologies have been utilized by organizations for many years. In this chapter, we provide an overview of three prominent, modern plan-driven

More information

Agile Processes and Methodologies: A Conceptual Study

Agile Processes and Methodologies: A Conceptual Study Agile Processes and Methodologies: A Conceptual Study Sheetal Sharma Amity School of Engineering & Technology Amity University Noida Sheetal.meenu@gmail.com Darothi Sarkar Amity School of Engineering &

More information

Use of Metrics in High Maturity Organizations

Use of Metrics in High Maturity Organizations Use of Metrics in High Maturity Organizations Pankaj Jalote Department of Computer Science and Engineering Indian Institute of Technology Kanpur Kanpur, India 208016 Jalote@iitk.ac.in Summary A high maturity

More information

Optimization of Software Quality using Management and Technical Review Techniques

Optimization of Software Quality using Management and Technical Review Techniques Optimization of Software Quality using Management and Technical Review Techniques Inibehe Emmanuel Akpannah Post Graduate Student (MSc. Information Technology), SRM University, Chennai, India Abstract

More information

SOFTWARE QUALITY IN 2012: A SURVEY OF THE STATE OF THE ART

SOFTWARE QUALITY IN 2012: A SURVEY OF THE STATE OF THE ART Namcook Analytics LLC SOFTWARE QUALITY IN 2012: A SURVEY OF THE STATE OF THE ART Capers Jones, CTO Web: www.namcook.com Email: Capers.Jones3@GMAILcom May 1, 2012 SOURCES OF QUALITY DATA Data collected

More information

Toward Quantitative Process Management With Exploratory Data Analysis

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

How To Develop An Application

How To Develop An Application What is Application Lifecycle Management? David Chappell Sponsored by Microsoft Corporation Copyright 2014 Chappell & Associates Defining application lifecycle management (ALM) isn t easy. Different people

More information

Requirements-Based Testing: Encourage Collaboration Through Traceability

Requirements-Based Testing: Encourage Collaboration Through Traceability White Paper Requirements-Based Testing: Encourage Collaboration Through Traceability Executive Summary It is a well-documented fact that incomplete, poorly written or poorly communicated requirements are

More information

Review of Software Development Methodologies Used in Software Design

Review of Software Development Methodologies Used in Software Design ISSN 2278-3091 Volume 3, No.5, September - October 2014 Er. Sheilly Padda et al., International Journal of Advanced Trends in Computer Science and Engineering, 3(5), September-October 2014, 88-93 International

More information

Lifecycle Models: Waterfall / Spiral / EVO

Lifecycle Models: Waterfall / Spiral / EVO Lifecycle Models: Waterfall / Spiral / EVO Dror Feitelson Basic Seminar on Software Engineering Hebrew University 2011 Lifecycle The sequence of actions that must be performed in order to build a software

More information

Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler

Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler Best-Practice Software Engineering: Software Processes to Support Project Success Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems Dietmar.Winkler@qse.ifs.tuwien.ac.at

More information

Agility, Uncertainty, and Software Project Estimation Todd Little, Landmark Graphics

Agility, Uncertainty, and Software Project Estimation Todd Little, Landmark Graphics Agility, Uncertainty, and Software Project Estimation Todd Little, Landmark Graphics Summary Prior studies in software development project estimation have demonstrated large variations in the estimated

More information

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

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

More information

Agile and Secure: Can We Be Both?

Agile and Secure: Can We Be Both? Agile and Secure: Can We Be Both? OWASP AppSec Seattle Oct 2006 Keith Landrus Director of Technology Denim Group Ltd. keith.landrus@denimgroup.com (210) 572-4400 Copyright 2006 - The OWASP Foundation Permission

More information

Agile, TSP SM, CMMI pick one, pick two, pick all three!

Agile, TSP SM, CMMI pick one, pick two, pick all three! 1 Agile, TSP SM, CMMI pick one, pick two, pick all three! Daniel M. Roy Cape Town SPIN 20 February, 2008 PSP, TSP, Personal Software Process and Team Software Process are service marks of CMU CMM is and

More information

Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK

Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK IBM Software Group Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK Jean-Louis Maréchaux Software IT Specialist IBM Rational

More information

An Assessment between Software Development Life Cycle Models of Software Engineering

An Assessment between Software Development Life Cycle Models of Software Engineering International Journal of Electronics and Computer Science Engineering 700 Available Online at www.ijecse.org ISSN- 2277-1956 An Assessment between Software Development Life Cycle Models of Software Engineering

More information

A Survey of Software Development Process Models in Software Engineering

A Survey of Software Development Process Models in Software Engineering , pp. 55-70 http://dx.doi.org/10.14257/ijseia.2015.9.11.05 A Survey of Software Development Process Models in Software Engineering Iqbal H. Sarker 1, Faisal Faruque 1, Ujjal Hossen 2 and Atikur Rahman

More information

Agile Software Engineering Practice to Improve Project Success

Agile Software Engineering Practice to Improve Project Success Agile Software Engineering Practice to Improve Project Success Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems dietmar.winkler@qse.ifs.tuwien.ac.at

More information

Part III of Course (Classical Software System Development)

Part III of Course (Classical Software System Development) Part III of Course (Classical Software System Development) Source: Jon McCormack Website, Monash University, Australia, http://www.csse.monash.edu.au/~jonmc/cse2305/topics/07.13.sweng1/ html/waterfall.gif

More information

SOFTWARE PROCESS MODELS

SOFTWARE PROCESS MODELS SOFTWARE PROCESS MODELS Slide 1 Software Process Models Process model (Life-cycle model) - steps through which the product progresses Requirements phase Specification phase Design phase Implementation

More information

Introduction to Software Project Management. CITS3220 Software Requirements & Project Management

Introduction to Software Project Management. CITS3220 Software Requirements & Project Management Introduction to Software Project Management CITS3220 Software Requirements & Project Management "A project gets a year late one day at a time." "Anything that can be changed will be changed until there

More information

2015 Defense Health Information Technology Symposium Implementation of Agile SCRUM Software Development Methodology

2015 Defense Health Information Technology Symposium Implementation of Agile SCRUM Software Development Methodology Mr. Christopher Harrington, PM Clinical Support, Solution Delivery Division Mr. James Huber, Healthcare Data Analyst, DHA Decision Support 2015 Defense Health Information Technology Symposium Implementation

More information

Software Engineering. An Introduction. Fakhar Lodhi

Software Engineering. An Introduction. Fakhar Lodhi Software Engineering An Introduction Fakhar Lodhi 1 Engineering The science concerned with putting scientific knowledge to practical use. Webster s Dictionary Physics versus Electrical Engineering 2 Software

More information

Management Science Letters

Management Science Letters Management Science Letters () Contents lists available at GrowingScience Management Science Letters homepage: www.growingscience.com/msl A feasibility study for using agile contractors to promote mass

More information

the state of the practice Variations in Software Development Practices

the state of the practice Variations in Software Development Practices focus the state of the practice invited article Variations in Software Development Practices Capers Jones, Software Productivity Research My colleagues and I at Software Productivity Research gathered

More information

Software Quality and Assurance in Waterfall model and XP - A Comparative Study

Software Quality and Assurance in Waterfall model and XP - A Comparative Study Software Quality and Assurance in Waterfall model and XP - A Comparative Study Dr. Sana a Jawdat Khalaf Sana_j_11@hotmail.com Dr. Mohamed Noor Al-Jedaiah m_aljedaiah@ammanu.edu.jo Abstract: -Dealing with

More information

Article 3, Dealing with Reuse, explains how to quantify the impact of software reuse and commercial components/libraries on your estimate.

Article 3, Dealing with Reuse, explains how to quantify the impact of software reuse and commercial components/libraries on your estimate. Estimating Software Costs This article describes the cost estimation lifecycle and a process to estimate project volume. Author: William Roetzheim Co-Founder, Cost Xpert Group, Inc. Estimating Software

More information

A Comparison between Five Models of Software Engineering

A Comparison between Five Models of Software Engineering International Journal of Research in Information Technology (IJRIT) www.ijrit.com ISSN 2001-5569 A Comparison between Five Models of Software Engineering Surbhi Gupta, Vikrant Dewan CSE, Dronacharya College

More information

Comparing Plan-Driven and Agile Project Approaches

Comparing Plan-Driven and Agile Project Approaches Comparing Plan-Driven and Agile Project Approaches A Personal Perspective Presented by: Craig D. Wilson Matincor, Inc. Copyright 2006-2010 2010 Outline Introduction to System Development Methodology Contrasting

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

RUP for Software Development Projects

RUP for Software Development Projects RUP for Software Development Projects George Merguerian www.bmc-online.com 1 Specialists in Global Project Management Brussels Frankfurt Houston Istanbul Milan Ottawa Shanghai Singapore Warsaw Washington

More information

Be Careful What You Pay For: Applying the Fundamentals of Quality to Software Acquisition

Be Careful What You Pay For: Applying the Fundamentals of Quality to Software Acquisition Be Careful What You Pay For: Applying the Fundamentals of Quality to Software Acquisition SSTC 2012 26 April 2012 Copyright 2012 The MITRE Corporation Approved for Public Release; Distribution Unlimited.

More information

The most suitable system methodology for the proposed system is drawn out.

The most suitable system methodology for the proposed system is drawn out. 3.0 Methodology 3.1 Introduction In this chapter, five software development life cycle models are compared and discussed briefly. The most suitable system methodology for the proposed system is drawn out.

More information

10x Engineering Principles

10x Engineering Principles 10x Engineering Principles A Construx Seminar Preview 2007 Construx Software www.construx.com Many Good Development Approaches Structured Development Computer Aided Software Engineering Rapid Application

More information

The Effort Distribution Pattern Analysis of Three Types of Software Quality Assurance Activities and Process Implication: an Empirical Study

The Effort Distribution Pattern Analysis of Three Types of Software Quality Assurance Activities and Process Implication: an Empirical Study The Effort Distribution Pattern Analysis of Three Types of Software Quality Assurance Activities and Process Implication: an Empirical Study Qi Li University of Southern California 941 w. 37th Place Los

More information

SECURE SOFTWARE DEVELOPMENT PROCESS FOR EMBEDDED SYSTEMS CONTROL

SECURE SOFTWARE DEVELOPMENT PROCESS FOR EMBEDDED SYSTEMS CONTROL SECURE SOFTWARE DEVELOPMENT PROCESS FOR EMBEDDED SYSTEMS CONTROL Sanjai Gupta 1, Md Faisal 2, Mohammed Hussain 3 1 Department of Computer Science & Engineering, CMJ University, Meghalaya, India 1 guptasanjay3@gmail.com

More information

Moving from a Plan Driven Culture to Agile Development

Moving from a Plan Driven Culture to Agile Development Moving from a Plan Driven Culture to Agile Development Lessons Learned ICSE 2005, St. Louis, 20-May-2005 Michael Hirsch Zühlke Engineering AG hm@zuehlke.com Topic of this Talk In scope: Experiences and

More information

10 Deadly Sins of Software Estimation

10 Deadly Sins of Software Estimation 10 Deadly Sins of Software Estimation Steve McConnell 2002 Construx Software Builders, Inc. All Rights Reserved. www.construx.com Construx Delivering Software Project Success Background Estimation Book

More information

Software Development Lifecycle. Steve Macbeth Group Program Manager Search Technology Center Microsoft Research Asia

Software Development Lifecycle. Steve Macbeth Group Program Manager Search Technology Center Microsoft Research Asia Software Development Lifecycle Steve Macbeth Group Program Manager Search Technology Center Microsoft Research Asia About Me Currently manage a team of 10 Program Managers at Microsoft Research Asia Over

More information

Software Project Management using an Iterative Lifecycle Model

Software Project Management using an Iterative Lifecycle Model Software Corporation Software Project Management using an Iterative Lifecycle Model 1 Objectives of this Presentation To understand what the Unified Process is To understand the iterative lifecycle approach

More information

The Art & Science of Software Process

The Art & Science of Software Process The Art & Science of Software Process Steven Teleki Vice President, Software Engineering, Yash & Lujan Consulting, Inc. Chairman, IEEE Computer Society, Austin Chapter Why Art & Science? When asked why

More information

Introducing Agility into a Phase Gate Process

Introducing Agility into a Phase Gate Process B E S T P R A C T I C E S W H I T E P A P E R Introducing Agility into a Phase Gate Process Jenny Stuart, Vice President of Consulting, Construx Software Version 1.1, June 2011 Contributors Earl Beede,

More information

MANAGING CRITICAL KNOWLEDGE MANAGEMENT ISSUES IN GLOBAL SOFTWARE DEVELOPMENT PROJECTS

MANAGING CRITICAL KNOWLEDGE MANAGEMENT ISSUES IN GLOBAL SOFTWARE DEVELOPMENT PROJECTS MANAGING CRITICAL KNOWLEDGE MANAGEMENT ISSUES IN GLOBAL SOFTWARE DEVELOPMENT PROJECTS Che-Hung Liu, Florida International University, cliu001@fiu.edu Roman Wong, Barry University, rwong@barry.edu Yen-Tzu

More information

Software Development Life Cycle Models - Process Models. Week 2, Session 1

Software Development Life Cycle Models - Process Models. Week 2, Session 1 Software Development Life Cycle Models - Process Models Week 2, Session 1 PROCESS MODELS Many life cycle models have been proposed } Traditional Models (plan-driven) } Classical waterfall model } Iterative

More information

Software Project Management

Software Project Management Software Project Management Objectives Introduce students to a variety of approaches and techniques in SPM Use current SPM tools Develop new SPM ideas Document reading, experiences and ideas Improve writing

More information

MANAGED AGILE DEVELOPMENT MAKING AGILE WORK FOR YOUR BUSINESS. Chuck Cobb May 20, 2013

MANAGED AGILE DEVELOPMENT MAKING AGILE WORK FOR YOUR BUSINESS. Chuck Cobb May 20, 2013 MANAGED AGILE DEVELOPMENT MAKING AGILE WORK FOR YOUR BUSINESS Chuck Cobb May 20, 2013 The Pendulum Effect Traditional Waterfall Approaches Modern Agile Approaches Hybrid Approaches 5/20/2013 2012 Charles

More information

Extreme Programming, an agile software development process

Extreme Programming, an agile software development process Extreme Programming, an agile software development process Paul Jackson School of Informatics University of Edinburgh Recall: Waterfall and Spiral Models Waterfall: Spiral: Split project into controlled

More information

How To Understand The Limitations Of An Agile Software Development

How To Understand The Limitations Of An Agile Software Development A Cynical View on Agile Software Development from the Perspective of a new Small-Scale Software Industry Apoorva Mishra Computer Science & Engineering C.S.I.T, Durg, India Deepty Dubey Computer Science

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

Unit 9: Software Economics

Unit 9: Software Economics Unit 9: Software Economics Objectives Ð To provide an empirical view of where the effort and money goes when we build large software systems. Ð To suggest ways of reducing and controlling software costs.

More information

CS4507 Advanced Software Engineering

CS4507 Advanced Software Engineering CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development

More information

REVIEW ON THE EFFECTIVENESS OF AGILE UNIFIED PROCESS IN SOFTWARE DEVELOPMENT WITH VAGUE SYSTEM REQUIREMENTS

REVIEW ON THE EFFECTIVENESS OF AGILE UNIFIED PROCESS IN SOFTWARE DEVELOPMENT WITH VAGUE SYSTEM REQUIREMENTS REVIEW ON THE EFFECTIVENESS OF AGILE UNIFIED PROCESS IN SOFTWARE DEVELOPMENT WITH VAGUE SYSTEM REQUIREMENTS Lisana Universitas Surabaya (UBAYA), Raya Kalirungkut, Surabaya, Indonesia E-Mail: lisana@ubaya.ac.id

More information

10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design

10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design Session # 3 Contents Systems Analysis and Design 2 1 Tiers of Software Development 10/4/2013 Information system development project Realistic behavior 3 Information system development project System Development

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

White Paper Software Quality Management

White Paper Software Quality Management White Paper What is it and how can it be achieved? Successfully driving business value from software quality management is imperative for many large organizations today. Historically, many Quality Assurance

More information

ASSESSMENT OF SOFTWARE PROCESS MODELS

ASSESSMENT OF SOFTWARE PROCESS MODELS ASSESSMENT OF SOFTWARE PROCESS MODELS Akhilesh Research Scholar, Department of Computer Science, Manav Bharti University, Solan (H.P.) ABSTRACT The field of software engineering is related to the development

More information

Classical Software Life Cycle Models

Classical Software Life Cycle Models Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation

More information

E-COCOMO: The Extended COst Constructive MOdel for Cleanroom Software Engineering

E-COCOMO: The Extended COst Constructive MOdel for Cleanroom Software Engineering Database Systems Journal vol. IV, no. 4/2013 3 E-COCOMO: The Extended COst Constructive MOdel for Cleanroom Software Engineering Hitesh KUMAR SHARMA University of Petroleum and Energy Studies, India hkshitesh@gmail.com

More information

SOFTWARE DEVELOPMENT PLAN

SOFTWARE DEVELOPMENT PLAN SOFTWARE DEVELOPMENT PLAN This document outline is based on the IEEE Standard 1058.1-1987 for Software Project Management Plans. This is the controlling document for managing a software project, and it

More information

2. Analysis, Design and Implementation

2. 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 information

Manoo Ordeedolchest Chairman ICT Policy Committee Sripatum University Microsoft Software Development Life Cycle Management of Enterprise June 5, 2007

Manoo Ordeedolchest Chairman ICT Policy Committee Sripatum University Microsoft Software Development Life Cycle Management of Enterprise June 5, 2007 Manoo Ordeedolchest Chairman ICT Policy Committee Sripatum University Microsoft Software Development Life Cycle Management of Enterprise June 5, 2007 New ICT technologies makes software development more

More information

A Capability Maturity Model (CMM)

A Capability Maturity Model (CMM) Software Development Life Cycle (SDLC) and Development Methods There are some enterprises in which a careful disorderliness is the true method. Herman Melville Capability Maturity Model (CMM) A Capability

More information

Comments on Software Quality by Watts S. Humphrey Fellow, Software Engineering Institute Carnegie Mellon University Pittsburgh, PA

Comments on Software Quality by Watts S. Humphrey Fellow, Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Comments on Software Quality by Watts S. Humphrey Fellow, Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Summary This paper reviews the software industry s current approach to

More information

USING DEFECT ANALYSIS FEEDBACK FOR IMPROVING QUALITY AND PRODUCTIVITY IN ITERATIVE SOFTWARE DEVELOPMENT

USING DEFECT ANALYSIS FEEDBACK FOR IMPROVING QUALITY AND PRODUCTIVITY IN ITERATIVE SOFTWARE DEVELOPMENT USING DEFECT ANALYSIS FEEDBACK FOR IMPROVING QUALITY AND PRODUCTIVITY IN ITERATIVE SOFTWARE DEVELOPMENT Pankaj Jalote Department of Computer Science and Engineering Indian Institute of Technology Kanpur

More information

Planned Methodologies vs. Agile Methodologies under the Pressure of Dynamic Market

Planned Methodologies vs. Agile Methodologies under the Pressure of Dynamic Market JKAU: Eng. Sci., Vol. 21 No.1 pp: 19-35 (1431A.H./2010 A.D.) DOI: 10.4197 / Eng. 21-1.2 Planned Methodologies vs. Agile Methodologies under the Pressure of Dynamic Market Faculty of Computer Science and

More information

Why Agile Works: Economics, Psychology, and Science. @MatthewRenze #PrDC16

Why Agile Works: Economics, Psychology, and Science. @MatthewRenze #PrDC16 Why Agile Works: Economics, Psychology, and Science @MatthewRenze #PrDC16 Purpose Explain why Agile practices are so successful Insights from: Economics Psychology Science Top 7 most important ideas Ideas

More information

Ten Practices of High Performance Teams

Ten Practices of High Performance Teams Ten Practices of High Performance Teams Noopur Davis Davis Systems Better Software Conference and Expo Las Vegas, NV DAVIS 1 2009 Outline Background Ten practices of high-performance teams 1. Self-directed

More information

Software: Driving Innovation for Engineered Products. Page

Software: Driving Innovation for Engineered Products. Page Software: Driving Innovation for Engineered Products Software in products holds the key to innovations that improve quality, safety, and ease-of-use, as well as add new functions. Software simply makes

More information

An Iterative and Agile Process Model for Teaching Software Engineering

An Iterative and Agile Process Model for Teaching Software Engineering An Iterative and Agile Process Model for Teaching Software Engineering Maria Isabel Alfonso and Antonio Botía Dept. of Computer Science and Artificial Intelligence. University of Alicante (Spain) eli@dccia.ua.es,

More information

An Empirical Study of Software Cost Estimation in Saudi Arabia Software Industry

An Empirical Study of Software Cost Estimation in Saudi Arabia Software Industry International Journal of Soft Computing and Engineering (IJSCE) An Empirical Study of Software Cost Estimation in Saudi Arabia Software Industry Abdu Gumaei, Bandar Almaslukh, Nejmeddine Tagoug Abstract

More information

Five Things Every Software Executive Should Know About Scrum

Five Things Every Software Executive Should Know About Scrum B E S T P R A C T I C E S W H I T E P A P E R Five Things Every Software Executive Should Know About Scrum Jenny Stuart, Vice President of Consulting, Construx Software Version 1, May 2012 Contributors

More information

2. Analysis, Design and Implementation

2. Analysis, Design and Implementation 2. Analysis, Design and Implementation Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Programs to Application Systems Products Software Development:

More information

Agile development. Pedro Cabalar. Departamento de Computación Facultad de Informá;ca University of Corunna, SPAIN

Agile development. Pedro Cabalar. Departamento de Computación Facultad de Informá;ca University of Corunna, SPAIN Agile development Pedro Cabalar Departamento de Computación Facultad de Informá;ca University of Corunna, SPAIN Agile Development Main bibliographic source: Agile & Itera,ve Development A Manager s Guide,

More information

Rapid Development & Software Project Survival Guide Steve McConnell Dave Root (Developed with Mel Rosso-Llopart)

Rapid Development & Software Project Survival Guide Steve McConnell Dave Root (Developed with Mel Rosso-Llopart) Lifecycle Planning Rapid Development & Software Project Survival Guide Steve McConnell Dave Root (Developed with Mel Rosso-Llopart) Version 1.4 David Root, 2005, all rights reserved 1 Topics Who am I to

More information

Toward Lowest Price, Guaranteed Quality

Toward Lowest Price, Guaranteed Quality Toward Lowest Price, Guaranteed Quality Why CMMI Level 5 is the Beginning and Not the End Advanced Information Services Inc. SEPG 2014 North America Results Organization History 2 Results Recently Completed

More information

Software Engineering

Software Engineering 1 Software Engineering Lecture 2: Software Life Cycles Stefan Hallerstede Århus School of Engineering 25 August 2011 2 Contents Naive Software Development Code & Fix Towards A Software Process Software

More information

Akhil Kumar 1, Bindu Goel 2

Akhil Kumar 1, Bindu Goel 2 Factors Influencing Agile Practices: A Survey Akhil Kumar 1, Bindu Goel 2 1 (University School of Information Technology, GGS Indraprastha University, New Delhi-110075) 2 (University School of Information

More information

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

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

More information

CRITICAL ANALYSYS OF THE SCRUM PROJECT MANAGEMENT METHODOLOGY

CRITICAL ANALYSYS OF THE SCRUM PROJECT MANAGEMENT METHODOLOGY N ft n il Ionel CRITICAL ANALYSYS OF THE SCRUM PROJECT MANAGEMENT METHODOLOGY The Academy of Economic Studies Bucharest, Management Faculty, 6 Romana Square, Sector 1, Bucharest, Management Chair, E-mail:

More information

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

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology Process Methodology for Wegmans Deli Kiosk Version 1.0 Prepared by DELI-cious Developers Rochester Institute of Technology September 15, 2013 1 Table of Contents 1. Process... 3 1.1 Choice... 3 1.2 Description...

More information

Software Project Management Practices: Failure Versus Success

Software Project Management Practices: Failure Versus Success This article is derived from analysis of about 250 large software projects at or above 10,000 function points in size that were examined by the author s company between 1995 and 2004. (Note that 10,000

More information

www.stephenbarkar.se Lean vs. Agile similarities and differences 2014-08-29 Created by Stephen Barkar - www.stephenbarkar.se

www.stephenbarkar.se Lean vs. Agile similarities and differences 2014-08-29 Created by Stephen Barkar - www.stephenbarkar.se 1 www.stephenbarkar.se Lean vs. Agile similarities and differences 2014-08-29 Purpose with the material 2 This material describes the basics of Agile and Lean and the similarities and differences between

More information

Adapting Agile practices in globally distributed large scale software development

Adapting Agile practices in globally distributed large scale software development Adapting Agile practices in globally distributed large scale software development Mario Ivček Research and Development Centre Ericsson Nikola Tesla Krapinska 45, 10 000 Zagreb, Croatia Telefon: +38513654619

More information

Estimation Tools. Seminar on Software Cost Estimation WS 02/03. Presented by Christian Seybold seybold@ifi.unizh.ch

Estimation Tools. Seminar on Software Cost Estimation WS 02/03. Presented by Christian Seybold seybold@ifi.unizh.ch Estimation Tools Seminar on Software Cost Estimation WS 02/03 Presented by Christian Seybold seybold@ifi.unizh.ch Requirements Engineering Research Group Department of Computer Science University of Zurich,

More information

Scrum: A disciplined approach to product quality and project success.

Scrum: A disciplined approach to product quality and project success. Scrum: A disciplined approach to product quality and project success. CQAA February 23, 2011 Patricia Rotman Introductions Copyright 2011-2 Alternate Titles Considered Scrum: Just do it! Scrum: It only

More information

The Role of Software Processes and Communication in Offshore Software Development

The Role of Software Processes and Communication in Offshore Software Development The Role of Software Processes and Communication in Offshore Software Development Anandasivam Gopal, Tridas Mukhopadhyay, and Mayuram S. Krishnan Offshore software development is a new trend in the information

More information

Measuring Software Process Efficiency. By Gary Gack, Process-Fusion.net

Measuring Software Process Efficiency. By Gary Gack, Process-Fusion.net Measuring Software Process Efficiency By Gary Gack, Process-Fusion.net This article is the second in a series of three. The first article, Measuring Software Process Effectiveness describes use of the

More information