extreme programming - a quick and agile overview !
TRANSCRIPT
![Page 1: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/1.jpg)
Extreme Programming (XP)A quick & agile overview :-)@ vinitkumar
![Page 2: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/2.jpg)
Cartoon of the day
Typical problem in a Waterfall Software Development Methodology
![Page 3: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/3.jpg)
whoami ~ 9+ years as a .net developer/Architect ~ 4+ years as Digital developer/Architect (CQ/AEM/SDL) Programming, reading, blogging, speaking, architecting www.wcmexperts.com, www.codingasp.net,
imvinit.wordpress.com Widely travelled for various projects across US, Europe and Asia. in.linkedin.com/in/vinitsingh, @vinitkumar
![Page 4: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/4.jpg)
Agenda1. Objectives of this session2. Once upon a time3. Waterfall to XP evolution4. Agile methodology5. Extreme Programming6. Full stack developer
![Page 5: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/5.jpg)
Objectives1. To touch upon the terminologies that I learnt in XP
Conference
2. Understand how Agile is different than Waterfall model
3. Understand what is XP
4. Understand what is FSD
5. Light moments with Dilbert
![Page 6: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/6.jpg)
Once upon a time…
Classic Waterfall Software Development Methodology
![Page 7: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/7.jpg)
Waterfall to XP evolution
Source: "Embracing change with extreme programming" by Kent Beck,IEEE Computer, October 1999.
![Page 8: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/8.jpg)
What is XP??
![Page 9: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/9.jpg)
Before we learn XP or unlearn Waterfall…
![Page 10: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/10.jpg)
Agile Philosophy: Agile Manifesto• We are uncovering better ways of developing software by doing it and
helping others do it. Through this work we have come to value:
– 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.
![Page 11: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/11.jpg)
Agile Methodology Definition of Agile:
Characterized by quickness, lightness, and ease of movement; nimble.
Mentally quick or alert: an agile mind.
Agile Methodology promotes: Project management process that encourages frequent inspection and
adaptation; Leadership philosophy that encourages team work, self-organization and
accountability; Set of engineering best practices that allow for rapid delivery of high-
quality software; Business approach that aligns development with customer needs and
company goals.
![Page 12: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/12.jpg)
Examples of Agile Methods
![Page 13: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/13.jpg)
Different Agile Methods Extreme Programming / XP (Kent Beck, Ward Cunningham,
Martin Fowler, Ron Jeffries) Scrum (Ken Schwaber, Jeff Sutherland) Kanban Lean Software Development Crystal (Alistair Cockburn) Dynamic systems development method (DSDM) Feature Driven Development / FDD (Peter Coad) XBreed Adaptive Software Development / ASD (Jim Highsmith)
![Page 14: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/14.jpg)
So, now again what is XP??
![Page 15: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/15.jpg)
Another Dilbert's cartoon ?
![Page 16: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/16.jpg)
Here is the Definition of XP Extreme Programming (XP) is a software
development methodology which is intended to improve software quality and responsiveness to changing customer requirements.
Empowers developers to confidently respond to changing customer requirements, even late in life cycle.
Proven at companies like First Union National Bank, Ford Motor Company, UBS, Bayerische Landesbank, Credit Swiss Life, DaimlerChrysler etc.
![Page 17: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/17.jpg)
XP Values, Principles & Practices
Values PracticesPrinciples
CommunicationSimplicityFeedback…
Humanity ImprovementQualityAccepted Responsibility…
Planning GameShort ReleaseContinuous IntegrationSimple DesignPair Programming…
Principles are bridge between Values, which is synthetic and abstract, and Practices, which tell how to actually develop software.
![Page 18: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/18.jpg)
XP - Core Values
![Page 19: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/19.jpg)
XP - Basic Fundamental Principles
![Page 20: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/20.jpg)
XP - Practices
Testing related practices - Automated Unit
testing for every code
General/Human practices - Sit together,
energized work, PP
Planning related practices - User stories, short releases, daily stand up
Design related practices – KISS, Simple design (avoid YAGNI), refactoring
Coding/Programming/Release related practices - TDD, Pair programming, CI, Coding
standards, 40 hour week
![Page 21: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/21.jpg)
Full stack developer – the packaged Geek
![Page 22: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/22.jpg)
Full stack developer – the packaged Geek
![Page 23: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/23.jpg)
Full stack developer – the packaged GeekDefinition - “... a Full Stack Developer (FSD) is someone with familiarity in
each layer, if not mastery in many and a genuine interest in all software
technology … ”
Another way to look at it - “…. when people are asking for a full-stack
programmer they're looking for the all-singing, all dancing technical wizard. Or
at least someone who won't complain too much when asked to do some work
outside their normal comfort zone…”
![Page 24: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/24.jpg)
To end this, another Dilbert's cartoon ?
![Page 25: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/25.jpg)
References used• @xpconf I attended
• http://xpconference.in/
• http://www.slideshare.net/XPConference
• Google images and Slideshare decks
![Page 26: Extreme programming - a quick and agile overview !](https://reader031.vdocuments.mx/reader031/viewer/2022021814/58e60a6b1a28ab44778b537b/html5/thumbnails/26.jpg)
Thank You!