SlideShare a Scribd company logo
1 of 11
1
Agile Survival Kit
Gallotti Stefano © - http://www.galoz.it
Stiamo scoprendo modi migliori di creare software, sviluppandolo e aiutando gli altri a
fare lo stesso. Grazie a questa attività siamo arrivati a considerare importanti:
Gli individui e le interazioni più che i processi e gli strumenti
Il software funzionante più che la documentazione esaustiva
La collaborazione col cliente più che la negoziazione dei contratti
Rispondere al cambiamento più che seguire un piano
2
Manifesto per lo Sviluppo Agile di Software
Ovvero, fermo restando il valore delle voci a destra,consideriamo più importanti le voci a sinistra.
I principi sottostanti al Manifesto Agile
• La nostra massima priorità è soddisfare il cliente rilasciando software di valore, fin da subito e in maniera continua.
• Accogliamo i cambiamenti nei requisiti, anche a stadi avanzati dello sviluppo. I processi agili sfruttano il cambiamento a favore del
vantaggio competitivo del cliente.
• Consegniamo frequentemente software funzionante, con cadenza variabile da un paio di settimane a un paio di mesi, preferendo i periodi
brevi.
• Committenti e sviluppatori devono lavorare insieme quotidianamente per tutta la durata del progetto.
• Fondiamo i progetti su individui motivati. Diamo loro l'ambiente e il supporto di cui hanno bisogno e confidiamo nella loro capacità di
portare il lavoro a termine.
• Una conversazione faccia a faccia è il modo più efficiente e più efficace per comunicare con il team ed all'interno del team.
• Il software funzionante è il principale metro di misura di progresso.
• I processi agili promuovono uno sviluppo sostenibile. Gli sponsor, gli sviluppatori e gli utenti dovrebbero essere in grado di mantenere
indefinitamente un ritmo costante.
• La continua attenzione all'eccellenza tecnica e alla buona progettazione esaltano l'agilità.
• La semplicità - l'arte di ottimizzare la quantità di lavoro non svolto - è essenziale.
• Le architetture, i requisiti e la progettazione migliori emergono da team che si auto-organizzano.
• A intervalli regolari il team riflette su come diventare più efficace, dopodiché regola e adatta il proprio comportamento di conseguenza.
http://agilemanifesto.org/
Gallotti Stefano © - http://www.galoz.it
3
The Scrum Framework in 30
seconds
• A product owner creates a prioritized wish list called a product backlog.
• During sprint planning, the team pulls a small chunk from the top of that wishlist, a sprint backlog, and decides how to
implement those pieces.
• The team has a certain amount of time, a sprint, to complete its work - usually two to four weeks - but meets each day to
assess its progress (daily scrum).
• Along the way, the ScrumMaster keeps the team focused on its goal.
• At the end of the sprint, the work should be potentially shippable, as in ready to hand to a customer, put on a store
shelf, or show to a stakeholder.
• The sprint ends with a sprint review and retrospective.
• As the next sprint begins, the team chooses another chunk of the product backlog and begins working again.
Gallotti Stefano © - http://www.galoz.it
4
Scrum terminology
We've introduced some new terms in describing the Scrum framework. Let's look at them in more detail.
Scrum is made up of three roles, four ceremonies, and three artifacts.
Three roles
Product owner: responsible for the business value of the project
ScrumMaster: ensures that the team is functional and productive
Team: self-organizes to get the work done
Four ceremonies
Sprint planning: the team meets with the product owner to choose a set of work to deliver during a sprint
Daily scrum: the team meets each day to share struggles and progress
Sprint reviews: the team demonstrates to the product owner what it has completed during the sprint
Sprint retrospectives: the team looks for ways to improve the product and the process.
Three artifacts
Product backlog: ordered list of ideas for the product
Sprint backlog: set of work from the product backlog that the team agrees to complete in a sprint, broken
into tasks
Product Increment: required result of every sprint. It is an integrated version of the product, kept at high
enough quality to be shippable.
Gallotti Stefano © - http://www.galoz.it
5
What is Kanban
Kanban is a new technique for managing a software development process in a highly efficient way. Kanban underpins Toyota's "just-in-
time" (JIT) production system. Although producing software is a creative activity and therefore different to mass-producing cars, the
underlying mechanism for managing the production line can still be applied.
A software development process can be thought of as a pipeline with feature
requests entering one end and improved software emerging from the other end.
Inside the pipeline, there will be some kind of process which could range from an
informal ad hoc process to a highly formal phased process. We assume a simple
phased process of:
(1) analyze the requirements,
(2) develop the code
(3) test it works.
The Effect of Bottlenecks
A bottleneck in a pipeline restricts flow. The throughput of the pipeline as a whole is limited to the throughput of the bottleneck.
Using development pipeline as an example: if the testers are only able to test 5 features per week whereas the developers and analysts have the capacity to
produce 10 features per week, the throughput of the pipeline as a whole will only be 5 features per week because the testers are acting as a bottleneck.
If the analysts and developers aren't aware that the testers are the bottleneck, then a backlog of work will begin to pile up in front of the testers.
The effect is that lead times go up. And, like warehouse stock, work sitting in the
pipeline ties up investment, creates distance from the market, and drops in value as
time goes by.
Inevitably, quality suffers. To keep up, the testers start to cut corners. The resulting
bugs released into production cause problems for the users and waste future pipeline
capacity.
If, on the other hand, we knew where the bottleneck was, we could redeploy resources
to help relieve it. For example, the analysts could help with testing and the developers
could work on test automation.
But how do we know where the bottleneck is in any given process? And what happens
when it moves?
Gallotti Stefano © - http://www.galoz.it
6
Kanban Example
Kanban reveals bottlenecks dynamically
Kanban is incredibly simple, but at the same time incredibly powerful. A kanban system consists of a big board on the wall with cards or
sticky notes placed in columns with numbers at the top.
The cards represent work items as they flow through the development process represented by the columns. The numbers at the top of
each column are limits on the number of cards allowed in each column.
The limits are the critical difference between a kanban board and any other visual storyboard. Limiting the amount of work-in-progress
(WIP), at each step in the process, prevents overproduction and reveals bottlenecks dynamically so that you can address them before
they get out of hand.
The board shows a situation where the developers and analysts are being prevented
from taking on any more work until the testers free up a slot and pull in the next work
item. At this point the developers and analysts should be looking at ways they can help
relieve the burden on the testers.
We’ve split some of the columns in two, to indicate items being worked on and
those finished and ready to be pulled by the downstream process. There are
several different ways you can layout out the board. This is a fairly simple way.
The limits at the top of the split columns cover both the "doing" and "done"
columns.
Once the testers have finished testing a feature, they move the card and free up
a slot in the "Test" column
Now the empty slot in the "Test" column can be filled by one of the cards
in the development "done" column. That frees up a slot under
"Development" and the next card can be pulled from the "Analysis"
column and so on.
Gallotti Stefano © - http://www.galoz.it
7
What move us to think about something
else…
The model most frequently applied in project management is called Waterfall (composed of 6 steps)
1. Description (vague and rough) of project requirements
2. Evaluation and estimation of effort and resources required
3. MONETARY OFFER TO THE CUSTOMER (often "out of the box", all inclusive and without variations possible)
4. Functional analysis (where you begin to understand what was wrong in step 2)
5. Architectural analysis (where the doubts of phase 4 become certainty)
6. Development & Test (where the disaster assumes irreparable proportions)
If for a moment we make the assumption of being able to do without the “Estimation", we can imagine a process of Project
Costing & Estimation effective and, above all, beneficial for all parties (win-win).
This process is an iterative process that takes place within a "sprint" of time.
Gallotti Stefano © - http://www.galoz.it
8
Move to Sprints
Gallotti Stefano © - http://www.galoz.it
9
Grooming
A well-groomed product backlog facilitates the development of a successful product:
It incorporates the team’s learning, and provides items that are ready to be implemented.
But when should grooming take place?
Option 1: Grooming Takes Place before New Development Starts
Groom the product backlog before any new development work starts. This includes obtaining feedback from
users and customers, analysing it, integrating the learning into the backlog, and getting the product backlog
ready.
Option 2: Grooming Takes Place after New Development has Started
Continue the development work while you are collecting and analysing the user feedback. Choose this option if
you do not require the user data to continue developing your product, doing more coding without having first
analysed the user feedback does not imply a significant risk of taking your product in the wrong direction..
Gallotti Stefano © - http://www.galoz.it
10
Curve your Enthusiasm
Gallotti Stefano © - http://www.galoz.it
11
Let’s start to do it
Gallotti Stefano © - http://www.galoz.it

More Related Content

What's hot

Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineeringZeeshan Masood S
 
Agile Development Brown Bag Lunches Slides
Agile Development Brown Bag Lunches SlidesAgile Development Brown Bag Lunches Slides
Agile Development Brown Bag Lunches Slidesguesta1c5d7
 
Going Agile With Helix ALM
Going Agile With Helix ALMGoing Agile With Helix ALM
Going Agile With Helix ALMPerforce
 
10 differences between SAFe and LeSS
10 differences between SAFe and LeSS10 differences between SAFe and LeSS
10 differences between SAFe and LeSSStanislaw Matczak
 
Starting out with Scrum
Starting out with ScrumStarting out with Scrum
Starting out with ScrumJoshua Partogi
 
Introduction to product development flow
Introduction to product development flowIntroduction to product development flow
Introduction to product development flowYuval Yeret
 
Understanding the Agile Release and Sprint Planning Process
Understanding the Agile Release and Sprint Planning Process Understanding the Agile Release and Sprint Planning Process
Understanding the Agile Release and Sprint Planning Process John Derrico
 
You think you know agile
You think you know agileYou think you know agile
You think you know agileNathan Gloyn
 
Waterfall vs Agile : A Beginner's Guide in Project Management
Waterfall vs Agile : A Beginner's Guide in Project ManagementWaterfall vs Agile : A Beginner's Guide in Project Management
Waterfall vs Agile : A Beginner's Guide in Project ManagementJonathan Donado
 
Agile Testing - Pruebas en Ágiles
Agile Testing - Pruebas en ÁgilesAgile Testing - Pruebas en Ágiles
Agile Testing - Pruebas en ÁgilesValeria Vásquez
 
Scrum and agile principles
Scrum and agile principles Scrum and agile principles
Scrum and agile principles Ruben Canlas
 
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 ScrumVoximate
 

What's hot (20)

Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineering
 
Agile Development Brown Bag Lunches Slides
Agile Development Brown Bag Lunches SlidesAgile Development Brown Bag Lunches Slides
Agile Development Brown Bag Lunches Slides
 
Going Agile With Helix ALM
Going Agile With Helix ALMGoing Agile With Helix ALM
Going Agile With Helix ALM
 
10 differences between SAFe and LeSS
10 differences between SAFe and LeSS10 differences between SAFe and LeSS
10 differences between SAFe and LeSS
 
Agile product development
Agile product developmentAgile product development
Agile product development
 
What is agile
What is agileWhat is agile
What is agile
 
PMBOK and Scrum: Best of both worlds
PMBOK and Scrum: Best of both worldsPMBOK and Scrum: Best of both worlds
PMBOK and Scrum: Best of both worlds
 
Scrum og kanban af Gitte Klitgaard Hansen, IBM
Scrum og kanban af Gitte Klitgaard Hansen, IBMScrum og kanban af Gitte Klitgaard Hansen, IBM
Scrum og kanban af Gitte Klitgaard Hansen, IBM
 
Starting out with Scrum
Starting out with ScrumStarting out with Scrum
Starting out with Scrum
 
Introduction to product development flow
Introduction to product development flowIntroduction to product development flow
Introduction to product development flow
 
PMBoK and Scrum: can we be friends?
PMBoK and Scrum: can we be friends?PMBoK and Scrum: can we be friends?
PMBoK and Scrum: can we be friends?
 
Scrum & Waterfall: Friend or Foe?
Scrum & Waterfall: Friend or Foe?Scrum & Waterfall: Friend or Foe?
Scrum & Waterfall: Friend or Foe?
 
Understanding the Agile Release and Sprint Planning Process
Understanding the Agile Release and Sprint Planning Process Understanding the Agile Release and Sprint Planning Process
Understanding the Agile Release and Sprint Planning Process
 
You think you know agile
You think you know agileYou think you know agile
You think you know agile
 
Journey of Agile
Journey of AgileJourney of Agile
Journey of Agile
 
Waterfall vs Agile : A Beginner's Guide in Project Management
Waterfall vs Agile : A Beginner's Guide in Project ManagementWaterfall vs Agile : A Beginner's Guide in Project Management
Waterfall vs Agile : A Beginner's Guide in Project Management
 
Agile Testing - Pruebas en Ágiles
Agile Testing - Pruebas en ÁgilesAgile Testing - Pruebas en Ágiles
Agile Testing - Pruebas en Ágiles
 
Scrum and agile principles
Scrum and agile principles Scrum and agile principles
Scrum and agile principles
 
Lean Software Development
Lean Software Development Lean Software Development
Lean Software Development
 
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
 

Similar to Agile survival kit

Introduction to Agile & scrum
Introduction to Agile & scrumIntroduction to Agile & scrum
Introduction to Agile & scrumElad Sofer
 
Advanced Web Development in PHP - Understanding Project Development Methodolo...
Advanced Web Development in PHP - Understanding Project Development Methodolo...Advanced Web Development in PHP - Understanding Project Development Methodolo...
Advanced Web Development in PHP - Understanding Project Development Methodolo...Rasan Samarasinghe
 
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
 
ME135A Agile lean workshop101414
ME135A Agile lean workshop101414ME135A Agile lean workshop101414
ME135A Agile lean workshop101414spikol
 
CampusSDN2017 - Jawdat: Product Management and Agile Development
CampusSDN2017 - Jawdat: Product Management and Agile DevelopmentCampusSDN2017 - Jawdat: Product Management and Agile Development
CampusSDN2017 - Jawdat: Product Management and Agile DevelopmentJawdatTI
 
Agile & SCRUM basics
Agile & SCRUM basicsAgile & SCRUM basics
Agile & SCRUM basicsArun R
 
Agile, not just for software
Agile, not just for softwareAgile, not just for software
Agile, not just for softwareJohn Paz
 
The Importance of Agile Methodology in Software Development
The Importance of Agile Methodology in Software Development The Importance of Agile Methodology in Software Development
The Importance of Agile Methodology in Software Development ultroNeous Technologies
 
Ag02 agile practices - dnc14 handouts
Ag02   agile practices - dnc14 handoutsAg02   agile practices - dnc14 handouts
Ag02 agile practices - dnc14 handoutsDotNetCampus
 
Agile intro resources
Agile intro resourcesAgile intro resources
Agile intro resourcesAnwar Sadat
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software DevelopmentTathagat Varma
 
Scrumhub scrum-guide-2016
Scrumhub scrum-guide-2016Scrumhub scrum-guide-2016
Scrumhub scrum-guide-2016Veeresh Yadrami
 
Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum Artemisa Yescas Engler
 
Venkatraman l
Venkatraman lVenkatraman l
Venkatraman lPMI2011
 

Similar to Agile survival kit (20)

BAAgileQA
BAAgileQABAAgileQA
BAAgileQA
 
Agile_basics
Agile_basicsAgile_basics
Agile_basics
 
Introduction to Agile & scrum
Introduction to Agile & scrumIntroduction to Agile & scrum
Introduction to Agile & scrum
 
Advanced Web Development in PHP - Understanding Project Development Methodolo...
Advanced Web Development in PHP - Understanding Project Development Methodolo...Advanced Web Development in PHP - Understanding Project Development Methodolo...
Advanced Web Development in PHP - Understanding Project Development Methodolo...
 
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...
 
ME135A Agile lean workshop101414
ME135A Agile lean workshop101414ME135A Agile lean workshop101414
ME135A Agile lean workshop101414
 
Agile.docx
Agile.docxAgile.docx
Agile.docx
 
CampusSDN2017 - Jawdat: Product Management and Agile Development
CampusSDN2017 - Jawdat: Product Management and Agile DevelopmentCampusSDN2017 - Jawdat: Product Management and Agile Development
CampusSDN2017 - Jawdat: Product Management and Agile Development
 
Agile & SCRUM basics
Agile & SCRUM basicsAgile & SCRUM basics
Agile & SCRUM basics
 
Agile, not just for software
Agile, not just for softwareAgile, not just for software
Agile, not just for software
 
The Importance of Agile Methodology in Software Development
The Importance of Agile Methodology in Software Development The Importance of Agile Methodology in Software Development
The Importance of Agile Methodology in Software Development
 
Agile Overview
Agile OverviewAgile Overview
Agile Overview
 
Ag02 agile practices - dnc14 handouts
Ag02   agile practices - dnc14 handoutsAg02   agile practices - dnc14 handouts
Ag02 agile practices - dnc14 handouts
 
Agile intro resources
Agile intro resourcesAgile intro resources
Agile intro resources
 
Scrum with Asana
Scrum with AsanaScrum with Asana
Scrum with Asana
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Agile Project Management
Agile Project ManagementAgile Project Management
Agile Project Management
 
Scrumhub scrum-guide-2016
Scrumhub scrum-guide-2016Scrumhub scrum-guide-2016
Scrumhub scrum-guide-2016
 
Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum Reading Summary - Software Agile Development + Scrum
Reading Summary - Software Agile Development + Scrum
 
Venkatraman l
Venkatraman lVenkatraman l
Venkatraman l
 

Recently uploaded

Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 

Agile survival kit

  • 1. 1 Agile Survival Kit Gallotti Stefano © - http://www.galoz.it
  • 2. Stiamo scoprendo modi migliori di creare software, sviluppandolo e aiutando gli altri a fare lo stesso. Grazie a questa attività siamo arrivati a considerare importanti: Gli individui e le interazioni più che i processi e gli strumenti Il software funzionante più che la documentazione esaustiva La collaborazione col cliente più che la negoziazione dei contratti Rispondere al cambiamento più che seguire un piano 2 Manifesto per lo Sviluppo Agile di Software Ovvero, fermo restando il valore delle voci a destra,consideriamo più importanti le voci a sinistra. I principi sottostanti al Manifesto Agile • La nostra massima priorità è soddisfare il cliente rilasciando software di valore, fin da subito e in maniera continua. • Accogliamo i cambiamenti nei requisiti, anche a stadi avanzati dello sviluppo. I processi agili sfruttano il cambiamento a favore del vantaggio competitivo del cliente. • Consegniamo frequentemente software funzionante, con cadenza variabile da un paio di settimane a un paio di mesi, preferendo i periodi brevi. • Committenti e sviluppatori devono lavorare insieme quotidianamente per tutta la durata del progetto. • Fondiamo i progetti su individui motivati. Diamo loro l'ambiente e il supporto di cui hanno bisogno e confidiamo nella loro capacità di portare il lavoro a termine. • Una conversazione faccia a faccia è il modo più efficiente e più efficace per comunicare con il team ed all'interno del team. • Il software funzionante è il principale metro di misura di progresso. • I processi agili promuovono uno sviluppo sostenibile. Gli sponsor, gli sviluppatori e gli utenti dovrebbero essere in grado di mantenere indefinitamente un ritmo costante. • La continua attenzione all'eccellenza tecnica e alla buona progettazione esaltano l'agilità. • La semplicità - l'arte di ottimizzare la quantità di lavoro non svolto - è essenziale. • Le architetture, i requisiti e la progettazione migliori emergono da team che si auto-organizzano. • A intervalli regolari il team riflette su come diventare più efficace, dopodiché regola e adatta il proprio comportamento di conseguenza. http://agilemanifesto.org/ Gallotti Stefano © - http://www.galoz.it
  • 3. 3 The Scrum Framework in 30 seconds • A product owner creates a prioritized wish list called a product backlog. • During sprint planning, the team pulls a small chunk from the top of that wishlist, a sprint backlog, and decides how to implement those pieces. • The team has a certain amount of time, a sprint, to complete its work - usually two to four weeks - but meets each day to assess its progress (daily scrum). • Along the way, the ScrumMaster keeps the team focused on its goal. • At the end of the sprint, the work should be potentially shippable, as in ready to hand to a customer, put on a store shelf, or show to a stakeholder. • The sprint ends with a sprint review and retrospective. • As the next sprint begins, the team chooses another chunk of the product backlog and begins working again. Gallotti Stefano © - http://www.galoz.it
  • 4. 4 Scrum terminology We've introduced some new terms in describing the Scrum framework. Let's look at them in more detail. Scrum is made up of three roles, four ceremonies, and three artifacts. Three roles Product owner: responsible for the business value of the project ScrumMaster: ensures that the team is functional and productive Team: self-organizes to get the work done Four ceremonies Sprint planning: the team meets with the product owner to choose a set of work to deliver during a sprint Daily scrum: the team meets each day to share struggles and progress Sprint reviews: the team demonstrates to the product owner what it has completed during the sprint Sprint retrospectives: the team looks for ways to improve the product and the process. Three artifacts Product backlog: ordered list of ideas for the product Sprint backlog: set of work from the product backlog that the team agrees to complete in a sprint, broken into tasks Product Increment: required result of every sprint. It is an integrated version of the product, kept at high enough quality to be shippable. Gallotti Stefano © - http://www.galoz.it
  • 5. 5 What is Kanban Kanban is a new technique for managing a software development process in a highly efficient way. Kanban underpins Toyota's "just-in- time" (JIT) production system. Although producing software is a creative activity and therefore different to mass-producing cars, the underlying mechanism for managing the production line can still be applied. A software development process can be thought of as a pipeline with feature requests entering one end and improved software emerging from the other end. Inside the pipeline, there will be some kind of process which could range from an informal ad hoc process to a highly formal phased process. We assume a simple phased process of: (1) analyze the requirements, (2) develop the code (3) test it works. The Effect of Bottlenecks A bottleneck in a pipeline restricts flow. The throughput of the pipeline as a whole is limited to the throughput of the bottleneck. Using development pipeline as an example: if the testers are only able to test 5 features per week whereas the developers and analysts have the capacity to produce 10 features per week, the throughput of the pipeline as a whole will only be 5 features per week because the testers are acting as a bottleneck. If the analysts and developers aren't aware that the testers are the bottleneck, then a backlog of work will begin to pile up in front of the testers. The effect is that lead times go up. And, like warehouse stock, work sitting in the pipeline ties up investment, creates distance from the market, and drops in value as time goes by. Inevitably, quality suffers. To keep up, the testers start to cut corners. The resulting bugs released into production cause problems for the users and waste future pipeline capacity. If, on the other hand, we knew where the bottleneck was, we could redeploy resources to help relieve it. For example, the analysts could help with testing and the developers could work on test automation. But how do we know where the bottleneck is in any given process? And what happens when it moves? Gallotti Stefano © - http://www.galoz.it
  • 6. 6 Kanban Example Kanban reveals bottlenecks dynamically Kanban is incredibly simple, but at the same time incredibly powerful. A kanban system consists of a big board on the wall with cards or sticky notes placed in columns with numbers at the top. The cards represent work items as they flow through the development process represented by the columns. The numbers at the top of each column are limits on the number of cards allowed in each column. The limits are the critical difference between a kanban board and any other visual storyboard. Limiting the amount of work-in-progress (WIP), at each step in the process, prevents overproduction and reveals bottlenecks dynamically so that you can address them before they get out of hand. The board shows a situation where the developers and analysts are being prevented from taking on any more work until the testers free up a slot and pull in the next work item. At this point the developers and analysts should be looking at ways they can help relieve the burden on the testers. We’ve split some of the columns in two, to indicate items being worked on and those finished and ready to be pulled by the downstream process. There are several different ways you can layout out the board. This is a fairly simple way. The limits at the top of the split columns cover both the "doing" and "done" columns. Once the testers have finished testing a feature, they move the card and free up a slot in the "Test" column Now the empty slot in the "Test" column can be filled by one of the cards in the development "done" column. That frees up a slot under "Development" and the next card can be pulled from the "Analysis" column and so on. Gallotti Stefano © - http://www.galoz.it
  • 7. 7 What move us to think about something else… The model most frequently applied in project management is called Waterfall (composed of 6 steps) 1. Description (vague and rough) of project requirements 2. Evaluation and estimation of effort and resources required 3. MONETARY OFFER TO THE CUSTOMER (often "out of the box", all inclusive and without variations possible) 4. Functional analysis (where you begin to understand what was wrong in step 2) 5. Architectural analysis (where the doubts of phase 4 become certainty) 6. Development & Test (where the disaster assumes irreparable proportions) If for a moment we make the assumption of being able to do without the “Estimation", we can imagine a process of Project Costing & Estimation effective and, above all, beneficial for all parties (win-win). This process is an iterative process that takes place within a "sprint" of time. Gallotti Stefano © - http://www.galoz.it
  • 8. 8 Move to Sprints Gallotti Stefano © - http://www.galoz.it
  • 9. 9 Grooming A well-groomed product backlog facilitates the development of a successful product: It incorporates the team’s learning, and provides items that are ready to be implemented. But when should grooming take place? Option 1: Grooming Takes Place before New Development Starts Groom the product backlog before any new development work starts. This includes obtaining feedback from users and customers, analysing it, integrating the learning into the backlog, and getting the product backlog ready. Option 2: Grooming Takes Place after New Development has Started Continue the development work while you are collecting and analysing the user feedback. Choose this option if you do not require the user data to continue developing your product, doing more coding without having first analysed the user feedback does not imply a significant risk of taking your product in the wrong direction.. Gallotti Stefano © - http://www.galoz.it
  • 10. 10 Curve your Enthusiasm Gallotti Stefano © - http://www.galoz.it
  • 11. 11 Let’s start to do it Gallotti Stefano © - http://www.galoz.it