SlideShare une entreprise Scribd logo
1  sur  17
1. The waterfall model
2. Incremental development
3. Reuse-oriented software
engineering.
1
POPULAR SOFTWARE PROCESS MODELS
3
WHY WE NEED AGILE?
1. Agile manifesto
2. Agile principles
3. Agile umbrella
2
AGILE OVERVIEW
4 FAQS
Facts
• Obviously we are changing so fast, there is
almost no room for long-term plans
• A lack of clear goals is the most common factor
(37%) behind project failure, according to
executive leaders.
• Only 37% of teams in the U.K. reported
completing projects on time more often than
not.
• More than half (56.6%) of manufacturers use a
combination of project management
methodologies.
• 59% of U.S. workers say communication is
their team’s biggest obstacle to success,
followed by accountability (29%).
Software project elements
Why are software development projects
so risky and expensive?
By the rigors of approaching methods
The waterfall model
This model takes the fundamental process activities of specification,
development, validation, and evolution and represents them as
separate process phases such as requirements specification,
software design, implementation, testing, and so on.
Incremental development
This approach interleaves the activities of specification, development, and validation. The system
is developed as a series of versions (increments), with each version adding functionality to the
previous version.
Reuse-oriented software engineering
This approach is based on the existence of a significant number of reusable components. The
system development process focuses on integrating these components into a system rather
than developing them from scratch.
Agile software
development
Agile manifesto
That is, while there is value in the items on the right, we value the items on the left more.
Individuals and interactions over Process and Tools
Working Product over Comprehensive Documentation
Customer Collaboration over Contract Negotiation
Responding to change over Following a plan
12 agile principles
• Our highest priority is to satisfy the customer
through early and continuous delivery of
valuable software.
• Welcome changing requirements, even late in
development. Agile processes harness change
for the customer's competitive advantage.
• Deliver working software frequently, from a
couple of weeks to a couple of months, with
a preference to the shorter timescale.
• Business people and developers must work
together daily throughout the project.
• Build projects around motivated individuals.
Give them the environment and support they
need, and trust them to get the job done.
• The most efficient and effective method of
conveying information to and within a
development team is face-to-face
conversation.
• Working software is the primary measure of
progress.
• Agile processes promote 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--the art of maximizing the amount
of work not done--is essential.
• The best architectures, requirements, and
designs emerge from self-organizing teams.
• At regular intervals, the team reflects on how
to become more effective, then tunes and
adjusts its behavior accordingly.
Agile umbrella
Scrum, for collaboration and focus
Kanban, for
efficiency
Extreme
Programming
For development practices
Lean, for
eliminating
waste
Feature-driven Development (FDD)
• What is Agile? (and is not)?
• How is Agile? (and is not)?
• What does Agile have (and does not)?
• What does Agile aim for (and does not)?
• What is Agile suitable for (and is not)?
• Is agile a religion?
• What does Scrum do well (and does not)?
FAQs
Thank For Your Attention!

Contenu connexe

Tendances

Introduction to OKR - Objectives and Key Results
Introduction to OKR - Objectives and Key ResultsIntroduction to OKR - Objectives and Key Results
Introduction to OKR - Objectives and Key ResultsWeekdone.com
 
The European OKR Guide
The European OKR GuideThe European OKR Guide
The European OKR GuideWorkpath
 
A Beginner's Guide to OKR!
A Beginner's Guide to OKR!A Beginner's Guide to OKR!
A Beginner's Guide to OKR!Tarun Singh
 
Getting Started with OKRs
Getting Started with OKRsGetting Started with OKRs
Getting Started with OKRsAnand Inamdar
 
OKR for HR Management
OKR for HR ManagementOKR for HR Management
OKR for HR ManagementSCS universal
 
OKRs - Practical tips for getting started from practical experience with doze...
OKRs - Practical tips for getting started from practical experience with doze...OKRs - Practical tips for getting started from practical experience with doze...
OKRs - Practical tips for getting started from practical experience with doze...Tima Bouqdour
 
Getting Started With OKRs (Objective Key Results)
Getting Started With OKRs (Objective Key Results) Getting Started With OKRs (Objective Key Results)
Getting Started With OKRs (Objective Key Results) The Moonshot Planner
 
OKR meetup Amsterdam may 2018
OKR meetup Amsterdam may 2018OKR meetup Amsterdam may 2018
OKR meetup Amsterdam may 2018Bart den Haak
 
Amplifying performance with OKRs
Amplifying performance with OKRsAmplifying performance with OKRs
Amplifying performance with OKRsStephen Morris
 
Objective & key results by ObjectiveProcess
Objective & key results by ObjectiveProcessObjective & key results by ObjectiveProcess
Objective & key results by ObjectiveProcessIdriss Zerghouni
 
OKR & Business Objectives - Agile Evangelists Webinar talk April 2020
OKR & Business Objectives - Agile Evangelists Webinar talk April 2020OKR & Business Objectives - Agile Evangelists Webinar talk April 2020
OKR & Business Objectives - Agile Evangelists Webinar talk April 2020Michelangelo Canonico
 
Creating GREAT OKRs and a great quarterly planning process
Creating GREAT OKRs and a great quarterly planning processCreating GREAT OKRs and a great quarterly planning process
Creating GREAT OKRs and a great quarterly planning process7Geese
 
Introduction to Lean and PDSA Thinking
Introduction to Lean and PDSA ThinkingIntroduction to Lean and PDSA Thinking
Introduction to Lean and PDSA ThinkingRachel Janzen
 
OKR SaaS Market Study
OKR SaaS Market StudyOKR SaaS Market Study
OKR SaaS Market StudyAkshay Goyal
 
How to set goals using OKRs
How to set goals using OKRsHow to set goals using OKRs
How to set goals using OKRsWilder Gonzales
 
OKRs: How Google Achieves Company Goals
OKRs: How Google Achieves Company Goals OKRs: How Google Achieves Company Goals
OKRs: How Google Achieves Company Goals Weekdone.com
 

Tendances (20)

Introduction to OKR - Objectives and Key Results
Introduction to OKR - Objectives and Key ResultsIntroduction to OKR - Objectives and Key Results
Introduction to OKR - Objectives and Key Results
 
The European OKR Guide
The European OKR GuideThe European OKR Guide
The European OKR Guide
 
A Beginner's Guide to OKR!
A Beginner's Guide to OKR!A Beginner's Guide to OKR!
A Beginner's Guide to OKR!
 
Getting Started with OKRs
Getting Started with OKRsGetting Started with OKRs
Getting Started with OKRs
 
OKR for HR Management
OKR for HR ManagementOKR for HR Management
OKR for HR Management
 
OKRs - Practical tips for getting started from practical experience with doze...
OKRs - Practical tips for getting started from practical experience with doze...OKRs - Practical tips for getting started from practical experience with doze...
OKRs - Practical tips for getting started from practical experience with doze...
 
OKRs vs KPIs
OKRs vs KPIsOKRs vs KPIs
OKRs vs KPIs
 
Getting Started With OKRs (Objective Key Results)
Getting Started With OKRs (Objective Key Results) Getting Started With OKRs (Objective Key Results)
Getting Started With OKRs (Objective Key Results)
 
OKR meetup Amsterdam may 2018
OKR meetup Amsterdam may 2018OKR meetup Amsterdam may 2018
OKR meetup Amsterdam may 2018
 
What is OKR?
What is OKR?What is OKR?
What is OKR?
 
How OKR software looks like
How OKR software looks likeHow OKR software looks like
How OKR software looks like
 
Amplifying performance with OKRs
Amplifying performance with OKRsAmplifying performance with OKRs
Amplifying performance with OKRs
 
Objective & key results by ObjectiveProcess
Objective & key results by ObjectiveProcessObjective & key results by ObjectiveProcess
Objective & key results by ObjectiveProcess
 
OKR & Business Objectives - Agile Evangelists Webinar talk April 2020
OKR & Business Objectives - Agile Evangelists Webinar talk April 2020OKR & Business Objectives - Agile Evangelists Webinar talk April 2020
OKR & Business Objectives - Agile Evangelists Webinar talk April 2020
 
Creating GREAT OKRs and a great quarterly planning process
Creating GREAT OKRs and a great quarterly planning processCreating GREAT OKRs and a great quarterly planning process
Creating GREAT OKRs and a great quarterly planning process
 
OKRs
OKRsOKRs
OKRs
 
Introduction to Lean and PDSA Thinking
Introduction to Lean and PDSA ThinkingIntroduction to Lean and PDSA Thinking
Introduction to Lean and PDSA Thinking
 
OKR SaaS Market Study
OKR SaaS Market StudyOKR SaaS Market Study
OKR SaaS Market Study
 
How to set goals using OKRs
How to set goals using OKRsHow to set goals using OKRs
How to set goals using OKRs
 
OKRs: How Google Achieves Company Goals
OKRs: How Google Achieves Company Goals OKRs: How Google Achieves Company Goals
OKRs: How Google Achieves Company Goals
 

Similaire à Agile in a nutshell

SOFTWARE DEVELOPMENT BUSINESS PLAN
SOFTWARE DEVELOPMENT BUSINESS PLANSOFTWARE DEVELOPMENT BUSINESS PLAN
SOFTWARE DEVELOPMENT BUSINESS PLANNimble Appgenie LLP
 
Agile Software Development Approaches
Agile Software Development ApproachesAgile Software Development Approaches
Agile Software Development Approachesdcsunu
 
Introduction to the Agile Methods
Introduction to the Agile MethodsIntroduction to the Agile Methods
Introduction to the Agile Methodssoftwareacademy
 
Agile project management using scrum
Agile project management using scrumAgile project management using scrum
Agile project management using scrumPrudentialSolutions
 
Project Requriement Management Vs Agile software development
Project Requriement Management Vs  Agile software developmentProject Requriement Management Vs  Agile software development
Project Requriement Management Vs Agile software developmentbizpresenter
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overviewguestb4c770
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development OverviewMark Kovacevich
 
A Systematic Study On Agile Software Development Methodlogies And Practices
A Systematic Study On Agile Software Development Methodlogies And PracticesA Systematic Study On Agile Software Development Methodlogies And Practices
A Systematic Study On Agile Software Development Methodlogies And PracticesSean Flores
 
Changing landscape of software project management
Changing landscape of software project managementChanging landscape of software project management
Changing landscape of software project managementPramesh Vaidya
 
Agile project management SCRUM
Agile project management SCRUMAgile project management SCRUM
Agile project management SCRUMMarwa Salim
 
Navigating the World of Software Development Methodologies
Navigating the World of Software Development Methodologies Navigating the World of Software Development Methodologies
Navigating the World of Software Development Methodologies JamesParker406701
 
Lect5 improving software economics
Lect5 improving software economicsLect5 improving software economics
Lect5 improving software economicsmeena466141
 
Agile Project management
Agile Project managementAgile Project management
Agile Project managementPraveen Sidola
 

Similaire à Agile in a nutshell (20)

Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
module I.pptx
module I.pptxmodule I.pptx
module I.pptx
 
Chapter 2
Chapter 2 Chapter 2
Chapter 2
 
SOFTWARE DEVELOPMENT BUSINESS PLAN
SOFTWARE DEVELOPMENT BUSINESS PLANSOFTWARE DEVELOPMENT BUSINESS PLAN
SOFTWARE DEVELOPMENT BUSINESS PLAN
 
Agile Software Development Approaches
Agile Software Development ApproachesAgile Software Development Approaches
Agile Software Development Approaches
 
Introduction to the Agile Methods
Introduction to the Agile MethodsIntroduction to the Agile Methods
Introduction to the Agile Methods
 
Agile project management using scrum
Agile project management using scrumAgile project management using scrum
Agile project management using scrum
 
Project Requriement Management Vs Agile software development
Project Requriement Management Vs  Agile software developmentProject Requriement Management Vs  Agile software development
Project Requriement Management Vs Agile software development
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overview
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overview
 
A Systematic Study On Agile Software Development Methodlogies And Practices
A Systematic Study On Agile Software Development Methodlogies And PracticesA Systematic Study On Agile Software Development Methodlogies And Practices
A Systematic Study On Agile Software Development Methodlogies And Practices
 
Changing landscape of software project management
Changing landscape of software project managementChanging landscape of software project management
Changing landscape of software project management
 
Agile
AgileAgile
Agile
 
A Software Engineer
A Software EngineerA Software Engineer
A Software Engineer
 
Agile project management SCRUM
Agile project management SCRUMAgile project management SCRUM
Agile project management SCRUM
 
Navigating the World of Software Development Methodologies
Navigating the World of Software Development Methodologies Navigating the World of Software Development Methodologies
Navigating the World of Software Development Methodologies
 
Agile software process
Agile software processAgile software process
Agile software process
 
Lect5 improving software economics
Lect5 improving software economicsLect5 improving software economics
Lect5 improving software economics
 
Agile is not for IT
Agile is not for ITAgile is not for IT
Agile is not for IT
 
Agile Project management
Agile Project managementAgile Project management
Agile Project management
 

Dernier

SaaStr Workshop Wednesday w: Jason Lemkin, SaaStr
SaaStr Workshop Wednesday w: Jason Lemkin, SaaStrSaaStr Workshop Wednesday w: Jason Lemkin, SaaStr
SaaStr Workshop Wednesday w: Jason Lemkin, SaaStrsaastr
 
Presentation on Engagement in Book Clubs
Presentation on Engagement in Book ClubsPresentation on Engagement in Book Clubs
Presentation on Engagement in Book Clubssamaasim06
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Salam Al-Karadaghi
 
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )Pooja Nehwal
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Pooja Nehwal
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesPooja Nehwal
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Vipesco
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AITatiana Gurgel
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMoumonDas2
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxmohammadalnahdi22
 
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxNikitaBankoti2
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...henrik385807
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Hasting Chen
 
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyCall Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyPooja Nehwal
 
Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Chameera Dedduwage
 
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Delhi Call girls
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024eCommerce Institute
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024eCommerce Institute
 
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...NETWAYS
 

Dernier (20)

SaaStr Workshop Wednesday w: Jason Lemkin, SaaStr
SaaStr Workshop Wednesday w: Jason Lemkin, SaaStrSaaStr Workshop Wednesday w: Jason Lemkin, SaaStr
SaaStr Workshop Wednesday w: Jason Lemkin, SaaStr
 
Presentation on Engagement in Book Clubs
Presentation on Engagement in Book ClubsPresentation on Engagement in Book Clubs
Presentation on Engagement in Book Clubs
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
 
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Vaishnavi 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Vaishnavi 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AI
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptx
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
 
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
 
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyCall Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
 
Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)
 
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
Night 7k Call Girls Noida Sector 128 Call Me: 8448380779
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
 
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
OSCamp Kubernetes 2024 | A Tester's Guide to CI_CD as an Automated Quality Co...
 

Agile in a nutshell

  • 1. 1. The waterfall model 2. Incremental development 3. Reuse-oriented software engineering. 1 POPULAR SOFTWARE PROCESS MODELS 3 WHY WE NEED AGILE? 1. Agile manifesto 2. Agile principles 3. Agile umbrella 2 AGILE OVERVIEW 4 FAQS
  • 2. Facts • Obviously we are changing so fast, there is almost no room for long-term plans • A lack of clear goals is the most common factor (37%) behind project failure, according to executive leaders. • Only 37% of teams in the U.K. reported completing projects on time more often than not. • More than half (56.6%) of manufacturers use a combination of project management methodologies. • 59% of U.S. workers say communication is their team’s biggest obstacle to success, followed by accountability (29%).
  • 3. Software project elements Why are software development projects so risky and expensive? By the rigors of approaching methods
  • 4. The waterfall model This model takes the fundamental process activities of specification, development, validation, and evolution and represents them as separate process phases such as requirements specification, software design, implementation, testing, and so on.
  • 5. Incremental development This approach interleaves the activities of specification, development, and validation. The system is developed as a series of versions (increments), with each version adding functionality to the previous version.
  • 6. Reuse-oriented software engineering This approach is based on the existence of a significant number of reusable components. The system development process focuses on integrating these components into a system rather than developing them from scratch.
  • 8. Agile manifesto That is, while there is value in the items on the right, we value the items on the left more. Individuals and interactions over Process and Tools Working Product over Comprehensive Documentation Customer Collaboration over Contract Negotiation Responding to change over Following a plan
  • 9. 12 agile principles • Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. • Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. • Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. • Business people and developers must work together daily throughout the project. • Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. • The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. • Working software is the primary measure of progress. • Agile processes promote 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--the art of maximizing the amount of work not done--is essential. • The best architectures, requirements, and designs emerge from self-organizing teams. • At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
  • 16. • What is Agile? (and is not)? • How is Agile? (and is not)? • What does Agile have (and does not)? • What does Agile aim for (and does not)? • What is Agile suitable for (and is not)? • Is agile a religion? • What does Scrum do well (and does not)? FAQs
  • 17. Thank For Your Attention!

Notes de l'éditeur

  1. Rõ ràng là chúng ta đang thay đổi quá nhanh và gần như không còn chỗ cho những kế hoạch dài hạn. Bởi vậy khả năng thích nghi kịp thời chính là năng lực tối thượng của mỗi doanh nghiệp. Ví dụ như vừa mới ra mắt Odoo 12 với hàng loạt thay đổi ít lâu mà bây giờ đã có plan cho odoo 13 với hứa hẹn là sẽ có rất rất nhiều thay đổi. Rồi thì cái chết của những ông lớn như Yahoo, Nokia có cũng do không bắt kịp theo những sự thay đổi đó. Ngay cả như Apple từng mạnh mồm cho tỉ lệ vàng trên Iphone 4 và ghét màn hình to rồi cũng phải theo. Rồi cả khi những chiếc Apple Watch bé tí ra đời thì họ nghĩ đây là thời của những thiết bị đeo tay nhỏ gọn, rồi đúng cái lại có những chiếc iPad Pro to đùng. Thống kê cho thấy . thiếu đi mục tiêu hoặc mục tiêu không rõ ràng là yếu tố chính, phổ biến đằng sau sự thất bại của project. Chỉ 37% team ở Anh báo lại là hoàn thành đúng hạn, còn lại là toàn delay => Chúng ta không hề cô đơn! Hơn 56% nhà sản xuất kết hợp nhiều phương pháp quản lý, ở VN chúng ta hay nôm na là Đông Tây Y kết hợp. 59% người làm việc Mĩ nói là giao tiếp là rào cản lớn nhất tới thành công.
  2. Các yếu tố phát triển của dự án phần mềm chính là Time Cost và Quality. Rõ ràng thật khó để vừa có giá rẻ mà chất lượng cao, thời gian làm ngắn mà chất lượng cao được. Vậy thì tại sao dự án phát triển phần mềm luôn tiềm tàng nhiều rủi ro và đắt? Do sự gò bó trong cách tiếp cận. Thường thì chúng ta hay chia việc ra bằng cách chia nhỏ từng phân đoạn công việc, và mỗi người chỉ quan tâm đến phần việc của mình đang đảm nhiệm và không care đến tổng thể cũng như những việc khác đang chạy song song. Trong khi hiện nay, sự thích ứng với thay đổi cần được ưu tiên đưa lên hàng đầu, vì vậy mô hình làm việc theo nhóm mà đề cao sự cộng tác sẽ tăng khả năng thành công lên rất nhiều. Từng cá nhân cũng thế. Chúng ta buộc phải thích nghi với mô hình làm việc với tăng sự công tác trong nhóm để tối ưu hóa khả năng của mỗi cá nhân. Cuộc sống của chúng ta cũng biến đổi từng ngày, nên chúng ta không thể phớt lờ hiện thực đó bởi việc bám sát kế hoạch từ trước. Và rõ ràng chúng ta đều biết là không có 1 phương pháp nào phù hợp với mọi cá nhân hay mọi tổ chức, việc chúng ta cần làm là tìm ra phương pháp làm việc với từng cá nhân, từng dự án và từng tổ chức cụ thể. Dù đề cao sự ừng biến linh hoạt, nhưng không thể phủ nhận việc tổ chức vẫn cần giữ tầm nhìn và 1 mục tiêu dài hạn!
  3. OK. Trước khi đi vào những định nghĩa của Agile thì xin lướt qua 3 mô hình tiếp cận và phát triển phần mềm. Phần này dành cho team dev nhưng mọi người có thể theo dõi để có thêm hình dung về công việc của developer,. Việc phát triển được trải qua những giai đoạn tách biệt và rất cụ thể thực hiện bởi các phòng ban chuyên trách, từ phân tích ý tưởng, thiết kế tổng thể, thiết kế chi tiết, lập trình, kiểm thử cho đến triển khai và  bảo trì. Mô hình waterfall là 1 ví dụ của plan-driven process - đại loại là PHẢI lên kế hoạch và lên lịch cho tất cả các hoạt động TRƯỚC khi bắt đầu làm việc. Kết quả của mỗi giai đoạn là tài liệu, giai đoạn tiếp theo không nên bắt đầu cho đến khi giai đoạn trước đó xong. Về nguyên lý thì mô hình này chỉ nên sử dụng khi yêu cầu rõ ràng và ít có thay đổi lớn trong quá trình phát triển.
  4. Cách làm này thực hiện xen kẽ những hoạt động từ việc lên yêu cầu, phát triển, kiểm thử. Hệ thống được phát triển với nhiều các phiên bản chạy được và được bù đắp liên tục, mỗi version mới ra thì thêm những chức năng vào version trước đó. Đây là tiền đề của Agile nhé.
  5. Reuse-oriented software engineering: cách làm này dựa trên những thành phần đã có, chỉ tập trung để chỉnh sửa, tích hợp các thành phần đó để chạy được hơn là phát triển từ đầu. Nhìn qua thì có thể thấy việc chúng ta phát triển Kiu ERP dựa trên Odoo đang rơi vào reuse-oriented. Việc chúng ta thực hiện customization cho khách nên rơi vào waterfall hoặc incremental. Nhưng vì chúng ta phải đưa ra quotation trước, nên thực sự để đúng đắn đó là tránh thiệt cho công ty (estimate sai, dev phải làm thêm, hoặc phải sửa lại do làm sai..) và thiệt hại cho khách hàng khi bị tốn tiền, không được nhận cái mình muốn thì nó nên rơi vào mô hình waterfall. Với những sản phẩm phải build từ đầu như: Kiu POS, CSE, KLP thì nên làm theo mô hình incremental. Thực tế thì các mô hình này không hoàn toàn tách biệt, mà thường được sử dụng cùng nhau. It makes sense to kết hợp những cái hay ho nhất của waterfall và incremental. Cần có thông tin về những yêu cầu cơ bản, nền tảng để thiết kế kiến trúc để hỗ trợ các requirements, phần này không thể làm theo kiểu incremental. Những phần tiếp theo có thể sử dụng các mô hình khác nhau. Những cái mà chúng ta hiểu rõ biết rõ thì có thể làm theo waterfall, những cái khó thì làm theo kiểu incremental, ví dụ giao diện.
  6. Agile là phương pháp tiếp cận lặp cho việc quản lý và phát triển phần mềm, giúp team đưa ra giá trị tới khách hàng nhanh chóng hơn với ít đau đầu hơn. Thay vì dự đoán mọi thứ cho 1 việc ra mắt big bang, thì agile team triển khai công việc theo những phần nhỏ, nhưng dùng được, và tăng dần. Yêu cầu, kế . hoạch và kết quả được đánh giá liên tục, vì vậy team sẽ phản xạ nhanh chóng với những thay đổi hơn. Điều này rất quan trọng với thế giới ngày nay. Thuật ngữ phát triển phần mềm linh hoạt, agile software development lần đầu được đưa ra trong cuộc họp (thảo luận kết hợp giải trí, trượt tuyết) giữa 17 chuyên gia hàng đầu, và sau đó một bản tuyên ngôn Agile được đưa ra.
  7. Chúng tôi đã phát hiện ra cách phát triển phần mềm tốt hơn bằng cách thực hiện nó và giúp đỡ người khác thực hiện. Qua công việc này chúng tôi đã đi đến việc đánh giá cao: Cá nhân và tương tác hơn là quy trình và công cụ Phần mềm chạy tốt hơn là tài liệu đầy đủ Cộng tác với khách hàng hơn là đàm phán hợp đồng Phản hồi với các thay đổi hơn là bám sát với các kế hoạch Mặc dù các điều bên phải vẫn còn giá trị nhưng chúng tôi đánh giá cao hơn các mục bên trái.
  8. Nếu bạn thấy bản tuyên ngôn này quá ngắn và chung chung thì có thể tham khảo 12 nguyên lý đứng sau tuyên ngôn dưới đây:
  9. Scrum là phương pháp thực nghiệm và được sử dụng nhiều nhất, áp đảo trong những phương pháp khác,
  10. Scrum đơn giản nhưng đủ chi tiết và đặc biệt phù hợp với việc phát triển sản phẩm. Scrum vận hành dựa trên những khung thời gian cố định, lặp đi lặp lại, gọi là Sprint giúp cho nhóm phát triển luôn có được nhịp đập đều đặn và tập trung cao độ trong thời gian ngắn. Thực nghiệm
  11. Tối ưu hiệu quả, tập trung vào luồng công việc, workflow thay vì thời gian. Mỗi công việc được trực quan hóa trên 1 bảng trạng thái tương ứng với luồng thực hiện công việc. Để tối ưu sự tập trung, Kanban sử dụng khái niệm giới hạn công việc đang thực hiện WIP. Nhờ tính trực quan và tập trung vào luồng công việc, Kanban giúp nhóm phát triển nhanh chóng nhận ra những nơi có thể cải tiến để có một luồng công việc hiệu quả hơn.
  12. XP đặc biệt, vì có chọn framework nào thì cũng đều sử dụng 1 hoặc 1 số kĩ thuật trong XP. XP tập trung vào phân chia các tác vụ thành những công việc cụ thể lặp lại trong thời gian ngắn và tập trung vào kỹ thuật để đưa ra sản phẩm với chất lượng cao bằng TDD, BDD...
  13. Tinh gọn và nhanh, loại bỏ tất cả những công việc không cần thiết nhằm thúc đẩy sự chuyển giao nhanh và tiết kiệm hơn. Nếu có trở ngại nào được tìm th ấy, thành viên tỏng nhóm được trao quyền để giải quyết nhanh nhất có thể. Sự trao quyền nhé!!!! Lean k đc coi là phươgn pháp phát triển phần mềm cụ thể, nhưng tư tưởng của Lean rất đc đáng lưu tâm, loại bỏ lãng phí, chất lượng từ cốt lõi, trì hoãn sự cam kết, tối ưu hệ thống, khuyến khích học tập...
  14. Dự án phần mềm bắt đầu với một khoảng thời gian ngắn, nhằm thiết lập những công việc sẽ xảy ra với những mô hình cụ thể cugnf danh sách chức năng và kế hoạc phát triển được trao quyền. Sau đó mỗi iteration thực hiện một vài chức năng đảm bảo đủ cho việc chuyển giao với đầy đủ chức . Năng và tài liệu liên quan. FDD phức tạppppp
  15. Nhìn lại 4 điều trong Tuyên ngôn và 12 nguyên lý, dễ nhận thấy là chúng khá chung và đúng. Điều này dễ hiểu vì tìm kiếm điểm chung của nhiều phương pháp cũng như đồng thuận của 17 người, đại diện cho 17 tư duy, quan điểm thì khó mà cụ thể được. Thời điểm đó, Agile là tập hợp của các phương pháp phát triển phần mềm dựa trên sự kết hợp của phương pháp lặp và tăng trưởng. Lưu ý, tôi đang nói về phần “thể hiện” của các phương pháp, không phải “tư duy” (nguyên lý) phía sau. Nhưng sau này, dựa trên nguyên lý, nhiều thứ khác được coi là Agile với nhưng thể hiện không giống như ban đầu. Người ta bắt đầu nói về no planning, no estimation, no Sprint,… đủ thứ. Một ví dụ là Kanban, nó chỉ có thể hiện phần tăng trưởng, không rõ ràng đề cập tới lặp nhưng vẫn nằm trong Agile. Lưu ý rằng Agile Software Development cũng phải dựa trên một số nguyên tắc về quản lý, cách tổ chức nói chung nhưng những thứ này không được định nghĩa rõ ràng. Điều này dẫn đến một số hiểu lầm khá tệ. Ví dụ như “self-organized team” và “cross-functional team”, Agile sử dụng mà không sở hữu; vậy nên không thể hiểu chỉ Agile mới xây dựng những team như vậy. Hay như mô hình về team stage của Tuckman cũng không thuộc về Agile. Kỹ thuật 5Whys, Kaizen… cũng vậy. Đó là những công cụ để nhóm hay người quản lý nhóm thực hiện tiến hoá quy trình. Agile hướng tới giá trị (value oriented), không hướng quy trình (process oriented). Quy trình trong Agile cũng buộc phải thể hiện được giá trị mới có lý do để tồn tại. Để tìm được giá trị, bắt buộc phải trả lời câu hỏi “tại sao (why)?”. Để tìm được quy trình, câu hỏi là “thế nào (how)?”. Câu hỏi why khó hơn rất, rất nhiều câu hỏi how. Và thông thường, để trả lời được câu hỏi why, chúng ta cần dựa trên how đang tồn tại. Agile ra đời với “Agile Software Development” tức là để giải quyết bài toán của phát triển phần mềm. Scrum nói rõ nó phù hợp với các dự án / sản phẩm nằm trong miền “phức hợp và phức tạp tương đối” về yêu cầu và kỹ thuật – tức là các dự án / sản phẩm đơn giản (đã rõ ràng) hoặc quá phức tạp (VD: R&D, công nghệ quá cao…) cần được xem xét. Thế nào là đơn giản, phức tạp… phụ thuộc nhiều yếu tố: con người, trình độ, công cụ,… nên (ví dụ) Scrum có thể phù hợp với team này ở sản phẩm này nhưng không phù hợp với team khác ở chính sản phẩm đó. Agile dựa trên giả định về việc “chào đón sự thay đổi” (welcome change, Scrum: adapt to change, XP: embrace change); tức là, mọi cá nhân trong tổ chức đều thống nhất rằng “thay đổi là điều được chấp nhận”. Tổ chức không đồng tình với sự thay đổi, không “chào đón” mà áp dụng Agile là sai từ gốc. Hầu hết các phương pháp Agile đều dựa trên giả định “cá nhân có động lực làm việc” nên các tổ chức còn loay hoay trong việc này cũng nên cẩn trọng. Agile dự trên pull-system, giả định “cá nhân có động lực làm việc”, điều này đi ngược với phần lớn cách tư duy về quản lý hiện có. Dù có hệ thống lý thuyết chặt chẽ đứng sau, Agile vẫn cần niềm tin để thực hiện trong tổ chức. Khi phương pháp cần tới “niềm tin” là điểm xuất phát thì nó không khác gì “đạo” – sẽ có kẻ sùng đạo và phản đạo. Scrum thực sự tuyệt vời. Nó là một mô hình tuyệt vời với đủ sự tinh gọn, hiệu quả cho phép tổ chức “nhận diện vấn đề”. Đây là điều siêu quan trọng để phát triển sản phẩm cũng như phát triển tổ chức. Scrum không làm việc giải quyết vấn đề. Vậy nên nếu nhóm không giải quyết những vấn đề được nhận diện thf scrum cũng k để làm gì. Nhưng có phương pháp nào giải quyết vấn đề không? Scrum làm tốt trong việc ghi chú “Scrum dễ hiểu, khó làm chủ”. Scrum (đúng hơn là các tổ chức cấp chứng chỉ Scrum (Master, Developer, PO)) làm không tốt trong việc đào tạo. Khá dễ dãi. Có 2 lỗ hổng lớn, khiến các ScrumMaster cầm chứng chỉ và nếu không chịu học hỏi thêm sẽ mắc phải: Không trả lời được rõ ràng các câu hỏi trên. Cái gì thuộc Scrum, cái gì không? Dẫn đến ngộ nhận trong lý thuyết lẫn thực hành. ScrumMaster không yêu cầu kiến thức về phát triển phần mềm. Về lý thuyết, điều này không sai; song thực tế thật khó để tham gia vào nhóm phát triển phần mềm mà không hiểu gì về cách nhóm thực hiện. Từ đây dẫn tới những hệ luỵ vô cùng phức tạp. Chuyển giao cái gì? Technical debt là gì? Simple design là gì? Xử lý thế nào? Tài liệu thế nào là đủ?… ScrumMaster yếu về chuyên môn (ngành) và non tay dẫn dắt nhóm có trình độ cao hơn mình sẽ là thảm hoạ. Đội bóng cần HLV tương xứng. Vấn đề là, tốc độ phát triển của thành viên Nhóm phát triển thường nhanh hơn (và khởi đầu tốt hơn) những ScrumMaster. Vậy nên nhiều nhóm phát triển bắt đầu chán ghét Scrum. Tuyệt nhiên không thể mông lung như Agile làm nhóm hạnh phúc hơn, Agile giúp tăng năng suất, Agile giúp tăng tốc độ hoàn thành dự án… – những điều Agile nguyên thuỷ không hề đề cập.
  16. Ngay cả khi làm cái slide này cũng rất agile