25
1 / GE Title or job number / 03/26/2022 troduction to Agile

Agile[2]

Embed Size (px)

DESCRIPTION

Agile[2]

Citation preview

Agile Software Development @ GE

Introduction to Agile# /GE Title or job number /2012-11-12# /GE /

What is Agile?# /GE Title or job number /2012-11-12# /GE /

Agile is not this.

# /GE Title or job number /2012-11-12Nor is it this.

# /GE Title or job number /2012-11-12What Agile is NOTA specific methodologyIts an umbrella term for a set of approaches which share common valuesGlorified hackingRather, a synergistic set of highly disciplined practices Working without planningAdaptive planning instead of following a planSuitable for all types of projectsUnavailability of customers and pre-defined requirements may sway projects to other approachesA silver bulletThe project could still fail but it will fail faster

# /GE Title or job number /2012-11-12What is Agile?Agile is a project management discipline that promotes incremental and iterative development, collaboration, and adaptability throughout the project life-cycle# /GE Title or job number /2012-11-12# /GE /

Agile Manifesto for Software DevelopmentIndividuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

While there is value in the items on the right, we value the items on the left morehttp://agilemanifesto.org/# /GE Title or job number /2012-11-12Here is the Agile Manifesto. It represents the core philosophy that forms the foundation for agile software development. Think of these as the values that we should expect to pursue in our agile projects. If you run into questions about how to get something done on an agile project, or whether some or another approach is faithful to the agile mindset, it is very helpful to refer back to this set of values. They can also be found at agilemanifesto.org

The manifesto states that, for each of these four equations, though there is value in the things on the right side, the items on the left are more valuableA few examples of how these values impact the way we work:Teams are comprised of a set of individuals represent multiple functional roles e.g. business analysts, developers, testers, SMEs, support, technical writers who collaborate to deliver working software. Work is not shuttled over a wall to the next person in line.Documentation is not produced for documentations sake. Teams should constantly challenge the relevance, importance, cost-effectiveness, and usefulness of the documentation requirements that have been built up over the years. Produce only documentation that is important and relevant.Our interaction with the customer is very different. A non-agile approach has us spending every waking moment with the customer at the beginning of a project, going away for 6-12 months, and then coming back to do user acceptance testing at the end. In the meantime, requirements can change, and even initially understood requirements can be misinterpreted by the development team. In an agile world, we engage continuously with the customer in order to adapt to changing markets, changing requirements, and to validate the software being produced along the way.The old quote from Dwight D. Eisenhower, former president of the United States, is apt here: The plan is useless; its the planning thats important. Agile approaches value flexibility and adaptability of requirements over time, rather than a formal, inflexible plan defined up front.

# /GE /

Concepts & Principles of Agile# /GE Title or job number /2012-11-12# /GE /

What is Lean? A strategy for maximizing value to customersThe relentless pursuit of the perfect process through waste eliminationGE Internal - For internal distribution only.4# /GE /

See the waste in your processAfterBeforeWait / Waste . . .Non Value Add TimeWait / Waste . . .Non Value Add TimeLean Attacks Waste Here Work . . . Value Add Time Work . . . Value Add Time Lead TimeReduced cyclesBetter deliveryMore capacityBetter qualityProductivityCustomer satisfactionIncreased process velocity yields: Benefits of LeanGE Internal - For internal distribution only.6Michael George book states Processes have 95% queue time with only 5% actual process time

Need to see all Xs that drive reason product does not flow. When you focus this way you get all results not just a sub set.# /GE /

Lean Eliminate WasteManufacturing WasteDevelopment WasteRelevant Agile PracticeInventoryPartially Done WorkUser stories, iterationsExtra ProcessingExtra ProcessesUser stories, acceptance tests, customer availabilityOverproductionExtra FeaturesRefactoring, iterationsTransportationTask SwitchingDedicated NPI teamsWaitingWaitingIterations, TDD, frequent build & integrateMotionMotionCo-located teamDefectsDefectsTDDPrinciples vs. Practices Principles are underlying truths that dont change over time or space, while practices are the application of principles to a particular situation.Mary PoppendickPrinciples of Lean Software DevelopmentEliminate WasteChallenge everything that does not add end user valueBuild Quality InDont wait for testing to measure qualityCreate KnowledgeMore opportunity after requirement definitionDefer CommitmentEmergency responder mentalityDeliver FastAllows for experimentationRespect PeopleEmpowerment vs. machine labor (Entrepreneur spirit)Optimize the WholeValue Stream Thinkinghttp://www.infoq.com/resource/articles/poppendieck-implementing-lean/en/resources/poppendieck_ch02.pdf# /GE Software Development Council /11/12/2012How do you know if youre doing Agile? Measurements are critical, processes are not. The key question to ask yourself is are you delivering demonstrative change on a frequent and iterative basis?.David West Forrester AnalystMeasurements of AgileVelocityHow quickly are you able to deliver demonstrative change?Burn downHow close are we to finished?QualityStability, supportability, waste free valueWhat is your unit of measure? (User story definition)# /GE Software Development Council /11/12/2012Doesnt know what Lack of communication / CollaborationDoesnt know how Lack of Training / ExperienceMistakes Lack of disciplineDefects DefinedDefectsQuality of the buildQuality of the DesignDefinition: Anything that does not work as it was designed

GE Internal - For internal distribution only.Our World Based on how we define defectsDoesnt know what Lack of communication / CollaborationDoesnt know how Lack of Training / ExperienceMistakes Lack of disciplineQuality of the buildQuality of the DesignNumber of DefectsGMRs, Issues, ETCGE Internal - For internal distribution only.defect n. dee-fekt, dih-fekt; v. dih-fekt]

Doesnt know what Lack of communication / CollaborationDoesnt know how Lack of Training / ExperienceMistakes Lack of disciplineDefects Re-DefinedDefectsQuality of the buildQuality of the Design1. a shortcoming, fault, or imperfection2. lack of something essential to perfection or completeness; 3. Does not deliver 100% customer valueOld Definition: Anything that does not work as it was designed

New DefinitionGE Internal - For internal distribution only.What if this is really our world?Doesnt know what Lack of communication / CollaborationDoesnt know how Lack of Training / ExperienceMistakes Lack of disciplineQuality of the buildQuality of the DesignNumber of DefectsLack of Value, GMRs, Issues, ETCGE Internal - For internal distribution only.

Scrum# /GE Title or job number /2012-11-12# /GE /

Anatomy of a Sprint

GE Internal - For internal distribution only.20# /GE /

Examples of Scrum TechniquesBig Visible Charts Communication as one of the Agile values can be leveraged by means of using Big Visible Charts. They are tools to bring information to the people, indicating not only bad things but also good things happening on the project. The bottom line is to "get the information out radiating". Trust , opennessCustomer Collaboration Most Agile Evangelists consider customer collaboration to be the first principle of Agile Development. In the rapid cycle world of agile software development, the customer must be "on call" to help flesh out requirements for the next few story cards or to take a look at what was just built. face-to-face conversation. Daily Stand Up MeetingsThe Daily Stand Up Meeting, also called the 'Daily Scrum', is a quick team status update that occurs every day. In order to keep it short and focused, the team stands up during the meeting and the duration is kept to fifteen minute or less. Team member addresses three key questions: What was done yesterday, What will be done todayIdentify any road blocks they are encounteringIterations and Sprints Iteration = 1 to 4 week period during which developers focus on building a specific set of functionality for the customer. working software frequentlyOpen Workspace A large bull-pen with tables with fast machines in the center. No one can go off and hack for hours in this environment. In the short term, it is much easier to get help if you need help just by calling across the room. In the long term, the team benefits from the intense communication. The open workspace helps pair programming work, and the communication aids all the practices. Functional, IT, and all work togetherRetrospectivesA team meeting designed to help identify ways to continue to refine and improve the teams' processes. The meeting takes about an hour to complete and is held at the end of each iteration. The outcomes include specific process improvement ideas that become cards to be played in future iterations. The Retrospective ties directly to the core Agile value of FEEDBACK. Lean# /GE Title or job number /2012-11-12Big Visible Charts address various aspects of the projects such as customer acceptance tests, velocity of the team, defects, team process, etc. A casual or manual style of creating big charts which push the information towards the team has an obvious advantage over using web or other solutions which requires a decision to "pull it out of there".Daily Stand Up MeetingsIt is important that all team members attend and show up on time. Any road blocks not addressed in Stand Up, or immediately after in a sidebar/focus meeting, should be recorded on a Road Block Board. The Road Block Board needs to be visible to the team and should be worked to ensure no stale road blocks exist.Open Workspace Must have: o Team uses open seating to facilitate communication o No walls dividing the team up o Space should be noisy, quiet is bad (parent's ear) Optional: o There are no assigned seats o people have a "locker room" to store personal belongings o Furniture is movable without permission, team has ability to form the space o 2 - 4 small breakout rooms are always available for meetings or privacy o 1 large breakout room is always available for larger meetings o Projector(s) readily available, set up and ready to use o Walls around the team to provide adequate room for big visible charts, cork boards and white boards and isolate others from the team # /GE /

The teamTypically 5-9 peopleCross-functional:Programmers, testers, user experience designers, etc.Members should be full-timeMay be exceptions (e.g., database administrator)Teams are self-organizingIdeally, no titles but rarely a possibilityMembership should change only between sprints

# / / Monday, May 31, 2010

Scrum Adoption Approach at GE GE Internal - For internal distribution only.How handle the urge to call a meeting?Require POs, SMs, EAs to stay after Scrum for an hour, working together?Find space near cafeteria, surrounding lunch?Grab large 4x cubes?Grab 279 for Peters team! # /GE /

Traditional vs ScrumFunctional ReqsConceptual DesignTechnical ReqsLogical DesignDetailed DesignWork BreakdownCodeUnit TestIntegration TestSystem TestRegression TestMany Bug FixesBeta TestCommercializeTG 123568PersonasGoalsScenariosConceptual DesignWireframesStory ListMeas. CTQsLogical DesignRelease PlanRegressionFew BugsField Test(Pilot)CommercializeTG 1235678I1I2I3InProductionQualityFunctionalityKnownDefectsProductionQualityFunctionalityKnownDefectsWaterfallLean/AgileGE Internal - For internal distribution only.How to Get StartedProduct Owner EngagementUse the Agile@GE Starter KitContact Agile Team Agile@GEGet a Scrum Coach Get TrainedAttend Agile ConferenceTake the Agile Readiness Assessment (pmm.ge.com)Recommended Reading: Lean Software Development: An Agile Toolkit by Mary Poppendieck and Tom Poppendieck (May 18, 2003) Contact Sue Kudlack # /GE /