CEN 4010 Intro to Software Engineering Professor Alex Roque

Slides:



Advertisements
Similar presentations
Iteration Planning.
Advertisements

ITEC 370 Lecture 24 Lifecycles. Review Questions? –Grades for Requirements/Design Doc F give prototype demonstration –Testing plan for your software Maintenance.
What is Agile? Agile is a software methodology based on iterative and incremental development, where requirements and solutions evolve through collaboration.
Copyright © by Mark J. Sebern Software Engineering Process I SE Product backlog, estimation, velocity.
 User assignments (product owner)  ‘circle’  1 st sprint: ◦ Scrum Boards (informative workspace)  Product -, release -, sprint -, defect backlog 
Morning – 9am Getting Started Agile Manifesto Values & Principles Scrum Framework ~~ 10:40 to 11:00 Break ~~ Scrum Roles Backlog Grooming Estimation.
Rules of the Game  Loosely based upon the TV show, “Who wants to be a millionaire.®”  Once the question is read, you will have 30 seconds to discuss.
Agile development By Sam Chamberlain. First a bit of history..
Agile Methodologies for Project Management By – Komal Mehta.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
What is Scrum Process? Where is it used? How is it better?
SWEN 302: AGILE METHODS Roma Klapaukh & Alex Potanin.
SCRUM introduction 6 April Scrum Team are known as pigs because they’re committed to delivering Sprint Goal People who are involved but not dedicated.
Process is continuously improving Have Definition of Done (DoD) DoD achievable within each iteration Team respects DoD The bottom line Delivering working,
Dr. Nguyen Hai Quan.  Why SCRUM?  What is SCRUM?  Some terms  SCRUM Meetings  Sprint  Estimation  Product backlog  Sprint backlog  Whiteboard.
Copyright © by Mark J. Sebern Software Engineering Process I SE 2800.
SCRUM.
Lecture 5 17/9/15. What is Scrum? Scrum is one of the leading agile software development processes Agile framework for completing complex projects. Originally.
Software Engineering 2004 Jyrki Nummenmaa 1 Why new software methodologies The classic waterfall-model based techniques are strongly based on the.
Introduction to Agile. Introduction Who is this guy?
Scrum Overview. Agenda What is scrum…and what it isn’t Scrum’s Characteristics The Scrum Process Scrum Phases Measurements Key Practices Backlogs Sprint.
Managing Agile Software Development Teams Using Scrum AKA: Wrangling Developers for Fun and Profit!
Agile Methodology. -Dhanashree Kumkar -Plus91 Technologies.
Informed Traveler Program and Applications Agile / Scrum Overview Jerry Inberg.
The Scrum Framework Presented by Somnath Ghosh Scrum Practitioner 24 hours weeks.
Barnes & Noble Alonda Morgan. Agile UX Agile.
Utilize Agile Project Management for GIS Projects Jennifer Prather and Lana Tylka.
AGILE METHODS Curtis Cook CS 569 Spring 2003.
Embedded Systems Software Engineering
Agile Project Management and the yin & yang of
CEN 4010 Intro to Software Engineering Professor Alex Roque
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Agile Project Management
Flight Software Conference 2016
Scrum.
Wael Ellithy, Ph.D. Arx ICT
SCRUM.
Agile Training – Agile Overview
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Agile Scrum Management
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Mike Cohn - Agile Estimating and Planning
By: By: Agile Scrum Master Online Training.
Requirements and User Stories
Product Backlog List of things that needs to be done to make the product come into existence 
Rapid software development
CEN 4010 Intro to Software Engineering Professor Alex Roque
CEN 4010 Intro to Software Engineering Professor Alex Roque
Project Management and the Agile Manifesto
Scrum MODULE 3 – Part 3.
Johanna Rothman Agile Team Measurements Chapter 12
How to Successfully Implement an Agile Project
Summarizing Our Models to Date
Johanna Rothman Report Your Project State Chapter 14
Johanna Rothman Know What “Done” Means Chapter 11
CSCE 741 Software Process Lecture 04 Availability
Agile practices for documentation teams
Sprint Planning April 2018.
Introduction If you have got a call for an Agile testing interview, then congratulations are in order. You may be feeling nervous, but it sure to be felt.
Introduction to Agile Blue Ocean Workshops.
Coming up: What is Agile?
Scrum Science NGSS: Engineering, Technology, Applications of Science
Teaching slides Chapter 13
Software Development In Agile
Scrum in Action.
Organizing and Accelerating Your Work with Scrum
09 | Kanban Steven Borg | Co-Founder & Strategist, Northwest Cadence
Scrum From the
Software Development In Agile
Presentation transcript:

CEN 4010 Intro to Software Engineering Professor Alex Roque Sprints CEN 4010 Intro to Software Engineering Professor Alex Roque

Sprints Scrum organizes work in iterations or cycles, called Sprints, of up to a calendar month Sprint key characteristics: Timeboxed Short and consistent duration Goal should not be altered once started Must reach the end-state specified by the team’s definition of done

Timeboxing Time-management technique that helps organize the performance of work and manage its scope Establishes a Work-in-Process (WIP) limit for the team to both start & finish Forces Prioritization Demonstrates Progress Avoids Unnecessary perfection – “good enough” often suffices Motivates Closure due to known short, end date Improves Predictability of short-term work being done

Why Short Duration is beneficial! Easier to Plan Fast Feedback Bounded Error – may only lose short amount of time; provides for frequent coordination and feedback Improved Return on Investment – may be able to generate revenue sooner Rejuvenated Excitement – short-term success/gratification Frequent Checkpoints

What about checkpoints? Sprints reviews are checkpoints for stakeholders to provide feedback and be able to pivot if things aren’t right.

Should the sprint duration be consistent? Absolutely! Each development project should pick a consistent duration for its sprints However, compelling reasons to alter the duration include: Longer to shorter sprints to see if more frequent feedback would be better Seasonal calendar situations (end of year) Product release due in less time than the sprint Not acceptable reason – team needs more time to complete the work

Why do we want a consistent duration? Cadence! Week long sprint = 5 calendar weekdays, 2 weeks = 10 calendar weekdays, etc. Any holidays, training days, etc. within a sprint just reduces the team’s capacity for that sprint Promotes a Cadence (rhythm or “heartbeat”) to the development work “Get into the zone”, “Get into flow”, “Be on a roll”, “Get into a groove” Levels out the intensity of the work Simplifies Planning and amount of work that can be completed, called velocity Velocity, the amount of total work that can completed in a sprint. Typically a full time resource on a 2 week sprint has 8 story points (8 days out of 10 total days so 80% allocation).

Why do we want a consistent duration? Cadence! Week long sprint = 5 calendar weekdays, 2 weeks = 10 calendar weekdays, etc. Any holidays, training days, etc. within a sprint just reduces the team’s capacity for that sprint Promotes a Cadence (rhythm or “heartbeat”) to the development work “Get into the zone”, “Get into flow”, “Be on a roll”, “Get into a groove” Levels out the intensity of the work Simplifies Planning and amount of work that can be completed, called velocity Velocity, the amount of total work that can completed in a sprint. Typically a full time resource on a 2 week sprint has 8 story points (8 days out of 10 total days so 80% allocation).

The Sprint Goal Each Sprint has a clear business purpose and value which may be multifaceted (e.g., “Do this and that”) The Scrum Development Team should help refine and agree to the sprint goal during sprint planning Sprint Goal: Mutual Commitment – Product Owner & Development Team Clarification (not Change) is allowed but the difference between the two is such that a change will have an impact on meeting the sprint’s goal and work completion (done)

Clarification is allowed during the Sprint, change normally isn’t Change (Add new functionality to implement): PO: “When I said I wanted to search the police database for an offender, I didn’t just mean by last name and first name. I also meant we should allow search based on pictures of suspect tattoos”. Clarification (Further defines how the existing functionality will work): Dev Team: “When you said the matches for an offender search should be displayed in a list, did you want the list ordered a certain way?” PO: “Yeah , sort them alphabetically by last name”

Why don’t we want changes during a sprint? Change has Consequences Scrum principle embraces Change but in a balanced, economically sensible way Economic consequences of a change increase as our level of investment in the changed work increases (Figure 4.6) Initial Sprint Planning Replan for the Sprint Investment in work increases as backlog items progress from “to do” to “in progress” to “done” Dev Team Motivation & Trust deteriorates

Why don’t we want changes during a sprint? The No Goal Altering Changes characteristic is a Rule not a Law and being pragmatic “trumps” it Business conditions can necessitate changes to sprints Correct business decision is to make the change if its consequences are significantly less than deferring the change and vice versa Immaterial consequences suggest to defer the change Emergencies can occur, but if your team is always dealing with emergencies then scrum may not be the right framework.

Terminating a Sprint Abnormal Termination of a Sprint occurs when it becomes completely invalid Sprint terminates immediately Scrum Team (PO, SM, Dev Team) meets to perform a Sprint Retrospective Team then plans a new sprint PO’s reserve the right to terminate any sprint but doing it is a serious disruption Scrum Team decides length of the next sprint (Option 2 or 3 best for multi-team)

What to Expect when the sprint is completed? (Done) Result of a sprint is a Potentially Shippable Product Increment Actual deployment of the product increment is a business decision Sprint’s result is a state of confidence that what got built is actually done Conceptually, the definition of Done is a checklist of the types of work that the team must successfully complete for the entire product increment

Definition of Done Definition of Done (applies to the product increment) can evolve over time as organizational impediments or limitations may necessitate Earlier sprints may have a definition of Done that is somewhat different than later sprints due to this Leaving an activity out of a sprint (such as performance testing) could have a backwards ripple effect when that activity is actually performed Definition of Done versus Acceptance Criteria Each product backlog item in a sprint should have a set of conditions of satisfaction (acceptance criteria) for the Product Owner Acceptance criteria are item specific and in addition to definition of Done Completed or Accepted (not done) are terms used when Product Backlog items pass their acceptance criteria

Sprint Backlog The Product Owner maintains a groomed backlog of the items that need to be worked on. During the planning meeting, the product owner discusses the highly prioritized items and the team decides what they can work on. These stories that are estimated in the planning meeting (or possibly before) and have been decided to be worked on, then official movie from the product backlog to the sprint backlog. The sprint backlog contains all the stories that the team will work on during that given sprint.

Execution during a Sprint Once a sprint is underway, there should be minimal disruptions to the sprint. The team should be focused on the sprint goals and completing their tasks. During the sprint the team is essentially self-organized, and they will so whatever is necessary to achieve the sprint goals stay product focused. The Scrum master assists to remove impediment, but they should not act as a manager. The ownership should be on the team to complete their stories.