Lecture4- Agile Development and Scrum

download Lecture4- Agile Development and Scrum

of 30

Transcript of Lecture4- Agile Development and Scrum

  • 8/8/2019 Lecture4- Agile Development and Scrum

    1/30

    SCRUM PRIMER

    B Y

    U S M A N W A H E E D

  • 8/8/2019 Lecture4- Agile Development and Scrum

    2/30

    The Waterfall Model2

    software development is illustratedin Figure 2.

    I have experienced

    different degrees of success

    operational state, on-time, andwithin costs.

    Dr. Winston W. Royce Managing The Development Of Large Software SystemsProceedin s of IEEE WESCON 26 - 1 0

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    3/30

    Agile Developm ent and Scr um3

    A ile em hasizes buildin workin software that

    people can get hands on with quickly, versusspending a lot of time writing specifications up front.

    Agile focuses on small, cross-functional teams

    empowered to make decisions, versus big hierarchies,.

    Agile focuses on rapid iteration, with as much

    .

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    4/30

    fastest-growing Agile method4One of the fastest-growing Agile methods is Scrum .

    . ,

    and its now being used by companies large and small, including

    Yahoo!,Microsoft,Google,

    Lockheed Martin,,

    SAP,Cisco,GE Medical

    CapitalOne andthe US Federal Reserve.

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    5/30

    5

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    6/30

    Scrum6 Scrum is an iterative, incremental process. Scrum structures product

    typically 1-4 weeks in length. The Sprints are of fixed dur ation they end on a specific date

    wh ether the w ork h as been com pleted or not, and ar e never.

    At the beginning of each Sprint, a cross-functional team selects items froma prioritized list of requirements, and commits to complete them by the end

    of the Sprint., ,

    and update simple visual representations of work remaining. At the end of the Sprint, the team demonstrates what they have built, and

    gets feedback which can then be acted upon in the next Sprint.

    crum emp as zes pro uc ng wor ng pro uct t at at t e en o t e pr ntis really done; in the case of software, this means code that is fully testedand potentially shippable.

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    7/30

    Scrum Roles7

    In Scrum, there are three rimar roles:

    1. The Product Owner2. Team Members

    3. The ScrumMaster

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    8/30

  • 8/8/2019 Lecture4- Agile Development and Scrum

    9/30

    Team Members9 Team Members build the product that the customer is going to consume:

    the software, the website, or whatever it may be. The team in Scrum is t icall five to ten eo le althou h teams as lar e

    as 15 and as small as 3 commonly report benefits. The team should include all the expertise necessary to deliver the

    finished work so, for example, the team for a software project might

    researchers. Team members build the product, but they also provide input and ideas

    to the Product Owner about how to make the product as good as it can

    Projects with more than 15 people are organized as multiple Scrumteams, each focused on a different aspect of the product development,

    with close coordination of their efforts. While team members can split

    its much more productive to have team members fully dedicated to theScrum. Team members can also change from one Sprint to the next, butthat also reduces the productivity of the team.

    Prepared and presented by Usman Waheed

    - , - , , ,committed, not more than 9 people.

  • 8/8/2019 Lecture4- Agile Development and Scrum

    10/30

  • 8/8/2019 Lecture4- Agile Development and Scrum

    11/30

    Product Backlog11

    The first ste in Scrum is for the Product Owner to

    articulate the product vision. This takes the form of a prioritized list of whats

    required, ranked in order of value to the customer

    and business, with the highest value items at the top. ,exists (and evolves) over the lifetime of the

    roduct fi ure 2 .

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    12/30

    Example12

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    13/30

  • 8/8/2019 Lecture4- Agile Development and Scrum

    14/30

    Product Backlog14

    Product Backlog is the single, definitive view of every ng a nee s o e one. n y a s ng e ro uc

    Backlog exists; this means the Product Owner is requiredto make prioritization decisions across the entire

    . Items in the Product Backlog will vary widely in size; the

    larger ones will often be broken into smaller pieces,may be consolidated.

    One of the myths about Scrum is that it prevents you

    ,the Product Owner and Team to decide just how muchdetail is required, and this may vary from one Product

    Prepared and presented by Usman Waheed

    .

  • 8/8/2019 Lecture4- Agile Development and Scrum

    15/30

    Sprint Planning Meeting15

    In the first part of the Sprint Planning Meeting, the Product Owner

    the Product Backlog, discussing the goals and context for the itemson the Backlog, and providing the Scrum Team with insight into theProduct Owners thinking.

    In t e secon part o t e meet ng, t e Scrum Team se ects t e temsfrom the Product Backlog to commit to complete by the end of theSprint, starting at the top of the Product Backlog (in others words,startin with the items that are the hi hest riorit for the ProductOwner) and working down the list in order.

    This is one of the key practices in Scrum: the team decides how much

    wor ey w comm o comp e e, ra er an av ng ass gneto them by the Product Owner. This makes for a much morereliable commitment;

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    16/30

    Sprint Planning Meeting16

    The Sprint Planning meeting will often last a number ofours

    the team is making a very serious commitment tocomplete the work, and this commitment requires careful

    oug o e success u . The team will begin by estimating how much time each

    member has for Sprint-related work in other words,e r average wor ay m nus e me ey spen o ng

    things like cr i t ica l b u g -f ixe s a n d o t h er m a in t en a n ce , a t t e n d in g m ee t in g s , d o in g em a il,

    , .this works out to 4-6 hours of time per day available forSprint-related work. (Figure 3.)

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    17/30

    Sprint planning17

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    18/30

    Sprint backlog18

    Once the time available is determined, the teamstarts with the first item on the Product Backlog

    In other words, the Product Owners highest priority ,

    individual tasks, which are recorded in a document

    called the Spr int Backlog (figur e 4). At the end of the meeting, the team will have

    produced a list of all the tasks, and for each task who

    estimate it will take (typically in hours or fractions ofa day).

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    19/30

    Example19

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    20/30

    Scrum Change20

    One of the key pillars of Scrum is that once the Scrum Team makes,

    during the course of the Sprint.

    This means that even if halfwa throu h the S rint the ProductOwner decides that they want to add something new, he or shecannot make changes until the start of the next Sprint.

    an ex erna c rcums ance appears a s gn can y c angespriorities, and means the team would be wasting its time if itcontinued working, the Product Owner can terminate the Sprint;

    this m eans the team stops all the w ork they ar e doing, andstarts over w ith a Sprint Planning m eeting, and so for th.

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    21/30

    Daily Standup Meeting

    21

    Once the Sprint has started, the Scrum Team engages in another of the- .

    This is a short (15 minute) meeting that happens every workday at anappointed time, and everyone on the Scrum Team attends; in order toensure it stays brief, everyone stands (hence Stand-Up Meeting).

    t s t e team s opportun ty to report to tse on progress an o stac es.

    One by one, each member of the team reports just three things to the othermembers of the team:1. What they were able to get done since the last meeting.2. what theyre aiming to get done by the next meeting.3. any blocks or obstacles that are in their way.

    Theres no discussion during the Daily Stand-Up Meeting, just thereporting of the three key pieces of information; if discussion isrequired, it takes place right after the meeting.

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    22/30

  • 8/8/2019 Lecture4- Agile Development and Scrum

    23/30

    After meeting23

    After the meeting, the team members update the amountof time remaining to complete each of the tasks thattheyve signed up for on the Sprint Backlog.

    e mpor an ng s a s ow e eam e r ac uaprogress towards their goal and not in terms of how

    much time has been s ent so far (an irrelevant fact, as faras Scrum is concerned), but in terms of how much workremains what separates the team from their goal.

    e curve s no rac ng owar s comp e on a e enof the Sprint, then the team needs to either pick up theace or sim lif and cut down what its doin .

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    24/30

    24

    This information is recordedon a graph called the Sprint

    Burndown Chart (figure 5). Itshows, each day, how much

    days) remains until the teamscommitment is completed.

    Ideally, this should be adownward sloping graph thatis on a trajectory to hit zero onthe last day of the Sprint. And

    that, often it doesnt.

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    25/30

    Sprint status25

    One of the core tenets of Scrum is that the duration of the Sprint is never extended it ends on the assi ned date re ardless of whether the team has com leted the workit committed to or not.

    If the team has not completed their Sprint Goal, they have to stand up at the end ofthe Sprint and acknowledge that they did not meet their commitment.

    The idea is that this creates a very visible feedback loop, and teams are forced to getbetter at estimating what they are capable of accomplishing in a given Sprint, andthen delivering it without fail.

    eams wi typica y over-commit in t eir irst ew prints an ai to meet t eirSprint Goal; they might then overcompensate and undercommit, and finish early;but by the third or fourth Sprint, teams will typically have figured out what theyrecapable of delivering, and theyll meet their Sprint goals reliably after that.

    ,

    change it frequently a consistent duration helps the team learn how much it canaccomplish, and it also helps the team achieve a rhythm for their work (this is oftenreferred to as the heartbeat of the team).

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    26/30

    Sprint Review26

    After the Sprint ends, there is the Sprint Review, where theeam emos w a ey ve u ur ng e pr n .

    Present at this meeting are the Product Owner, TeamMembers, and ScrumMaster, plus customers, stakeholders,experts, executives, and anyone else interested.

    This is not a resentation the team ives there are noPowerPoints, and typically no more than 30 minutes isspent preparing for it its literally just a demo of whats been

    built and an one resent is free to ask uestions and ive

    input.It can last 10 m in u t e s, o r it ca n la s t t w o h o u r s whatever

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    27/30

    Spr int Retrospective27

    Following the Sprint Review, the team gets together for theSprint Retrospective.

    Its an opportunity for the team to discuss whats workingand whats not workin and a ree on chan es to tr .

    The Scrum Team, the Product Owner, and the ScrumMaster,meeting; a good approach is for ScrumMasters to facilitateeach others retrospectives, which enables cross-pollination

    .

    This is a practice that some teams skip, and thats

    Prepared and presented by Usman Waheed

    un or una e ecause s one o e mos mpor an oo s ormaking Scrum successful.

  • 8/8/2019 Lecture4- Agile Development and Scrum

    28/30

    Sprint status28

    A simple way to structure the Sprint Retrospective isto hang two sheets of poster-sized paper labeledWhats Working Well and Whats Not Working, or

    several items to either.

    As items are repeated, check-marks are added nextto them, so the common items become clear. Thenthe team looks for underlying causes, and agrees onchan es to make in the u comin S rint alon with

    a commitment to review the results at the nextSprint Retrospective.

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    29/30

    Starting the Next Sprint29

    Following the Sprint Review Meeting, the Product Owner takes all the input, as wellas all new riorities that have a eared durin the S rint and incor orates theminto the Product Backlog; new items are added, and existing ones are modified,

    reordered, or deleted. Once this updating of the Product Backlog is complete, the cycle is ready to begin all

    over again, with the next Sprint Planning Meeting. ne practice many teams in use u is to o a rioritization eeting towar t e

    end of each Sprint, to review the Product Backlog for the upcoming Sprint with theProduct Owner.

    In addition to giving the team an opportunity to suggest items the Product Owner ,off any preliminary thinking thats required before the Sprint Planning Meeting.

    Theres no downtime between Sprints teams will often go from a Sprint Reviewone afternoon into the next Sprint Planning Meeting the following morning.

    One of the values of A ile develo ment is sustainable ace and onl b workin

    regular hours at a reasonable level of intensity can teams continue this cycleindefinitely.

    Prepared and presented by Usman Waheed

  • 8/8/2019 Lecture4- Agile Development and Scrum

    30/30

    Release Planning

    30

    S rints continue until the Product Owner decides the

    product is almost ready for release, at which pointthere may be a Release Sprint to do finaln egra on an es ng n prepara on or aunc .

    the team has followed good development practices

    ,integration, and effective testing during each Sprint,there should be little cleanup required.

    Prepared and presented by Usman Waheed