Working Agile In Software Development

2y ago
37 Views
2 Downloads
1.30 MB
23 Pages
Last View : Today
Last Download : 2m ago
Upload by : Ronnie Bonney
Transcription

Working Agile in SoftwareDevelopmentMonica PetricaNovember-2017Copyright 2014, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

AgendaProject Management – general conceptsWaterfall vs Agile – when to use each, advantages, disadvantagesWhat is Agile – generalitiesScrum – definitions and conceptsAgile at work – tasks breakdownCoding agile in Distributed Teams – team work in a global organizationAgile issues / pitfalls – agile is not perfect, what we can do about that?Agile and Continuous DeliveryCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Project Management?. What’s that?.planning, organizing, securing, motivating and controlling the resources to successfully complete theprojectWhy we do this: The better Project Management the bigger chances for project to succeedIt’s about predicting!Define success!Over budget, on time, reduced scope?Usual Phases:Concept requirements gathering design development testing shipping maintenanceTriple constraint: scope, time, resourcesCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Types of PM (life cycles)Predictive / nceSingle deliveryManage costIterativeDynamicRepeat untilcorrectSingle deliveryCorrectness ofsolutionIncrementalDynamicPerformedonce perincrementFrequent small SpeeddeliveriesAgileDynamicRepeat untilcorrectFrequent small Customerdeliveriesvalue throughdeliveriesCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Waterfall vs AgileWaterfallAgileSequential stepsIterations of waterfall steps requires one step to be fully no need to fully define everythingcompleted before starting thefrom the beginningnext stepSpec/req (100% done), budget,resources preprod schedule hire team build alpha(tests) beta (more testers) shipPartial req dev test and start fromthe beginning!All tests are done in the end(rework now?.)Tests are done in iterationsNo interaction with end usersUsers have the opportunity to see if theproduct is in line with their req and canprovide feedbackSpend the same amount ontime on all features (less ormore important)Spend more time on features peoplewant (and less on less importantfeatures)See everything in the endSee completed pieces on the wayCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Waterfall vs Agile (cont.)What would you choose? .Waterfall when: Clear, known, unchangeable requirements Technology is understood Have required expertiseAgile when: Developing software products! Ambiguous, changeable requirements Rapid deployment – time to market Flexibility in budget and timeframe But In Agile you don’t write code faster – instead you write the code in the right directionAgile is good but not perfect adapt the recipe / adjust the processAgile assumes resources are interchangeable hm not really! Are skills interchangeable?.Communication challenges: people from different disciplines communicate differently (diff terminology)mixture of bothCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Agile worldAgile manifestoIndividuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a planThat is, while there is value in the items on the right,we value the items on the left more.Multiple flavours of Agile – most popular is ScrumCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

From Waterfall to AgileOrganizational culture: people and processes resultsCulture change is the primary barrier to further Agile adoption at companiesWhy is hard to change the culture:- it is the accumulation of years of interactions and experiencesFirst step: shift in culturePeople:Why would team memberswant to embrace Agile?Team membersManagersSelf-Organizing Teams – select theirown tasksContinuous improvementFrequent deliveryRemoving us vs them (dev vs testing,teams vs PO)Physical workspaceQuestions not solutionsClearing roadblocksThey should focus on technologyarchitecture and true employeedevelopmentTrust the teamStaff the team for successCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Get organized in Scrumemphasizes the importance of organizing a project intospecific durationsSprint: iteration of couple of weeks: 1 to 4 weeks development sprints (designing, coding, testing, etc.) hardening sprints (shape down, stabilize code, no newfeatures)Scrum players Product Owner – product vision, prioritize features Scrum Master: facilitator, mediator, run calls, team coach, keeper of the documents, keepcommunication fluid; vision holder Team member: make things happen! share information and stay informed rolesAs a team: find a problem?. Adapt the process!Scrum board physical board (cards) or Software tools (Jira)Copyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Requirements in ScrumUser story: smallest unit of work delivering value to customer; small enough that it can be designed,coded, and tested within the sprint or iteration.As a customer, I want to be able to create an account so that I can see the purchases I made in the last year to helpme budget for next year.Stories split in implementation items – tasks (and subtasks)Epic: a large body of work that cannot fit into an iteration – multiple storiesFeature: multiple epicsRelease: feature packAcceptance criteria: tests that the product owner will use to grade the successful development of theuser story.Definition of Done: feature completion; common understanding of various stakeholdersCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Requirements in Scrum (cont.)Example:Feature: Interface for creating and maintaining service requests (incidents) Epic: Create an incident Story: as a customer I want to submit an incident so that it will be resolved by a support agent Story: as a customer I want to be able to add an attachment to an incident so that support agenthave enough information Epic: Update an incident Epic: integrate knowledge management with incidentsCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Grooming and PlanningProduct backlog: Feature list for the whole project; the highest-priority stories reside at the top of thebacklog and are in the lowest level of detail.- Prioritization based on value (business value ROI) – from customer prospective- Prioritization and estimation often take place in a session called product backlog grooming – clarifyand improve users stories, break down requirements, add acceptance criteriaSprint backlog: List of stories planned in a certain sprintEstimation- LOE, T-shirt sizing- Ideal time- story points – Fibonacci sequenceHow teams estimate - Planning Poker, etc.Velocity: the amount of work that the team can usually deliver within the time frame of a sprint and canbe used as a predictor for future iterationsCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Meetings in AgileMeetings - time boxed; fixed time interval, agenda, involved participantsSprint planning team goal: what are deliverables . 1-2h Add stories from product backlog in sprint backlog, break the features in tasks, add estimatesDaily scrums / standups 10-15 min – just updates from team members, do not solve problems in this meetingSprint Review demo deliverables Is this what we want? adjust product backlogRetrospective improve things for the team and about team review the process things to do differently – short listCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Tracking and ReportingBurn charts- Burn-up: measure overallprogress- Burn down charts These are the daily statuschecks for the team relative to where theyexpected to be at a particular point in time.Team can see immediately if something wrongCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Agile at work: Tasks breakdownCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Agile at work: Scrum BoardCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Coding Agile in Distributed TeamsWhy: large project, budget constraints, etc.Biggest challenge: communication and coordinationDistributed team vs dispersed team- Within the same company or between different companiesCommunication between customers and developers is as important—and as challenging—as it is among developers.Differences: cultural, linguistic, physical distanceCentrally Coordinated or Globally IntegratedTeam(s): stay focused on the SAME goalreal challenge is not the organization of the work but the integration of the distributeddevelopment effort into one working systemCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Coding Agile in Distributed TeamsApproaches – Divide project team in- a “waterfall” model: analysts, programmers, testers etc.- architectural layers of the software: backend, UI, etc.- Feature teams“Trust is developed incrementally, broken precipitously.”It’s about people:- face to face meetings; meetings location – rotate location, team members to participate(if not all team can be there)- Vocabulary – for ex nightly builds – night where?- Cultural differencesKeep sites in touch: via leader involvement, off-line interaction, infrastructure quality.Distributed teams benefit from following agile practices.Copyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Agile is not perfectProductivity myth: with agile productivity will increase- In Agile you don’t write code faster – instead you write the code in the right directionCan be seen as an undisciplined approachRequirements emerge and evolve throughout the development scope creep risk ofever-lasting projects.Requirements are clarified just in time for development and can be documented in muchless detail less information / documentation available to new comers.Continuous testing – high costsAgile development is rather intense for developers.Agile assumes resources are interchangeableOrg culture should support this changes in org behaviour; agile transformations are onlylikely to succeed if heavily supported by the top managementCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Agile pitfalls Completing Sprints While Leaving Behind Technical Debt Problem Solving in the Daily Scrum. Assuming That Agile Faster Planning Every Iteration for the Project In Advance Assuming That Velocity is Equal Across Teams Forgetting Artifacts (documentation, training materials etc.) Adding Stretch Goals to SprintsThese are the “nice to haves” that are not planned but at the same time are planned. Product Owner Specifies Solutions Using Metrics to Measure ProductivityMetrics such as velocity or number of story points completed in a given sprint are not agood measure of productivityCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Agile and Continuous DeliveryContinuous Delivery: frequent releases of new software through the use of automatedtesting and continuous integration.Continuous integration continuous delivery continuous deploymentcode label branch(es) productionaccelerating the entire build-test-deploy cycleCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Quiz1.What is the triple constraint in project management?2.When shall I use waterfall as a PM methodology?3.Why agile is more suitable for software development?4.What are the advantages of using agile ?5.What is the primary barrier when moving from waterfall to agile?6.What is a sprint?7.What are the roles of PO, SM, TM?8.What is a scrum board?9.How to create a user story? Epic? Feature? Release?10. What is a product backlog? Sprint backlog?11. How do you estimate a story?12. What is velocity?Copyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

What we have learned- We plan to predict and deliver!- Waterfall vs Agile- When unknowns and/or flexibility – Agile!Product Owner, Scrum Master, Team MemberStories, epics, tasksBacklogPlanning, scrums, retrospectivesSprintBoardCopyright 2015, Oracle and/or its affiliates. All rights reserved. Oracle Confidential – Restricted

Agile and Continuous Delivery Oracle Confidential – Restricted Continuous Delivery: frequent releases of new software through the use of automated testing and continuous integration. Continuous integration continuous delivery continuous deployment code label branch(es) p

Related Documents:

1. The need for an agile way of working 6 2. The need for an agile way of working 9 3. Agile Core Values - Agile Project Management Vs. 10 Agile Event Management 4. Agile principles 12 _Agile Principles of Agile Project Management 13 _Agile Principles of VOK DAMS Agile Event Management 14 5. Agile Methods 16 _Scrum in Short 16 _Kanban in Short 18

The most popular agile methodologies include: extreme programming (XP), Scrum, Crystal, Dynamic Sys-tems Development (DSDM), Lean Development, and Feature Driven Development (FDD). All Agile methods share a common vision and core values of the Agile Manifesto. Agile Methods: Some well-known agile software development methods include: Agile .

Agile Estimating and Planning by Mike Cohn Agile Game Development with Scrum by Clinton Keith Agile Product Ownership by Roman Pichler Agile Project Management with Scrum by Ken Schwaber Agile Retrospectives by Esther Derby and Diana Larsen Agile Testing: A Practical Guide for Testers and Agile Teams by Lisa Crispin and .

1.1 Purpose of the Agile Extension to the BABOK Guide1 1.2 What is Agile Business Analysis?2 1.3 Structure6 Chapter 2:The Agile Mindset 2.1 What is an Agile Mindset?7 2.2 The Agile Mindset, Methodologies, and Frameworks8 2.3 Applying the Agile Mindset9 2.4 Agile Extension and the Agile Ma

Agile World View "Agility" has manydimensions other than IT It ranges from leadership to technological agility Today's focus is on organizational & enterprise agility Agile Leaders Agile Organization Change Agile Acquisition & Contracting Agile Strategic Planning Agile Capability Analysis Agile Program Management Agile Tech.

Agile Manifesto (Agile Principles) The Agile Manifesto is the foundation of most Agile Software Development methods. It has 4 core values supplemented by 12 Principles. The document was developed in 2001 by a group of 17 pioneer software engineers (www.agilemanifesto.org). Agile Software Development Methods Agile Software .

AGILE TESTING For agile testers, test engineers, test managers, developers, technical leads. Ensure the production of effective and valuable software. Agile Fundamentals Agile Programming Agile Software Design Agile Fundamentals Agile Testing Agile Test Automation ICP CERTIFIED PROFESSIONAL ICP CERTIFIED PROFESSIONAL ICP-PRG CERTIFIED .

1. Agile methods are undisciplined and not measurable. 2. Agile methods have no project management. 3. Agile methods apply only to software development. 4. Agile methods have no documentation. 5. Agile methods have no requirements. 6. Agile methods only work with small colocated teams.-7. Agile methods do not include planning. 8.