Agile Scrum software methodology
-
Upload
abdullah-raza -
Category
Education
-
view
157 -
download
4
Embed Size (px)
description
Transcript of Agile Scrum software methodology

Mohmmad Ali Jinnah UniversityBy
DR. Haji khan soomro(Dean) Computer science
Abdullah Lakhan (Lecturer) Computer scienc

AgendaIntroductionWhat is Scrum?History of ScrumFunctionality of ScrumComponents of Scrum
Scrum Roles The Process Scrum Artifacts
Scaling ScrumEvolution of ScrumScrum & XPConclusion
MAJU Agile Scrum Methodology 2

IntroductionClassical methods of software development have
many disadvantages:- huge effort during the planning phase- poor requirements conversion in a rapid changing
environment- treatment of staff as a factor of production
New methods: Agile Software Development
Maju Agile Scrum Methodology 3

Manifesto for Agile SDBased on the Manifesto for Agile Software
DevelopmentIndividuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
Maju Agile Scrum Methodology 4

Agile MethodsAgile methods:
ScrumExtreme ProgrammingAdaptive Software Development (ASD)Dynamic System Development Method (DSDM)…
Agile AllianceA non-profit organization promotes agile
development
Maju Agile Scrum Methodology 6

What is Scrum?Definition from rugby football:
a scrum is a way to restart the game after an interruption, where the forwards of each side come together in a tight formation and struggle to gain possession of the ball when it is tossed in among them
Maju Agile Scrum Methodology 7

Scrum - an agile processSCRUM is an agile, lightweight process for managing
and controlling software and product development in rapidly changing environments.
Iterative, incremental processTeam-based approachdeveloping systems/ products with rapidly changing
requirementsControls the chaos of conflicting interest and needsImprove communication and maximize cooperationProtecting the team form disruptions and impedimentsA way to maximize productivity
Maju Agile Scrum Methodology 8

History of Scrum 1995:
analysis of common software development processes not suitable for empirical, unpredictable and non-repeatable processes
Design of a new method: Scrum by Jeff Sutherland & Ken Schwaber
Enhancement of Scrum by Mike Beedle & combination of Scrum with Extreme Programming
1996:introduction of Scrum at OOPSLA conference
2001:publication “Agile Software Development with Scrum” byKen Schwaber & Mike Beedle
Successful appliance of Scrum in over 50 companiesFounders are members in the Agile Alliance
Maju Agile Scrum Methodology 9

Functionality of Scrum
Maju Agile Scrum Methodology 10

Components of ScrumScrum RolesThe ProcessScrum Artifacts
Maju Agile Scrum Methodology 11

Scrum MasterTypically filled by a Project Manager or Team
LeaderResponsible for enacting scrum values and
practicesMain job is to remove impediments
Maju Agile Scrum Methodology 12

The Scrum TeamTypically 5-10 peopleCross-functional (QA, Programmers, UI
Designers, etc.)Members should be full-timeTeam is self-organizingMembership can change only between
sprints
Maju Agile Scrum Methodology 13

Product OwnerActs like one voice (in any case)Knows what needs to be build and in what sequence this should be done
Typically a product manager
Maju Agile Scrum Methodology 14

The ProcessSprint Planning MeetingSprintDaily ScrumSprint Review Meeting
Maju Agile Scrum Methodology 15

Sprint Planning MeetingA collaborative meeting in the beginning of
each Sprint between the Product Owner, the Scrum Master and the Team
Takes 8 hours and consists of 2 parts (“before lunch and after lunch”)
Maju Agile Scrum Methodology 16

Parts of Sprint Planning Meeting1st Part:
Creating Product Backlog Determining the Sprint Goal. Participants: Product Owner, Scrum Master,
Scrum Team2nd Part:
Participants: Scrum Master, Scrum TeamCreating Sprint Backlog
Maju Agile Scrum Methodology 17

Pre-Project/Kickoff MeetingA special form of Sprint Planning MeetingMeeting before the begin of the Project
Maju Agile Scrum Methodology 18

SprintA month-long iteration, during which is
incremented a product functionalityNO outside influence can interference with
the Scrum team during the SprintEach Sprint begins with the Daily Scrum
Meeting
Maju Agile Scrum Methodology 19

Daily ScrumIs a short (15 minutes long) meeting, which is
held every day before the Team starts working
Participants: Scrum Master (which is the chairman), Scrum Team
“Chickens” and “Pigs”Every Team member should answer on 3
questions
Maju Agile Scrum Methodology 20

QuestionsWhat did you do since the last Scrum? What are you doing until the next Scrum?What is stopping you getting on with the
work?
Maju Agile Scrum Methodology 21

Daily ScrumIs NOT a problem solving sessionIs NOT a way to collect information about
WHO is behind the scheduleIs a meeting in which team members make
commitments to each other and to the Scrum Master
Is a good way for a Scrum Master to track the progress of the Team
Maju Agile Scrum Methodology 22

Sprint Review MeetingIs held at the end of each SprintBusiness functionality which was created
during the Sprint is demonstrated to the Product Owner
Informal, should not distract Team members of doing their work
Maju Agile Scrum Methodology 23

Scrum ArtifactsProduct BacklogSprint BacklogBurn down Charts
Maju Agile Scrum Methodology 24

Product BacklogRequirements for a system, expressed as a
prioritized list of Backlog ItemsIs managed and owned by a Product OwnerSpreadsheet (typically)Usually is created during the Sprint Planning
MeetingCan be changed and re-prioritized before
each PM
Maju Agile Scrum Methodology 25

Estimation of Product Backlog ItemsEstablishes team’s velocity (how much Effort
a Team can handle in one Sprint)Determining units of complexity.
Size-category (“T-Shirt size”)Story pointsWork days/work hours
Methods of estimation:Expert ReviewCreating a Work Breakdown Structure (WBS)
Maju Agile Scrum Methodology 26

Product BacklogIs only a FORECAST!-> is not exact
Maju Agile Scrum Methodology 27

Sprint BacklogA subset of Product Backlog Items, which
define the work for a SprintIs created ONLY by Team membersEach Item has it’s own statusShould be updated every day
Maju Agile Scrum Methodology 28

Sprint BacklogNo more then 300 tasks in the listIf a task requires more than 16 hours, it
should be broken downTeam can add or subtract items from the list.
Product Owner is not allowed to do it
Maju Agile Scrum Methodology 29

Sprint BacklogIs a FORECAST!Is a good warning monitor
Maju Agile Scrum Methodology 30

Burn down ChartsAre used to represent “work done”.Are wonderful Information Radiators3 Types:
Sprint Burn down Chart (progress of the Sprint)
Release Burn down Chart (progress of release)Product Burn down chart (progress of the
Product)
Maju Agile Scrum Methodology 31

Information Radiator"Two characteristics are key to a good
information radiator. The first is that the information changes over time. This makes it worth a person's while to look at the display... The other characteristic is that it takes very little energy to view the display."
Maju Agile Scrum Methodology 32

Burn down ChartsX-Axis: time (usually in days)Y-Axis: remaining effort
Maju Agile Scrum Methodology 33

Sprint Burn down ChartDepicts the total Sprint Backlog hours
remaining per dayShows the estimated amount of time to
release Ideally should burn down to zero to the end
of the SprintActually is not a straight lineCan bump UP
Maju Agile Scrum Methodology 34

Release Burn down ChartWill the release be done on right time?X-axis: sprintsY-axis: amount of hours remainingThe estimated work remaining can also burn
up
Maju Agile Scrum Methodology 35

Alternative Release Burn down ChartConsists of bars (one for each sprint)Values on the Y-axis: positive AND negativeIs more informative then a simple chart
Maju Agile Scrum Methodology 36

Product Burn down ChartIs a “big picture” view of project’s progress
(all the releases)
Maju Agile Scrum Methodology 37

Scaling ScrumA typical Scrum team is 6-10 peopleJeff Sutherland - up to over 800 people "Scrum of Scrums" or what called "Meta-
Scrum“Frequency of meetings is based on the
degree of coupling between packets
Maju Agile Scrum Methodology 38

Scaling Scrum
Maju Agile Scrum Methodology 39

Scaling Scrum
Maju Agile Scrum Methodology 40

XP@ScrumScrum is an effective project management
wrapper for eXtreme Programming development practices, which enables agile projects to become scalable and developed by distributed teams of developers.
Maju Agile Scrum Methodology 41

Pro/ConAdvantages
Completely developed and tested features in short iterations
Simplicity of the process Clearly defined rules Increasing productivity Self-organizing each team member
carries a lot of responsibility
Improved communication Combination with
Extreme Programming
Drawbacks “Undisciplined hacking”
(no written documentation)
Violation of responsibility Current mainly carried by
the inventors
Maju Agile Scrum Methodology 42

ConclusionThanks for you attention!
Any questions?
Maju Agile Scrum Methodology 43