The Definition of Metrics for Continuous Integration in SCRUM. How Continuous Is Our Continuous Integration?



Similar documents
Automated Acceptance Testing of High Capacity Network Gateway

Roles: Scrum Master & Project Manager

Agile Scrum Workshop

Agile Project Management in a Regulated Environment

Introduction to Agile Software Development Process. Software Development Life Cycles

TSG Quick Reference Guide to Agile Development & Testing Enabling Successful Business Outcomes

Scrum In 10 Slides. Inspect & Adapt

Scaling Scrum. Colin Bird & Rachel Davies Scrum Gathering London conchango

IT Home 2015 DevOps 研 討 會

CompSci Fall 2014 Professors: Robert Duvall, Ajay Patel, Salman Azhar (rcd@cs, ajay.patel, azhar@cs)

Introduction to Software Engineering: Project Management ( Highlights )

Mastering Security in Agile/Scrum, Case Study

Agile Development Overview

Agile Metrics. It s Not All That Complicated

Modern practices TIE-21100/

Atomate Development Process. Quick Guide

Taking the first step to agile digital services

How Silk Central brings flexibility to agile development

Application Lifecycle Management Using Visual Studio 2013 (SCRUM)

Project Management in Software: Origin of Agile

Organising Massive Test bol.com. Jeroen Ruijgers and Viktor Clerc

Introduction to Scrum for Managers and Executives

Scrum and Testing The end of the test role Bryan Bakker 20 maart 2012

Continuous Integration & Automated Testing in a multisite.net/cloud Project

The traditional project management uses conventional methods in software project management process.

Scrum Methodology in Product Testing : A Practical Approach

a new generation software test automation framework - CIVIM

How To Plan An Agile Project

LEAN AGILE POCKET GUIDE

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation

Continuous Integration: Aspects in Automation and Configuration Management

Don t forget the testers

When is Agile the Best Project Management Method? Lana Tylka

Introduction to Agile

The Agile Movement An introduction to agile software development

Maintaining Quality in Agile Environment

Agile extreme Development & Project Management Strategy Mentored/Component-based Workshop Series

Agile Overview. 30,000 perspective. Juha Salenius CSPO CSM PMI-ACP PMP SCGMIS Workshop January 23 rd, 2013

AGILE vs. WATERFALL METHODOLOGIES

Agile Software Development

Agile Information Management Development

Agile automated software testing into automotive V-Model process:

NokiaSiemens and Agile Development by Petri Haapio JAOO 2008

Agile Project Management By Mark C. Layton

Whitepaper. Agile Methodology: An Airline Business Case YOUR SUCCESS IS OUR FOCUS. Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan

HP Agile Manager What we do

Atern The latest version of the DSDM approach which makes DSDM appropriate to all types of project.

Agile Software Development with Scrum. Jeff Sutherland Gabrielle Benefield

Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012

26 May 2010 CQAA Lunch & Learn Paul I. Pazderski (CSM/CSP, OD-CM, CSQA) spcinc13@yahoo.com Cell: AGILE THROUGH SCRUM

Continuous delivery Release software on-demand, not on Red Alert

Agile with XP and Scrum

Continuous Integration Processes and SCM To Support Test Automation

Rational Team Concert. Scrum Project Management Tutorial

The Agile Manifesto is based on 12 principles:

HP Application Lifecycle Management

Waterfall vs. Agile Project Management

Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012

Introduction to Agile and Scrum

Friedrich-Alexander-University of Erlangen-Nuremberg

Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc.

Agile Software Development Methodologies and Its Quality Assurance

Optimizing release planning under Scrum in complex multi-team software projects. Case: Nokia Siemens Networks

Governments information technology

Testing in a Medical Device Context Limitations are few

Quality Assurance in an Agile Environment

Agile Project Management with Scrum

HP DevOps by Design. Your Readiness for Continuous Innovation Rony Van Hove/ April 2 nd, HP Software: Apps meet Ops 2015

Agile Methodologies and Its Processes

Performance Improvements Using Dynamic Performance Stubs

WHITEPAPER. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Principle #1, Agile Manifesto

IMQS TECHNOLOGY AGILE METHODOLOGY

HP ALM11 & MS VS/TFS2010

Agile in a Safety Critical world

How To Understand The Limitations Of An Agile Software Development

Expectations and Challenges from Scaling Agile in Mechatronics-Driven Companies A Comparative Case Study

Continuous Delivery / Continuous Deployment How to automate your Deliveries. Bernhard Keprt

Test Data Management. Services Catalog

Agile Project Management

Scaling Agile Is Hard, Here s How You Do It!

ALM2013VS_ACC: Application Lifecycle Management Using Visual Studio 2013

White paper: Developing agile project task and team management practices

Continuous Delivery: Automating the Deployment Pipeline. Solution Brief

A Viable Systems Engineering Approach. Presented by: Dick Carlson

PLM - Agile. Design Code Test. Sprints 1, 2, 3, 4.. Define requirements, perform system design, develop and test the system. Updated Project Plan

W hitepapers. Delighting Vodafone Turkey s Customers via Agile Transformation

The style is: a statement or question followed by four options. In each case only one option is correct.

Agile and Secure: OWASP AppSec Seattle Oct The OWASP Foundation

XP & Scrum. extreme Programming. XP Roles, cont!d. XP Roles. Functional Tests. project stays on course. about the stories

Agile is not a process but a

Agile Projects 7. Agile Project Management 21

AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT

Brent Atkins, Cris Hadjez An Agile BI Approach: Mead Johnson Uses Better Data to Push Boundaries and Increase Customer Value Session # 3544

Sprint with Scrum and get the work done. Kiran Honavalli, Manager Deloitte Consulting LLP March 2011

Transcription:

The Definition of Metrics for Continuous Integration in SCRUM How Continuous Is Our Continuous Integration? Christian Facchi University of Applied Sciences Ingolstadt Jochen Wessel Nokia Siemens Networks SMEF 2010

Outline 1 SCRUM and Continuous Integration 2 Definition of Metrics for Continuous Integration 3 Implementation 4 Case Study 5 Conclusion & Future Work Christian Facchi, Jochen Wessel SMEF 2010 Slide 2

Agile Manifesto: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Respond to change over following a plan small feedback cycles focus on product /deliveries How can metrics be used? Christian Facchi, Jochen Wessel SMEF 2010 Slide 3

Basics SCRUM (Framework) Christian Facchi, Jochen Wessel SMEF 2010 Slide 4

Some basic principles i of SCRUM: continuous feedback loop every backlog item should produce deliverable code Supported by continuous integration: complete build and test after every modification (checkin) if build or test fails problems are solved early detection of integration problems (interfaces) no big bang at the end of the project/increment t Christian Facchi, Jochen Wessel SMEF 2010 Slide 5

Requirements for Continuous Integration: ti automated build and test automated configuration management Available toolsupport (visualisation): Cruise control Hudson Christian Facchi, Jochen Wessel SMEF 2010 Slide 6

Project Landscape Software Development UMTS/LTE Telecommunication System UMTS / LTE RAT spe ecific Applica ation CP and UP SW WCDMA SW LTE SW GSM SW Common SW BTS BTS Common BTS Commo on Platform SW Application S W BTS Site Mgr TRSW Common Application SW Common Platform Services SW RFSW PC/ Workstation Flexi BTS System Module HW FR/AAS Module HW Christian Facchi, Jochen Wessel SMEF 2010 Slide 7

Why metrics for Continuous Integration ti no objective input from SCRUM teams only feelings prioritisation of impediments among different SCRUM teams these metrics can be used not only in SCRUM requirement: automated t build process Christian Facchi, Jochen Wessel SMEF 2010 Slide 8

1 SCRUM and Continuous Integration 2 Definition of Metrics for Continuous Integration 3 Implementation 4 Case Study 5 Conclusion & Future Work Christian Facchi, Jochen Wessel SMEF 2010 Slide 9

Pulse of Continuous Integration ti CI frequency: = number of successful integrations per day heartbeat of the SCRUM team target is CI frequency 1* developers only successful integrations are measured (correct delivery of a product); not erroneous checkin (error correction phase) Christian Facchi, Jochen Wessel SMEF 2010 Slide 10

Quality of Continuous Integration ti #CI {OK,ERR} are defined as number of correct or erroneous checkins ErrorRatio has been determined for each phase (build, unittest, t systemtest, t t ) indicator for: process problems (before checkin a successful test is required) interface problems (caused by parallel running tests) Christian Facchi, Jochen Wessel SMEF 2010 Slide 11

Duration of Continuous Integration ti defined as maximal value of an automated tool completion time per day for a special development phase of a component if e.g. the build time is to long the number of integration problems will grow, due to parallel checkins as target limit 10 minutes for a finer statistical analysis (variance, ) result (OK, FAIL) has to be included, because failures are faster than successful tests Christian Facchi, Jochen Wessel SMEF 2010 Slide 12

Availabillity of Continuos Integration ti uptime <phase> := time where system in <phase> is up and running downtime <phase> := time where system in <phase> is not running availabillity should be very high (basic requirement for development tasks low availability is a clear indicator for severe problems Christian Facchi, Jochen Wessel SMEF 2010 Slide 13

1 SCRUM and Continuous Integration 2 Definition of Metrics for Continuous Integration 3 Implementation 4 Case Study 5 Conclusion & Future Work Christian Facchi, Jochen Wessel SMEF 2010 Slide 14

Implementation: ti fully automated test and build environment (UNIX scripts) extension of scripts to write metrics information (component name, phase, state, timestamp, ) in logfiles METRICS:<component><phase><state><time> < h t t ><ti > state = {started ok failed} PERL scripts to analyze logfiles spreadsheet program to generate statistical information Christian Facchi, Jochen Wessel SMEF 2010 Slide 15

1 SCRUM and Continuous Integration 2 Definition of Metrics for Continuous Integration 3 Implementation 4 Case Study 5 Conclusion & Future Work Christian Facchi, Jochen Wessel SMEF 2010 Slide 16

Case study: 2 SCRUM teams one development site one team in bugfix phase and one team in development phase Observations: low pulse of integration: less than 1 per team member and day; reason: already known task split (developer, tester) constant pulse of integration; no rush hour at the end of a sprint; ok slow development cycles: long maximal build time (up to 1.5 hours) long maximal test time (up to 2 hours) Reason: build process can be optimized (makefile generation) Christian Facchi, Jochen Wessel SMEF 2010 Slide 17

Actions: buildprocess has been optimized immediately reduced to 50%, further improvement scheduled remove tasksplitt between team members (tester, developer); areas of competence destabilized long term issue (education) Advantages for SCRUM teams: improved buildtime leads to reduce cycle time and to less integration problems (not reported) higher prioritisation of already suspected impediments Christian Facchi, Jochen Wessel SMEF 2010 Slide 18

Results of the case study: proposed metrics are very helpful for SCRUM teams. Despite the fact that metrics are suspected in general analyzing metrics needs time and deep insight (wrong conclusions can be drawn very fast) objective results to achieve improvements (measureable) less is more (concentrate on some valuable able metrics) better visualisation should help SCRUM teams (see burn down chart) let the SCRUM team select/define metrics Christian Facchi, Jochen Wessel SMEF 2010 Slide 19

1 SCRUM and Continuous Integration 2 Definition of Metrics for Continuous Integration 3 Implementation 4 Case Study 5 Conclusion & Future Work Christian Facchi, Jochen Wessel SMEF 2010 Slide 20

Conclusion Summary metrics in an agile environment are useful careful selection of metrics careful interpretation of results to much metrics leads to control by management (contradiction to SCRUM) metrics should help SCRUM teams, so the teams should define the metrics best practice: Continuous Integration can be used in every SW development process: Try it Christian Facchi, Jochen Wessel SMEF 2010 Slide 21

Future Work What remains to be done? application to other areas (plan driven projects; other agile methods) better visualization (Integration in Continuous Integration tooling); feedback to SCRUM teams extension to determine the quality of modularization Christian Facchi, Jochen Wessel SMEF 2010 Slide 22

Thank you for your attention Questions? University of Applied Sciences Ingolstadt Hochschule Ingolst adt Prof. Dr. Christian Facchi SW Engineering and Distributed Systems Esplanade 10 85049 Ingolstadt Phone: +49-841-9348-365 Fax: +49-841-9348220 9348220 E-mail: christian.facchi@haw-ingolstadt.de www: www.haw-ingolstadt.de/

SCRUM at LTE C-Plane SW in Nokia Siemens Networks (environment): development of a part of enodeb telecommunication SW (LTE C-Plane) ~90 software developers 2 development sites 8 SCRUM teams embedded in bigger frame program (using waterfall model)

Special setup of SCRUM at LTE C-Plane SW in Nokia Siemens Networks: Feature Expert Team: interface to traditional (waterfall) environment (frame process) continuity of development introduction of features to SCRUM teams support of Product Owner to build up backlog Feature Expert Team has been divided furthermore: Subject Matter Experts one central Product Owner and one proxy Product owner per site weekly SCRUM of SCRUM