Presentation is loading. Please wait.

Presentation is loading. Please wait.

Agile Development Implementation Considerations. Agile software development is a methodology based on iterative and incremental development, where requirements.

Similar presentations


Presentation on theme: "Agile Development Implementation Considerations. Agile software development is a methodology based on iterative and incremental development, where requirements."— Presentation transcript:

1 Agile Development Implementation Considerations

2 Agile software development is a methodology based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. What is Agile Development? Agile is cutting down the big picture into digestible design, coding and testing puzzle pieces so that they fit together when the time is right. Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan** Agile’s Focus Agile’s conventional definition Our pragmatic definition ** Source: http://agilemanifesto.org/http://agilemanifesto.org/

3 How is Agile Different?  Structured / Predictable  Linear  Extensive Pre-Planning Traditional (Waterfall)  Adaptable  Iterative / Cyclical  Planning “Just in Time” Agile Stories Iteration 1 Stories Iteration 2 Stories Iteration 3 Business Request Release Candidate Requirements Design Code Test Release Progress measured in terms of deliverables, artifacts, documentation, and specifications Progress measured by working software

4 How Are Other Companies Using Agile? Agile Today Agile is now a mainstream, mature and proven set of development methods. (Gartner) Forrester Research surveyed nearly 1,300 IT professionals and found that 35 percent of respondents stated that Agile most closely reflects their development process. It’s not really new (origins in early 90’s) and it’s not really everywhere. (Gartner estimates it accounts for less than 15% of software developed by application development firms) Agile has many devoted fans who feel that it’s an all or nothing proposition. Research, anecdotal evidence and common sense suggests that Agile adoption actually is not static and that most projects are best served by being “Agile-like”. Agile In the Real World… International leader in Institutional Financial Services using Agile to support multiple work streams and develop next generation of data management and systems to meet reporting requirements Leading Vision Benefits Provider utilizing Scrum to deliver new and improved member management and benefits systems to a growing client base World-wide leader in surgical care software development is leveraging Agile to speed delivery of products and ensure that requirements are met on projects where there is little margin of error The Future of Agile? Some Agile adoption forecasts are as high as 80%. Regardless of estimates, Agile is here to stay and the future is a continued adoption of Agile methodology and best practice techniques to provide working solutions and software for their clients and customers, in less time and for lower cost.

5 How Do We Decide if Agile is Right for Us? Project results taking too long to obtainResults delivered over short iterations with frequent results. (In weeks rather than months) Change (scope/cost/schedule) is cumbersomeFeedback may occur daily, discussed and approved immediately Stakeholders unhappyKey stakeholder participation required in daily discussions Large number of defectsDefects resolved quickly, products updated and deliverables released with tested functionality for each iteration Inadequate communication and too many chefsTeam sizes are small, with key stakeholder and lead developer comprising core team, facilitating communication and decision making Resources (development, testing, QA, etc.) dependent on others before they can move forward, waterfall can be rigid All team members and decision makers are involved on a regular basis Testing changes are costlySince changes are noted, approved, tested, & implemented during each iteration, change costs are minimized Workloads inconsistent, comes in waves rather than steady amount Resources are more leveled, engaged, and familiar with the product early in the process Current state challenge Opportunity

6 For Agile Development Projects to be successful, organizations need to be able to answer the difficult questions… Key Considerations/Risks Who What How Who are my sponsors and stakeholders? Who will be the active participants (in the daily scrum calls, weekly demo/walkthrough, etc.) - Do they have capacity to participate? Note this is a heavy load (can be 50%+) – team needs senior developers and analysts. Who is responsible for completing required deliverables (documentation, development, testing, validating, etc.)? – most experienced personnel enable fastest progress. What changes will my software development life cycle compliance (review/audit team) have? What organizational changes need to be implemented? What am I asking the technology professionals to deliver versus my operations professionals? What are the cultural roadblocks I might encounter? How will we track changes through the sprints? ($, time, scope) How will we ensure my people are ready to accept the process changes? How will I know the project is on-track or in need of my help? How do I evaluate the success of an Agile project? How do I ensure collaboration & communication remain high?

7 Identifying and mitigating risk across People, Process and Technology Ensuring the organization understands the fundamentals of Agile and has the mechanisms in place to enable the success of an Agile project Managing critical touch points across the organization Addressing critical questions that impact project success at all levels Leveraging years of practical project experience to provide value across the project lifecycle The SEI Approach to Agile Manage the fundamentals of project execution while strictly enforcing the fundamentals of Agile Development Lead and assist in defining major Agile project decisions (such as iteration length, definition of work unit, definition of done) for the project and ensuring that the decisions are adhered to throughout the life of the project Collaborate with the organization to achieve acceptance and understanding of the Agile process throughout their organization Serve in key leadership positions Communicate at all levels of the organization, from senior executives to junior team members Utilize analysis skills required to seek out and document functional need, with the rigor required to create and manage the project backlog Provide technical leadership skills required to lead and execute Agile project fundamentals, along with taking into consideration project scaling and continuous integration Incorporate the acumen and knowledge required to bridge the gap between business and IT roles and responsibilities SEI provides a holistic approach to Agile initiatives by: To achieve Agile adoption, SEI delivers with these attributes:


Download ppt "Agile Development Implementation Considerations. Agile software development is a methodology based on iterative and incremental development, where requirements."

Similar presentations


Ads by Google