SlideShare una empresa de Scribd logo
1 de 59
Descargar para leer sin conexión
Agile Software 
Development 
1
Who I am… 
2 
Rui Barreira 
Senior Delivery Manager/Agile Coach 
@ VORTAL 
Agile Enthusiast since 2008 
Experienced Software Architect and 
Product Manager 
pt.linkedin.com/in/ruimbarreira/ 
rui.barreira@vortal.biz
What is NOT! 
3
4 
Agile is NOT! – Reduced Team Capacity
5 
Agile is NOT! – One Big Story
6 
Agile is NOT! – No Process
7 
Agile is NOT! 
“letting the programming team do whatever they need to with 
no project management, and no architecture, allowing a 
solution to emerge, the programmers will do all the testing 
necessary with Unit Tests…”
Business Value 
8
9 
What is Business Value? 
• Value: is any desirable result for a stakeholder in a context; 
• Stakeholder: are groups or individuals with a relationship to the 
change or the solution; 
• Needs: are problems, opportunities or constraints with potential of 
value to a stakeholder; 
• Changes: are any controlled transformations of an organization; 
• Solutions: are specific ways to satisfy needs in a context; 
• Contexts: are the part of the environment that encompasses a 
change;
10 
What is Business Value? 
“Price is what you pay, Value is What you get!” 
Warren Buffet
11 
Types of Business Value?
12 
Delivering Business Value is difficult! 
• Of the work executed: “Many (possibly most) organisations lose 
as much as 45% of their total revenues due to costs associated 
with low quality” 
• On Failing: Some 75 percent of most large-scale J2EE projects 
fail by missing both time and budget projections …” 
• On Value: “64% of features actually delivered are either rarely 
or never used”
13 
How to create Business Value! 
WATERFALL (Royce) 
Requirements, design 
implementation, 
verification & 
maintenance 
SPIRAL MODEL 
(Barry Boehm) 
V-MODEL (Anon) 
Iterative 
Aligns testing to 
Waterfall development 
AGILE e.g. XP 
(Kent Beck) 
RUP (Rational) 
RAD 
(James Martin) 
Incremental, user 
driven, low process 
Object oriented, 
iterative, time-boxed, 
user driven 
Prototyping, iterative, 
time-boxed, user driven 
1960 1970 1980 85 91 
98 99 
Waterfall V-Model 
Spiral Model 
RAD 
RUP
Agile Philosophy 
14
15 
The Philosophy 
 Agile methods are considered 
 Lightweight 
 People-based rather than Plan-based 
 Several agile methods 
 No single agile method 
 XP most popular 
 No single definition 
 Agile Manifesto closest to a definition 
 Set of principles 
 Developed by Agile Alliance
16 
The Agile Manifesto 
Individuals and interactions over processes and tools 
Working software over comprehensive documentation 
Customer collaboration over contract negotiation 
Responding to change over following a plan
17 
The Agile Manifesto 
Individuals and interactions over processes and tools 
Working software over comprehensive documentation 
That is, while there is value in the items on 
the right, we value the items on the left more. 
Customer collaboration over contract negotiation 
Responding to change over following a plan
18 
The 12 principles of Agile
19 
On Image Agile
Agile Methodologies 
20
21 
All of them are Agile 
 Agile methods: 
 Scrum 
 Extreme Programming 
 Adaptive Software Development (ASD) 
 Dynamic System Development Method (DSDM) 
 Lean IT 
 … 
 Agile Alliance (www.agilealliance.org) 
 A non-profit organization promotes agile development
22 
Lets Talk About SCRUM
23 
Sequencing vs Overlapping 
Requirements Design Code Test
24 
Scrum in 100 Words 
 Scrum is an agile process that allows us to focus on 
delivering the highest business value in the shortest time. 
 It allows us to rapidly and repeatedly inspect actual 
working software (every two weeks to one month). 
 The business sets the priorities. Our teams self-manage to 
determine the best way to deliver the highest priority 
features. 
 Every two weeks to a month anyone can see real working 
software and decide to release it as is or continue to 
enhance for another iteration.
25 
Scrum Characteristics 
• Self-organizing teams 
• Product progresses in a series of month-long “sprints” 
• Requirements are captured as items in a list of 
“product backlog” 
• No specific engineering practices prescribed 
• Uses generative rules to create an agile 
environment for delivering projects 
• One of the “agile processes”
26 
Scrum Framework 
Roles 
•Product owner 
•ScrumMaster 
•Team 
Ceremonies 
Artifacts 
•Product backlog 
•Sprint backlog 
•Burndown charts 
•Sprint planning 
•Sprint review 
•Sprint retrospective 
•Daily scrum meeting
27 
Scrum Roles – Product Owner 
• Define the features of the product 
• Decide on release date and content 
• Be responsible for the profitability of the product (ROI) 
• Prioritize features according to market value 
• Adjust features and priority every iteration, as needed 
• Accept or reject work results
28 
Scrum Roles – Scrum Master 
• Represents management to the project 
• Responsible for enacting Scrum values and practices 
• Removes impediments 
• Ensure that the team is fully functional and productive 
• Enable close cooperation across all roles and functions 
• Shield the team from external interferences
29 
Scrum Roles – The Team 
• Typically 5-9 people 
• Cross-functional: 
• Programmers, testers, user experience designers, etc. 
• Members should be full-time 
• May be exceptions (e.g., database administrator) 
• Teams are self-organizing 
• Ideally, no titles but rarely a possibility 
• Membership should change only between sprints
30 
Scrum Ceremonies - Planning Meeting 
Sprint Planning 
Meeting 
Product Backlog 
Team Capabilities 
Business Conditions 
Technology 
Current Product 
Sprint Goal 
Sprint Backlog 
Product Backlog
31 
Scrum Ceremonies - Planning Meeting 
• Team selects items from the 
product backlog they can commit 
to completing 
• Sprint backlog is created 
• Tasks are identified and each is 
estimated (1-16 hours) 
• Collaboratively, not done alone 
by the ScrumMaster 
• High-level design is considered 
Sprint 
goal 
Sprint 
backlog
32 
Scrum Ceremonies – The Daily Scrum 
• Parameters 
• Daily 
• 15-minutes 
• Stand-up 
• Not for problem solving 
• Whole world is invited 
• Only team members, ScrumMaster, 
product owner, can talk 
• Helps avoid other unnecessary 
meetings
33 
Scrum Ceremonies – The Daily Scrum 
What did you do yesterday? 
1 
What will you do today? 
2 
Is anything in your way? 
3
34 
Scrum Ceremonies – The Sprint Review 
• Team presents what it accomplished 
during the sprint 
• Typically takes the form of a demo of 
new features or underlying architecture 
• Informal 
• 2-hour prep time rule 
• No slides 
• Whole team participates 
• Invite the world
35 
Scrum Ceremonies – The Sprint Retrospective 
• Periodically take a look at what is and is not working 
• Typically 15–30 minutes 
• Done after every sprint 
• Whole team participates 
• ScrumMaster 
• Product owner 
• Team 
• Possibly customers and others
36 
Scrum Artifacts – The Product Backlog 
• The requirements 
• A list of all desired work 
on the project 
• Ideally expressed such 
that each item has 
value to the users or 
customers of the 
product 
• Prioritized by the 
product owner 
• Reprioritized at the start 
of each sprint
37 
Scrum Artifacts – The Sprint Backlog 
• A subset of Product Backlog Items, which define the work for 
a Sprint 
• Is created ONLY by Team members 
• Each Item has it’s own status 
• Should be updated every day 
• Individuals sign up for work of their own choosing 
• Work is never assigned 
• Estimated work remaining is updated daily
38 
Scrum Artifacts – The Sprint Backlog
39 
Scrum Artifacts – All Backlogs 
Strategic 
Roadmap 
All the features of 
product roadmap 
Products’s Backlog 
All the features of a 
particular product 
Sprint Backlog 
Stories for the 
sprint
40 
Scrum Artifacts – The Sprint Burndown Chart 
• Depicts the total Sprint Backlog hours remaining per day 
• Shows the estimated amount of time to release 
• Ideally should burn down to zero to the end of the Sprint 
• Actually is not a straight line 
• Can bump UP
41 
Scrum Artifacts – The Sprint Burndown Chart
42 
Definition of Done 
Code Commented 
and Committed to 
Line 
Unit Tests 
Developmen 
t Finished 
Report 
Functional 
Requirement 
Document 
Technical 
Requirement 
Document
Agile Practices 
43
44 
For Though Tasks – Pair Programming
45 
For Though Tasks – Pair Programming 
We help each other succeed. This practice comes 
from XP.
46 
For Though Tasks – Pair Programming 
Pair-Pressure 
– Keep each other on task and focused 
– Don’t want to let partner down 
– “Embarrassed” to not follow the prescribed process 
– Parkinson’s law “work expands to fill all available time.” 
Pair-Think 
– Distributed cognition: “searching through larger spaces of alternatives” 
» Have shared goals and plans 
» Bring different prior experiences to the task 
» Different access to task relevant information 
» Must negotiate a common shared of action 
Pair-Relaying 
– Each, in turn, contributes to the best of their knowledge and ability 
– Then, sit back and think while their partner fights on
47 
For Though Tasks – Pair Programming 
Pair-Reviews 
– Continuous design and code reviews 
– Ultimate in defect removal efficiency 
– Removes programmers distaste for reviews 
» 80% of all (solo) programmers don’t do them regularly or at all 
Debug by describing 
– Tell it to the Furby 
Pair-Learning 
– Continuous reviews  learn from partners techniques, knowledge of 
language, domain, etc. 
– “Between the two of us, we knew it or could figure it out” 
– Apprenticeship 
– Defect prevention always more efficient than defect removal
48 
Roles – Pair Programming 
The Driver 
The person with control of the computer 
Does the bulk of the typing 
The Navigator 
Actively follows along with the driver with comments 
Can take over at any time
49 
For Quality – Continuous Integration 
“ Continuous Integration is a software development practice 
where members of a team integrate their work frequently, usually 
each person integrates at least daily - leading to multiple 
integrations per day. Each integration is verified by an automated 
build (including test) to detect integration errors as quickly as 
possible.“ 
http://martinfowler.com/articles/continuousIntegration.html
50 
For Quality – Continuous Integration 
• The ultimate goal of continuous integration is to be able to 
deploy all code. 
• Although you won’t release in the middle of a sprint, the 
point is to be technologically ready, even if you are not 
functionally. 
• With Continuous integration, you are integrating in short 
cycle and thus have smaller changes to deal with as you 
integrate. 
• Continuous integration does not make sense unless it’s 
automated, has a short turn around time (fast builds), and 
everyone owns the concept of Green Builds. 
• You need tests to fail or pass a build. Tests are the backbone 
that give you a green or a red light to take a snapshot of 
your build.
51 
Challenges – Continuous Integration 
• Don’t force this. It requires everyone to buy-in. 
• CI also requires some setup, if you don’t have one. 
• Keeping build times short. This might require some serious 
effort and might show you the deficiency of your builds. 
• And you need a good version control system – VC systems 
like subversion that allows atomic check-in.
52 
Start with the wheels – Interactive Design
53 
It’s Simulation Time!
Agile Values 
54
55 
COMMITMENT
56 
COLLECTIVE 
OWNERSHIP
57 
COMMUNICATION  
COLLABORATION
58 
PEOPLE
Thank 
You! 
59

Más contenido relacionado

La actualidad más candente

CAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development PresentationCAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development Presentation
deyoepw
 

La actualidad más candente (19)

Scrum Process Overview
Scrum Process OverviewScrum Process Overview
Scrum Process Overview
 
Introduction to Scrum
Introduction to ScrumIntroduction to Scrum
Introduction to Scrum
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Agile and CMMI: Yes, They Can Work Together
Agile and CMMI: Yes, They Can Work TogetherAgile and CMMI: Yes, They Can Work Together
Agile and CMMI: Yes, They Can Work Together
 
Introducing scrum
Introducing scrumIntroducing scrum
Introducing scrum
 
Scrum introduction
Scrum introductionScrum introduction
Scrum introduction
 
Hanno Jarvet BeWise loeng "An Introduction to Scrum" (20.11.2013 EBS)
Hanno Jarvet BeWise loeng "An Introduction to Scrum" (20.11.2013 EBS)Hanno Jarvet BeWise loeng "An Introduction to Scrum" (20.11.2013 EBS)
Hanno Jarvet BeWise loeng "An Introduction to Scrum" (20.11.2013 EBS)
 
RIPPLE 2014: "Be Agile in a CMMI level 5 World"
RIPPLE 2014: "Be Agile in a CMMI level 5 World"RIPPLE 2014: "Be Agile in a CMMI level 5 World"
RIPPLE 2014: "Be Agile in a CMMI level 5 World"
 
CAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development PresentationCAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development Presentation
 
Scrum. software engineering seminar
Scrum. software engineering seminarScrum. software engineering seminar
Scrum. software engineering seminar
 
Agile Scrum Methodology
Agile Scrum MethodologyAgile Scrum Methodology
Agile Scrum Methodology
 
Let’s Play Agile ! 12-09-15-testers_hub
Let’s  Play  Agile ! 12-09-15-testers_hubLet’s  Play  Agile ! 12-09-15-testers_hub
Let’s Play Agile ! 12-09-15-testers_hub
 
Codess Prague - Agile vs Traditional Methods - Apr 2014
Codess Prague - Agile vs Traditional Methods - Apr 2014Codess Prague - Agile vs Traditional Methods - Apr 2014
Codess Prague - Agile vs Traditional Methods - Apr 2014
 
Agile-Scrum Methodology-An Introduction
Agile-Scrum Methodology-An IntroductionAgile-Scrum Methodology-An Introduction
Agile-Scrum Methodology-An Introduction
 
Agile - Scrum Presentation
Agile - Scrum PresentationAgile - Scrum Presentation
Agile - Scrum Presentation
 
What is agile?
What is agile?What is agile?
What is agile?
 
Agile Overview Session
Agile Overview SessionAgile Overview Session
Agile Overview Session
 
Learn Scrum Engineering in 5 minutes
Learn Scrum Engineering in 5 minutesLearn Scrum Engineering in 5 minutes
Learn Scrum Engineering in 5 minutes
 
Scrum Process For Offshore Team
Scrum Process For Offshore TeamScrum Process For Offshore Team
Scrum Process For Offshore Team
 

Similar a Agile Session @ Universidade Portucalense

Scrum Intro for E-works
Scrum Intro for E-worksScrum Intro for E-works
Scrum Intro for E-works
Nora Papazyan
 
Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वोAgile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
MnyMehr
 
Agile project management day 2
Agile project management day 2Agile project management day 2
Agile project management day 2
Knowit_TM
 

Similar a Agile Session @ Universidade Portucalense (20)

Agile Scrum Training Process
Agile Scrum Training ProcessAgile Scrum Training Process
Agile Scrum Training Process
 
scrum
scrumscrum
scrum
 
Agile scrum
Agile scrumAgile scrum
Agile scrum
 
Practicing Agile through Scrum
Practicing Agile through ScrumPracticing Agile through Scrum
Practicing Agile through Scrum
 
Agile by KD
Agile by KDAgile by KD
Agile by KD
 
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzLecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
 
Scrum in action
Scrum in actionScrum in action
Scrum in action
 
Scrum toufiq
Scrum toufiqScrum toufiq
Scrum toufiq
 
aa.pdf
aa.pdfaa.pdf
aa.pdf
 
Scrum Intro for E-works
Scrum Intro for E-worksScrum Intro for E-works
Scrum Intro for E-works
 
Agile best practices
Agile best practicesAgile best practices
Agile best practices
 
Agile Scrum CMMI
Agile Scrum CMMIAgile Scrum CMMI
Agile Scrum CMMI
 
English redistributable-intro-scrum
English redistributable-intro-scrumEnglish redistributable-intro-scrum
English redistributable-intro-scrum
 
Scrum Software Development Methodology
Scrum Software Development MethodologyScrum Software Development Methodology
Scrum Software Development Methodology
 
Scrum workshop - September 7, 2012
Scrum workshop - September 7, 2012Scrum workshop - September 7, 2012
Scrum workshop - September 7, 2012
 
Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वोAgile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
 
Agile, not just for software
Agile, not just for softwareAgile, not just for software
Agile, not just for software
 
Scrum Refresher
Scrum RefresherScrum Refresher
Scrum Refresher
 
Introduction to Scrum
Introduction to ScrumIntroduction to Scrum
Introduction to Scrum
 
Agile project management day 2
Agile project management day 2Agile project management day 2
Agile project management day 2
 

Más de Rui M. Barreira (7)

Agile retrospectives v100
Agile retrospectives v100Agile retrospectives v100
Agile retrospectives v100
 
Getting things done
Getting things doneGetting things done
Getting things done
 
The Story of Agile @ Vortal - Agile Portugal
The Story of Agile @ Vortal - Agile PortugalThe Story of Agile @ Vortal - Agile Portugal
The Story of Agile @ Vortal - Agile Portugal
 
Sensor Networks and Ambiente Intelligence
Sensor Networks and Ambiente IntelligenceSensor Networks and Ambiente Intelligence
Sensor Networks and Ambiente Intelligence
 
Ambient Intelligence – Useful and non intrusive technology
Ambient Intelligence – Useful and non intrusive technologyAmbient Intelligence – Useful and non intrusive technology
Ambient Intelligence – Useful and non intrusive technology
 
What the bread_said
What the bread_saidWhat the bread_said
What the bread_said
 
Store
StoreStore
Store
 

Último

Abortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTECAbortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
Abortion pills in Riyadh +966572737505 get cytotec
 
The Psychology Of Motivation - Richard Brown
The Psychology Of Motivation - Richard BrownThe Psychology Of Motivation - Richard Brown
The Psychology Of Motivation - Richard Brown
SandaliGurusinghe2
 
internship thesis pakistan aeronautical complex kamra
internship thesis pakistan aeronautical complex kamrainternship thesis pakistan aeronautical complex kamra
internship thesis pakistan aeronautical complex kamra
AllTops
 
Beyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable developmentBeyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable development
Nimot Muili
 

Último (14)

How Software Developers Destroy Business Value.pptx
How Software Developers Destroy Business Value.pptxHow Software Developers Destroy Business Value.pptx
How Software Developers Destroy Business Value.pptx
 
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTECAbortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
 
W.H.Bender Quote 62 - Always strive to be a Hospitality Service professional
W.H.Bender Quote 62 - Always strive to be a Hospitality Service professionalW.H.Bender Quote 62 - Always strive to be a Hospitality Service professional
W.H.Bender Quote 62 - Always strive to be a Hospitality Service professional
 
The Psychology Of Motivation - Richard Brown
The Psychology Of Motivation - Richard BrownThe Psychology Of Motivation - Richard Brown
The Psychology Of Motivation - Richard Brown
 
Safety T fire missions army field Artillery
Safety T fire missions army field ArtillerySafety T fire missions army field Artillery
Safety T fire missions army field Artillery
 
Siliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime Siliguri
Siliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime SiliguriSiliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime Siliguri
Siliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime Siliguri
 
Gautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Gautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot ModelGautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Gautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
International Ocean Transportation p.pdf
International Ocean Transportation p.pdfInternational Ocean Transportation p.pdf
International Ocean Transportation p.pdf
 
internship thesis pakistan aeronautical complex kamra
internship thesis pakistan aeronautical complex kamrainternship thesis pakistan aeronautical complex kamra
internship thesis pakistan aeronautical complex kamra
 
Beyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable developmentBeyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable development
 
Information Technology Project Management, Revised 7th edition test bank.docx
Information Technology Project Management, Revised 7th edition test bank.docxInformation Technology Project Management, Revised 7th edition test bank.docx
Information Technology Project Management, Revised 7th edition test bank.docx
 
digital Human resource management presentation.pdf
digital Human resource management presentation.pdfdigital Human resource management presentation.pdf
digital Human resource management presentation.pdf
 
Marketing Management 16th edition by Philip Kotler test bank.docx
Marketing Management 16th edition by Philip Kotler test bank.docxMarketing Management 16th edition by Philip Kotler test bank.docx
Marketing Management 16th edition by Philip Kotler test bank.docx
 
Persuasive and Communication is the art of negotiation.
Persuasive and Communication is the art of negotiation.Persuasive and Communication is the art of negotiation.
Persuasive and Communication is the art of negotiation.
 

Agile Session @ Universidade Portucalense

  • 2. Who I am… 2 Rui Barreira Senior Delivery Manager/Agile Coach @ VORTAL Agile Enthusiast since 2008 Experienced Software Architect and Product Manager pt.linkedin.com/in/ruimbarreira/ rui.barreira@vortal.biz
  • 4. 4 Agile is NOT! – Reduced Team Capacity
  • 5. 5 Agile is NOT! – One Big Story
  • 6. 6 Agile is NOT! – No Process
  • 7. 7 Agile is NOT! “letting the programming team do whatever they need to with no project management, and no architecture, allowing a solution to emerge, the programmers will do all the testing necessary with Unit Tests…”
  • 9. 9 What is Business Value? • Value: is any desirable result for a stakeholder in a context; • Stakeholder: are groups or individuals with a relationship to the change or the solution; • Needs: are problems, opportunities or constraints with potential of value to a stakeholder; • Changes: are any controlled transformations of an organization; • Solutions: are specific ways to satisfy needs in a context; • Contexts: are the part of the environment that encompasses a change;
  • 10. 10 What is Business Value? “Price is what you pay, Value is What you get!” Warren Buffet
  • 11. 11 Types of Business Value?
  • 12. 12 Delivering Business Value is difficult! • Of the work executed: “Many (possibly most) organisations lose as much as 45% of their total revenues due to costs associated with low quality” • On Failing: Some 75 percent of most large-scale J2EE projects fail by missing both time and budget projections …” • On Value: “64% of features actually delivered are either rarely or never used”
  • 13. 13 How to create Business Value! WATERFALL (Royce) Requirements, design implementation, verification & maintenance SPIRAL MODEL (Barry Boehm) V-MODEL (Anon) Iterative Aligns testing to Waterfall development AGILE e.g. XP (Kent Beck) RUP (Rational) RAD (James Martin) Incremental, user driven, low process Object oriented, iterative, time-boxed, user driven Prototyping, iterative, time-boxed, user driven 1960 1970 1980 85 91 98 99 Waterfall V-Model Spiral Model RAD RUP
  • 15. 15 The Philosophy Agile methods are considered Lightweight People-based rather than Plan-based Several agile methods No single agile method XP most popular No single definition Agile Manifesto closest to a definition Set of principles Developed by Agile Alliance
  • 16. 16 The Agile Manifesto Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
  • 17. 17 The Agile Manifesto Individuals and interactions over processes and tools Working software over comprehensive documentation That is, while there is value in the items on the right, we value the items on the left more. Customer collaboration over contract negotiation Responding to change over following a plan
  • 18. 18 The 12 principles of Agile
  • 19. 19 On Image Agile
  • 21. 21 All of them are Agile Agile methods: Scrum Extreme Programming Adaptive Software Development (ASD) Dynamic System Development Method (DSDM) Lean IT … Agile Alliance (www.agilealliance.org) A non-profit organization promotes agile development
  • 22. 22 Lets Talk About SCRUM
  • 23. 23 Sequencing vs Overlapping Requirements Design Code Test
  • 24. 24 Scrum in 100 Words Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month). The business sets the priorities. Our teams self-manage to determine the best way to deliver the highest priority features. Every two weeks to a month anyone can see real working software and decide to release it as is or continue to enhance for another iteration.
  • 25. 25 Scrum Characteristics • Self-organizing teams • Product progresses in a series of month-long “sprints” • Requirements are captured as items in a list of “product backlog” • No specific engineering practices prescribed • Uses generative rules to create an agile environment for delivering projects • One of the “agile processes”
  • 26. 26 Scrum Framework Roles •Product owner •ScrumMaster •Team Ceremonies Artifacts •Product backlog •Sprint backlog •Burndown charts •Sprint planning •Sprint review •Sprint retrospective •Daily scrum meeting
  • 27. 27 Scrum Roles – Product Owner • Define the features of the product • Decide on release date and content • Be responsible for the profitability of the product (ROI) • Prioritize features according to market value • Adjust features and priority every iteration, as needed • Accept or reject work results
  • 28. 28 Scrum Roles – Scrum Master • Represents management to the project • Responsible for enacting Scrum values and practices • Removes impediments • Ensure that the team is fully functional and productive • Enable close cooperation across all roles and functions • Shield the team from external interferences
  • 29. 29 Scrum Roles – The Team • Typically 5-9 people • Cross-functional: • Programmers, testers, user experience designers, etc. • Members should be full-time • May be exceptions (e.g., database administrator) • Teams are self-organizing • Ideally, no titles but rarely a possibility • Membership should change only between sprints
  • 30. 30 Scrum Ceremonies - Planning Meeting Sprint Planning Meeting Product Backlog Team Capabilities Business Conditions Technology Current Product Sprint Goal Sprint Backlog Product Backlog
  • 31. 31 Scrum Ceremonies - Planning Meeting • Team selects items from the product backlog they can commit to completing • Sprint backlog is created • Tasks are identified and each is estimated (1-16 hours) • Collaboratively, not done alone by the ScrumMaster • High-level design is considered Sprint goal Sprint backlog
  • 32. 32 Scrum Ceremonies – The Daily Scrum • Parameters • Daily • 15-minutes • Stand-up • Not for problem solving • Whole world is invited • Only team members, ScrumMaster, product owner, can talk • Helps avoid other unnecessary meetings
  • 33. 33 Scrum Ceremonies – The Daily Scrum What did you do yesterday? 1 What will you do today? 2 Is anything in your way? 3
  • 34. 34 Scrum Ceremonies – The Sprint Review • Team presents what it accomplished during the sprint • Typically takes the form of a demo of new features or underlying architecture • Informal • 2-hour prep time rule • No slides • Whole team participates • Invite the world
  • 35. 35 Scrum Ceremonies – The Sprint Retrospective • Periodically take a look at what is and is not working • Typically 15–30 minutes • Done after every sprint • Whole team participates • ScrumMaster • Product owner • Team • Possibly customers and others
  • 36. 36 Scrum Artifacts – The Product Backlog • The requirements • A list of all desired work on the project • Ideally expressed such that each item has value to the users or customers of the product • Prioritized by the product owner • Reprioritized at the start of each sprint
  • 37. 37 Scrum Artifacts – The Sprint Backlog • A subset of Product Backlog Items, which define the work for a Sprint • Is created ONLY by Team members • Each Item has it’s own status • Should be updated every day • Individuals sign up for work of their own choosing • Work is never assigned • Estimated work remaining is updated daily
  • 38. 38 Scrum Artifacts – The Sprint Backlog
  • 39. 39 Scrum Artifacts – All Backlogs Strategic Roadmap All the features of product roadmap Products’s Backlog All the features of a particular product Sprint Backlog Stories for the sprint
  • 40. 40 Scrum Artifacts – The Sprint Burndown Chart • Depicts the total Sprint Backlog hours remaining per day • Shows the estimated amount of time to release • Ideally should burn down to zero to the end of the Sprint • Actually is not a straight line • Can bump UP
  • 41. 41 Scrum Artifacts – The Sprint Burndown Chart
  • 42. 42 Definition of Done Code Commented and Committed to Line Unit Tests Developmen t Finished Report Functional Requirement Document Technical Requirement Document
  • 44. 44 For Though Tasks – Pair Programming
  • 45. 45 For Though Tasks – Pair Programming We help each other succeed. This practice comes from XP.
  • 46. 46 For Though Tasks – Pair Programming Pair-Pressure – Keep each other on task and focused – Don’t want to let partner down – “Embarrassed” to not follow the prescribed process – Parkinson’s law “work expands to fill all available time.” Pair-Think – Distributed cognition: “searching through larger spaces of alternatives” » Have shared goals and plans » Bring different prior experiences to the task » Different access to task relevant information » Must negotiate a common shared of action Pair-Relaying – Each, in turn, contributes to the best of their knowledge and ability – Then, sit back and think while their partner fights on
  • 47. 47 For Though Tasks – Pair Programming Pair-Reviews – Continuous design and code reviews – Ultimate in defect removal efficiency – Removes programmers distaste for reviews » 80% of all (solo) programmers don’t do them regularly or at all Debug by describing – Tell it to the Furby Pair-Learning – Continuous reviews learn from partners techniques, knowledge of language, domain, etc. – “Between the two of us, we knew it or could figure it out” – Apprenticeship – Defect prevention always more efficient than defect removal
  • 48. 48 Roles – Pair Programming The Driver The person with control of the computer Does the bulk of the typing The Navigator Actively follows along with the driver with comments Can take over at any time
  • 49. 49 For Quality – Continuous Integration “ Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible.“ http://martinfowler.com/articles/continuousIntegration.html
  • 50. 50 For Quality – Continuous Integration • The ultimate goal of continuous integration is to be able to deploy all code. • Although you won’t release in the middle of a sprint, the point is to be technologically ready, even if you are not functionally. • With Continuous integration, you are integrating in short cycle and thus have smaller changes to deal with as you integrate. • Continuous integration does not make sense unless it’s automated, has a short turn around time (fast builds), and everyone owns the concept of Green Builds. • You need tests to fail or pass a build. Tests are the backbone that give you a green or a red light to take a snapshot of your build.
  • 51. 51 Challenges – Continuous Integration • Don’t force this. It requires everyone to buy-in. • CI also requires some setup, if you don’t have one. • Keeping build times short. This might require some serious effort and might show you the deficiency of your builds. • And you need a good version control system – VC systems like subversion that allows atomic check-in.
  • 52. 52 Start with the wheels – Interactive Design
  • 57. 57 COMMUNICATION COLLABORATION