Presentation is loading. Please wait.

Presentation is loading. Please wait.

Phlip Pretorius 10-March-2014

Similar presentations


Presentation on theme: "Phlip Pretorius 10-March-2014"— Presentation transcript:

1 Phlip Pretorius 10-March-2014
Agile Development Implementation in Adapt It Pretoria Research and Development Team Phlip Pretorius 10-March-2014

2 Content Agile Model of development What is it?
Why did we decide to change methodology? How did Agile came into being? What is Scrum (and how it is implemented at Adapt IT Pretoria)? Benefits of the Agile Approach Invitation to clients to participate

3 What is it? Agile is a mind set
a powerful tool for fostering teamwork and mutual support a lightweight software development method that aims to be more efficient than traditional, plan-driven development models Agile seeks to do more with less fewer features in the end product that either don't work or are never used more team-level decision making faster development time faster response to shifting customer demands faster problem solving more customer satisfaction smaller teams less expense less wasted effort fewer features in the end product that either don't work or are never used Mathis, Bryan ( ). Agile Project Management for Beginners: Mastering the Basics with Scrum (Kindle Location 23). . Kindle Edition.

4 What is it? Types of Agile
Scrum Kanban Extreme Programming (XP) and others At Adapt IT we decided to implement the Scrum Framework Scrum is a set of practical guidelines to implement Agile

5 Why did we decide to change methodology?
In general, the Agile methodology was designed in reaction to "bloatware.“ Programs often took long time to develop Customer satisfaction levels are poor Feature set per contract but not used by end users Proliferation of bloatware because of mistaken assumptions Full-Featured Is Always Best Belief in Static Customer Expectations Long Product Development Cycles Mathis, Bryan ( ). Agile Project Management for Beginners: Mastering the Basics with Scrum (Kindle Location 37). . Kindle Edition. Full-Featured Is Always Best vs. adding features over time.

6 Why did we decide to change methodology?
At Adapt IT we realised that: There is sometimes a lengthy cycle from concept to final product Client involvement: Low levels of end user involvement, potential for misalignment & not living up to their expectations Development isolated from client environment

7 How did Agile came into being?
Workshop to identify common things among the various light methodologies. Snowbird, Utah in February 2001. The 17 people at the workshop were Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Stephen J. Mellor, Ken Schwaber, Jeff Sutherland, and Dave “Pragmatic” Thomas. (If Dave A. Thomas from Object Technology International had been able to make it that week, there might have been two Dave Thomases as signatories!) Cockburn, Alistair ( ). Agile Software Development: The Cooperative Game (2nd Edition) (Agile Software Development Series) (Kindle Locations ). Pearson Education. Kindle Edition.

8 How did Agile came into being?
Outcomes Manifesto Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan < < Individuals and interactions over processes and tools Recognizing that software is made by people, not processes or tools, agile places a higher premium on people working together effectively. Processes and tools can aid in that but can’t replace it. Working software over comprehensive documentation Valuing working software over comprehensive documentation stands in stark opposition to the Waterfall model. A highly detailed, accurate, and comprehensive specification document is of no value if it doesn’t result in working software that meets users’ needs. Working software may involve documentation, but agile only uses it in service to creating working software, not as an end (almost) unto itself. Customer collaboration over contract negotiation While agile isn’t ignoring the reality of contracts, it values active collaboration throughout the software development process as a better way to deliver value instead of a carefully worded contract. A contract is no proxy for actual communication when you’re doing something as challenging as creating software. Responding to change over following a plan Except for the most incredibly simple systems, it’s massively difficult to think of every feature, every piece of data, and every possible use case for software. That means, in a collaborative process with the customer, a lot is discovered during the process of developing software. Also, the world changes pretty fast: Business needs and priorities can shift in the months or even years it can take for a large system to be fully built. Agile values the ability to change in response to new discoveries and needs over sticking to a plan created before everything was known. Mathis, Bryan ( ). Agile Project Management for Beginners: Mastering the Basics with Scrum (Kindle Locations 88-91). . Kindle Edition.

9 How did Agile came into being?
Outcomes (continued) 12 Principles 12 Principles identified E.g. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. <

10 What is Scrum? A Framework Lightweight Simple to understand
Extremely difficult to master Based on the concept of the Scrum that often takes place in the sport of Rugby. ALL team members work together Towards one goal Winning the ball Johnson, Hillary Louise; Sims, Chris ( ). Scrum: a Breathtakingly Brief and Agile Introduction (pp. 7-8). Dymaxicon. Kindle Edition. The Scrum Field Guide: Practical Advice for Your First Year (Agile Software Development Series) Mitch Lacey

11 What is Scrum? Team Roles Product Owner Team member in Scrum Teams
Scrum Master Product owner: Holds vision for product Represents Interest of Customer Business Communication Conflict Responsible for maximizing the return the business gets on this investment Controls the order (priority) of items in the team’s backlog. No-one but the product owner is authorized to ask the team to do work or to change the order of backlog items. The product owner is responsible for recording the requirements, often in the form of user stories The product owner is the main mac that decides what must be done but… The Product Owner does not decide how the work will be done. That decision is relegated to the … Team member: Scrum Teams Highly collaborative Self Organizing Members total authority over how the work gets done which tools and techniques which team members will work on which tasks team’s deliverable is the product contributing work in their area of specialty work outside their area of specialty in order to best move backlog items (aka user stories) from “in progress” to “done.” team must possess all of the skills required to create a potentially shippable product a mind set change from “doing my job” to “doing the job.” And then you have a special guy… The Scrum Master: master’s deliverable is a high-performing, self-organizing team helps the team learn and apply scrum and related agile practices To the team's best advantage Protect the team

12 What is Scrum? How does it work? The Sprint Cycle The Sprint Cycle:
a fixed period of time within which the team bite off small bits of the project and finish them before returning to bite off a few more. Working increment of the software. Not necessarily the full feature set. In the next Sprint cycle more features are added Might be the User Interface without business logic In the next sprint the underlying business logic is added.

13 What is Scrum? How does it work? Artefacts Product Backlog

14 What is Scrum? How does it work? Artefacts Release Backlog

15 What is Scrum? How does it work? Artefacts Sprint Backlog

16 What is Scrum? Artefacts (continued) Burn down Charts Task Board
Information radiator Backlog To Do Doing Done

17 What is Scrum? Artefacts (continued) Task Board

18 What is Scrum? Events Sprint planning meeting Start of Sprint
Part One: What will we do – responsibility of the product owner Part Two: How will we do it? The responsibility of the Team What will we do Product Owner presents 2. TEAM commit to a set of deliverables for the sprint 3. whole team believes they can deliver User Stories Acceptance Criteria 4. separation in authority: product owner decides which stories will be considered the team members doing the actual work are the ones who decide how much work they can take on Part Two: How will we do it? 1. the TEAM identifies the tasks that must be completed in order to deliver the agreed upon user stories 2. the team begins to decompose the selected stories into tasks get additional input from users design a new screen add new columns to the database do black-box testing of the new feature write help text Output = Sprint Backlog list of all the committed stories with associated tasks

19 What is Scrum? Events (continued) Daily Scrum Meeting
3 Questions reported by each member: 1. What I did yesterday? 2. What will I be doing today? 3. Obstacles impeding my progress. Goal 1. Inspect In meeting 2. Adapt After meeting Daily Scrum: 15-20 minutes Daily Brief Pointed What I've done since our last daily scrum What I'll do before our next daily scrum Obstacles I'm encountering Goal 1. Inspect In meeting 2. Adapt After meeting No problem solving in meeting Mention issue and decide who will resolve

20 What is Scrum? Events (continued) Sprint review Retrospective
The Public end of the Sprint Currently we invite the rest of the company to act as “the public” Retrospective The internal team self evaluation Sprint Review: After each Sprint public end of the sprint Invite others TEAM show off accomplishments Stories that met def of DONE. Stories committed and not complete Demonstrate stories that is completed Stakeholder feedback Not decision making If story is done Next commitments Retrospective 1-2 hours per week of dev very end of each and every sprint Focus on What was learned during Sprint How new knowledge can be applied to improve No Dirty Laundry ID one or two Strategic changes for next Sprint

21 What is Scrum? Two decisions Abnormal Sprint Termination --> Spike
Is the product potentially shippable? Does it make business sense to ship what we have at this time? Abnormal Sprint Termination --> Spike Iterative Scrum Cycle

22 What is Scrum? I have included this slide to emphasize the importance of the cyclical nature of the Scrum Sprint Cycles. This is how end user can become part of the development. It is when and how we as developers get quick feedback on what we are doing This is the mechanics by which we can quickly adapt if we are not on the right track. Agile Project Management For Dummies By Mark C. Layton

23 Benefits of the Agile Approach
Better product: the iterative approach incorporating user feedback into the project means higher customer satisfaction (and ownership) better return on investment Mathis, Bryan ( ). Agile Project Management for Beginners: Mastering the Basics with Scrum (Kindle Locations ). . Kindle Edition.

24 Benefits of the Agile Approach
Fewer failed projects: incremental releases keep projects on track help developers recognize failures before they start Mathis, Bryan ( ). Agile Project Management for Beginners: Mastering the Basics with Scrum (Kindle Locations ). . Kindle Edition.

25 Benefits of the Agile Approach
Better control of project scope: new features are only added in response to user input resulting in less product bloat and fewer features that are never used Have a look at Mathis, Bryan ( ). Agile Project Management for Beginners: Mastering the Basics with Scrum (Kindle Locations ). . Kindle Edition.

26 Invitation to participate
This is an official invitation to our client base to take part in our Agile development process: We want to encourage higher user participation during development Need to show development in "Review" fashion as described in the Scrum process. Implication: This means that there must be high availability of users

27 Invitation to participate
How do we plan to do this? on the INT4 roadmap (that will be discussed in later sessions) This roadmap has been based on Adapt IT strategic technology direction UG Proposals Strategic meetings with high level client management representatives. Using a platform such as Webex to communicate and show Initial client involvement: once a month Need more frequent feedback and that can be done at bi-weekly review meetings Adapt IT strategic technology direction: According to ORACLE’s strategy, Forms Designer is being phased out Because of our investment in Oracle know-how we decided to go the ADF route UG Proposals: Fin - Ability to recreate a bank reconciliation Stud – Separate system cycle to calculate full period marks Pers - Strategic meetings: High demand for workflow.

28 Invitation to participate
Want the Agile methodology extended to the rest of the company. To reap the benefits have to change business model for Custom and Large Joined development Current model = Plan and Contract Driven What to deliver When to deliver Cost of the contract Need a new Business Model = Time and Materials (T&M) An arrangement under which a contractor is paid on the basis of: (1) Price of direct labour, at specified hourly rates, (2) Actual cost of materials and equipment usage Once the business objectives and feature list are well defined, the project may be billed using milestone billing Because of time and material billing we will accurately track and manage time, expenses incurred and material used. ) actual cost of direct labour, usually at specified hourly rates, An actual amount paid or incurred, as opposed to estimated cost or standard cost. In contracting, actual costs amount includes direct labour, direct material, and other direct charges. Read more:

29 Invitation to participate
To reap the benefits have to change business model for Custom and Large Joined development Suggestion from Adapt IT Define Business Objectives Determine a list of feature set(s) that will allow the client to achieve business objectives Adapt IT and the client together determine the hours that the client is prepared to commit to. Start development in Scrum Sprints The goal of each sprint is communicated After review, clients test and confirm the sprint goal achieved Client billed for sprint delivery (billing milestones may include several sprints) Because of incremental addition of features, client will have working software. If the pre-determined hours are reached and not all features added, negotiate new development hours If all features has been developed and there are still hours left, new features can be included. This must be negotiated with Adapt IT. Actual cost of direct labour, usually at specified hourly rates, An actual amount paid or incurred, as opposed to estimated cost or standard cost. In contracting, actual costs amount includes direct labour, direct material, and other direct charges. Read more:

30 References Kent Beck and Ward Cunningham worked through the late 1980s on what became called Extreme Programming (XP) in the late 1990s. Jim Highsmith studied the language and business use of complex adaptive systems in the mid-1990s and wrote about the application of that language to software development in his Adaptive Software Development. Ken Schwaber and Jeff Sutherland were constructing the Scrum method of development at about the same time, and many project leaders made similar attempts to describe similar ideas through the same years. Cockburn, Alistair ( ). Agile Software Development: The Cooperative Game (2nd Edition) (Agile Software Development Series) (Kindle Locations ). Pearson Education. Kindle Edition.

31 Disclaimer The information, comments and material presented in this presentation are provided for information purposes only.  The presentation is not addressing all possible technical or business aspects and does not claim to be complete or exhaustive.   Adapt IT reserves the right to change its business or product development plans as circumstances dictate. This document may not be reproduced or distributed without the written permission of Adapt IT (Pty) Ltd.

32 The Agile Approach Questions?


Download ppt "Phlip Pretorius 10-March-2014"

Similar presentations


Ads by Google