Скачать презентацию The Latest In Agile Processes Open UP Per Скачать презентацию The Latest In Agile Processes Open UP Per

d89934a5f9450afbc650073789bd5d10.ppt

  • Количество слайдов: 37

The Latest In Agile Processes Open. UP Per Kroll, Chief Architect IBM Rational Expertise The Latest In Agile Processes Open. UP Per Kroll, Chief Architect IBM Rational Expertise Development & Innovation, IBM pkroll@us. ibm. com

IBM Software Group | Rational software Per Kroll - Background § Chief Architect, IBM IBM Software Group | Rational software Per Kroll - Background § Chief Architect, IBM Rational Expertise Development & Innovation (REDI) § Project lead – Eclipse Process Framework § Core Member – SWG Agile Adoption Team § (Co-) Author of 4 The Rational Unified Process Made Easy – A Practitioner’s Guide to RUP 4 Agility and Discipline Made Easy – Practices from Open. UP and RUP 2

IBM Software Group | Rational software Presentation Overview § Open. UP § The Agile IBM Software Group | Rational software Presentation Overview § Open. UP § The Agile Kernel § Practices that Scale § Make Open. UP Your Own 3

IBM Software Group | Rational software EPF Ecosystem In-house Content Plug-ins EXTENSIONS • Project IBM Software Group | Rational software EPF Ecosystem In-house Content Plug-ins EXTENSIONS • Project Mgmt. Free Process Content Plug-ins • Oper. Mgmt. • Systems Mgmt. DSDM with Open. UP Commercial Process Content Plug-ins Rule-Based Development Basic Unified Process Open. UP Adapted from RUP Scrum XP Extensible, Customizable, Flexible TOOLING (Authoring, Publishing) Common Language & Vocabulary Tool Extensions META MODEL (Unified Method Architecture) Open Source Development ECLIPSE 4

IBM Software Group | Rational software EPF: Growing Ecosystem Co-developers Supporters 5 IBM Software Group | Rational software EPF: Growing Ecosystem Co-developers Supporters 5

IBM Software Group | Rational software Open. Up in a Nutshell Influence RUP XP IBM Software Group | Rational software Open. Up in a Nutshell Influence RUP XP AMDD Scrum Eclipse Way RUP DSDM 6

IBM Software Group | Rational software Baseline Practices from Eclipse Process Framework (EPF) (Under IBM Software Group | Rational software Baseline Practices from Eclipse Process Framework (EPF) (Under Development) Other Open Source Commercial Practices Company X Practices §… §… §… Additional Practices to Scale Agility § Shared Vision § UC-Driven development § Risk-Value Lifecycle Scrum § Iterative development § Releasel planning § Whole Team Agile Kernel § Agile Architecture § Evolutionary Design Open. UP § Continuous Integration § Test-Driven Development § Independent Testing Many practices contain other ‘smaller’ practices. E. g. - Whole team contains Sustainable Pace and Self org. - TDD contains Pair Programming and Refactoring - Iterative development notions of backlogs and Agile Estimation. XPish Different role sets can be applied. Do you want Scrum roles or Open. UP roles for your practices? You can select / deselect also the smaller practices. 7

IBM Software Group | Rational software Open. UP is Minimal, Complete, and Extensible. § IBM Software Group | Rational software Open. UP is Minimal, Complete, and Extensible. § Open. UP is additive 4 It starts with the minimum 4 You can always add or modify 4 The bias is toward simplicity and lowceremony, because each addition takes work. 8

IBM Software Group | Rational software Open. UP is Minimal, Complete, and Extensible. § IBM Software Group | Rational software Open. UP is Minimal, Complete, and Extensible. § You can start doing Open. UP right away. § Process Wonks are optional. § Prescribes specific technical practices. 9

IBM Software Group | Rational software Open. UP is Minimal, Complete, and Extensible. § IBM Software Group | Rational software Open. UP is Minimal, Complete, and Extensible. § A foundation to build on. § Free and open source. § There is no “one best way. ” § Supported by the Eclipse Process Framework Composer tool. § Add and remove practices as needed. 10

IBM Software Group | Rational software Open. UP Demo 11 IBM Software Group | Rational software Open. UP Demo 11

IBM Software Group | Rational software Presentation Overview § Open. UP § The Agile IBM Software Group | Rational software Presentation Overview § Open. UP § The Agile Kernel § Practices that Scale § Make Open. UP Your Own 12

IBM Software Group | Rational software The Agile Kernel Other Open Source Commercial Practices IBM Software Group | Rational software The Agile Kernel Other Open Source Commercial Practices Company X Practices §… §… §… Additional Practices to Scale Agility § Shared Vision § UC-Driven development § Risk-Value Lifecycle Scrum § Iterative development § Release planning § Whole Team Agile Kernel § Evolutionary Architecture § Evolutionary Design Open. UP § Continuous Integration § Test-Driven Development § Independent Testing XPish 13

IBM Software Group | Rational software Practice: Iterative Development § Focuses the team § IBM Software Group | Rational software Practice: Iterative Development § Focuses the team § Time-boxed § Has a plan and assessment § Prioritized work § Agile estimation § Produces a demo-able shippable build 14

IBM Software Group | Rational software Prioritize and Manage Work: Work Items List § IBM Software Group | Rational software Prioritize and Manage Work: Work Items List § Heavily influenced by Scrum/XP’s Product and Iteration Backlog. High Priority Each iteration implements the highest-priority work items High-priority work items should be well-defined New work items can be added at any time Work items can be reprioritized at any time Low-priority work items can be vague Work items can be removed at any time Low Priority Work Item List 15

IBM Software Group | Rational software Executing an iteration Iteration planning Stable weekly build IBM Software Group | Rational software Executing an iteration Iteration planning Stable weekly build Stable iteration build Iteration review / Retrospective A few hours A few days Upfront planning and architecture Continuous micro-increments / bug-fixing / builds Continuous bug-fixing / micro-increments / builds 16 (Kroll, 2007)

IBM Software Group | Rational software Practice: Whole Team § Self organization 4 Motivated IBM Software Group | Rational software Practice: Whole Team § Self organization 4 Motivated team members 4 Manager – coaching and leading, not directing 4 Decision making – People closest to the decision make the decision 4 Work assignment - Pull instead of push model 4 It is about involvement and respect, not wool sweaters and hugging § Collaboration 4 Daily meetings 4 Extended team 4 X-functional team organized around components § Sustainable Pace 17

IBM Software Group | Rational software Practice: Release Planning Project Plan explains at high IBM Software Group | Rational software Practice: Release Planning Project Plan explains at high level how to go from here to here 1 1 2 2 3 3 4 4 5 5 6 6 Planned Path Initial Project Status Detailed Iteration Plan is done for one iteration at the time Project Plan defines § Major milestones § Number of iterations § Objectives of each iteration Stakeholder Satisfaction Space Iteration Plan defines § Iteration Objectives § Who takes on what tasks § Evaluation criteria 18

IBM Software Group | Rational software Iterations: Use Feedback to Change Direction Planned Initial IBM Software Group | Rational software Iterations: Use Feedback to Change Direction Planned Initial State Actual Initial State Planned Completion 3 2 1 4 5 6 Planned Path Initial Project 1 Status 2 3 Actual Path 4 5 6 7 Stakeholder Satisfaction Space 19

IBM Software Group | Rational software Practice: Test Driven Development § Automated acceptance testing IBM Software Group | Rational software Practice: Test Driven Development § Automated acceptance testing drives your detailed requirements efforts § Automated developer testing drives the detailed design of the system § Tests form the majority of your detailed specifications § You’ll still need some high-level models to provide overviews § This is the first time in IT history that developers are motivated to keep the specifications up-todate § An example of single sourcing information § www. agiledata. org/essays/tdd. html Slide provided by Scott Ambler. 20

IBM Software Group | Rational software Practice: Continuous Integration § Update and test our IBM Software Group | Rational software Practice: Continuous Integration § Update and test our code constantly § Daily builds are a good start § Integrating each mini-increment is better § A good build: 4 Compiles the code 4 Reruns your test suite 4 Optionally runs a static code analysis tool § You need to automate your build process 21

IBM Software Group | Rational software Practice: Independent Testing § The agile ‘cook book’ IBM Software Group | Rational software Practice: Independent Testing § The agile ‘cook book’ answer 4 Testing is the responsibility of the development team § Business reality for many mission / safety critical or complex environments 4 Sometimes extremely advanced test environments, requiring specialized knowledge and advanced setups 4 Extensive testing required, sometimes on many platforms § Agile development applied to complex test environments 4 Development team responsible for high-quality product, but maybe only on or a few platforms 4 When necessary, have separate test team to test on other environments and for more complex test environments (such as advanced load testing) 22

IBM Software Group | Rational software Presentation Overview § Open. UP § The Agile IBM Software Group | Rational software Presentation Overview § Open. UP § The Agile Kernel § Practices that Scale § Make Open. UP Your Own 23

IBM Software Group | Rational software Additional Practices and Hooks to Scale Other Open IBM Software Group | Rational software Additional Practices and Hooks to Scale Other Open Source Commercial Practices Company X Practices §… §… §… Additional Practices to Scale Agility § Shared Vision § UC-Driven development § Risk-Value Lifecycle Scrum § Iterative development § Release planning § Whole Team Agile Kernel § Evolutionary Architecture § Evolutionary Design Open. UP § Continuous Integration § Test-Driven Development § Independent Testing XPish 24

IBM Software Group | Rational software Practice: Risk-Value Lifecycle § Provides the extended team IBM Software Group | Rational software Practice: Risk-Value Lifecycle § Provides the extended team with explicit milestones centered on balancing risk mitigation and value creation 4 Key stakeholders frequently do not have time to carefully review and discuss the results of every iteration. Fewer key milestones are needed. § Forces extended team to agree on: 4 Do we understand what we are building? 4 Do we understand how to build it? iteration iteration 4 Can we release now? iteration 4 Are we ready to release in the near future? 25

IBM Software Group | Rational software Practice: Vision 4 Ensure that everybody pulls in IBM Software Group | Rational software Practice: Vision 4 Ensure that everybody pulls in the same direction § Provides the why and the high-level requirements and design constraints. § A short read to ensure all stakeholders and team members understand what the project is about 4 Content areas covered in vision § Problem Statement § Product Positioning Description (elevator pitch) § Stakeholders and End Users § Features § Constraints and Quality Measures 26

IBM Software Group | Rational software Vision – Common Mistakes § Too long – IBM Software Group | Rational software Vision – Common Mistakes § Too long – people will not read it § Hiding the vision document – the point was to use it to point everybody in the same direction… § Does not include an elevator pitch – never got to the core § No clear articulation of stakeholders – how can you build the right system if you do not know who you need to work with to get it right? 27

IBM Software Group | Rational software Practice: Use-Case-Driven Development § Provides a collaboration space IBM Software Group | Rational software Practice: Use-Case-Driven Development § Provides a collaboration space for the x-functional team (plan, req, dev, test, doc, etc ) centered around end-to-end usage scenarios 4 How you document the results of that documentation is secondary…. Who is in the x-functional team? § Stakeholder / user – What will I get? § Developer – What do I need to develop? § Tester – What needs to be tested? § Tech doc – What should I write in online help / doc? § Manager – What should be done in which iteration? § Architect – How do I drive out technical risk? § … 28

IBM Software Group | Rational software Practice: Evolutionary Architecture § Identify architectural issues and IBM Software Group | Rational software Practice: Evolutionary Architecture § Identify architectural issues and prioritize with any other work 4 Just-in-time' architecture work 4 Prioritization will be based on need for technical risk mitigation versus value creation 4 Implement and test key capabilities as a means to address architectural issues § Document key architectural decision in an Architectural Notebook § Consider early model brainstorm and implementation of ‘minimal code’ to validate the assumptions behind the architecture § The architecture is never done. It keeps on evolving. 29

IBM Software Group | Rational software Practice: Evolutionary Design § Effectively take and communicate IBM Software Group | Rational software Practice: Evolutionary Design § Effectively take and communicate design decisions § Model the details just in time (JIT) 4 No big upfront design § Travel light 4 Document design with the level of detail required based on your context 4 May be enough to reference applicable patterns and some high-level decisions? § You need good modeling tools 30

IBM Software Group | Rational software Sample Practices to Address Agility at Scale Sample IBM Software Group | Rational software Sample Practices to Address Agility at Scale Sample Scaling Factors Sample Practices Management related practices § Risk-value lifecycle § Large teams Requirements related practices § Shared vision - Ensure that everybody pulls in the same direction § Geographical distribution § Use-Case-Driven Development – Drive planning, req, dev, test, doc, etc. based on end-to-end usage scenarios Architecture management practices § Application complexity § Agile Architecture – implement key aspects of the applications to determine what are the correct architectural decisions § Evolutionary design - Effectively take and communicate design decisions 31

IBM Software Group | Rational software Summary: Sample Practices to Address Agility at Scale IBM Software Group | Rational software Summary: Sample Practices to Address Agility at Scale Management related practices § Risk-value lifecycle – Provides the extended team with explicit milestones centered on balancing risk mitigation and value creation Requirements related practices § Shared vision - Ensure that everybody pulls in the same direction § Use-Case-Driven Development – Provides a collaboration space for the xfunctional team (plan, req, dev, test, doc, etc ) centered around end-to-end usage scenarios Architecture management practices § Agile Architecture – implement key aspects of the applications to determine what are the correct architectural decisions § Evolutionary design - Effectively take and communicate design decisions 32

IBM Software Group | Rational software Presentation Overview § Open. UP § The Agile IBM Software Group | Rational software Presentation Overview § Open. UP § The Agile Kernel § Practices that Scale § Make Open. UP Your Own 33

IBM Software Group | Rational software Adoption Advice § Identify what you are trying IBM Software Group | Rational software Adoption Advice § Identify what you are trying to achieve as a business 4 Reduce Time-to-Market, Improve Quality, Increase Innovation, … 4 Agility at Scale complexity drivers § Adopt (only) those practices that will help you achieve those business objectives 4 Do an incremental adoption, learn as you go 4 Use different sources for practices: Scrum, XP, Open. UP, RUP, Eclipse Way, AMDD, … 4 Capture your own lessons learnt (augmentation of existing practices and new practices) § Consider consistency across your organization 4 Are there some practices that everybody should follow? 4 Which practices fit in what context? 34

IBM Software Group | Rational software EPF Composer Can Help EPF Composer capabilities § IBM Software Group | Rational software EPF Composer Can Help EPF Composer capabilities § Pick out the processes or practices you want to adopt § Publish desired processes and practices as a Web site for easy consumption § Leverage EPF Wiki so team members can modify and provide feedback on their process § Customize a process or individual practices § Create new processes or practices 35

IBM Software Group | Rational software Resources § EPF / Open. UP: http: //www. IBM Software Group | Rational software Resources § EPF / Open. UP: http: //www. eclipse. org/epf/ § Guidance on incremental adoption of a process: Agility and Discipline Made Easy – Practices from Open. UP and RUP, Kroll and Mac. Isaac, Addison-Wesley, 2005 36

IBM Software Group | Rational software © Copyright IBM Corporation 2007. All rights reserved. IBM Software Group | Rational software © Copyright IBM Corporation 2007. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, the on-demand business logo, Rational, the Rational logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. 37