MTAT Software Engineering Management

Similar documents
THE SCRUM FRAMEWORK 1

This Thing Called Kanban

Crystal Methodologies, Lean & Kanban

Hands-On Lab. Agile Planning and Portfolio Management with Team Foundation Server Lab version: Last updated: 11/25/2013

Kanban In a Nutshell. Bob Galen President & Principal Consultant RGCG, LLC

Driving a Kaizen Culture

Agile Software Development. Software Development Methodologies. Who am I? Waterfall. John York JOHN YORK EECS 441 FALL 2017 A BRIEF LOOK

Agile Software Development. Software Development Methodologies. Who am I? Waterfall. John York JOHN YORK EECS 441 WINTER 2018 A BRIEF LOOK

Software Engineering I (02161)

Exam Questions

Scrum and Kanban Compare and Contrast

Collaboration at Scale: Prioritizing a Backlog. 13-Dec-2017

The Kanban Applied Guide

The Improvement Backlog. Claude Rémillard InCycle Software

Kanban One-Day Workshop

Kanban & Making Your Production Scream

Kanban, Flow and Cadence

Adopting Agile Practices

Development Processes Agile Adaptive Planning. Stefan Sobek

Get Good at DevOps: Feature Flag Deployments with ASP.NET, WebAPI, & JavaScript

PMI Agile Certified Practitioner (PMI-ACP) Exam Prep Training - Brochure

Which one? It all comes down to complexity. Scrum - Kanban Cage Match. Kanban. Scrum Ben Day. The Tale of the Tape. Scrum and Kanban Cage Match

SAFe Atlassian Style (Updated version with SAFe 4.5) Whitepapers & Handouts

How Can a Tester Cope With the Fast Paced Iterative/Incremental Process?

Yoda. Agile Project Management with GitHub. Jens Vedel Markussen, Engineering Manager Hewlett Packard Enterprise

02291: System Integration

Development with Scrum

Agile Accessibility. Presenters: Ensuring accessibility throughout the Agile development process

MTAT : Software Testing

Getting Started with the Salesforce Agile Accelerator

An Intro to Scrum. Agile (Iterative) Project Development. Written in 2001 Can be read in its entirety at:

Agile Software Development Agile UX Work. Kati Kuusinen TUT / Pervasive / IHTE

A Little Lean with Kanban

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do?

Scrum & Kanban Better Together? Some Scrum/Kanban Myths & What Professional Scrum+Kanban can look like

Administration Guide. Release

Inside JIRA scheme, everything can be configured, and it consists of. This section will guide you through JIRA Issue and it's types.

DOWNLOAD OR READ : SUCCEEDING WITH AGILE SOFTWARE DEVELOPMENT USING SCRUM ADDISON WESLEY SIGNATURE PDF EBOOK EPUB MOBI

MTAT Software Engineering Management

What is JIRA? software development tool. planning and tracking the projects progress and supporting the team collaboration

Testing in the Agile World

JetBrains YouTrack Comparison

Agile Testing Course: 15 16/11

Requirements and User-Centered Design in an Agile Context

Testing in an Agile Environment Understanding Testing role and techniques in an Agile development environment. Just enough, just in time!

SE420 - Software Quality Assurance

Case Management Digital Service Sprint Review Sprint 5.1: 11/16/17 11/29/17. CWDS / Child Welfare Digital Services

Project Management Course. Zenhub + Github, when agile become a reality. Aitor Corchero

Scrums effects on software maintainability and usability

Test Driven Development. René Barto SES Agile Development - Test Driven Development

Vision, Roadmap, and Release Planning

Kanban Kickstart Geeknight. Jesper Boeg, Agile/Lean Coach, VP Trifork Agile Excellence Twitter: J_Boeg

Index. Wouter de Kort 2016 W. de Kort, DevOps on the Microsoft Stack, DOI /

Specifying Acceptance Criteria

AGILE MARKETING WITH KANBAN BOARDS. Created by Femi Olajiga - Agile Marketing Coach and Team Effectiveness Trainer

Actual4Test. Actual4test - actual test exam dumps-pass for IT exams

Agile where are we at?

Use Guide STANDARD JIRA-CLIENT ESTNDAR. Version 3.0. Standard JIRA Client Use Guide

Barely Sufficient Project Management

Quality, Project Management & Supply Professional (Customized). Choice of any 3 certifications outlined as follows:

Software Development

Kanban-The Building Blocks. Ashish Chandra Senior Manager-SunGard

Lecture 7: Software Processes. Refresher: Software Always Evolves

Secure Agile How to make secure applications using Agile Methods Thomas Stiehm, CTO

(Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn? New Batches Info

Team Foundation Server Visual Studio Team Services. Hans-Petter Halvorsen, M.Sc.

LESSONS LEARNED: BEING AGILE IN THE WATERFALL SANDBOX

AGILE. Getting Started on Your Team. Davisbase. Copyright 2011 Davisbase LLC. Licensed for Classroom Use to ASPE for Webinar Use Only

MTAT : Software Testing

CS 320 Introduction to Software Engineering Spring February 06, 2017

Scaling agile with Atlassian and SAFe

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

Shift Left, Automation, and Other Smart Strategies for Getting Ahead in QA

Microsoft. Recertification for MCSD: Application Lifecycle Management

Scaling agile with Atlassian and SAFe

9/5/2015. MTAT Software Engineering. Structure of Lecture 01. Course Information/Overview. Letter Grades. Student Feedback 2014/15

Project Plan. SISCalendar. for. Prepared by Zach Masiello. Ethan Mick Michael Caputo Shawn Thompson Organization: SIS.io

ServiceNow - Agile in ServiceNow

Software Quality in a Modern Development Team. Presented by Timothy Bauguess and Marty Lewis

CONFERENCE PROCEEDINGS QUALITY CONFERENCE. Conference Paper Excerpt from the 28TH ANNUAL SOFTWARE. October 18th 19th, 2010

JIRA Overview & Configuration. Based on the A2F Framework

JIRA Studio Use Cases and Tutorial basis

Tour Trak Project Plan

Expanding Throughout the Lifecycle and Embracing New Participants

Acceptance Testing What does it mean to you?

Any platform. Achieve more. Team agility

l e a n Lean Software Development software development Faster Better Cheaper

Software Engineering I (02161)

Pega Agile Studio USER GUIDE 7.4

Approaches for Auditing Software Vendors

Constant Velocity Is a Myth

Administering SQL Servers for Development Teams. Mike Acord & Tony Sebion Omni Resources

Integrated Design & Development

Kanban Workshop 2 Days

Software Engineering I (02161)

Maja Schreiner. 9th Lean, Agile & Scrum Conference 2017

Jan-Henrik Tiedemann IEC Community Manager IEC Academy Manager. IEC Academy Webinar

Tips and Tricks. Arian Treffer Software Engineering II WS 2016/17

Software Engineering I (02161)

Agile Studio USER GUIDE 7.3

Transcription:

MTAT.03.243 Software Engineering Management Lecture 11: Flow-based (KANBAN) Principles and Processes Dietmar Pfahl Spring 2014 email: dietmar.pfahl@ut.ee

Structure of Lecture 11 Flow-based agile development (Kanban) A study of Scrum versus Kanban in a software company

Kanban (Jap.): literally signboard or billboard

Time-boxing versus Task-boxing Scrum has sprints (iterations) of 2-4 weeks. But it is not always easy to divide the tasks or features of the systems to fit into such time intervals What about instead defining a set of tasks or features and deliver when finished? SCRUM vs. KANBAN

Kanban a technique based on Lean Production Kanban focuses on: Flow of work items (throughput/velocity) that is, the number of features (user stories) implemented per unit of time Lead-time (cycle time) = the time it takes to finish a user story (work item) KANBAN

Kanban Board A Work Item represents a unit of work to be carried out by the development team Describe a Work item on a post-it sheet and put it on a board in one of the categories : To do, In progress or more detailed states. Done shows the Work Items that are finished From: Kanban and Scrum - making the most of both by Henrik Kniberg and Mattias Skarin on Dec 21, 2009

Scrum Board versus Kanban Board Max WIP From: Kanban and Scrum - making the most of both by Henrik Kniberg and Mattias Skarin on Dec 21, 2009 http://www.crisp.se/file-uploads/kanban-vs-scrum.pdf

What is the right WIP limit?

What s the right WIP limit? 4

Differences between Scrum and Kanban (1) Time-boxed iterations prescribed. Team commits to a specific amount of work for this iteration. Uses Velocity as default metric for planning and process improvement. Time-boxed iterations optional. Can have separate cadences for planning, release, and process improvement. Can be event-driven instead of time-boxed. Commitment optional. Uses Lead time as default metric for planning and process improvement.

Team #1: (1 cadence) We do Scrum Team #2: (3 cadences) Every week, we release whatever is ready for release, every two weeks we have a planning meeting,... Team #3: (event-driven) We trigger a planning meeting whenever we start running out of stuff to do. We trigger a release whenever there is a MMF (minimum marketable feature set) ready for release. We trigger a spontaneous quality circle whenever we bump into the same problem the second time. We also do a more in-depth retrospective every fourth week.

Differences between Scrum and Kanban (2) Cross-functional teams prescribed. Cross-functional teams optional. Specialist teams allowed Items must be broken down so they can be completed within 1 sprint. Burndown chart prescribed WIP limited indirectly (per sprint) Estimation prescribed No particular item size is prescribed. No particular type of diagram is prescribed WIP limited directly (per workflow state) Estimation optional

Scrum Kanban

Differences between Scrum and Kanban (3) Cannot add items to ongoing iteration. A sprint backlog is owned by one specific team Prescribes 3 roles (PO/SM/Team) A Scrum board is reset between each sprint Prescribes a prioritized product backlog Can add new items whenever capacity is available A Kanban board may be shared by multiple teams or individuals Doesn t prescribe any roles A Kanban board is persistent Prioritization is optional.

Similarities between Scrum and Kanban Both use pull scheduling Both limit WIP (but in different ways) Both use transparency to drive process improvement Both focus on delivering releasable software early and often Both are based on self-organizing teams Both require breaking the work into pieces In both, release plan is continuously optimized based on empirical data (velocity / lead time) Both are Lean and Agile

Visualize Your Workflow Limit Your WIP Use Lead-Time as default metric RUP has over 30 roles, over 20 activities, and over 70 artifacts.

Claimed Advantages of Kanban Process element becomes more visible Bottlenecks Queues Variability Then it becomes easier to focus on finishing tasks that hamper the total flow instead of starting on new tasks that will pile up Can do agile development without focusing on time-boxing. Particularly suited for tasks regarding technical and user support, where well-defined sprints may not be appropriate

Questions Kanban claim: A fixed WIP (Work In Progress) will improve the process quality. Will it help reduce the number of active WIs in total or by state? What s the mutual relationship between lead-time, productivity and quality? How does Kanban vs. Scrum perform with respect to leadtime, productivity and quality? To get more insight, Sjøberg et al. ran a study at Software Innovation: Dag I.K. Sjøberg, Anders Johnsen and Jørgen Solberg: Quantifying the Effect of Using Kanban versus Scrum: A Case Study. IEEE Software, Vol. 29, Nr. 5, side 47 53, Sep./Oct. 2012

Structure of Lecture 11 Flow-based agile development (Kanban) A study of Scrum versus Kanban in a software company

From Scrum to Kanban in Software Innovation (SI) Scrum from 2007 Kanban from 2010 -> Why change to Kanban? Increase production Improve project and product quality Were the expectations met? Analysis of 12 000 work items over 3.5 years recorded in Team Foundation Server (TFS)

Implementation of Scrum at SI Cross-functional teams the team contains all the skills needed to complete all the items in the iteration Sprint planning meetings that included estimation of work items using planning poker Daily standup meetings Sprints of three weeks shippable increments of code (fully tested) at the end of each sprint demos in the review meetings Status visible through automated reports and task boards for all of the teams

Implementation of Kanban at SI When started on an item, attempt to let it flow until it is ready for release at a satisfactory quality as soon as possible (fast delivery without timeboxes) Limited number of work items in progress at the same time (WIP limit) If WIP limit reached, work will not start on a new item before another one is finished (just-in-time) No cross-functional teams Abandoned start-up meetings with estimation of work items Still daily stand-up meetings Demos once or twice a week, regardless of the progress of the work items being discussed

Variables in the study

Conclusions (as stated in paper) By replacing Scrum with Kanban, SI almost halved the lead time reduced the number of bugs by 10% improved productivity SI appears to benefit from using Kanban over Scrum Kanban should be considered by other companies that have Difficulties with estimation Interruptions due to ad hoc-bug fixing, support and maintenance tasks

Conclusions (as stated in paper) By replacing Scrum with Kanban, SI almost halved the lead time reduced the number of bugs by 10% improved productivity SI appears to benefit from using Kanban over Scrum Kanban should be considered by other companies that have Difficulties with estimation Let s check again the data to see whether the conclusions are justified! Interruptions due to ad hoc-bug fixing, support and maintenance tasks

Lead Time (days) Bug PBI

? Lead Time (days) Bug Has the improvement already PBI happened in quarter 2009.4 (while scrum was used) and not only when Kanban was introduced?

# of weighted bugs # of blocking bugs

Productivity Bugs per developer PBIs per developer

Churn of bugs Churn of PBIs

Productivity 2 Churn (of Bugs) per developer Churn (of PBIs) per developer

Keep the following in mind...

Next Lecture Topic: SPI & Empirical Methods - Part A Guest Lecture on Wednesday, April 2: Challenges of Implementing SCRUM in a Large Scale Public Sector Project by Alar Huul (Nortal) For you to do: Finish Homework 3 Submission Deadline is Monday, March 31, at 17:00 (sharp) Work on Project