SlideShare a Scribd company logo
Introduction to Agile
Sangeetha Siddhantam PMP, PMI-ACP
What Is Agile and why knowledge workers use it?
For any Knowledge workers (software engineers, doctors, lawyers,
accountants etc..) there are two important components they emphasize on:
1. Process
2. Quality
Since knowledge work is less structured and invisible, we as knowledge
workers continuously learn, innovate and emphasize on changing things.
This is when we adapt a process called Agile.
Agile is a process that is iterative and incremental where small sections are
completed for frequent inspections and adaptability.
A document called Agile Manifesto includes a statement of four values and twelve guiding principles.
Four values:
• Individuals and interactions over processes and tools.
• Working software over comprehensive documentation.
• Customer collaboration over contract negotiation.
• Responding to change over following a plan.
Twelve principles:
• Highest priority is to satisfy the customer through early and continuous delivery of valuable software.
• Welcome changes, even late in development.
• Deliver working software frequently, from a couple of weeks to couple of months .
• Business people and developers must work together daily throughout the project.
• Build projects around motivated individual.
• The most efficient and effective method of conveying is face-to-face conversation.
• Working software is the primary measure of progress.
• Promoters sustainable development. The sponsors, developers and users should be able to maintain a constant pace indefinitely.
• Continuous attention to technical excellence and good design enhances agility.
• Simplicity.
• Self –organizing teams.
• At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
Agile Methodologies
Most common Agile Mythologies are:
• Scrum
• Extreme Programming(XP)
• Lean product development
• Kanban
• Feature-Driven Development
• Dynamic Systems Development Method(DSDM)
• Crystal
Discussing Agile Methodologies
Often, there is misconception that scrum is a methodology. Scrum is a part of Agile
Methodologies. Scrum is a framework where we document deadlines, requirement, roles,
meeting details ETC that is useful for the team in executing the project. This document in
Scrum is called as “Scrum framework”.
Scrum Pillars and Values:
1. Transparency
2. Inspection
3. Adaptation
Scrum 5 fundamental values:
1. Focus
2. Courage
3. Openness
4. Commitment
5. Respect
Scrum
Scrum Process
In this we shall discuss Key Scrum concept-Sprint and the roles in Scrum team, artifacts.
Sprints
Sprint = Timeboxed (time-limited)
Each Sprint = A mini project
Sprint “No Changes” are made
Sprint can be cancelled before timebox
Timeboxed =1 month or less Iteration for a releasable product
Scrum sprints = 1 or 2 weeks
Sequence of activities in each sprint:
Sprint planning meeting
Daily scrum
Sprint review meeting
Sprint retrospective meeting
Scrum Team Roles:
Development Team: Very highly motivated, self starters, energetic professional
who build the product incrementally.
Product Owner: Basically he is the one who envisions the product. Takes
responsibility for product backlog. Makes sure team understands product vision
and goals. He is the only one who can cancel the sprint.
Scrum Master: Motivates and empowers the team. Facilitates the meeting and
coaches the team. Ensures that the team can work efficiently without any
problems. He can work on multiple projects and assist in product owner.
Scrum Activities(Events, Ceremonies)
Backlog refinement: In these meetings project team members gather to discuss
about the backlog and this process is called as grooming the backlog.
Sprint Planning Meeting: Scrum Master facilitates this meeting. As part of
sprint planning meeting Product Owner presents the updated backlog items to
the team members and they discuss what will be delivered in the upcoming
sprint.
Daily Scrum: This is only for development team members and these meeting
are for only 15 minutes. Team briefly asks 3 question:
1.What have I done since the last daily scrum?
2.What do I plan to do today?
3.Are there any impediments to me progress?
Sprint Review: In this meeting product owner, stakeholders, development team
members, scrum master and potentially anyone who are involved in this project
attend. During this meeting team members show the demo or prototype of the
product, to the product owner for his acceptance.
Sprint Retrospective: The meeting is basically for the development team
members where they reflect on the work they did before they move on to next
sprint.
Scrum Artifacts:
Product Increment: Once the product owner and the team members agree on the
definition of done in scrum and once they get the acceptance from product owner during
sprint review for the demo or the prototype of the product it potentially become
shippable to the customer. In plain words it is a product that is potentially shippable to
the customer.
Product Backlog: Product owner prioritizes the product backlog. This is a list of things
that need to be done to develop a product.
Sprint Backlog: During Sprint planning meeting the development team selects items
from product backlog with high prioritized items to be completed. Unlike product
backlog which is owned by product owner sprint backlog is owned by development
team. Development team decided the list of tasks to be completed before each sprint.
Extreme Programming
Extreme Programming also know as XP focuses on the best practices of software development.
Core Values:
Simplicity
Communication
Feedback
Courage
Respect
XP Team Roles:
Coach: Mentor, facilitator and motivator to the team
Customer: A business representative who envision the product, explain, write and prioritize the user stories and Being in
the role of a customer in XP is similar to product owner in scrum.
Programmers: Being a programmer in XP is a very important role. As they are the people who builds the Product and
writes coding for user stories.
Testers: They assure high quality of the product and assist customer who is a business representative in writing user
stories.
XP Core Practices
Whole Team : To maximize the resources XP practice recommend that all the team members, sit together so, as to
perform different role as it may require resources to wear different hats.(e.g., one programmer can anytime be a tester or a
business analyst when its required.
Planning Games: There are two planning games
1. Release planning
2. Iteration planning
Release plan is a design(e.g. high level draft) for the entire project. Release plan usually have one or two releases in one
year depending on the complexity of the project.
Since release plan that is a high level design we create iteration plans for the whole team. During Iteration planning the
team selects the user stories with high priority to be developed in each iteration. Each iteration typically is from a week
to three weeks depending on the velocity of the team. Because once we have a fair idea we can revisit the release plan
frequently and make changes. Remember Agile principles where we welcoming changes late in the development.
Small Releases: During iteration level releasing a prototype or showing a working demo for getting feedback, the team
has to do frequent small releases. By doing small releases they can provide high quality to the product.
Customer Test: Customer writes the user stories and acceptance criteria during customer test the
team demonstrates the features as defined by the customer.
Collective Code Ownership: During collective code, team collaboratively works on new ideas and
try to fix problems. Since multiple people work during development stage by collectively coding
it maximizes the visibility of the progress in coding.
Code standards: In our previously bullet we talked about collective coding. To protect the work of
coders there is a standard format that the coding style is the same for all the developers working
on the same project.
Sustainable Pace: For attaining high quality in the product the developers need to be at their best
active and sharp to provide us with the desired results. They cannot be sleep deprived and come
back and start working because remember this is a knowledge work where we are learning
everyday.
Metaphor: Set of common names given where any team members can use .
Continuous Integration: As per the definition of integrity the quality of being honest and having
strong moral principles Frequent changes are made during coding phase, XP encourages
Continuous integration through the process of coding.
Test-Driven Development: Prior to coding, testing team write their own user stories and acceptance criteria so that once
coding is coding they test, and it fails they go back in rewriting the code till it passes the acceptance criteria. Remember that
these are written by the team not by customer.
Refactoring: The entire purpose of refactoring is to remove redundancy in coding without impacting the original
functionality.
Simple Design: “Let’s keep it simple” that’s the mantra of the XP team because keeping the code simple not only remove
duplication etc. but gives us flexibility if we have to do any changes to improve the efficiency of the overall product.
Pair Programming: Extra pair of eyes are always good . Working in pairs is always beneficial this goes without saying.
Reason when you are coding its one person can do the coding and the other can always review it . Kind of like team work.
Lean Product Development
There is always a misconception that lean is Agile methodology. The entire reasons why projects prefer to implement Agile is to
reduce waste. The main idea of Lean is to reduce waste.
7 Principles of Lean Core Concepts:
1. Eliminate Waste: Lean ideology is to eliminate waste. Any value that does not either add or benefit customer product is
considered as waste. Lets consider adding extra features to the product beyond requested by customer is waste of time, resources
that could be useful on some other projects and budget.
There are Seven wastes of Lean:
1.1.Partially done work
2.2.Extra processes
3.3.Extra features
4.4.Task switching
5.5.Waiting
6.6.Motion
7.7.Defects
2. Amplify Learning: For knowledge workers not just limited to people in the area of technology, a medical practitioner or a
teacher should continuously upgrade their skills. Keep themselves abreast with new dimensions in their required fields. The best
way is to communicate and getting feedback and reflect on what we learned or what we should learn.
3.Deliver Fast: The entire reason for delivering the product as early is to get feedback. In Agile we go through multiple
iterations of the product and each iteration as we know is a mini project. Feedback enhances us to incorporate any changes
into next iteration. By doing this we continue to build high quality in the product.
4.Empower the team: One of the core Agile principles says is to motivate people. By doing this we can assure the team that
"am here to support us regardless of the outcome”. Because removing the fear and giving them chance to explore options is
very important. This build confidence in the team and empowers them.
5.Optimize the whole: As the saying “what we measure is what we get”. To get the best out of everything not just limited to
product quality but also team members, individual contractors, systems etc. anyone, anything involved needs to be measured
or optimize as a whole to get maximum results.
6.Build quality in: Again as per couple of principles, Agile enhances good design by continuous attention This is one of the
reasons we go through multiple iterations delivering the product frequently for getting the feedback. Lean focuses in building
high quality by implementing various techniques.
7.Defer decisions: Lean encourages deferred decisions because some decisions that are irreversible can be done really late in
the project. In this way we can eliminate risk in the project.
Kanban
Kanban which means “signboard” in Japanese language is one of the lean methods a to implement and manage software
development effectively in Agile.
Kanban Five Principles
1. Visualize the workflow: If “signboard” is what Kanban means, this suggest that lets visualize the workflow using
“signboards”. As knowledge workers we are visualizing a intangible idea, to accomplish this idea , they need to
enable a model where they can visualize the workflow.
2. Manage flow: Because of high visibility of workflow it gives us a chance to manage workflow effectively. As this
enables us to produce high quality results.
3. Make process policies explicit: In Kanban policies has to be made crystal clear. This enables the team members for
collective decision
4. Improve collaboration: By working collaboratively team not comes up with new ideas, but they also improve the
process by removing any impediments. This strengthens building high quality into any projects or products.
5. Limit work in progress(WIP)
To understand Limit WIP we need to understand 2 terms:
Pull System
WIP
Pull system — When customer begin the order, there are two things that is taken care with pull system
• Eliminating waste by not producing too many orders. e.g. if the customer request 15 features they shall get
no more than 15 features.
• Saves time. Of course by implementing pull system we are not only eliminating waste and saving time but
this also results in increased profits.
WIP — Again going by the definition of Kanban which is a signboard, work in progress(WIP) uses cards as their
signboard for visualizing the workflow. As these cards are placed in the most trafficked area where everyone can
sees the progress of work happening in the project. Henceforth, for us to understand limit work in progress(WIP)
is a strategy to remove any roadblock or impediments in smooth flow of the project.
Feature Driven Development(FDD)
Feature driven development is more customer centric. Team adapting extreme programming(XP) builds some
features for customers for their approval. Basically features are added incrementally to the product. For instance
customer wants General Ledger reconciled. For us to calculate GL we need many other features of accounting like
A/R, A/P, P&L etc. As we develop these features we show the working prototype to the customer for their feedback.
There are 5 FDD process
1. Develop an overall model
2. Build a feature list
3. Plan by feature
4. Design by feature
5. Build by feature
FDD Best practices
1. Domain object modelling: FDD encourages building a model and supporting artifacts for the problems that team
encounters that needs to be solved.
2. Developing by feature: As discussed above the main idea of FDD is a working prototype having customer value to
it. Decomposing complex functions into features every two weeks or lesser for customer feedback, team can
provide high build in quality.
3. Individual Class (code)ownership: If we recollect XP(extreme Programming ) one of the Agile methodology it
encourages collective ownership. FDD encourages single ownership. Reason behind this is feature driven are small
customer value features that are delivered every 2 weeks or less. If changes are required it becomes easier to modify
as single owner owns the coding.
4. Feature teams: Team works collaboratively to find best options for developing the features, as to reduce any risk
because of single ownership.
5. Inspections: Just as in scrum pillars and values inspections are frequently done to see how the project is progressing
towards the goal. Inspections in FDD ensures the same.
6. Configuration management: Helps in tracking any changes in the features including in contractual documents.
7. Regular builds: By regularly building new changes the integrate with existing code we can demonstrate working
models for customer feedback
8. Visibility of progress and results: Features are delivered frequently in FDD. This enables us high visibility of the
work that has being progressed so far.
Dynamic Systems Development Method (DSDM)
One of the early agile methodology. DSDM has broader aspects like fixing cost, schedule, quality and uses a prioritization
technique(MOSCOW method).
Lets elaborate MOSCOW:
Mo - Must have
S - Should have
Co - Could have
W -Won’t have
Prioritization technique (MOSCOW method) is frequently used in new product development.
Crystal
Developed by Alistair Cockburn the primary focus is on people and interaction, business criticality and business priority
of software development project. Crystal framework is categorized:
Crystal clear
Crystal yellow
Crystal Orange
Crystal red
Crystal magenta
This enables Agile methods to tailor its specifications according to the uniqueness of the project.
Changes in Project Management are happening at a fast pace. I started my career as a traditional (waterfall) project
manager, but currently, I use Waterfall and Agile methodologies in tandem. I have extensive experience in facilitating
and training teams in several industry domains using various techniques in project management. If you have any
questions, please feel free to contact me at san.sidd@yahoo.com.
You can also connect with me on LinkedIn https://linkedin.com/in/san-sidd

More Related Content

What's hot

Short introduction to Agile Scrum
Short introduction to Agile ScrumShort introduction to Agile Scrum
Short introduction to Agile Scrum
Nishan Bose
 
Practical Implementation of Agile Methodologies
Practical Implementation of Agile MethodologiesPractical Implementation of Agile Methodologies
Practical Implementation of Agile Methodologies
Society of Women Engineers
 
Scrum Framework
Scrum FrameworkScrum Framework
Scrum Framework
Upekha Vandebona
 
Introduction to Agile Project Management and Scrum
Introduction to Agile Project Management and ScrumIntroduction to Agile Project Management and Scrum
Introduction to Agile Project Management and Scrum
Voximate
 
Scrum
ScrumScrum
Agile Scrum Methodology - Introduction
Agile Scrum Methodology - IntroductionAgile Scrum Methodology - Introduction
Agile Scrum Methodology - Introduction
Geetha Madhuri
 
Overview of Agile methodology & Scrum
Overview of Agile methodology & ScrumOverview of Agile methodology & Scrum
Overview of Agile methodology & Scrum
Srinivasan Ganesan
 
2017 Scrum by Picture
2017 Scrum by Picture2017 Scrum by Picture
2017 Scrum by Picture
Pawel Lewinski
 
Scrum
ScrumScrum
Scrum 101
Scrum 101Scrum 101
Scrum 101
beLithe
 
Scrum Master vs Agile Project Manager training by Manohar Prasad
Scrum Master vs Agile Project Manager training by Manohar PrasadScrum Master vs Agile Project Manager training by Manohar Prasad
Scrum Master vs Agile Project Manager training by Manohar Prasad
Manohar Prasad, PgMP®, PMP®, PMI-ACP®, CAL®, ACC®, CSP®
 
Introduction to agile and scrum
Introduction to agile and scrumIntroduction to agile and scrum
Introduction to agile and scrum
Inova LLC
 
Scrum: Scrum Guide Summary
Scrum: Scrum Guide SummaryScrum: Scrum Guide Summary
Scrum: Scrum Guide Summary
Daniel Araujo dos Santos
 
Scrum-Agile : An Introduction
Scrum-Agile : An IntroductionScrum-Agile : An Introduction
Scrum-Agile : An Introduction
Global SQA
 
Case study for agile software development:
Case study for agile software development: Case study for agile software development:
Case study for agile software development:
Joe Crespo
 
Introduction to Agile Values & Principles
Introduction to Agile Values & PrinciplesIntroduction to Agile Values & Principles
Introduction to Agile Values & Principles
Andreea Visanoiu
 
Scrum team and efficiency
Scrum team and efficiencyScrum team and efficiency
Scrum team and efficiency
Kappagantula Aditya
 
Scrum In Ten Slides (v2.0) 2018
Scrum In Ten Slides (v2.0) 2018Scrum In Ten Slides (v2.0) 2018
Scrum In Ten Slides (v2.0) 2018
pmengal
 

What's hot (20)

Short introduction to Agile Scrum
Short introduction to Agile ScrumShort introduction to Agile Scrum
Short introduction to Agile Scrum
 
Practical Implementation of Agile Methodologies
Practical Implementation of Agile MethodologiesPractical Implementation of Agile Methodologies
Practical Implementation of Agile Methodologies
 
Scrum Framework
Scrum FrameworkScrum Framework
Scrum Framework
 
Introduction to Agile Project Management and Scrum
Introduction to Agile Project Management and ScrumIntroduction to Agile Project Management and Scrum
Introduction to Agile Project Management and Scrum
 
Scrum
ScrumScrum
Scrum
 
Agile Scrum Methodology - Introduction
Agile Scrum Methodology - IntroductionAgile Scrum Methodology - Introduction
Agile Scrum Methodology - Introduction
 
AgileScrum
AgileScrumAgileScrum
AgileScrum
 
Overview of Agile methodology & Scrum
Overview of Agile methodology & ScrumOverview of Agile methodology & Scrum
Overview of Agile methodology & Scrum
 
2017 Scrum by Picture
2017 Scrum by Picture2017 Scrum by Picture
2017 Scrum by Picture
 
Scrum
ScrumScrum
Scrum
 
Scrum 101
Scrum 101Scrum 101
Scrum 101
 
Scrum Master vs Agile Project Manager training by Manohar Prasad
Scrum Master vs Agile Project Manager training by Manohar PrasadScrum Master vs Agile Project Manager training by Manohar Prasad
Scrum Master vs Agile Project Manager training by Manohar Prasad
 
Introduction to agile and scrum
Introduction to agile and scrumIntroduction to agile and scrum
Introduction to agile and scrum
 
Scrum: Scrum Guide Summary
Scrum: Scrum Guide SummaryScrum: Scrum Guide Summary
Scrum: Scrum Guide Summary
 
Scrum-Agile : An Introduction
Scrum-Agile : An IntroductionScrum-Agile : An Introduction
Scrum-Agile : An Introduction
 
Case study for agile software development:
Case study for agile software development: Case study for agile software development:
Case study for agile software development:
 
Introduction to Agile Values & Principles
Introduction to Agile Values & PrinciplesIntroduction to Agile Values & Principles
Introduction to Agile Values & Principles
 
Scrum team and efficiency
Scrum team and efficiencyScrum team and efficiency
Scrum team and efficiency
 
Agile manifesto
Agile manifestoAgile manifesto
Agile manifesto
 
Scrum In Ten Slides (v2.0) 2018
Scrum In Ten Slides (v2.0) 2018Scrum In Ten Slides (v2.0) 2018
Scrum In Ten Slides (v2.0) 2018
 

Similar to Introduction to Agile

Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineeringZeeshan Masood S
 
Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineering
Zeeshan Masood S
 
Agile Software Development with Scrum_ A Complete Guide to The Steps in Agile...
Agile Software Development with Scrum_ A Complete Guide to The Steps in Agile...Agile Software Development with Scrum_ A Complete Guide to The Steps in Agile...
Agile Software Development with Scrum_ A Complete Guide to The Steps in Agile...
Fibonalabs
 
Introduction to Agile & scrum
Introduction to Agile & scrumIntroduction to Agile & scrum
Introduction to Agile & scrum
Elad Sofer
 
Agile_basics
Agile_basicsAgile_basics
Agile_basics
Mithilesh Singh
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)
Muhammad Ahmed
 
Agile software development
Agile software developmentAgile software development
Agile software development
pradeeppatelpmp
 
Agile, scrum & kanban in software development
Agile, scrum & kanban in software developmentAgile, scrum & kanban in software development
Agile, scrum & kanban in software development
BijayDhimal2
 
Extreme Programming 1st.pdf
Extreme Programming 1st.pdfExtreme Programming 1st.pdf
Extreme Programming 1st.pdf
Bassam Kanber
 
Agile intro resources
Agile intro resourcesAgile intro resources
Agile intro resourcesAnwar Sadat
 
Agile Development with Scrum.pptx
Agile Development with Scrum.pptxAgile Development with Scrum.pptx
Agile Development with Scrum.pptx
zuma14
 
Scrum
ScrumScrum
Scrum
Hung Hoang
 
Agile Development Process
Agile Development ProcessAgile Development Process
Agile Development Process
Solomon Raja P.S
 
Agile software development compfest 13
Agile software development compfest 13Agile software development compfest 13
Agile software development compfest 13
Panji Gautama
 
Agile Methodologies by TechDesti
Agile Methodologies by TechDestiAgile Methodologies by TechDesti
Agile Methodologies by TechDesti
TechDesti
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
Nguyen Hai
 
Agile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptxAgile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptx
Samira AlShahrani
 
Agile Overview
Agile OverviewAgile Overview
Agile Overview
Stephen Albright
 

Similar to Introduction to Agile (20)

Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineering
 
Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineering
 
Agile Software Development with Scrum_ A Complete Guide to The Steps in Agile...
Agile Software Development with Scrum_ A Complete Guide to The Steps in Agile...Agile Software Development with Scrum_ A Complete Guide to The Steps in Agile...
Agile Software Development with Scrum_ A Complete Guide to The Steps in Agile...
 
Introduction to Agile & scrum
Introduction to Agile & scrumIntroduction to Agile & scrum
Introduction to Agile & scrum
 
Agile_basics
Agile_basicsAgile_basics
Agile_basics
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Agile, scrum & kanban in software development
Agile, scrum & kanban in software developmentAgile, scrum & kanban in software development
Agile, scrum & kanban in software development
 
Extreme Programming 1st.pdf
Extreme Programming 1st.pdfExtreme Programming 1st.pdf
Extreme Programming 1st.pdf
 
Agile intro resources
Agile intro resourcesAgile intro resources
Agile intro resources
 
Agile Development with Scrum.pptx
Agile Development with Scrum.pptxAgile Development with Scrum.pptx
Agile Development with Scrum.pptx
 
Scrum
ScrumScrum
Scrum
 
Agile Development Process
Agile Development ProcessAgile Development Process
Agile Development Process
 
Agile Bootcamp
Agile BootcampAgile Bootcamp
Agile Bootcamp
 
Agile software development compfest 13
Agile software development compfest 13Agile software development compfest 13
Agile software development compfest 13
 
Agile Methodologies by TechDesti
Agile Methodologies by TechDestiAgile Methodologies by TechDesti
Agile Methodologies by TechDesti
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
 
Agile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptxAgile Modeling & Scrum Development.pptx
Agile Modeling & Scrum Development.pptx
 
BAAgileQA
BAAgileQABAAgileQA
BAAgileQA
 
Agile Overview
Agile OverviewAgile Overview
Agile Overview
 

Recently uploaded

Oprah Winfrey: A Leader in Media, Philanthropy, and Empowerment | CIO Women M...
Oprah Winfrey: A Leader in Media, Philanthropy, and Empowerment | CIO Women M...Oprah Winfrey: A Leader in Media, Philanthropy, and Empowerment | CIO Women M...
Oprah Winfrey: A Leader in Media, Philanthropy, and Empowerment | CIO Women M...
CIOWomenMagazine
 
SOCIO-ANTHROPOLOGY FACULTY OF NURSING.....
SOCIO-ANTHROPOLOGY FACULTY OF NURSING.....SOCIO-ANTHROPOLOGY FACULTY OF NURSING.....
SOCIO-ANTHROPOLOGY FACULTY OF NURSING.....
juniourjohnstone
 
Founder-Game Director Workshop (Session 1)
Founder-Game Director  Workshop (Session 1)Founder-Game Director  Workshop (Session 1)
Founder-Game Director Workshop (Session 1)
Amir H. Fassihi
 
一比一原版杜克大学毕业证(Duke毕业证)成绩单留信认证
一比一原版杜克大学毕业证(Duke毕业证)成绩单留信认证一比一原版杜克大学毕业证(Duke毕业证)成绩单留信认证
一比一原版杜克大学毕业证(Duke毕业证)成绩单留信认证
gcljeuzdu
 
Senior Project and Engineering Leader Jim Smith.pdf
Senior Project and Engineering Leader Jim Smith.pdfSenior Project and Engineering Leader Jim Smith.pdf
Senior Project and Engineering Leader Jim Smith.pdf
Jim Smith
 
Leadership Ethics and Change, Purpose to Impact Plan
Leadership Ethics and Change, Purpose to Impact PlanLeadership Ethics and Change, Purpose to Impact Plan
Leadership Ethics and Change, Purpose to Impact Plan
Muhammad Adil Jamil
 
Case Analysis - The Sky is the Limit | Principles of Management
Case Analysis - The Sky is the Limit | Principles of ManagementCase Analysis - The Sky is the Limit | Principles of Management
Case Analysis - The Sky is the Limit | Principles of Management
A. F. M. Rubayat-Ul Jannat
 
TCS AI for Business Study – Key Findings
TCS AI for Business Study – Key FindingsTCS AI for Business Study – Key Findings
TCS AI for Business Study – Key Findings
Tata Consultancy Services
 
W.H.Bender Quote 65 - The Team Member and Guest Experience
W.H.Bender Quote 65 - The Team Member and Guest ExperienceW.H.Bender Quote 65 - The Team Member and Guest Experience
W.H.Bender Quote 65 - The Team Member and Guest Experience
William (Bill) H. Bender, FCSI
 
Training- integrated management system (iso)
Training- integrated management system (iso)Training- integrated management system (iso)
Training- integrated management system (iso)
akaash13
 

Recently uploaded (10)

Oprah Winfrey: A Leader in Media, Philanthropy, and Empowerment | CIO Women M...
Oprah Winfrey: A Leader in Media, Philanthropy, and Empowerment | CIO Women M...Oprah Winfrey: A Leader in Media, Philanthropy, and Empowerment | CIO Women M...
Oprah Winfrey: A Leader in Media, Philanthropy, and Empowerment | CIO Women M...
 
SOCIO-ANTHROPOLOGY FACULTY OF NURSING.....
SOCIO-ANTHROPOLOGY FACULTY OF NURSING.....SOCIO-ANTHROPOLOGY FACULTY OF NURSING.....
SOCIO-ANTHROPOLOGY FACULTY OF NURSING.....
 
Founder-Game Director Workshop (Session 1)
Founder-Game Director  Workshop (Session 1)Founder-Game Director  Workshop (Session 1)
Founder-Game Director Workshop (Session 1)
 
一比一原版杜克大学毕业证(Duke毕业证)成绩单留信认证
一比一原版杜克大学毕业证(Duke毕业证)成绩单留信认证一比一原版杜克大学毕业证(Duke毕业证)成绩单留信认证
一比一原版杜克大学毕业证(Duke毕业证)成绩单留信认证
 
Senior Project and Engineering Leader Jim Smith.pdf
Senior Project and Engineering Leader Jim Smith.pdfSenior Project and Engineering Leader Jim Smith.pdf
Senior Project and Engineering Leader Jim Smith.pdf
 
Leadership Ethics and Change, Purpose to Impact Plan
Leadership Ethics and Change, Purpose to Impact PlanLeadership Ethics and Change, Purpose to Impact Plan
Leadership Ethics and Change, Purpose to Impact Plan
 
Case Analysis - The Sky is the Limit | Principles of Management
Case Analysis - The Sky is the Limit | Principles of ManagementCase Analysis - The Sky is the Limit | Principles of Management
Case Analysis - The Sky is the Limit | Principles of Management
 
TCS AI for Business Study – Key Findings
TCS AI for Business Study – Key FindingsTCS AI for Business Study – Key Findings
TCS AI for Business Study – Key Findings
 
W.H.Bender Quote 65 - The Team Member and Guest Experience
W.H.Bender Quote 65 - The Team Member and Guest ExperienceW.H.Bender Quote 65 - The Team Member and Guest Experience
W.H.Bender Quote 65 - The Team Member and Guest Experience
 
Training- integrated management system (iso)
Training- integrated management system (iso)Training- integrated management system (iso)
Training- integrated management system (iso)
 

Introduction to Agile

  • 1. Introduction to Agile Sangeetha Siddhantam PMP, PMI-ACP
  • 2. What Is Agile and why knowledge workers use it? For any Knowledge workers (software engineers, doctors, lawyers, accountants etc..) there are two important components they emphasize on: 1. Process 2. Quality Since knowledge work is less structured and invisible, we as knowledge workers continuously learn, innovate and emphasize on changing things. This is when we adapt a process called Agile. Agile is a process that is iterative and incremental where small sections are completed for frequent inspections and adaptability.
  • 3. A document called Agile Manifesto includes a statement of four values and twelve guiding principles. Four values: • Individuals and interactions over processes and tools. • Working software over comprehensive documentation. • Customer collaboration over contract negotiation. • Responding to change over following a plan. Twelve principles: • Highest priority is to satisfy the customer through early and continuous delivery of valuable software. • Welcome changes, even late in development. • Deliver working software frequently, from a couple of weeks to couple of months . • Business people and developers must work together daily throughout the project. • Build projects around motivated individual. • The most efficient and effective method of conveying is face-to-face conversation. • Working software is the primary measure of progress. • Promoters sustainable development. The sponsors, developers and users should be able to maintain a constant pace indefinitely. • Continuous attention to technical excellence and good design enhances agility. • Simplicity. • Self –organizing teams. • At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
  • 4. Agile Methodologies Most common Agile Mythologies are: • Scrum • Extreme Programming(XP) • Lean product development • Kanban • Feature-Driven Development • Dynamic Systems Development Method(DSDM) • Crystal
  • 6. Often, there is misconception that scrum is a methodology. Scrum is a part of Agile Methodologies. Scrum is a framework where we document deadlines, requirement, roles, meeting details ETC that is useful for the team in executing the project. This document in Scrum is called as “Scrum framework”. Scrum Pillars and Values: 1. Transparency 2. Inspection 3. Adaptation Scrum 5 fundamental values: 1. Focus 2. Courage 3. Openness 4. Commitment 5. Respect Scrum
  • 7. Scrum Process In this we shall discuss Key Scrum concept-Sprint and the roles in Scrum team, artifacts. Sprints Sprint = Timeboxed (time-limited) Each Sprint = A mini project Sprint “No Changes” are made Sprint can be cancelled before timebox Timeboxed =1 month or less Iteration for a releasable product Scrum sprints = 1 or 2 weeks Sequence of activities in each sprint: Sprint planning meeting Daily scrum Sprint review meeting Sprint retrospective meeting
  • 8. Scrum Team Roles: Development Team: Very highly motivated, self starters, energetic professional who build the product incrementally. Product Owner: Basically he is the one who envisions the product. Takes responsibility for product backlog. Makes sure team understands product vision and goals. He is the only one who can cancel the sprint. Scrum Master: Motivates and empowers the team. Facilitates the meeting and coaches the team. Ensures that the team can work efficiently without any problems. He can work on multiple projects and assist in product owner. Scrum Activities(Events, Ceremonies) Backlog refinement: In these meetings project team members gather to discuss about the backlog and this process is called as grooming the backlog. Sprint Planning Meeting: Scrum Master facilitates this meeting. As part of sprint planning meeting Product Owner presents the updated backlog items to the team members and they discuss what will be delivered in the upcoming sprint. Daily Scrum: This is only for development team members and these meeting are for only 15 minutes. Team briefly asks 3 question: 1.What have I done since the last daily scrum? 2.What do I plan to do today? 3.Are there any impediments to me progress? Sprint Review: In this meeting product owner, stakeholders, development team members, scrum master and potentially anyone who are involved in this project attend. During this meeting team members show the demo or prototype of the product, to the product owner for his acceptance. Sprint Retrospective: The meeting is basically for the development team members where they reflect on the work they did before they move on to next sprint.
  • 9. Scrum Artifacts: Product Increment: Once the product owner and the team members agree on the definition of done in scrum and once they get the acceptance from product owner during sprint review for the demo or the prototype of the product it potentially become shippable to the customer. In plain words it is a product that is potentially shippable to the customer. Product Backlog: Product owner prioritizes the product backlog. This is a list of things that need to be done to develop a product. Sprint Backlog: During Sprint planning meeting the development team selects items from product backlog with high prioritized items to be completed. Unlike product backlog which is owned by product owner sprint backlog is owned by development team. Development team decided the list of tasks to be completed before each sprint.
  • 10. Extreme Programming Extreme Programming also know as XP focuses on the best practices of software development. Core Values: Simplicity Communication Feedback Courage Respect XP Team Roles: Coach: Mentor, facilitator and motivator to the team Customer: A business representative who envision the product, explain, write and prioritize the user stories and Being in the role of a customer in XP is similar to product owner in scrum. Programmers: Being a programmer in XP is a very important role. As they are the people who builds the Product and writes coding for user stories. Testers: They assure high quality of the product and assist customer who is a business representative in writing user stories.
  • 11. XP Core Practices Whole Team : To maximize the resources XP practice recommend that all the team members, sit together so, as to perform different role as it may require resources to wear different hats.(e.g., one programmer can anytime be a tester or a business analyst when its required. Planning Games: There are two planning games 1. Release planning 2. Iteration planning Release plan is a design(e.g. high level draft) for the entire project. Release plan usually have one or two releases in one year depending on the complexity of the project. Since release plan that is a high level design we create iteration plans for the whole team. During Iteration planning the team selects the user stories with high priority to be developed in each iteration. Each iteration typically is from a week to three weeks depending on the velocity of the team. Because once we have a fair idea we can revisit the release plan frequently and make changes. Remember Agile principles where we welcoming changes late in the development. Small Releases: During iteration level releasing a prototype or showing a working demo for getting feedback, the team has to do frequent small releases. By doing small releases they can provide high quality to the product.
  • 12. Customer Test: Customer writes the user stories and acceptance criteria during customer test the team demonstrates the features as defined by the customer. Collective Code Ownership: During collective code, team collaboratively works on new ideas and try to fix problems. Since multiple people work during development stage by collectively coding it maximizes the visibility of the progress in coding. Code standards: In our previously bullet we talked about collective coding. To protect the work of coders there is a standard format that the coding style is the same for all the developers working on the same project. Sustainable Pace: For attaining high quality in the product the developers need to be at their best active and sharp to provide us with the desired results. They cannot be sleep deprived and come back and start working because remember this is a knowledge work where we are learning everyday. Metaphor: Set of common names given where any team members can use . Continuous Integration: As per the definition of integrity the quality of being honest and having strong moral principles Frequent changes are made during coding phase, XP encourages Continuous integration through the process of coding.
  • 13. Test-Driven Development: Prior to coding, testing team write their own user stories and acceptance criteria so that once coding is coding they test, and it fails they go back in rewriting the code till it passes the acceptance criteria. Remember that these are written by the team not by customer. Refactoring: The entire purpose of refactoring is to remove redundancy in coding without impacting the original functionality. Simple Design: “Let’s keep it simple” that’s the mantra of the XP team because keeping the code simple not only remove duplication etc. but gives us flexibility if we have to do any changes to improve the efficiency of the overall product. Pair Programming: Extra pair of eyes are always good . Working in pairs is always beneficial this goes without saying. Reason when you are coding its one person can do the coding and the other can always review it . Kind of like team work.
  • 14. Lean Product Development There is always a misconception that lean is Agile methodology. The entire reasons why projects prefer to implement Agile is to reduce waste. The main idea of Lean is to reduce waste. 7 Principles of Lean Core Concepts: 1. Eliminate Waste: Lean ideology is to eliminate waste. Any value that does not either add or benefit customer product is considered as waste. Lets consider adding extra features to the product beyond requested by customer is waste of time, resources that could be useful on some other projects and budget. There are Seven wastes of Lean: 1.1.Partially done work 2.2.Extra processes 3.3.Extra features 4.4.Task switching 5.5.Waiting 6.6.Motion 7.7.Defects 2. Amplify Learning: For knowledge workers not just limited to people in the area of technology, a medical practitioner or a teacher should continuously upgrade their skills. Keep themselves abreast with new dimensions in their required fields. The best way is to communicate and getting feedback and reflect on what we learned or what we should learn.
  • 15. 3.Deliver Fast: The entire reason for delivering the product as early is to get feedback. In Agile we go through multiple iterations of the product and each iteration as we know is a mini project. Feedback enhances us to incorporate any changes into next iteration. By doing this we continue to build high quality in the product. 4.Empower the team: One of the core Agile principles says is to motivate people. By doing this we can assure the team that "am here to support us regardless of the outcome”. Because removing the fear and giving them chance to explore options is very important. This build confidence in the team and empowers them. 5.Optimize the whole: As the saying “what we measure is what we get”. To get the best out of everything not just limited to product quality but also team members, individual contractors, systems etc. anyone, anything involved needs to be measured or optimize as a whole to get maximum results. 6.Build quality in: Again as per couple of principles, Agile enhances good design by continuous attention This is one of the reasons we go through multiple iterations delivering the product frequently for getting the feedback. Lean focuses in building high quality by implementing various techniques. 7.Defer decisions: Lean encourages deferred decisions because some decisions that are irreversible can be done really late in the project. In this way we can eliminate risk in the project.
  • 16. Kanban Kanban which means “signboard” in Japanese language is one of the lean methods a to implement and manage software development effectively in Agile. Kanban Five Principles 1. Visualize the workflow: If “signboard” is what Kanban means, this suggest that lets visualize the workflow using “signboards”. As knowledge workers we are visualizing a intangible idea, to accomplish this idea , they need to enable a model where they can visualize the workflow. 2. Manage flow: Because of high visibility of workflow it gives us a chance to manage workflow effectively. As this enables us to produce high quality results. 3. Make process policies explicit: In Kanban policies has to be made crystal clear. This enables the team members for collective decision 4. Improve collaboration: By working collaboratively team not comes up with new ideas, but they also improve the process by removing any impediments. This strengthens building high quality into any projects or products.
  • 17. 5. Limit work in progress(WIP) To understand Limit WIP we need to understand 2 terms: Pull System WIP Pull system — When customer begin the order, there are two things that is taken care with pull system • Eliminating waste by not producing too many orders. e.g. if the customer request 15 features they shall get no more than 15 features. • Saves time. Of course by implementing pull system we are not only eliminating waste and saving time but this also results in increased profits. WIP — Again going by the definition of Kanban which is a signboard, work in progress(WIP) uses cards as their signboard for visualizing the workflow. As these cards are placed in the most trafficked area where everyone can sees the progress of work happening in the project. Henceforth, for us to understand limit work in progress(WIP) is a strategy to remove any roadblock or impediments in smooth flow of the project.
  • 18. Feature Driven Development(FDD) Feature driven development is more customer centric. Team adapting extreme programming(XP) builds some features for customers for their approval. Basically features are added incrementally to the product. For instance customer wants General Ledger reconciled. For us to calculate GL we need many other features of accounting like A/R, A/P, P&L etc. As we develop these features we show the working prototype to the customer for their feedback. There are 5 FDD process 1. Develop an overall model 2. Build a feature list 3. Plan by feature 4. Design by feature 5. Build by feature
  • 19. FDD Best practices 1. Domain object modelling: FDD encourages building a model and supporting artifacts for the problems that team encounters that needs to be solved. 2. Developing by feature: As discussed above the main idea of FDD is a working prototype having customer value to it. Decomposing complex functions into features every two weeks or lesser for customer feedback, team can provide high build in quality. 3. Individual Class (code)ownership: If we recollect XP(extreme Programming ) one of the Agile methodology it encourages collective ownership. FDD encourages single ownership. Reason behind this is feature driven are small customer value features that are delivered every 2 weeks or less. If changes are required it becomes easier to modify as single owner owns the coding. 4. Feature teams: Team works collaboratively to find best options for developing the features, as to reduce any risk because of single ownership. 5. Inspections: Just as in scrum pillars and values inspections are frequently done to see how the project is progressing towards the goal. Inspections in FDD ensures the same. 6. Configuration management: Helps in tracking any changes in the features including in contractual documents. 7. Regular builds: By regularly building new changes the integrate with existing code we can demonstrate working models for customer feedback 8. Visibility of progress and results: Features are delivered frequently in FDD. This enables us high visibility of the work that has being progressed so far.
  • 20. Dynamic Systems Development Method (DSDM) One of the early agile methodology. DSDM has broader aspects like fixing cost, schedule, quality and uses a prioritization technique(MOSCOW method). Lets elaborate MOSCOW: Mo - Must have S - Should have Co - Could have W -Won’t have Prioritization technique (MOSCOW method) is frequently used in new product development.
  • 21. Crystal Developed by Alistair Cockburn the primary focus is on people and interaction, business criticality and business priority of software development project. Crystal framework is categorized: Crystal clear Crystal yellow Crystal Orange Crystal red Crystal magenta This enables Agile methods to tailor its specifications according to the uniqueness of the project.
  • 22. Changes in Project Management are happening at a fast pace. I started my career as a traditional (waterfall) project manager, but currently, I use Waterfall and Agile methodologies in tandem. I have extensive experience in facilitating and training teams in several industry domains using various techniques in project management. If you have any questions, please feel free to contact me at san.sidd@yahoo.com. You can also connect with me on LinkedIn https://linkedin.com/in/san-sidd