You are on page 1of 31

T10

Concurrent Session
Thursday 12/06/2007 12:45 PM

Agile Development and Its Impact on


Productivity

Presented by:

David Garmus
The David Consulting Group

Presented at:
Agile Development Practices
December 3-6, 2007; Orlando, FL, USA

330 Corporate Way, Suite 300, Orange Park, FL 32043


888-268-8770  904-278-0524  sqeinfo@sqe.com  www.sqe.com
David Garmus
Name: David Garmus
Organization: David Consulting Group
Title: Founder
Address: 1935 Salt Myrtle Lane
City: Orange Park
Stat Florida
Zip Code: 32003
Telephone: 904 269-0211
Fax: 904 215-0444
E-Mail: dcggarmus@comcast.net

Presentation T10: Agile Development and Its Impact on Productivity

David Garmus is a Founder of The David Consulting Group (DCG), an SEI CMMI® Approved
Transition Partner, which supports software development organizations in achieving software
excellence with a metric-centered approach. David is an acknowledged authority in the sizing,
measurement and estimation of software application development. He is a Past President of the
International Function Point Users Group (IFPUG) and a member of their Counting Practices
Committee. Mr. Garmus is also a member of PMI, SEI and QAI. He has a BS from UCLA and an
MBA from Harvard University Graduate School of Business Administration. He has spoken at
numerous conferences and has written many articles and several books, including:
Measuring The Software Process: A Practical Guide To Functional Measurements, Prentice Hall,
1996
Function Point Analysis; Measurement Practices for Successful Software Projects, Addison-
Wesley, 2001
IT Measurement; Practical Advice from the Experts, Addison-Wesley, 2002 as a Contributor
“IT Metrics and Benchmarking,” Cutter IT Journal, June & November 2003 issues, Guest Editor
“Identifying Your Organization’s Best Practices,” CrossTalk, June 2005
“An Introduction to Function Point Counting,” Projects & Profits, ICFAI, June 2005
“The Principles of Sizing and Estimating Projects Using IFPUG Function Points,” Software Tech
News, June 2006
AGILE DEVELOPMENT AND ITS
IMPACT ON PRODUCTIVITY

Better Software Agile Development Practices 2007

www.davidconsultinggroup.com
Topics

• Characteristics of Agile Projects


• Performance Data on Agile Projects
• When to Choose Agile

Copyright © 2007. The David Consulting Group, Inc. 2


Topics

• Characteristics of Agile Projects


– Common View
– Core Practices
– Life-cycle Development
• Performance Data on Agile Projects
• When to Choose Agile

Copyright © 2007. The David Consulting Group, Inc. 3


View of Agile Projects

Agile View – rigid methods have one thing in common, too


much is planned in an uncertain environment at project
inception.
“‘XP’ (most common agile methodology) is a lightweight
methodology for small-to-medium-sized teams developing
software in the face of vague or rapidly changing requirements.”
Kent Beck

Copyright © 2007. The David Consulting Group, Inc. 4


View of Agile Projects

Manifesto for Agile Software Development (2001)

“We are uncovering better ways of developing software


by doing it and helping others do it. Through this work we
have come to value:

Individuals and interactions over processes and tools


Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan”

Copyright © 2007. The David Consulting Group, Inc. 5


View of Agile Projects

Declaration of Interdependence (2005)


“We are a community of project leaders that are highly successful at
delivering results. To achieve these results:
We increase return on investment by making continuous flow of value our
focus.
We deliver reliable results by engaging customers in frequent interactions
and shared ownership.
We expect uncertainty and manage for it through iterations, anticipation
and adaptation.
We unleash creativity and innovation by recognizing that individuals are
the ultimate source of value and creating an environment where they can
make a difference.
We boost performance through group accountability for results and shared
responsibility for team effectiveness.
We improve effectiveness and reliability through situationally specific
strategies, processes and practices.”

Copyright © 2007. The David Consulting Group, Inc. 6


Characteristics Overview

Barry Boehm and Agile Planned (Traditional)


Richard Turner

Application Changeable Larger Teams &


Projects

Management Customer Part of Team Document Plans &


Requirements

Technical Short Increments Voluminous Test Cases


Many Releases and Plans

Personnel Highly Capable Specialists who Thrive


Thrive on Chaos on Order

Copyright © 2007. The David Consulting Group, Inc. 7


Core Practices

•Delivery of Working Software is the Primary Goal


•Active Stakeholder Participation
•Assimilate Change Easily
–Incremental Approach
–Use of Simple Models to Address Requirements
–Rapid Feedback
–Frequent Deliverables
–Flexible Change Management
•Steady development rate
•Quality through Teamwork
•Direct communication
•Maximize Agility through Model Normalization
•Retain Key Models for Reuse

Copyright © 2007. The David Consulting Group, Inc. 8


Scrum Development Process

Copyright © 2007. Gestalt, LLC & Gestalt PathfinderTM Development 9


Process
Life-cycle Development

Requirements, Design and Coding


•Small in Scope
–Less than 200 Function Points
–Many less than 100 Function Points
•High Level Business Requirements
•Limited Formal Documentation
–System Descriptions
–Technical Design Documentation
–Process Models
–System Architectures
•Team Development
–Small, Cohesive, Same Work Space
–Self Organized and Motivated
–Driven by Team Dynamics vice Formal Process

Copyright © 2007. The David Consulting Group, Inc. 10


Life-cycle Development

Testing and Implementation

•Effort Not Separate for each Testing Type/Phase


•Testing Occurs Concurrently
•Testing by Developers
•Smaller Deliverables, More Releases

Copyright © 2007. The David Consulting Group, Inc. 11


Topics

• Characteristics of Agile Projects


– Common Views
– Core Practices
– Life-cycle Development
• Performance Data on Agile Projects
• When to Choose Agile

Copyright © 2007. The David Consulting Group, Inc. 12


Use Measurement To Enable
Comparisons Between
Methods
QUANTITATIVE QUALITATIVE

Process
Deliverable Size
Effort/Cost Methods
Measure Skills Identify
how you Duration
Quality
Tools what you
are doing Environment are doing

Measured Capability
Performance Maturity

Standard of Baseline of
performance Performance

Copyright © 2007. The David Consulting Group, Inc. 13


Utilize Measurement Results
In Decision Making
• Improvements resulting from all IT initiatives must be
measured, including a move to agile development

• The basis for measuring improvements may include:


• Organizational baseline data (preferred)
Industry data

• It is necessary for an organization to put a “stake in the


ground” relative to current performance level in order
to improve development practices

Copyright © 2007. The David Consulting Group, Inc. 14


DCG Data Base

Characteristics Complexity Variables

Project Type Logical Algorithms Code Structure


Platform Mathematical Algorithms Performance
Data Base Data Relationships Memory
Method Functional Size Security
Language Reuse Warranty

Metrics Attributes

Size Management
Cost Definition Process
Effort Design Skill Levels
Duration Build Quality Practices
Defects Test Measures
Environment

Copyright © 2007. The David Consulting Group, Inc. 15


Collecting & Reporting

Innovation Metrics

• Number of Process Change Requests generated at end of


Sprint
• Number of pilot sprints required to achieve Customer
Satisfaction
• Number of Process Change requests after Processes
Implemented

Copyright © 2007. The David Consulting Group, Inc. 16


Collecting & Reporting

Value Delivery Metrics

• % improvement in functional value delivered (if agile


development used)
• % improvement in time to market
• % reduction in effort to deliver functionality
• % reduction in defect removal time (if agile development used)
• % resource time “lost” to education/implementation in sprint

Copyright © 2007. The David Consulting Group, Inc. 17


Collecting & Reporting

• Identify data set (typically project oriented)


• Collect baseline data
• Project measures (e.g., effort, size, cost, duration, defects)
• Project attributes (e.g., skill levels, tools, process, etc.)
• Analyze data
• Performance comparisons (identification of process strengths and
weaknesses)
• Industry averages and best practices
• Performance modeling (identify high impact areas)
• Determine Customer Satisfaction
• Report results

Copyright © 2007. The David Consulting Group, Inc. 18


Using Historical Delivery
Rates

DEFINITION CAPABILITY EFFORT

Schedule
PROJECT SIZE and RATE OF
REQUIREMENT
COMPLEXITY DELIVERY
Costs
Effort

FUNCTION POINT SIZE HOURS per


FUNCTION POINT

Copyright © 2007. The David Consulting Group, Inc. 19


Hours Per Function Point

Average Hours per Function Point (FP)


of Recent Enhancement Projects Across
Different Platforms from DCG Database
for Small (100 to 200 FPs) Projects
Traditional Agile
Client Server 6.7 4.1
Main Frame 8.4 7.0
Web 4.6 3.1
e-business Web 6.8 5.6

Copyright © 2007. The David Consulting Group, Inc. 20


Hours Per Function Point

Average Hours per FP of Recent


Enhancement Projects Across Different
Platforms from DCG Database for
Medium Sized Projects (250 to 350 FPs)
Traditional Agile
Client Server 7.3 7.5
Main Frame 9.2 9.8
Web 5.1 4.9
e-business Web 7.8 7.9

Copyright © 2007. The David Consulting Group, Inc. 21


Delivered Defects/Function
Point

Average Category 1,2 & 3 Defects per


Function Point of All Enhancement
Projects from DCG Database for Small
(100 to 200 FPs) Projects
Traditional Agile
Combined Platforms .03 .01

Insufficient data within some platforms;


Defects increase as projects grow in size

Copyright © 2007. The David Consulting Group, Inc. 22


Calendar Time

•Calendar Time varied based upon number of


features and number of sprints.

•Users received working software features earlier


with agile

Copyright © 2007. The David Consulting Group, Inc. 23


Topics

• Characteristics of Agile Projects


– Common Views
– Core Practices
– Life-cycle Development
• Performance Data on Agile Projects
• When to Choose Agile

Copyright © 2007. The David Consulting Group, Inc. 24


Which Methodology Should I
Use?
– Waterfall, Iterative and – Agile Methods
Spiral Methods • Exploratory Projects
• Predictive Performance • Small Teams
• Large Teams • Participative Environments
• Highly Structured – Experienced Personnel
Environments – Active Business
• Outsourced or Partners
Multi-sourced Projects • Software Dominant Projects
• High Financial or • In-sourced Projects
Safety Risk
• High Risk of Unknown or
• Significant Hardware or Unstable Requirements
Application Integration

Copyright © 2007. The David Consulting Group, Inc. 25


Do I Choose Agile or a
Hybrid?
• Initial arguments for selecting a hybrid (traditional) method.
– High level of risk
– Large size of project
– Significant integration
– Specified delivery commitment
– Organizational environment

• Suggested selection process:


– Map agile attributes based on organization’s tolerance for risk and change
– Some agile practices can be transplanted to another methodology
– Leverage best practice processes to augment method chosen

Copyright © 2007. The David Consulting Group, Inc. 26


Key Attributes of Agile
Projects
• The Planning Game
• On-site Customer / User
• System Metaphor
• Simple Design
• Collective Code Ownership Key Attributes of
• Coding Standards Current Agile Methods
• Pair Programming Well Defined
Ê

• Continuous Testing
Require Significant
Ê
• Continuous Integration Discipline
• Small Releases
• 40 Hour Work Week

Copyright © 2007. The David Consulting Group, Inc. 27


Conclusions

• Use of Agile methods affects performance outcomes


• Choosing the appropriate methodology will maximize
your delivery performance
• Agile performance will be successful if implemented
properly

Copyright © 2007. The David Consulting Group, Inc. 28


Contact Information

David Consulting Group web site:


www.davidconsultinggroup.com

David Garmus
dcggarmus@comcast.net

Copyright © 2007. The David Consulting Group, Inc. 29

You might also like