SlideShare a Scribd company logo
1 of 32
Unleashed
Contents
 Rationale
 Existing categories
 Why
 About Agile
 Agile Mothodologies
 The chosen one
 What’s next
Categories of Dev. methods
 Code and Fix
 No process at all
 Development is chaotic and unplanned
 Serial
 Software processes are well defined and detailed
 Developers are expected to follow in serial manner
 Waterfall Process / Big design up front (BDUF)
 Quarter length releases
 Iterative
 Software processes are well defined and detailed
 Developers are expected to follow in an iterative manner
 Short release cycles – weeks / months
 Agile
 Software processes are defined at high-level
 People oriented approach
 Enables people to respond effectively to change
 Short release cycles – weeks / moths
Why…
 Who are we
 Small team of programmers without Designers, Tester or full time project
manager
 In most cases the requirements are general and not fully defined
 Why not Serial or Iterative methods
 Often development of small IT software for which full scale design is too time
consuming
 Usually short TTM (Time to market) needed
 Why and when yes Code and Fix
 For the really small project when first and in short period of time a prototype
needed as a POC (Proof of Concept)
 When only one developer involved
 Why and when yes Agile
 High-level design is needed to begin developing
 When several team-members involved in development
 First prototype release version can be quickly presented to the client
 Adaptive to changes in clients requirements as the projects developes
About Agile – WTF?
 "Agile Development" is an umbrella term for several iterative and
incremental software development methodologies. The most popular agile
methodologies include
 Extreme Programming (XP)
 Scrum
 Crystal Clear
 Dynamic Systems Development Method (DSDM)
 Lean Development
 Feature-Driven Development (FDD)
 While each of the agile methods is unique in its specific approach, they all
share a common vision and core value (Agile Manifesto)
 They all fundamentally incorporate
 Iteration and continuous feedback
 Lightweight
 Rapid and flexible respond to change
 All focus on empowering people to collaborate and make decisions together
quickly and effectively
About Agile – WTF?
About Agile - Characteristics
 Agile methods break tasks into small increments with minimal planning
 Iterations are short time frames that typically last from one to four weeks
 Each iteration involves a team working through a full software
development cycle
 Multiple iterations might be required to release a product or new features.
 Team members decide individually how to meet an iteration's
requirements
 Agile methods emphasize face-to-face communication over written
documents
 Each agile team will contain a customer representative which
available for developers to answer mid-iteration questions
 Most agile implementations use a routine and formal daily face-to-face
communication among team members (Stand-ups)
 TDD - Test Driven Development
Agile Methodologies - XP
 Intended to improve software quality and responsiveness to
changing customer requirements
 Frequent "releases" in short development cycles
 Improve productivity and introduce checkpoints where new
customer requirements can be adopted
 Elements of XP:
 Programming in pairs
 Extensive code review
 Unit testing
 Avoiding programming of features until they are needed
 Flat management structure
 Simplicity and clarity in code
 Expecting changes in customer requirements
 Frequent communication with the customer and among
programmers
Extreme Programming Model
Agile Methodologies -
Scrum 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.
Scrum cycle
Agile Methodologies –
Crystal Clear
 One of the most lightweight, adaptable approaches to
software development
 Actually a family of methodologies (Crystal Clear, Crystal
Yellow, Crystal Orange, etc.) whose unique characteristics
are driven by several factors such as team size, system
criticality, and project priorities
 addresses the realization that each project may require a
slightly tailored set of policies, practices, and processes in
order to meet the project’s unique characteristics.
 Several of the key tenets of Crystal include teamwork,
communication, and simplicity, as well as reflection to
frequently adjust and improve the process
Alistair Cockburn
Agile Methodologies - DSDM
 Dynamic Systems Development Method
 Iterative and incremental approach that embraces
principles of Agile development
 Fixes cost, quality and time
 Uses MoSCoW prioritisation (musts, shoulds, coulds and
won't haves) to meet the stated time constraint
DSDM - Model
Agile Methodologies –
Lean Development (Kanban)
 The term "kanban" is Japanese (看板), derived from roots which literally
translate as "visual board".
 Borrowed from the Toyota Production System, where it designates a system to
control the inventory levels of various parts. It is analogous to (and in fact
inspired by) cards placed behind products on supermarket shelves to signal
"out of stock" items and trigger a resupply "just in time".
 The Toyota system affords a precise accounting of inventory or "work in
process", and strives for a reduction of inventory levels, considered wasteful
and harmful to performance.
 Approach to continuous improvement which relies on visualizing the current
system of work scheduling, managing "flow" as the primary measure of
performance, and whole-system optimization - as a process improvement
approach, it does not prescribe any particular practices.
 can be considered first for efforts involving maintenance or ongoing evolution
(In particular of more than one products.
 The boards must have WIP (Work in Progress) limits
Kanban Board Example
Agile Methodologies - FDD
 Develop overall model
 High-level walkthrough of the scope of the system and its context
 Then detailed domain walkthroughs for each modeling area
 Then merge into an overall model
 Build feature list
 Feature list derived from the model above
 Plan by feature
 Produce development plan by deviding feature sets to chief
programmers
 Design by feature
 Design package for each feature (Description, referenced reqs.,
sequence diagrams, design alternatives, object model, task list)
 Hold design inspections
 Build by feature
 Code for the designs above
 After unit-tests and code inspections the completed feature is to
be promoted to the main build
What’s next?
Comparing Methodologies
Comparing Methodologies
Comparing Methodologies
StrengthsWeaknesses
XP
•Strong technical practices.
•Customer ownership of feature priority, developer ownership of
estimates.
•Frequent feedback opportunities.
•Most widely known and adopted approach, at least in the U.S.
•Requires onsite customer.
•Documentation primarily through verbal
communication and code. For some teams these are
the only artifacts created, others create minimal design
and user documentation.
•Difficult for new adopters to determine how to
accommodate architectural and design concerns.
Scrum
•Complements existing practices.
•Self organizing teams and feedback.
•Customer participation and steering.
•Priorities based on business value.
•Only approach here that has a certification process.
•Only provides project management support, other
disciplines are out of scope.
•Does not specify technical practices.
•Can take some time to get the business to provide
unique priorities for each requirement.
Lean
•Complements existing practices.
•Focuses on project ROI.
•Eliminates all project waste.
•Cross-functional teams.
•Does not specify technical practices.
•Requires constant gathering of metrics which may be
difficult for some environments to accommodate.
•Theory of Constraints can be a complex and difficult
aspect to adopt.
FDD
•Supports multiple teams working in parallel.
•All aspects of a project tracked by feature.
•Design by feature and build by feature aspects are easy to
understand and adopt.
•Scales to large teams or projects well.
•Promotes individual code ownership as opposed to
shared/team ownership.
•Iterations are not as well defined by the process as
other Agile methodologies.
•The model-centric aspects can have huge impacts
when working on existing systems that have no
models.
Comparing Methodologies
StrengthsWeaknesses
AUP
•Robust methodology with many artifacts and disciplines to
choose from.
•Scales up very well.
•Documentation helps communicate in distributed environments.
•Priorities set based on highest risk. Risk can be a business or
technical risk.
•Higher levels of ceremony may be a hindrance in
smaller projects.
•Minimal attention to team dynamics.
•Documentation is much more formal than most
approaches mentioned here.
Crystal
•Family of methodologies designed to scale by project size and
criticality.
•Only methodology that specifically accounts for life critical
projects.
•As project size grows, cross-functional teams are utilized to
ensure consistency.
•The "human" component has been considered for every aspect
of the project support structure.
•An emphasis on testing is so strong that at least one tester is
expected to be on each project team.
•Expects all team members to be co-located. May not
work well for distributed teams.
•Adjustments are required from one project
size/structure to another in order to follow the
prescribed flavor of Crystal for that project
size/criticality.
•Moving from one flavor of Crystal to another in mid
project doesn't work, as Crystal was not designed to
be upward or downward compatible.
DSDM
•An emphasis on testing is so strong that at least one tester is
expected to be on each project team.
•Designed from the ground up by business people, so business
value is identified and expected to be the highest priority
deliverable.
•Has specific approach to determining how important each
requirement is to an iteration.
•Sets stakeholder expectations from the start of the project that
not all requirements will make it into the final deliverable.
•Probably the most heavyweight project compared in
this survey.
•Expects continuous user involvement.
•Defines several artifacts and work products for each
phase of the project; heavier documentation.
•Access to material is controlled by a Consortium, and
fees may be charged just to access the reference
material.
Scrum vs XP
 Scrum and Extreme Programming (XP) are definitely very
aligned:
 Short iterations
 Customer involvement
 Daily stand-up meetings
 The main conceptual differences
 scrum emphasizes the management side of a project and does not
define a detail engineering practice. XP specify the software
engineering practices such as test-driven development, refactoring,
pair programming, simple design, etc.
 Scrum does not allow requirements changes during the sprint
whilst XP supports any change at any stage.
 Most recommendations are to start with Scrum and as the teem
advances and gains agile experience – adopt practices from XP
 So…….
Scrum - Defined
 Roles
 Product owner: responsible for the business value of the project
 Scrum Master: ensures that the team is functional and productive
 Team: self-organizes to get the work done
 Artifacts
 Product backlog: prioritized list of desired project outcomes/features
 Sprint backlog: set of work from the product backlog that the team agrees to
complete in a sprint, broken into tasks
 Burndown chart: at-a-glance look at the work remaining (can have two charts: one
for the sprint and one for the overall project)
 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 (15 minutes)
 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.
Scrum – Order of things
Plan the project
 Build the project backlog
 Technical and learning tasks are also
part of the backlog (i.e explore
.net 4 cababilities, create the
development environment …)
 Determine team velocity – How many story points can be completed in one
iteration (sprint)
 Establish the release plan –
 Group user stories in groups that provide a releasable version
 Determine in which sprints those user stories will be completed
 Prepare for the first sprint – prepare the product backlog
 Break the user stories down into smaller stories
 Provide details about the user stories that the team will need to break the
stories down into tasks.
Backlog Example2
Scrum – Order of things
Plan a Sprint
 Sprint planning meeting - Team commits to completing the chosen
items from the backlog
 Choose user stories to be implemented in the sprint
 Tasks
 Identify the tasks
 Evaluate each task (hours)
Scrum – Order of things
Run a Sprint
 Complete selected user stories
 The sprint is of constant length – 2 to 4
weeks, the length of the sprint cannot be
changed
 Track sprint progress – burndown report
 Finish the sprint
 Make sure user stories completed
 After the customer review,
the team will hold a retrospective meeting to
improve the process
Scrum – Order of things
Track the project
 As sprints are advancing, customers develop a better
understanding of their remaining needs, and changes
in the backlog will happen.
 Prepare for the next sprint
 Update the user stories and their priorities as customers'
needs change.
 Break down user stories that are likely to be
implemented in the next sprint.
Scrum – Order of things
Track the project
 Track Release Progress
 As the project proceeds from sprint to sprint, your team
will track the overall progress toward the next release
 Finish the Release
 Hold review retrospective meetings with the customer
to examine the process
So what’s in our case
 Mercury Rod
 User stories exist
 Build the backlog
 Project planning meeting scheduled next week (Backlog
review, understand priorities, Estimate cost)
 Sprint planning meeting the on the next 2 days (Build
sprint backlog – including tasks)
 Will use visual studio ALM to manage the project
 DOCUMENT YOUT CODE
The END…..
Ponders
 Architectural aspects – in the backlog?
 Backlog examples
 Prepare the working environment
 Continuous integration
 Acceptance tests – Gute
 Multiple tasks management
 Code Reviews

More Related Content

What's hot (20)

Agile Scrum Training Process
Agile Scrum Training ProcessAgile Scrum Training Process
Agile Scrum Training Process
 
Agile Scrum software methodology
Agile Scrum software methodologyAgile Scrum software methodology
Agile Scrum software methodology
 
AGILE METHODOLOGY
AGILE METHODOLOGYAGILE METHODOLOGY
AGILE METHODOLOGY
 
Introduction to Agile Software Development
Introduction to Agile Software DevelopmentIntroduction to Agile Software Development
Introduction to Agile Software Development
 
Introduction agile scrum methodology
Introduction agile scrum methodologyIntroduction agile scrum methodology
Introduction agile scrum methodology
 
Scrum - Agile Methodology
Scrum - Agile MethodologyScrum - Agile Methodology
Scrum - Agile Methodology
 
What is Scrum? SlideShare
What is Scrum? SlideShareWhat is Scrum? SlideShare
What is Scrum? SlideShare
 
Agile scrum training
Agile scrum trainingAgile scrum training
Agile scrum training
 
Agile - Scrum Presentation
Agile - Scrum PresentationAgile - Scrum Presentation
Agile - Scrum Presentation
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Agile presentation
Agile presentationAgile presentation
Agile presentation
 
What is Scrum?
What is Scrum?What is Scrum?
What is Scrum?
 
Agile 101
Agile 101Agile 101
Agile 101
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Agile Software Development Model
Agile Software Development ModelAgile Software Development Model
Agile Software Development Model
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) Model
 
Agile Scrum Methodology
Agile Scrum MethodologyAgile Scrum Methodology
Agile Scrum Methodology
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
 
What Is Agile Scrum
What Is Agile ScrumWhat Is Agile Scrum
What Is Agile Scrum
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 

Viewers also liked

Being a Professional Software Developer
Being a Professional Software DeveloperBeing a Professional Software Developer
Being a Professional Software DeveloperAnton Keks
 
Introducing Scrum a Collaboration Game
Introducing Scrum a Collaboration GameIntroducing Scrum a Collaboration Game
Introducing Scrum a Collaboration GameAgile ME
 
Agile Methology Seminar Report
Agile Methology Seminar ReportAgile Methology Seminar Report
Agile Methology Seminar ReportMohit Kumar
 
Agile methodologies in_project_management
Agile methodologies in_project_managementAgile methodologies in_project_management
Agile methodologies in_project_managementPravin Asar
 
Agile Games - Playful approaches to agile principles
Agile Games - Playful approaches to agile principlesAgile Games - Playful approaches to agile principles
Agile Games - Playful approaches to agile principlesRobert Misch
 
Project Management Methodology
Project Management MethodologyProject Management Methodology
Project Management MethodologyMohammed Al-Taee
 
Comparison Of Methodologies
Comparison Of MethodologiesComparison Of Methodologies
Comparison Of Methodologiesguestc990b6
 
Waterfall vs agile approach scrum framework and best practices in software d...
Waterfall vs agile approach  scrum framework and best practices in software d...Waterfall vs agile approach  scrum framework and best practices in software d...
Waterfall vs agile approach scrum framework and best practices in software d...Tayfun Bilsel
 
System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)fentrekin
 
Lean Software Development Principles
Lean Software Development PrinciplesLean Software Development Principles
Lean Software Development PrinciplesJohn Vajda
 
Marketing mix development
Marketing mix developmentMarketing mix development
Marketing mix developmentugik sugiharto
 
Useful argumentative essay words and phrases
Useful argumentative essay words and phrasesUseful argumentative essay words and phrases
Useful argumentative essay words and phrasesenglishbites
 
List of Software Development Model and Methods
List of Software Development Model and MethodsList of Software Development Model and Methods
List of Software Development Model and MethodsRiant Soft
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development OverviewStewart Rogers
 
6 basic steps of software development process
6 basic steps of software development process6 basic steps of software development process
6 basic steps of software development processRiant Soft
 
Introduction To Software Engineering
Introduction To Software EngineeringIntroduction To Software Engineering
Introduction To Software EngineeringLeyla Bonilla
 

Viewers also liked (20)

Kanban VS Scrum
Kanban VS ScrumKanban VS Scrum
Kanban VS Scrum
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 
Being a Professional Software Developer
Being a Professional Software DeveloperBeing a Professional Software Developer
Being a Professional Software Developer
 
Introducing Scrum a Collaboration Game
Introducing Scrum a Collaboration GameIntroducing Scrum a Collaboration Game
Introducing Scrum a Collaboration Game
 
Agile Methology Seminar Report
Agile Methology Seminar ReportAgile Methology Seminar Report
Agile Methology Seminar Report
 
Agile methodologies in_project_management
Agile methodologies in_project_managementAgile methodologies in_project_management
Agile methodologies in_project_management
 
Agile Games - Playful approaches to agile principles
Agile Games - Playful approaches to agile principlesAgile Games - Playful approaches to agile principles
Agile Games - Playful approaches to agile principles
 
Project Management Methodology
Project Management MethodologyProject Management Methodology
Project Management Methodology
 
Comparison Of Methodologies
Comparison Of MethodologiesComparison Of Methodologies
Comparison Of Methodologies
 
Waterfall vs agile approach scrum framework and best practices in software d...
Waterfall vs agile approach  scrum framework and best practices in software d...Waterfall vs agile approach  scrum framework and best practices in software d...
Waterfall vs agile approach scrum framework and best practices in software d...
 
Software Development Process
Software Development ProcessSoftware Development Process
Software Development Process
 
System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)
 
Lean Software Development Principles
Lean Software Development PrinciplesLean Software Development Principles
Lean Software Development Principles
 
Marketing mix development
Marketing mix developmentMarketing mix development
Marketing mix development
 
Useful argumentative essay words and phrases
Useful argumentative essay words and phrasesUseful argumentative essay words and phrases
Useful argumentative essay words and phrases
 
List of Software Development Model and Methods
List of Software Development Model and MethodsList of Software Development Model and Methods
List of Software Development Model and Methods
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
 
6 basic steps of software development process
6 basic steps of software development process6 basic steps of software development process
6 basic steps of software development process
 
Project management
Project managementProject management
Project management
 
Introduction To Software Engineering
Introduction To Software EngineeringIntroduction To Software Engineering
Introduction To Software Engineering
 

Similar to Agile Development unleashed

Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software EngineeringPurvik Rana
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development OverviewMark Kovacevich
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overviewguestb4c770
 
Agile project management using scrum
Agile project management using scrumAgile project management using scrum
Agile project management using scrumPrudentialSolutions
 
Changing landscape of software project management
Changing landscape of software project managementChanging landscape of software project management
Changing landscape of software project managementPramesh Vaidya
 
What is agile model?Working of agile model
What is agile model?Working of agile modelWhat is agile model?Working of agile model
What is agile model?Working of agile modelzoomers
 
Unit_1_Agile development.pdf about the script of software
Unit_1_Agile development.pdf about the script of softwareUnit_1_Agile development.pdf about the script of software
Unit_1_Agile development.pdf about the script of softwarezeelp3114
 
CAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development PresentationCAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development Presentationdeyoepw
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Muhammad Ahmed
 
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
 
Knoldus SDLC Standard Practices
Knoldus SDLC Standard PracticesKnoldus SDLC Standard Practices
Knoldus SDLC Standard PracticesKnoldus Inc.
 
Intro agile development methodology abhilash chandran
Intro agile development methodology   abhilash chandranIntro agile development methodology   abhilash chandran
Intro agile development methodology abhilash chandranAbhilash Chandran
 

Similar to Agile Development unleashed (20)

Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overview
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overview
 
Fundamentals of Agile
Fundamentals of AgileFundamentals of Agile
Fundamentals of Agile
 
Lect7
Lect7Lect7
Lect7
 
Lect7
Lect7Lect7
Lect7
 
Agile project management using scrum
Agile project management using scrumAgile project management using scrum
Agile project management using scrum
 
Changing landscape of software project management
Changing landscape of software project managementChanging landscape of software project management
Changing landscape of software project management
 
What is agile model?Working of agile model
What is agile model?Working of agile modelWhat is agile model?Working of agile model
What is agile model?Working of agile model
 
Lect3
Lect3Lect3
Lect3
 
Unit_1_Agile development.pdf about the script of software
Unit_1_Agile development.pdf about the script of softwareUnit_1_Agile development.pdf about the script of software
Unit_1_Agile development.pdf about the script of software
 
CAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development PresentationCAI - Agile Scrum Development Presentation
CAI - Agile Scrum Development Presentation
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)
 
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
 
Scrum and Agile SDLC 101
Scrum and Agile SDLC 101Scrum and Agile SDLC 101
Scrum and Agile SDLC 101
 
Knoldus SDLC Standard Practices
Knoldus SDLC Standard PracticesKnoldus SDLC Standard Practices
Knoldus SDLC Standard Practices
 
Manual Software testing - software development life cycle
Manual Software testing - software development life cycleManual Software testing - software development life cycle
Manual Software testing - software development life cycle
 
Intro agile development methodology abhilash chandran
Intro agile development methodology   abhilash chandranIntro agile development methodology   abhilash chandran
Intro agile development methodology abhilash chandran
 
reaserch ppt.pptx
reaserch ppt.pptxreaserch ppt.pptx
reaserch ppt.pptx
 

Recently uploaded

Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 

Recently uploaded (20)

Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 

Agile Development unleashed

  • 2. Contents  Rationale  Existing categories  Why  About Agile  Agile Mothodologies  The chosen one  What’s next
  • 3. Categories of Dev. methods  Code and Fix  No process at all  Development is chaotic and unplanned  Serial  Software processes are well defined and detailed  Developers are expected to follow in serial manner  Waterfall Process / Big design up front (BDUF)  Quarter length releases  Iterative  Software processes are well defined and detailed  Developers are expected to follow in an iterative manner  Short release cycles – weeks / months  Agile  Software processes are defined at high-level  People oriented approach  Enables people to respond effectively to change  Short release cycles – weeks / moths
  • 4. Why…  Who are we  Small team of programmers without Designers, Tester or full time project manager  In most cases the requirements are general and not fully defined  Why not Serial or Iterative methods  Often development of small IT software for which full scale design is too time consuming  Usually short TTM (Time to market) needed  Why and when yes Code and Fix  For the really small project when first and in short period of time a prototype needed as a POC (Proof of Concept)  When only one developer involved  Why and when yes Agile  High-level design is needed to begin developing  When several team-members involved in development  First prototype release version can be quickly presented to the client  Adaptive to changes in clients requirements as the projects developes
  • 5. About Agile – WTF?  "Agile Development" is an umbrella term for several iterative and incremental software development methodologies. The most popular agile methodologies include  Extreme Programming (XP)  Scrum  Crystal Clear  Dynamic Systems Development Method (DSDM)  Lean Development  Feature-Driven Development (FDD)  While each of the agile methods is unique in its specific approach, they all share a common vision and core value (Agile Manifesto)  They all fundamentally incorporate  Iteration and continuous feedback  Lightweight  Rapid and flexible respond to change  All focus on empowering people to collaborate and make decisions together quickly and effectively
  • 7. About Agile - Characteristics  Agile methods break tasks into small increments with minimal planning  Iterations are short time frames that typically last from one to four weeks  Each iteration involves a team working through a full software development cycle  Multiple iterations might be required to release a product or new features.  Team members decide individually how to meet an iteration's requirements  Agile methods emphasize face-to-face communication over written documents  Each agile team will contain a customer representative which available for developers to answer mid-iteration questions  Most agile implementations use a routine and formal daily face-to-face communication among team members (Stand-ups)  TDD - Test Driven Development
  • 8. Agile Methodologies - XP  Intended to improve software quality and responsiveness to changing customer requirements  Frequent "releases" in short development cycles  Improve productivity and introduce checkpoints where new customer requirements can be adopted  Elements of XP:  Programming in pairs  Extensive code review  Unit testing  Avoiding programming of features until they are needed  Flat management structure  Simplicity and clarity in code  Expecting changes in customer requirements  Frequent communication with the customer and among programmers
  • 10. Agile Methodologies - Scrum 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.
  • 12. Agile Methodologies – Crystal Clear  One of the most lightweight, adaptable approaches to software development  Actually a family of methodologies (Crystal Clear, Crystal Yellow, Crystal Orange, etc.) whose unique characteristics are driven by several factors such as team size, system criticality, and project priorities  addresses the realization that each project may require a slightly tailored set of policies, practices, and processes in order to meet the project’s unique characteristics.  Several of the key tenets of Crystal include teamwork, communication, and simplicity, as well as reflection to frequently adjust and improve the process Alistair Cockburn
  • 13. Agile Methodologies - DSDM  Dynamic Systems Development Method  Iterative and incremental approach that embraces principles of Agile development  Fixes cost, quality and time  Uses MoSCoW prioritisation (musts, shoulds, coulds and won't haves) to meet the stated time constraint
  • 15. Agile Methodologies – Lean Development (Kanban)  The term "kanban" is Japanese (看板), derived from roots which literally translate as "visual board".  Borrowed from the Toyota Production System, where it designates a system to control the inventory levels of various parts. It is analogous to (and in fact inspired by) cards placed behind products on supermarket shelves to signal "out of stock" items and trigger a resupply "just in time".  The Toyota system affords a precise accounting of inventory or "work in process", and strives for a reduction of inventory levels, considered wasteful and harmful to performance.  Approach to continuous improvement which relies on visualizing the current system of work scheduling, managing "flow" as the primary measure of performance, and whole-system optimization - as a process improvement approach, it does not prescribe any particular practices.  can be considered first for efforts involving maintenance or ongoing evolution (In particular of more than one products.  The boards must have WIP (Work in Progress) limits
  • 17. Agile Methodologies - FDD  Develop overall model  High-level walkthrough of the scope of the system and its context  Then detailed domain walkthroughs for each modeling area  Then merge into an overall model  Build feature list  Feature list derived from the model above  Plan by feature  Produce development plan by deviding feature sets to chief programmers  Design by feature  Design package for each feature (Description, referenced reqs., sequence diagrams, design alternatives, object model, task list)  Hold design inspections  Build by feature  Code for the designs above  After unit-tests and code inspections the completed feature is to be promoted to the main build
  • 21. Comparing Methodologies StrengthsWeaknesses XP •Strong technical practices. •Customer ownership of feature priority, developer ownership of estimates. •Frequent feedback opportunities. •Most widely known and adopted approach, at least in the U.S. •Requires onsite customer. •Documentation primarily through verbal communication and code. For some teams these are the only artifacts created, others create minimal design and user documentation. •Difficult for new adopters to determine how to accommodate architectural and design concerns. Scrum •Complements existing practices. •Self organizing teams and feedback. •Customer participation and steering. •Priorities based on business value. •Only approach here that has a certification process. •Only provides project management support, other disciplines are out of scope. •Does not specify technical practices. •Can take some time to get the business to provide unique priorities for each requirement. Lean •Complements existing practices. •Focuses on project ROI. •Eliminates all project waste. •Cross-functional teams. •Does not specify technical practices. •Requires constant gathering of metrics which may be difficult for some environments to accommodate. •Theory of Constraints can be a complex and difficult aspect to adopt. FDD •Supports multiple teams working in parallel. •All aspects of a project tracked by feature. •Design by feature and build by feature aspects are easy to understand and adopt. •Scales to large teams or projects well. •Promotes individual code ownership as opposed to shared/team ownership. •Iterations are not as well defined by the process as other Agile methodologies. •The model-centric aspects can have huge impacts when working on existing systems that have no models.
  • 22. Comparing Methodologies StrengthsWeaknesses AUP •Robust methodology with many artifacts and disciplines to choose from. •Scales up very well. •Documentation helps communicate in distributed environments. •Priorities set based on highest risk. Risk can be a business or technical risk. •Higher levels of ceremony may be a hindrance in smaller projects. •Minimal attention to team dynamics. •Documentation is much more formal than most approaches mentioned here. Crystal •Family of methodologies designed to scale by project size and criticality. •Only methodology that specifically accounts for life critical projects. •As project size grows, cross-functional teams are utilized to ensure consistency. •The "human" component has been considered for every aspect of the project support structure. •An emphasis on testing is so strong that at least one tester is expected to be on each project team. •Expects all team members to be co-located. May not work well for distributed teams. •Adjustments are required from one project size/structure to another in order to follow the prescribed flavor of Crystal for that project size/criticality. •Moving from one flavor of Crystal to another in mid project doesn't work, as Crystal was not designed to be upward or downward compatible. DSDM •An emphasis on testing is so strong that at least one tester is expected to be on each project team. •Designed from the ground up by business people, so business value is identified and expected to be the highest priority deliverable. •Has specific approach to determining how important each requirement is to an iteration. •Sets stakeholder expectations from the start of the project that not all requirements will make it into the final deliverable. •Probably the most heavyweight project compared in this survey. •Expects continuous user involvement. •Defines several artifacts and work products for each phase of the project; heavier documentation. •Access to material is controlled by a Consortium, and fees may be charged just to access the reference material.
  • 23. Scrum vs XP  Scrum and Extreme Programming (XP) are definitely very aligned:  Short iterations  Customer involvement  Daily stand-up meetings  The main conceptual differences  scrum emphasizes the management side of a project and does not define a detail engineering practice. XP specify the software engineering practices such as test-driven development, refactoring, pair programming, simple design, etc.  Scrum does not allow requirements changes during the sprint whilst XP supports any change at any stage.  Most recommendations are to start with Scrum and as the teem advances and gains agile experience – adopt practices from XP  So…….
  • 24. Scrum - Defined  Roles  Product owner: responsible for the business value of the project  Scrum Master: ensures that the team is functional and productive  Team: self-organizes to get the work done  Artifacts  Product backlog: prioritized list of desired project outcomes/features  Sprint backlog: set of work from the product backlog that the team agrees to complete in a sprint, broken into tasks  Burndown chart: at-a-glance look at the work remaining (can have two charts: one for the sprint and one for the overall project)  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 (15 minutes)  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.
  • 25. Scrum – Order of things Plan the project  Build the project backlog  Technical and learning tasks are also part of the backlog (i.e explore .net 4 cababilities, create the development environment …)  Determine team velocity – How many story points can be completed in one iteration (sprint)  Establish the release plan –  Group user stories in groups that provide a releasable version  Determine in which sprints those user stories will be completed  Prepare for the first sprint – prepare the product backlog  Break the user stories down into smaller stories  Provide details about the user stories that the team will need to break the stories down into tasks. Backlog Example2
  • 26. Scrum – Order of things Plan a Sprint  Sprint planning meeting - Team commits to completing the chosen items from the backlog  Choose user stories to be implemented in the sprint  Tasks  Identify the tasks  Evaluate each task (hours)
  • 27. Scrum – Order of things Run a Sprint  Complete selected user stories  The sprint is of constant length – 2 to 4 weeks, the length of the sprint cannot be changed  Track sprint progress – burndown report  Finish the sprint  Make sure user stories completed  After the customer review, the team will hold a retrospective meeting to improve the process
  • 28. Scrum – Order of things Track the project  As sprints are advancing, customers develop a better understanding of their remaining needs, and changes in the backlog will happen.  Prepare for the next sprint  Update the user stories and their priorities as customers' needs change.  Break down user stories that are likely to be implemented in the next sprint.
  • 29. Scrum – Order of things Track the project  Track Release Progress  As the project proceeds from sprint to sprint, your team will track the overall progress toward the next release  Finish the Release  Hold review retrospective meetings with the customer to examine the process
  • 30. So what’s in our case  Mercury Rod  User stories exist  Build the backlog  Project planning meeting scheduled next week (Backlog review, understand priorities, Estimate cost)  Sprint planning meeting the on the next 2 days (Build sprint backlog – including tasks)  Will use visual studio ALM to manage the project  DOCUMENT YOUT CODE
  • 32. Ponders  Architectural aspects – in the backlog?  Backlog examples  Prepare the working environment  Continuous integration  Acceptance tests – Gute  Multiple tasks management  Code Reviews