SlideShare a Scribd company logo
1 of 27
Agile Software Development
1
Agile software development
Topics covered
๏‚ฒ Agile methods
๏‚ฒ Plan-driven and agile development
๏‚ฒ Extreme programming
๏‚ฒ Agile project management
๏‚ฒ Scaling agile methods
2
Rapid software development
๏‚ฒ Why?
๏‚ง Need to react to changes more quickly than 2 year long waterfall projects
๏‚ง 2 years and then you got the design wrong anyway! Small deliveries
aren't abstract
๏‚ฒ How?
๏‚ง Goal - Deliver working software quickly
โ€ข Compromise - less functionality in a delivery, not lower quality
โ€ข Less documentation
๏‚ง Focus on the code rather than the design
๏‚ง Interleave
โ€ข Specification, design and implementation are inter-leaved
๏‚ง Deliver small versions and get user (stakeholder) input
3
Painpoints
Your
Favorite!
Transparency
Agile manifesto
๏‚ฒ Our values:
๏‚ง Individuals and interactions over processes and tools
๏‚ง Working software over comprehensive documentation
๏‚ง Customer collaboration over contract negotiation
๏‚ง Responding to change over following a plan
๏‚ฒ That is, while there is value in the items on the right, we
value the items on the left more.
5
Plan-driven and agile specification
6
separate
development
stages with
the outputs to
be produced
at each of
these stages
planned in
advance.
Not
necessarily
waterfall
model โ€“ plan-
driven,
incremental
development
is possible
Iteration within stage
Iteration of stage
User's full
agreement at
end, not before
code
Problems with agile methods
๏‚ฒ It can be difficult to keep the interest of customers / users who are involved
in the process.
๏‚ฒ Team members may be unsuited to the intense involvement that
characterizes agile methods.
๏‚ฒ Prioritizing changes can be difficult where there are multiple stakeholders.
๏‚ฒ Maintaining simplicity requires extra work.
๏‚ฒ Contracts may be a problem as with other approaches to iterative
development.
๏‚ฒ Because of their focus on small, tightly-integrated teams, there are
problems in scaling agile methods to large systems.
๏‚ฒ Less emphasis on documentation - harder to maintain when you get a new
team for maintenance
8
Balance plan driven and agile
๏‚ฒ Not great for Agile:
๏‚ง What type of system is being developed?
โ€ข Plan-driven approaches may be required for systems that require a lot of analysis before
implementation (e.g. real-time system with complex timing requirements).
๏‚ง What is the expected system lifetime?
โ€ข Long-lifetime systems may require more design documentation to communicate the
original intentions of the system developers to the support team.
๏‚ง What technologies are available to support system development?
โ€ข Agile methods rely on good tools to keep track of an evolving design
๏‚ง How is the development team organized?
โ€ข Many teams; Outsourcing ---> need design documents to control borders
๏‚ง Culture or contract needs detailed specification
๏‚ง Is rapid feedback from users realistic?
๏‚ง Large scale, not co-located may require more formal communication methods
๏‚ง Need high level programming skills - refactoring, work with little spec
๏‚ง Outside regulation documentation requirements
9
Extreme programming
๏‚ฒ A popular form of Agile
๏‚ฒ Extreme Programming (XP) takes an โ€˜extremeโ€™ approach to iterative
development.
๏‚ง New versions may be built several times per day;
๏‚ง Increments are delivered to customers every 2 weeks;
๏‚ง All tests must be run for every build and the build is only accepted if tests run
successfully.
๏‚ฒ Customer involvement means full-time customer engagement with the
team. - Specifications through user stories broken into tasks
๏‚ฒ People not process : pair programming, collective ownership and a process
that avoids long working hours.
๏‚ฒ Regular system releases. - release set of user stories
๏‚ฒ Maintaining simplicity through constant refactoring of code.
10
The extreme programming release cycle
11
The Parts and the Whole
Controller
Inspect
Set Target Adapt
โ€ข Clean Design & Code & Refactor
โ€ข User Stories - Late Elaboration
โ€ข Shared Code Ownership
โ€ข Test Driven Developmentโ€ฆ..
โ€ข Iteration Plan
โ€ข Daily Stand-Up
โ€ข Pair Programming
โ€ข Customer Reviews &
Feedback
โ€ข Retrospectives
โ€ข AutoTestโ€ฆ..
Sustainable pace
Collective Ownership with users
Minimal documentation for sprint
The Life of an Iteration
โ€œTell me how you will measure
me and Iโ€™ll tell you how Iโ€™ll
behaveโ€
Transparency
A โ€˜prescribing medicationโ€™ story
15
Examples of task cards for prescribing
medication
16
Refactoring
๏‚ฒ Programming team look for possible software improvements and
make these improvements even where there is no immediate need
for them.
๏‚ฒ This improves the understandability of the software and so reduces
the need for documentation.
๏‚ฒ Changes are easier to make because the code is well-structured
and clear.
๏‚ฒ However, some changes requires architecture refactoring and this is
much more expensive.
๏‚ฒ RISK:
๏‚ฒ Changes the user does not test
๏‚ฒ Changes to working software break it
18
Examples of refactoring
๏‚ฒ Re-organization of a class hierarchy to remove duplicate
code.
๏‚ฒ Tidying up and renaming attributes and methods to make
them easier to understand.
๏‚ฒ The replacement of inline code with calls to methods that
have been included in a program library.
19
Test case description for dose checking
20
Test automation
๏‚ฒ Automate tests (junit)
๏‚ฒ Run upon checkin
๏‚ฒ Difficulties:
๏‚ฒ Time constraints
๏‚ฒ Programmer preferences to not test
๏‚ฒ Test coverage
21
Pair programming
๏‚ฒ In XP, programmers work in pairs, sitting together to
develop code.
๏‚ฒ Common ownership
๏‚ฒ Knowledge spread
๏‚ฒ Informal review
๏‚ฒ Refactoring
๏‚ฒ Similar output to two people coding
22
Scrum
๏‚ฒ Project Manager's job: - Deliver needed system on time
within budget
๏‚ฒ The Scrum approach - manage the iterations
๏‚ฒ There are three phases in Scrum.
๏‚ง outline planning phase - general picture and architecture
๏‚ง Sprint cycles releasing increments of the system.
๏‚ง The project closure phase - final delivery, documentation and
review of lessons learned.
23
The Scrum process
24
The Sprint cycle
๏‚ฒ Every 2โ€“4 weeks (a fixed length).
๏‚ฒ 1) Project team with customer: Look at product backlog -
select stories to implement
๏‚ฒ 2) implement with all customer communication through
scrum master (protecting pgmr at this point)
๏‚ฒ Scrum master has project manager role during sprint
๏‚ฒ Daily 15 min meetings
๏‚ฒStand up often
๏‚ฒTeam presents progress and impediments
๏‚ฒScrum master tasked with removing impediments
๏‚ฒ 3) Review system release with user
25
Scrum benefits
๏‚ฒ The product is broken down into a set of manageable
and understandable chunks.
๏‚ฒ Unstable requirements do not hold up progress.
๏‚ฒ The whole team have visibility of everything and
consequently team communication is improved.
๏‚ฒ Customers see on-time delivery of increments and gain
feedback on how the product works.
๏‚ฒ Trust between customers and developers is established
and a positive culture is created in which everyone
expects the project to succeed.
26
Summary
๏‚ฒ Plan Driven (Ex: Waterfall) vs Incremental (Ex: Agile )
๏‚ฒ Structure and benefits and downfalls
๏‚ฒ XP - an implementation of Agile - Power to the Programmer
๏‚ฒ User story requirements
๏‚ฒ Test driven design with continual retest and integration
๏‚ฒ Pair Programming
๏‚ฒ Refactoring encouraged
๏‚ฒ Scrum - project management of Agile using sprints
๏‚ฒ Iterations of full team contact / Scrum master protection of
programmers / full team release review
27

More Related Content

What's hot

Agile testing
Agile testingAgile testing
Agile testingYogita patil
ย 
Performance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecyclePerformance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecycleLee Barnes
ย 
SDLC
SDLCSDLC
SDLCSachin-QA
ย 
Scrum Portugal Meeting 1 Lisbon - ALM
Scrum Portugal Meeting 1 Lisbon - ALMScrum Portugal Meeting 1 Lisbon - ALM
Scrum Portugal Meeting 1 Lisbon - ALMMarco Silva
ย 
Automate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right ToolsAutomate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right ToolsInfo-Tech Research Group
ย 
Presentation on Agile Testing
Presentation on Agile TestingPresentation on Agile Testing
Presentation on Agile Testing1Solutions Pvt. Ltd.
ย 
Effort Distribution on Waterfall and Agile
Effort Distribution on Waterfall and AgileEffort Distribution on Waterfall and Agile
Effort Distribution on Waterfall and AgileAnanda Pramanik
ย 
Istqb Agile-tester Extension
Istqb Agile-tester ExtensionIstqb Agile-tester Extension
Istqb Agile-tester ExtensionGirish Goutam
ย 
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
ย 
Azure dev ops
Azure dev opsAzure dev ops
Azure dev opsTomy Rhymond
ย 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsJesse Manalansan
ย 
Differences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and AgileDifferences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and AgileReturn on Intelligence
ย 
matt heinzelman software quality assurance presentation technical & tool
matt heinzelman software quality assurance presentation technical & toolmatt heinzelman software quality assurance presentation technical & tool
matt heinzelman software quality assurance presentation technical & toolCuongHoang80
ย 
05 sqa overview
05 sqa overview05 sqa overview
05 sqa overviewCuongHoang80
ย 
Rational Quality Manager
Rational Quality ManagerRational Quality Manager
Rational Quality ManagerAlan Kan
ย 
Software Quality Assurance - Software Engineering
Software Quality Assurance - Software EngineeringSoftware Quality Assurance - Software Engineering
Software Quality Assurance - Software EngineeringPurvik Rana
ย 
Agile Model & Methodology
Agile Model & MethodologyAgile Model & Methodology
Agile Model & Methodologyyasirkhan_77
ย 
Quality Assurance in SDLC
Quality Assurance in SDLCQuality Assurance in SDLC
Quality Assurance in SDLCAdil Mughal
ย 
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...shailesh.bohra
ย 

What's hot (20)

Agile testing
Agile testingAgile testing
Agile testing
ย 
Performance Testing in the Agile Lifecycle
Performance Testing in the Agile LifecyclePerformance Testing in the Agile Lifecycle
Performance Testing in the Agile Lifecycle
ย 
SDLC
SDLCSDLC
SDLC
ย 
Scrum Portugal Meeting 1 Lisbon - ALM
Scrum Portugal Meeting 1 Lisbon - ALMScrum Portugal Meeting 1 Lisbon - ALM
Scrum Portugal Meeting 1 Lisbon - ALM
ย 
Automate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right ToolsAutomate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right Tools
ย 
Presentation on Agile Testing
Presentation on Agile TestingPresentation on Agile Testing
Presentation on Agile Testing
ย 
Effort Distribution on Waterfall and Agile
Effort Distribution on Waterfall and AgileEffort Distribution on Waterfall and Agile
Effort Distribution on Waterfall and Agile
ย 
Istqb Agile-tester Extension
Istqb Agile-tester ExtensionIstqb Agile-tester Extension
Istqb Agile-tester Extension
ย 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)
ย 
Azure dev ops
Azure dev opsAzure dev ops
Azure dev ops
ย 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
ย 
Rational Quality Manager
Rational Quality ManagerRational Quality Manager
Rational Quality Manager
ย 
Differences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and AgileDifferences between Testing in Waterfall and Agile
Differences between Testing in Waterfall and Agile
ย 
matt heinzelman software quality assurance presentation technical & tool
matt heinzelman software quality assurance presentation technical & toolmatt heinzelman software quality assurance presentation technical & tool
matt heinzelman software quality assurance presentation technical & tool
ย 
05 sqa overview
05 sqa overview05 sqa overview
05 sqa overview
ย 
Rational Quality Manager
Rational Quality ManagerRational Quality Manager
Rational Quality Manager
ย 
Software Quality Assurance - Software Engineering
Software Quality Assurance - Software EngineeringSoftware Quality Assurance - Software Engineering
Software Quality Assurance - Software Engineering
ย 
Agile Model & Methodology
Agile Model & MethodologyAgile Model & Methodology
Agile Model & Methodology
ย 
Quality Assurance in SDLC
Quality Assurance in SDLCQuality Assurance in SDLC
Quality Assurance in SDLC
ย 
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
A Comparative study of Rational Unified process( RUP ), Agile & Microsoft Fra...
ย 

Similar to Agile process

agile.ppt
agile.pptagile.ppt
agile.pptssusercf1a23
ย 
agile.ppt
agile.pptagile.ppt
agile.pptjanani603976
ย 
Unit -1.ppt
Unit -1.pptUnit -1.ppt
Unit -1.pptSolankiSahil3
ย 
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzLecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzAhmadSajjad34
ย 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
ย 
ch2-Agile-Software-Development-engineerning.pdf
ch2-Agile-Software-Development-engineerning.pdfch2-Agile-Software-Development-engineerning.pdf
ch2-Agile-Software-Development-engineerning.pdfyedej15330
ย 
Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3Ahmed Alageed
ย 
Agile Project Management for IT Projects
Agile Project Management for IT ProjectsAgile Project Management for IT Projects
Agile Project Management for IT Projectsrachna_nainani
ย 
Agile methodology
Agile methodologyAgile methodology
Agile methodologyMuhammad Shoaib
ย 
Agile software process
Agile software processAgile software process
Agile software processJennifer Polack
ย 
Agile Development unleashed
Agile Development unleashedAgile Development unleashed
Agile Development unleashedlivgeni
ย 
Ch3-Software Engineering 9
Ch3-Software Engineering 9Ch3-Software Engineering 9
Ch3-Software Engineering 9Ian Sommerville
ย 
Agile software development
Agile software development Agile software development
Agile software development saurabh goel
ย 

Similar to Agile process (20)

agile.ppt
agile.pptagile.ppt
agile.ppt
ย 
agile.ppt
agile.pptagile.ppt
agile.ppt
ย 
agile.ppt
agile.pptagile.ppt
agile.ppt
ย 
Agile
AgileAgile
Agile
ย 
agile.ppt
agile.pptagile.ppt
agile.ppt
ย 
Scrun Safe Ppt.pptx
Scrun Safe Ppt.pptxScrun Safe Ppt.pptx
Scrun Safe Ppt.pptx
ย 
Unit -1.ppt
Unit -1.pptUnit -1.ppt
Unit -1.ppt
ย 
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzLecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
ย 
Agiel sw development
Agiel sw developmentAgiel sw development
Agiel sw development
ย 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
ย 
Lecture 3 se
Lecture 3 seLecture 3 se
Lecture 3 se
ย 
ch2-Agile-Software-Development-engineerning.pdf
ch2-Agile-Software-Development-engineerning.pdfch2-Agile-Software-Development-engineerning.pdf
ch2-Agile-Software-Development-engineerning.pdf
ย 
Ch3
Ch3Ch3
Ch3
ย 
Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3Agile Method - Lec 1-2-3
Agile Method - Lec 1-2-3
ย 
Agile Project Management for IT Projects
Agile Project Management for IT ProjectsAgile Project Management for IT Projects
Agile Project Management for IT Projects
ย 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
ย 
Agile software process
Agile software processAgile software process
Agile software process
ย 
Agile Development unleashed
Agile Development unleashedAgile Development unleashed
Agile Development unleashed
ย 
Ch3-Software Engineering 9
Ch3-Software Engineering 9Ch3-Software Engineering 9
Ch3-Software Engineering 9
ย 
Agile software development
Agile software development Agile software development
Agile software development
ย 

Recently uploaded

( Pune ) VIP Baner Call Girls ๐ŸŽ—๏ธ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls ๐ŸŽ—๏ธ 9352988975 Sizzling | Escorts | Girls Are Re...( Pune ) VIP Baner Call Girls ๐ŸŽ—๏ธ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls ๐ŸŽ—๏ธ 9352988975 Sizzling | Escorts | Girls Are Re...nilamkumrai
ย 
All Time Service Available Call Girls Mg Road ๐Ÿ‘Œ โญ๏ธ 6378878445
All Time Service Available Call Girls Mg Road ๐Ÿ‘Œ โญ๏ธ 6378878445All Time Service Available Call Girls Mg Road ๐Ÿ‘Œ โญ๏ธ 6378878445
All Time Service Available Call Girls Mg Road ๐Ÿ‘Œ โญ๏ธ 6378878445ruhi
ย 
best call girls in Hyderabad Finest Escorts Service ๐Ÿ“ž 9352988975 ๐Ÿ“ž Available ...
best call girls in Hyderabad Finest Escorts Service ๐Ÿ“ž 9352988975 ๐Ÿ“ž Available ...best call girls in Hyderabad Finest Escorts Service ๐Ÿ“ž 9352988975 ๐Ÿ“ž Available ...
best call girls in Hyderabad Finest Escorts Service ๐Ÿ“ž 9352988975 ๐Ÿ“ž Available ...kajalverma014
ย 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
ย 
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...SUHANI PANDEY
ย 
๐“€คCall On 7877925207 ๐“€ค Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
๐“€คCall On 7877925207 ๐“€ค Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...๐“€คCall On 7877925207 ๐“€ค Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
๐“€คCall On 7877925207 ๐“€ค Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...Neha Pandey
ย 
๐Ÿ’š๐Ÿ˜‹ Salem Escort Service Call Girls, 9352852248 โ‚น5000 To 25K With AC๐Ÿ’š๐Ÿ˜‹
๐Ÿ’š๐Ÿ˜‹ Salem Escort Service Call Girls, 9352852248 โ‚น5000 To 25K With AC๐Ÿ’š๐Ÿ˜‹๐Ÿ’š๐Ÿ˜‹ Salem Escort Service Call Girls, 9352852248 โ‚น5000 To 25K With AC๐Ÿ’š๐Ÿ˜‹
๐Ÿ’š๐Ÿ˜‹ Salem Escort Service Call Girls, 9352852248 โ‚น5000 To 25K With AC๐Ÿ’š๐Ÿ˜‹nirzagarg
ย 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge GraphsEleniIlkou
ย 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...SUHANI PANDEY
ย 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...singhpriety023
ย 
Call Girls in Prashant Vihar, Delhi ๐Ÿ’ฏ Call Us ๐Ÿ”9953056974 ๐Ÿ” Escort Service
Call Girls in Prashant Vihar, Delhi ๐Ÿ’ฏ Call Us ๐Ÿ”9953056974 ๐Ÿ” Escort ServiceCall Girls in Prashant Vihar, Delhi ๐Ÿ’ฏ Call Us ๐Ÿ”9953056974 ๐Ÿ” Escort Service
Call Girls in Prashant Vihar, Delhi ๐Ÿ’ฏ Call Us ๐Ÿ”9953056974 ๐Ÿ” Escort Service9953056974 Low Rate Call Girls In Saket, Delhi NCR
ย 
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...SUHANI PANDEY
ย 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...SUHANI PANDEY
ย 
Microsoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftMicrosoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftAanSulistiyo
ย 
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)Delhi Call girls
ย 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC
ย 
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrStory Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrHenryBriggs2
ย 

Recently uploaded (20)

( Pune ) VIP Baner Call Girls ๐ŸŽ—๏ธ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls ๐ŸŽ—๏ธ 9352988975 Sizzling | Escorts | Girls Are Re...( Pune ) VIP Baner Call Girls ๐ŸŽ—๏ธ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls ๐ŸŽ—๏ธ 9352988975 Sizzling | Escorts | Girls Are Re...
ย 
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
ย 
All Time Service Available Call Girls Mg Road ๐Ÿ‘Œ โญ๏ธ 6378878445
All Time Service Available Call Girls Mg Road ๐Ÿ‘Œ โญ๏ธ 6378878445All Time Service Available Call Girls Mg Road ๐Ÿ‘Œ โญ๏ธ 6378878445
All Time Service Available Call Girls Mg Road ๐Ÿ‘Œ โญ๏ธ 6378878445
ย 
best call girls in Hyderabad Finest Escorts Service ๐Ÿ“ž 9352988975 ๐Ÿ“ž Available ...
best call girls in Hyderabad Finest Escorts Service ๐Ÿ“ž 9352988975 ๐Ÿ“ž Available ...best call girls in Hyderabad Finest Escorts Service ๐Ÿ“ž 9352988975 ๐Ÿ“ž Available ...
best call girls in Hyderabad Finest Escorts Service ๐Ÿ“ž 9352988975 ๐Ÿ“ž Available ...
ย 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
ย 
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
ย 
๐“€คCall On 7877925207 ๐“€ค Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
๐“€คCall On 7877925207 ๐“€ค Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...๐“€คCall On 7877925207 ๐“€ค Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
๐“€คCall On 7877925207 ๐“€ค Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
ย 
๐Ÿ’š๐Ÿ˜‹ Salem Escort Service Call Girls, 9352852248 โ‚น5000 To 25K With AC๐Ÿ’š๐Ÿ˜‹
๐Ÿ’š๐Ÿ˜‹ Salem Escort Service Call Girls, 9352852248 โ‚น5000 To 25K With AC๐Ÿ’š๐Ÿ˜‹๐Ÿ’š๐Ÿ˜‹ Salem Escort Service Call Girls, 9352852248 โ‚น5000 To 25K With AC๐Ÿ’š๐Ÿ˜‹
๐Ÿ’š๐Ÿ˜‹ Salem Escort Service Call Girls, 9352852248 โ‚น5000 To 25K With AC๐Ÿ’š๐Ÿ˜‹
ย 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
ย 
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...Russian Call Girls Pune  (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
Russian Call Girls Pune (Adult Only) 8005736733 Escort Service 24x7 Cash Pay...
ย 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
ย 
Call Girls in Prashant Vihar, Delhi ๐Ÿ’ฏ Call Us ๐Ÿ”9953056974 ๐Ÿ” Escort Service
Call Girls in Prashant Vihar, Delhi ๐Ÿ’ฏ Call Us ๐Ÿ”9953056974 ๐Ÿ” Escort ServiceCall Girls in Prashant Vihar, Delhi ๐Ÿ’ฏ Call Us ๐Ÿ”9953056974 ๐Ÿ” Escort Service
Call Girls in Prashant Vihar, Delhi ๐Ÿ’ฏ Call Us ๐Ÿ”9953056974 ๐Ÿ” Escort Service
ย 
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
ย 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
ย 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
ย 
Microsoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftMicrosoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck Microsoft
ย 
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)
WhatsApp ๐Ÿ“ž 8448380779 โœ…Call Girls In Mamura Sector 66 ( Noida)
ย 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53
ย 
Low Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐Ÿฅต
Low Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐ŸฅตLow Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐Ÿฅต
Low Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐Ÿฅต
ย 
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrStory Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
ย 

Agile process

  • 1. Agile Software Development 1 Agile software development
  • 2. Topics covered ๏‚ฒ Agile methods ๏‚ฒ Plan-driven and agile development ๏‚ฒ Extreme programming ๏‚ฒ Agile project management ๏‚ฒ Scaling agile methods 2
  • 3. Rapid software development ๏‚ฒ Why? ๏‚ง Need to react to changes more quickly than 2 year long waterfall projects ๏‚ง 2 years and then you got the design wrong anyway! Small deliveries aren't abstract ๏‚ฒ How? ๏‚ง Goal - Deliver working software quickly โ€ข Compromise - less functionality in a delivery, not lower quality โ€ข Less documentation ๏‚ง Focus on the code rather than the design ๏‚ง Interleave โ€ข Specification, design and implementation are inter-leaved ๏‚ง Deliver small versions and get user (stakeholder) input 3
  • 5. Agile manifesto ๏‚ฒ Our values: ๏‚ง Individuals and interactions over processes and tools ๏‚ง Working software over comprehensive documentation ๏‚ง Customer collaboration over contract negotiation ๏‚ง Responding to change over following a plan ๏‚ฒ That is, while there is value in the items on the right, we value the items on the left more. 5
  • 6. Plan-driven and agile specification 6 separate development stages with the outputs to be produced at each of these stages planned in advance. Not necessarily waterfall model โ€“ plan- driven, incremental development is possible Iteration within stage Iteration of stage User's full agreement at end, not before code
  • 7.
  • 8. Problems with agile methods ๏‚ฒ It can be difficult to keep the interest of customers / users who are involved in the process. ๏‚ฒ Team members may be unsuited to the intense involvement that characterizes agile methods. ๏‚ฒ Prioritizing changes can be difficult where there are multiple stakeholders. ๏‚ฒ Maintaining simplicity requires extra work. ๏‚ฒ Contracts may be a problem as with other approaches to iterative development. ๏‚ฒ Because of their focus on small, tightly-integrated teams, there are problems in scaling agile methods to large systems. ๏‚ฒ Less emphasis on documentation - harder to maintain when you get a new team for maintenance 8
  • 9. Balance plan driven and agile ๏‚ฒ Not great for Agile: ๏‚ง What type of system is being developed? โ€ข Plan-driven approaches may be required for systems that require a lot of analysis before implementation (e.g. real-time system with complex timing requirements). ๏‚ง What is the expected system lifetime? โ€ข Long-lifetime systems may require more design documentation to communicate the original intentions of the system developers to the support team. ๏‚ง What technologies are available to support system development? โ€ข Agile methods rely on good tools to keep track of an evolving design ๏‚ง How is the development team organized? โ€ข Many teams; Outsourcing ---> need design documents to control borders ๏‚ง Culture or contract needs detailed specification ๏‚ง Is rapid feedback from users realistic? ๏‚ง Large scale, not co-located may require more formal communication methods ๏‚ง Need high level programming skills - refactoring, work with little spec ๏‚ง Outside regulation documentation requirements 9
  • 10. Extreme programming ๏‚ฒ A popular form of Agile ๏‚ฒ Extreme Programming (XP) takes an โ€˜extremeโ€™ approach to iterative development. ๏‚ง New versions may be built several times per day; ๏‚ง Increments are delivered to customers every 2 weeks; ๏‚ง All tests must be run for every build and the build is only accepted if tests run successfully. ๏‚ฒ Customer involvement means full-time customer engagement with the team. - Specifications through user stories broken into tasks ๏‚ฒ People not process : pair programming, collective ownership and a process that avoids long working hours. ๏‚ฒ Regular system releases. - release set of user stories ๏‚ฒ Maintaining simplicity through constant refactoring of code. 10
  • 11. The extreme programming release cycle 11
  • 12. The Parts and the Whole Controller Inspect Set Target Adapt โ€ข Clean Design & Code & Refactor โ€ข User Stories - Late Elaboration โ€ข Shared Code Ownership โ€ข Test Driven Developmentโ€ฆ.. โ€ข Iteration Plan โ€ข Daily Stand-Up โ€ข Pair Programming โ€ข Customer Reviews & Feedback โ€ข Retrospectives โ€ข AutoTestโ€ฆ.. Sustainable pace Collective Ownership with users Minimal documentation for sprint
  • 13. The Life of an Iteration
  • 14. โ€œTell me how you will measure me and Iโ€™ll tell you how Iโ€™ll behaveโ€ Transparency
  • 16. Examples of task cards for prescribing medication 16
  • 17.
  • 18. Refactoring ๏‚ฒ Programming team look for possible software improvements and make these improvements even where there is no immediate need for them. ๏‚ฒ This improves the understandability of the software and so reduces the need for documentation. ๏‚ฒ Changes are easier to make because the code is well-structured and clear. ๏‚ฒ However, some changes requires architecture refactoring and this is much more expensive. ๏‚ฒ RISK: ๏‚ฒ Changes the user does not test ๏‚ฒ Changes to working software break it 18
  • 19. Examples of refactoring ๏‚ฒ Re-organization of a class hierarchy to remove duplicate code. ๏‚ฒ Tidying up and renaming attributes and methods to make them easier to understand. ๏‚ฒ The replacement of inline code with calls to methods that have been included in a program library. 19
  • 20. Test case description for dose checking 20
  • 21. Test automation ๏‚ฒ Automate tests (junit) ๏‚ฒ Run upon checkin ๏‚ฒ Difficulties: ๏‚ฒ Time constraints ๏‚ฒ Programmer preferences to not test ๏‚ฒ Test coverage 21
  • 22. Pair programming ๏‚ฒ In XP, programmers work in pairs, sitting together to develop code. ๏‚ฒ Common ownership ๏‚ฒ Knowledge spread ๏‚ฒ Informal review ๏‚ฒ Refactoring ๏‚ฒ Similar output to two people coding 22
  • 23. Scrum ๏‚ฒ Project Manager's job: - Deliver needed system on time within budget ๏‚ฒ The Scrum approach - manage the iterations ๏‚ฒ There are three phases in Scrum. ๏‚ง outline planning phase - general picture and architecture ๏‚ง Sprint cycles releasing increments of the system. ๏‚ง The project closure phase - final delivery, documentation and review of lessons learned. 23
  • 25. The Sprint cycle ๏‚ฒ Every 2โ€“4 weeks (a fixed length). ๏‚ฒ 1) Project team with customer: Look at product backlog - select stories to implement ๏‚ฒ 2) implement with all customer communication through scrum master (protecting pgmr at this point) ๏‚ฒ Scrum master has project manager role during sprint ๏‚ฒ Daily 15 min meetings ๏‚ฒStand up often ๏‚ฒTeam presents progress and impediments ๏‚ฒScrum master tasked with removing impediments ๏‚ฒ 3) Review system release with user 25
  • 26. Scrum benefits ๏‚ฒ The product is broken down into a set of manageable and understandable chunks. ๏‚ฒ Unstable requirements do not hold up progress. ๏‚ฒ The whole team have visibility of everything and consequently team communication is improved. ๏‚ฒ Customers see on-time delivery of increments and gain feedback on how the product works. ๏‚ฒ Trust between customers and developers is established and a positive culture is created in which everyone expects the project to succeed. 26
  • 27. Summary ๏‚ฒ Plan Driven (Ex: Waterfall) vs Incremental (Ex: Agile ) ๏‚ฒ Structure and benefits and downfalls ๏‚ฒ XP - an implementation of Agile - Power to the Programmer ๏‚ฒ User story requirements ๏‚ฒ Test driven design with continual retest and integration ๏‚ฒ Pair Programming ๏‚ฒ Refactoring encouraged ๏‚ฒ Scrum - project management of Agile using sprints ๏‚ฒ Iterations of full team contact / Scrum master protection of programmers / full team release review 27