Etrics XP Metrics.

Slides:



Advertisements
Similar presentations
Iteration Planning.
Advertisements

© University of Glamorgan1 Extreme Programming and its effect on project management Second Computing Project Management Workshop 13 September 02, University.
Extreme Programming Alexander Kanavin Lappeenranta University of Technology.
Software Engineering CSE470: Process 15 Software Engineering Phases Definition: What? Development: How? Maintenance: Managing change Umbrella Activities:
Agile Requirements Methods CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute October 26, 2004.
Extreme Programming Collaboration in Software Development Process.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
Transitioning to XP or The Fanciful Opinions of Don Wells.
Xtreme Programming. Software Life Cycle The activities that take place between the time software program is first conceived and the time it is finally.
Software Process and Product Metrics
Roles Managers Technical Team Leaders Programmers Customers Database Administrators Instructors.
Agile and XP Development Dan Fleck 2008 Dan Fleck 2008.
Embracing change with Extreme Programming Method Engineering Erik ten Brinke
Unified Process versus Extreme Programming. Outline Compare and contrast UP and XP  Processes / Disciplines  Management  Artefacts Risk management.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
5. Planning.
Process is continuously improving Have Definition of Done (DoD) DoD achievable within each iteration Team respects DoD The bottom line Delivering working,
XP Explained Chapters 7-9. Primary Practices  Sit together Ideal Resistance Multi-site  Whole Team All the necessary skills in a single management structure.
AP-1 5. Project Management. AP-2 Software Failure Software fails at a significant rate What is failure? Not delivering it on time is an estimation failure.
Extreme Programming Based on and
Extreme Programming. Extreme Programming (XP) Formulated in 1999 by Kent Beck, Ward Cunningham and Ron Jeffries Agile software development methodology.
Planning Extreme programming
Introduction to Software Engineering Muhammad Nasir Agile Software Development(2)
Software Engineering 2004 Jyrki Nummenmaa 1 Why new software methodologies The classic waterfall-model based techniques are strongly based on the.
1 Introduction to eXtreme Programming Remko Popma Azzurri Ltd.
Extreme programming (XP) Advanced Software Engineering Dr Nuha El-Khalili.
By Manish Shrotriya CSE MS 4 Point Agile Manifesto 1.Individuals and interactions over processes and tools 2.Working software over comprehensive.
Testing under the Agile Method CSCI 521 Software Project Management based on the book Testing Extreme Programming by Lisa Crispin and Tip House.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Barnes & Noble Alonda Morgan. Agile UX Agile.
Embedded Systems Software Engineering
CS223: Software Engineering
Agile Methods SENG 301.
Software Development.
Peter Varhol Solutions Evangelist
Metrics That Matter Real Measures to Improve Software Development
Requirements Engineering Lecture 4
Scrum.
Scrum and TargetProcess
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Continuous Integration and Testing
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Planning User stories are written.
CPSC 873 John D. McGregor GQM.
Mike Cohn - Agile Estimating and Planning
Extreme Programming.
12 Steps to Useful Software Metrics
Client Management Managing Client Expectations
User Stories Applied, Mike Cohn Chapter 1: An Overview
Scrum MODULE 3 – Part 3.
What do you need to know about XP?
Teaching slides Chapter 3.
Johanna Rothman Agile Team Measurements Chapter 12
Teaching slides Chapter 1.
Summarizing Our Models to Date
Johanna Rothman Report Your Project State Chapter 14
Chapter 11 – Project Dashboard
© University of Liverpool
Agile and XP Development
Sprint Planning April 2018.
Agile and XP Development
Lesson 1 Understanding Software Quality Assurance
Coming up: What is Agile?
Agile Development – a new way of software development?
Extreme Programming.
Scrum in Action.
Scatter Diagrams Slide 1 of 4
Extreme Programming (and Pair Programming)
Presentation transcript:

etrics XP Metrics

This presentation is prepared by: Aram Sedrani. Fatimah Al-Khalaf. Ghada Alumari. Nosiaba. XP Metrics

It present by: Ghada Alumari. Fatimah Al-khalaf. XP Metrics

Presentation Outline: Metrics definition. The Metrics. XP Metrics

What does metric mean? A metric is a mathematical number that shows a relationship between two variables. Software metrics are measures used to quantify status or results.[1] A metric is the measurement of a particular characteristic of a program's performance or efficiency.[2] XP Metrics

Cont. Metrics are measurements, collections of data about project activities, resources and deliverables. Metrics can be used to help estimate projects, measure project progress and performance, and quantify product attributes.[3] XP Metrics

Metrics are gathered not to CONTROL the project "by the numbers", but as a tool of COMMUNICTION and FEEDBACK.[12] XP Metrics

Some Metrics: Time To Fix. Code Analysis Errors. the amount of un deployed code. how much time spent integrating. Time between releases. Ratio between Ideal Engineering time and calendar time. XP Metrics

Metrics we will cover XP Metrics

XP Metrics Ideal Engineering time. Post-Development Defects and Investment-to-Return. Project Velocity. Big Visible Charts. XP Metrics

Ideal Engineering Time XP Metrics

Ideal Engineering Time[11],[14] It also known as Ideal Programming Time. The time needed by programmer to implement a story without interruption (pure time for programming). XP Metrics

Through planning game customers identify user stories. The developers give estimated time for implement each story as they don’t have anything to do except programming. XP Metrics

Post-Development Defects and Investment-to-Return.[4] XP Metrics

Post-Development Defects and Investment-to-Return The number of defects found after development. Team should have fewer defects in its first deployment and make progress from there. Each defect is a chance for the team to learn. XP Metrics

Post-Development Defects and Investment-to-Return The time lag between the beginning of investment in an idea and when the idea first generates revenue dropping the time from investment to return increases the amount of feedback. Post-development defects and investment-to-return are indicators of team success like a speedometer is an indicator of speed. XP Metrics

Project Velocity XP Metrics

Project Velocity It is a measure of how much work is getting done on your project.[7] Some measure Velocity by the Ideal Engeering Time. [17][18] It may be a mistake. Add up the estimates of the user stories that were finished during the iteration.[6] may be misleading. XP Metrics

Project Velocity Total up the estimates for the tasks finished during the iteration.[9] Because this is based more on effort rather than quantity should get better analysis about the fluctuations that the project will encounter. XP Metrics

Project Velocity User Story Estimation [20] The Developers estimate how long the stories might take to implement. Each story receives an estimate of 1, 2 or 3 Points. A point is a random value that is used to do estimates of one story relative to another. XP Metrics

Project Velocity pick a Story and set its estimate to 2 points. Select another Story decide whether it's the same size  2 points. smaller  1 point. larger  3 points. XP Metrics

Project Velocity If the developers don't feel comfortable providing an estimate to a story[9] because they don't know enough about it. ask the Customer. The Story may need to be split into multiple stories.[9] Example[9] Customer Discount Rate XP Metrics

Project Velocity Discount for a Preferred Customer A Customer who purchases more than $50,000 is a Preferred Customer, and receives a 10% discount on all prices. Too large. Separate stories. XP Metrics

Project Velocity Preferred Customer A Customer who purchases more than $50,000 is a Preferred Customer. Discount for a Preferred Customer A Preferred Customer receives a 10% discount on all prices. Developers would likely ask the Customer, "When do you start counting the $50,000?“ story is updated. XP Metrics

Project Velocity Preferred Customer A Customer who purchases more than $50,000 since they have become a Customer is a Preferred Customer. Estimate: 2 Points Discount for a Preferred Customer A Preferred Customer receives a 10% discount on all prices. Estimate: 1 Point XP Metrics

Project Velocity During the iteration planning meeting:[7] customers choose the same number of user stories equal to project velocity of previous iteration. Stories are broken down into technical tasks. Team signs up for the same number of tasks equal to project velocity of previous iteration Yesterday's Weather. XP Metrics

Project Velocity Yesterday's Weather[8] Forecasting the weather for the next day based on today's weather. 70% of the time is correct. The total number of points that are signed up is only as many as were completed in the previous iteration. Allows the developers to recover after a difficult iteration, and to manage issues like vacations and illness. XP Metrics

Project Velocity project velocity goes up when [7] developers ask the customers for another story when no clean up tasks remain. A few ups and downs in project velocity are expected.[7] Using a release planning meeting to re-estimate the release plan if the project velocity changes dramatically for more than one iteration. [7] XP Metrics

Project Velocity Each project team will have a different bias to estimating stories and tasks.[7] Dividing the project velocity by the length of the iteration or the number of people isn't good to compare two project's productivity. Because each team is different. Two teams with 10 developers each, cannot be compared. Each team would come from varied years of experiences, domain knowledge, maturity, support from product owners, communication skills, etc. [17] XP Metrics

Project Velocity Hard velocity metrics are for the people who have to validate the team's existence.[6] Velocity is about the overall health of the project.[6] XP Metrics

Project Velocity Example[14] Take the User Stories that were completed during an iteration. Get a total of the estimates for the Stories. The total number of Points is team's Project Velocity. XP Metrics

Project Velocity Story Customer Searches for Book by Author Completed? Estimate (Points) Story Yes 2 Customer Searches for Book by Author 3 Customer Searches for Book by Category Customer Searches for Book by Title 1 Customer Searches for Book by ISBN No Preferred Customer receives Discount XP Metrics

Project Velocity This table shows the Stories completed for an Iteration. 4 Stories were completed 1 was not. For the completed Stories, the total number of points is 8 Velocity in that Iteration was 8. 8 then used to feed the planning process for the next Iteration (Yesterday's Weather). [8] XP Metrics

Big Visible Charts[10] XP Metrics

Big Visible Chart Display important project information not in some formal way, not on the web, not in PowerPoint, but in charts on the wall that no one can miss. A simple chart on the wall can bring important information to the attention of the team, the customer, and everyone else who passes through the area. XP Metrics

What Should We Chart? Chart what you care about, what you worry about, what you want other people to know. Most every XP practice offers material for charts. XP Metrics

Some important charts XP Metrics

1..Customer Acceptance Tests We would like to know how many tests we have, and whether they are all working. Consider a simple chart, showing for each time period (day, week, or iteration) how many customer acceptance tests exist. XP Metrics

1..Customer Acceptance Tests(cont.) The chart below shows what you might see on a project with an orderly progression of more and more tests running. Color in Green the number that are working, and in Red the number that are not. XP Metrics

1..Customer Acceptance Tests(cont.) If there seems to be a pattern of repeated customer acceptance test failures, it can be of value to create a display of the status of each test on each day. XP Metrics

1..Customer Acceptance Tests(cont.) Color a test's daily cell green if the test passes on that day, and red if it fails. Look for patterns in the color changes. XP Metrics

2..Velocity Charts It's probably always good to track velocity, in terms of number of stories or story points. It can also be of value to show how your velocity is being spent. XP Metrics

2..Velocity Charts(cont.) 1..burndown chart: 2..burn UP chart: XP Metrics

3..Team Process When a team is interested in improving its process, a few charts can be useful. hours spent in pair programming. the number of integrations per day. You might want to display a chart about team code ownership. number of different programmers or pairs who have edited a given class or module. XP Metrics

3..Team Process(cont.) XP Metrics

Code metrics[15] lines of code / time unit. number of tests / time unit. number of classes / time unit. number of functions / time unit. XP Metrics

References http://www.softwaretestingsucks.com. http://www.bitpipe.com, Software Metrics http://www.spc.ca, Metrics K. Beck, Extreme Programming Explained: Embrace Change,Addison Wesley Longman, Reading, Mass., 2000. http://www.comptechdoc.org/independent/xp/summary, Extreme Programming http://www.igloocoder.com/archive/2007/02/18/939.aspx, There's more to Velocity than speed, 2007 XP Metrics

References (Cont.) http://www.extremeprogramming.org/rules/velocity.html, Project velocity, 1999 http://www.mayford.ca/xp/yesterday.html, Yesterday's Weather http://www.mayford.ca/xp/estimation.html, User Story Estimation XP Metrics

References (Cont.) http://www.xprogramming.com/xpmag,BigVisibleCharts.htm http://www.expressitpeople.com/20040802/careers1.shtml http://www.augustana.ca,XP http://www.mayford.ca/xp/velocity.html c2.com/cgi/wiki?IdealProgrammingTime XP Metrics

References (Cont.) http://cs.wwc.edu/~aabyan/XP/solution.html www.infomanagementcenter.com/enewsletter/200407/feature.htm http://agileworld.blogspot.com/2006_12_01_archive.html Nawrocki, J.; Walter, B.;Wojciechowski: Toward maturity model for extreme programming XP Metrics