The document discusses various agile development methodologies. It defines agile development as delegating tasks, acknowledging change, and promoting feedback. Several specific agile methodologies are described, including extreme programming, Scrum, lean software development, feature driven development, agile unified process, Crystal, dynamic systems development method, and cowboy coding. The document provides information on principles, practices, and comparisons of these different agile methodologies.
3. What is Agile Development?
http://www.nainil.com/research 3
4. Agile development is a method of constructing software by:
– delegating and trusting people,
– acknowledging change as a standard, and
– promoting constant feedback
http://www.nainil.com/research 4
5. Agile Team follows practices
that keep it focused on
customer needs
http://www.nainil.com/research 5
6. What are the Principles
Behind Agile Development?
http://www.nainil.com/research 6
19. Extreme Programming (XP)
• Values • Incremental
– Communication • Small Releases
– Simplicity • Simple Design
– Feedback • Automated Testing of
– Courage Everything
• Programmer-centric • Collective Code Ownership
• Customer prioritizes the project • Team: Functions as a Whole
• Perform all • Not Deadline Centric
techniques/practices to the
• Pair Programming
extreme
• Standardized Coding
• Requirements Management
• Onsite Customer
– Short User Story
• Summary: Simplicity
– Note Cards
http://www.nainil.com/research 19
20. Scrum
• Reference: Scrum in Rugby (Restart the game after an accident)
• Project Management Framework
• Delivery of Software Iteration Provide Highest Business Value
• 30-day iteration called Sprint
• Members organize themselves
• Team Size: 4-9
• Meeting Length: 10-15 minutes
• Backlog
– Product
– Sprint
– Release
• Summary: Prioritized Business Value
http://www.nainil.com/research 20
21. Lean Software Development
• Reference: Toyota • Based on TQM
Manufacturing – Process is Important
• Loose Unwanted Pounds – People build and improve the
processes
• Project Management
• Principles
Framework
– Eliminate Waste
• Focuses on Gathering the
quot;Rightquot; requirements – Build Quality
– Constant Feedback
• Requirements are measured
on their impact to the Business – Defer Delivery until complete
– Deliver Fast
• Customer plays an important
role by giving constant – Team Empowerment
Feedback – Keep focused by interacting
with other teams
• Summary: Return on
Investment
http://www.nainil.com/research 21
22. Feature Driven Development
(FDD)
• Gather Domain Knowledge
• Develop an Overall Model
• Build a List of Features
• Plan by Feature
• Design by Feature
• Build by Feature
• Multiple Teams work parallel
• Features can be combined into Feature Sets
• Summary: Business Model
http://www.nainil.com/research 22
23. Agile Unified Process (AUP)
• Iterative & Incremental Framework
• Risk Management
• Testing for Quality Assurance
• Assign Tasks
• Version Control and Planning
• Documentation is minimal and simple
• Tools to accomplish the work are not defined
• Process is Tailored to meet the requirements
• Summary: Manage Risk
http://www.nainil.com/research 23
24. Crystal
• Lightweight • Communication: Constant
• Color coded to signify the size • Focus: Priorities based
& criticality of the methodology • Automated Testing &
needed Integration
• Projects • Crystal Clear
– Small: Use Crystal Clear, – All members working in same
Yellow, Orange room
– Big: Use Sapphire, Diamond – Minimal Documentation
(involves Human Risk)
– Easy Accessibility
• If a Project Color changes, – Project Safety by efficiency
characteristics of the new – Not life-critical
Color should be adopted
– Team: 6-8 members
• Deliverables: Couple of – Team defines own standards
Months and guidelines
• Feedback: Continual • Summary: Size & Criticality
http://www.nainil.com/research 24
25. Dynamic Systems Development
Method (DSDM)
• Most popular methodology in UK • Principles
– Active User Involvement
• Approach for Current Business
Value – Team has control
– Frequent Delivery
• Phases
– Iterative & Incremental
– Pre-Project
– All changes are reversible
– Lifecycle
– Requirements are based on high
• Feasibility
level info
• Business
– Colloboration & Cooperation
• Functional Model
• Design & Build • Mandate Testing throughout
• Implementation Lifecycle
– Post-Project
• Team: 6 teams of 6 people each
• Rules for Requirements • Not recommended for Safety
(MoSCoW) Critical Systems (Nuclear
– MUST Reactors, Life Support etc.)
– SHOULD
• Summary: Current Business
– COULD Value
– WOULD
http://www.nainil.com/research 25
26. Cowboy Coding
• “Cowboy Coding” is often used as a
pejorative (down grading) term by
supporters of software development
methodologies, such as Agile
• Method: Not Defined (Self Governed)
• Updates: Frequent Re-evaluation
• Communication: Face-to-face
• Documentation: Sparse
http://www.nainil.com/research 26
29. Nainil Chheda (About)
• Nainil Chheda, (http://www.nainil.com) MS (MIS) is a Knowledge Research Specialist at
eClinicalWorks LLC MA (USA), providing technical coordination services in a web application
development environment. In addition, he is responsible for ensuring the overall development of
the product in compliance with the various healthcare standards (CCR, CDA) and certifications
(CCHIT).
• He specializes in Section 508 Compliance for website usability and design. In addition he
specializes in change management, task co-ordination, process improvement and identifying and
addressing organizational concerns. He also consults to firms in the healthcare industry, as well
as the web hosting industry.
• He is a frequent attendant at the nationwide healthcare conferences and various standards and
interoperability committee meetings. His most recent research concentrates on the aspects of the
game theory in application towards finding equilibrium in the healthcare industry. His research
concerns reaction from electronic health record (EHR) vendors, healthcare providers, end-user
issues in medical informatics.
• Nainil has written a variety of healthcare and information system research papers and
presentations.
• He holds a Masters (in MIS) from the Temple University (PA, USA) and a B.Com from Mumbai
University (Maharashtra, INDIA). He has research interest in the Game Theory and the Governing
Dynamics of the Internet.
http://www.nainil.com/research 29
31. Copyright Information
• No part of this publication may be reproduced or transmitted in any
form or for any purpose without the express permission of Nainil
Chheda (nainil@eliteral.com). The information contained herein may
be changed without prior notice.
• Data contained in this document serves informational purposes only.
• The information in this document is proprietary to Nainil Chheda.
This document is a preliminary version and not subject to other
agreement with Nainil Chheda. Nainil assumes no responsibility for
errors or omissions in this document. Nainil does not warrant the
accuracy or completeness of the information, text, graphics, links, or
other items contained within this material. Nainil shall have no
liability for damages of any kind including without limitation direct,
special, indirect, or consequential damages that may result from the
use of these materials.
http://www.nainil.com/research 31