metrics and databases for agile software development projects david i. heimann ieee boston...
TRANSCRIPT
![Page 1: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/1.jpg)
Metrics and Databases Metrics and Databases for Agile Software for Agile Software
Development ProjectsDevelopment Projects
David I. Heimann
IEEE Boston Reliability SocietyApril 14, 2010
![Page 2: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/2.jpg)
Based on the paper Based on the paper
A Bipartite Empirically-Oriented Metrics Process For Agile Software Development
byDavid Heimann, Peter Hennessey and Ashok
Tripathi
appearing in ASQ Software Quality Professional;
Vol. 9, No. 2, 2007
![Page 3: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/3.jpg)
Agile Methodologies
Rapid development of small timeboxed subproducts of overall system
Iterative development Quick responsiveness to changing
requirements and customer needs
![Page 4: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/4.jpg)
Metrics
Identifying, obtaining data for, computing, and using quantitative values to evaluate development performance
Key to identifying key goals and progress towards them
Key for stable, coordinated, and reliable development
![Page 5: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/5.jpg)
However…
Agile processes emphasize individual interactions over processes, and software over documentation
This can lead to a deficiency of metrics to allow for a stable and coordinated development framework
![Page 6: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/6.jpg)
The Bipartite ApproachThe Bipartite Approach
![Page 7: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/7.jpg)
Bipartite Approach
Agile development features two environments:– Development team– Project coordination and management
Approach – Keep metrics activity to a minimum within the team, but a significant activity within project management
![Page 8: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/8.jpg)
![Page 9: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/9.jpg)
Metrics for Teams
Goals– Address specific components being developed– Focus on the short term (up to 30 days)– Focus on specific requirements
![Page 10: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/10.jpg)
Metrics for Teams
Questions– What have we accomplished thus far?– Are we on schedule?– What inputs/outputs with other components do
we need to address?– Do our tests cover code and functionality?– How is our testing proceeding?
![Page 11: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/11.jpg)
Metrics for Teams
Features– Small and simple configuration management systems– Simple database for documentation and related
artifacts– Easily accessible list of requirements– Easily accessible schedule– Test-bank repository– Simple bulletin board or collaboration software
![Page 12: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/12.jpg)
Metrics for Project
Goals– Keep up with ever-changing requirements– Allow new and changed requirements to be
easily translated into specific tasks for teams– Emphasize interactions among components– Consider customers and stakeholders– Focus on entire development life cycle
![Page 13: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/13.jpg)
Metrics for Project
Questions– How have requirements changed and are we keeping
up?– What tasks have been distributed to teams, and what
tasks have been accomplished?– Have all interactions been accounted for?– How is our product matching up to customer or
market expectations?– Does software possess systemic integrity and fitness
for customer delivery?
![Page 14: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/14.jpg)
Metrics for Project
Features– Distributed repository system– High-level configuration management system
featuring tracking of parallel and mutually dependent applications and interfaces
– Complete requirements, documentation, team-coordination databases
– Overall schedules and team assignments– Collaborative bulletin board system
![Page 15: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/15.jpg)
Implementation at Implementation at BrooksBrooks
![Page 16: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/16.jpg)
Brooks Agile Development Process (ADP)
Requirements specified in terms of stories.– Encapsulated item of functionality– Easily communicated and validated with
customers and related stakeholders– Implemented in no more than 2 person-weeks
of development effort
![Page 17: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/17.jpg)
Brooks Agile Development Process (ADP)
Stories are “batched” into a single 6-week cycle, each cycle to be completed by one team in two consecutive 3-week iteration cycles.
On average 5-6 iterations sufficient to supply overall functionality for a release.
Stories scheduled into cycles based on priority, risk, and need for learning and refactoring
![Page 18: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/18.jpg)
Software DevelopmentProject and
Product Management
Story Writing
Release Planning
Story Elaboration
Iteration Planning
Test Creation
Coding
Unit Test
System Verification
Story Validation
Package
errorerror
Requirements Design & Planning
Con
stru
ctio
n
Verification and Validation
Inventory Queues
![Page 19: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/19.jpg)
ADP Metrics Goals
1. Project Completion*
2. Level of Quality*
3. Ability to Change (content & priorities)
4. Ability to Integrate (cycle-products into seamless release)
* Addressed in this work
![Page 20: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/20.jpg)
Sample Questions – Goal 1
What has a team accomplished thus far? How is a team doing compared to its task
commitments? Are we on schedule relative to the current
release backlog? How fast is a team, or project as a whole,
completing story development?
![Page 21: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/21.jpg)
Sample Metrics – Goal 1
Story points Story size Story risk Velocity Complexity ratio On-Time-Delivery (OTD)
![Page 22: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/22.jpg)
Issues – Goal 1 Metrics
Contending with moving targets for planning and production
Tracking requirements changes
![Page 23: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/23.jpg)
Sample Questions – Goal 2
How well does team product, or overall product, fulfill current requirements?
How well does a team’s product pass the QA tests specific to that product?
How well does the completed work pass integration and system test?
Does developed product possess systemic integrity and customer fitness?
![Page 24: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/24.jpg)
Sample Metrics – Goal 2
Defect rates Found-fixed ratio Weighted quality percentage Weighted quality percentage with
confidence loss
![Page 25: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/25.jpg)
Issues – Goal 2 Metrics
Timeliness and complexity of testing regimen – “Test First”
Impact of changing requirements on testing.
![Page 26: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/26.jpg)
ConclusionConclusion
![Page 27: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/27.jpg)
Summary
Metrics for team should be brief, focused, and short-term
Metrics for project management should be inclusive, encompass the project’s full complexity, and track through the project life
The two metrics areas complement each other. They not only coexist, but both must be present in the metrics design
![Page 28: Metrics and Databases for Agile Software Development Projects David I. Heimann IEEE Boston Reliability Society April 14, 2010](https://reader034.vdocument.in/reader034/viewer/2022050920/5514a9b3550346f06e8b5e44/html5/thumbnails/28.jpg)
Next Steps
Questions, metrics, and issues for Goals 3 and 4.
Further sophistication in data collection systems for bipartite agile metrics.
Further implementation of process improvements incorporating bipartite approach.