Presented By: Group -B ISAAC S ZACHARIAHHIMANSHU BHANSALI MAHESH KOLARY PRAVEEN SIDOLA
Agenda Terminology Introduction to Agile software development The Agile Manifesto Agile Project Management Agile PM Strategies Traditional vs Agile PM Some Agile Methodologies Summary Post-Agilism References
What Is Agile Agile --readiness for motion, nimbleness, activity, dexterity in motion Agility The ability to both create and respond to change in order to profit in a turbulent business environment Companies need to determine the amount of agility they need to be competitive Chaordic Exhibiting properties of both chaos and order The blend of chaos and order inherent in the external environment and in people themselves, argues against the prevailing wisdom about predictability and planning Things get done because people adapt, not because they slavishly follow processes
Agile Software Development Agile software development is a conceptual framework for software engineering that promotes development iterations throughout the life-cycle of the project. Software developed during one unit of time is referred to as an iteration, which may last from one to four weeks. Agile methods also emphasize working software as the primary measure of progress
Agile Software Development: Intro Characteristics of Agile Software Development -- Light Weighted methodology -- Small to medium sized teams -- vague and/or changing requirements -- vague and/or changing techniques -- Simple design -- Minimal system into production
Agile – “a thought process” Practices- Think small incremental deliverables Get the customer in the game Never have breakage — have continuous QA at every point through assurance process State up front requirements are fluid — build the processes around fluid requirements.
Agile PM Practices Assume Simplicity Embrace Change Enable and Focus on the Next Effort Incrementally Change Maximize Value Manage with a Purpose, Question Actions Project Manager must manage the project and process boundaries Rapid Feedback to All Stakeholders Quality Deliverables Create Documentation Based on Value
Traditional vs AgileTraditional AgileTraditional projects are clearly defined Agile projects discover the completewith well documented and understood project requirements by doing thefeatures, functions, and requirements. project in iterations and therefore reducing and eliminating uncertainty.Lower risk & Lesser flexibility Higher risk & greater flexibilityTraditional project managers manage Agile project manager is focused ontheir projects against the budget, deliverables and business value insteadschedule, and scope. budget and timeline.Easily support distributed work teams Agile project teams require co-locationof specialists because of the well of team members and staff in orderdefined requirements and other to embrace change and rapidly producedocumentation. increments.Commitment level from project Commitment level from projectmembers is lower. members is higher.
Linear strategy Consists of dependent, sequential phases that are executed with no feedback loops The project solution is not released until the final phase Fits Quadrant 1 projects Strengths: 1. Entire project is scheduled, 2. Resource requirements are known, 3. The most skilled resources are not required, 4. Team members can be distributed Weaknesses: 1. Plan and schedule do not accommodate change very well, 2. Costs can be higher, 3. Time to complete can be longer (if there’s some change), 4. Requires detailed plans, 5. Must follow a defined set of processes, 6. Not focused on customer value as much as delivering against the plan
Incremental strategy Identical to linear strategy except that each phase releases a partial solution Suits Quadrant 1 very well Strengths: 1. Value is produced earlier in the product life cycle, 2. Accommodates change requests, 3. Stronger focus on customer value Weaknesses: 1. Heavy documentation, 2. Difficulty defining function/feature dependencies, 3. More customer involvement required
Iterative strategy Consists of a number of repeated phases that include a feedback loop after a group of phases is completed Suits Quadrant 4 very well Strengths: 1. Customer can review current solution for suggestive improvements, 2. Changes can be accommodated Weaknesses: 1. More active customers required, 2. Final solution cannot be specified to the customer at the outset of the project
Adaptive strategy Similar to Iterative strategy except that each iteration’s feedback adjusts the next iteration so that a solution will be converged upon Suits Quadrant 2 and 3 very well Strengths: 1. Does not waste time on non-value added work, 2. Provides maximum value Weaknesses: 1. Needs customer involvement throughout the project, 2. Cannot identify exactly what will be delivered at the end of the project
Extreme strategy Similar to adaptive strategy except that instead of adjusting with each iteration to converge upon a solution, the goal of the project must also be discovered and converged upon Suits Quadrant 3 very well Strength: 1. Keeps options open as late as possible, 2. Offers an early look at the number of possible solutions Weaknesses: 1. May look for solutions in all the wrong places, 2. No guarantee for value generation
Extreme Programming Most prominent Agile Software development method Prescribes a set of daily stakeholder practices “Extreme” levels of practicing leads to more responsive software. Changes are more realistic, natural, inescapable.
Agile Unified Process AUP is a simplified version of RUP Phases of AUP Inception Elaboration Construction Transition
Scrum It is an Agile S/w development method for project managementCharacteristics: Prioritized work is done. Completion of backlog items Progress is explained Agile Software Development
Summary Synthesizes the existing literature. Each method is described in terms of process, roles, responsibilities, practices, adoption and experiences. Enables a selection criteria for comparing methods and pointing out their differences.
References DANIEL J. FERNANDEZ & JOHN D. FERNANDEZ AGILE PROJECT MANAGEMENT- AGILISM VERSUS TRADITIONAL APPROACHES Abrahamsson P, Salo O and Ronkainen J. Agile software development methods (Review and analysis). Scott W Ambler. Agile model driven development. Cohen D, Lindvall M, Costa P. Agile software development. http://en.wikipedia.org/wiki/Agile_Modeling. http://en.wikipedia.org/wiki/Extreme_Programming.