d2c9cf3566dc45e7a487e63a702e9a1c.ppt
- Количество слайдов: 24
® IBM Software Group Agile Software Development: What’s Really Going On Scott W. Ambler Practice Leader Agile Development © 2007 IBM Corporation
IBM Software Group | Rational software Scott Ambler - Background § Practice Leader Agile Development § Fellow – International Association of Software Architects § www-306. ibm. com/software/rational/bios/ambler. html 2
IBM Software Group | Rational software Presentation Overview § Warning! § Agile Software Development (ASD) § Agile Adoption Rates § Going Beyond the Extreme Rhetoric 3
IBM Software Group | Rational software Warning! § I’m spectacularly blunt at times § Many new ideas will be presented § Some may not fit well into your existing environment § Some will challenge your existing notions about software development § Some will confirm your unvoiced suspicions § Don’t make any “career-ending moves” § Be skeptical but open minded 4
® IBM Software Group Agile Software Development (ASD) What is ASD? How it’s different Mythbusters Why does ASD Work? Some Common Practices © 2007 IBM Corporation
IBM Software Group | Rational software What is Agile? § An iterative and incremental (evolutionary) approach performed in a highly collaborative manner with just the right amount of ceremony to produce high quality software in a cost effective and timely manner which meets the changing needs of its stakeholders. § Core principles 4“Fits just right” process 4 Continuous testing and validation 4 Consistent team collaboration 4 Rapid response to change 4 Ongoing customer involvement 4 Frequent delivery of working software 6
IBM Software Group | Rational software How Agile is Different § Focus on collaboration: 4 Less paperwork and more conversation 4 Stakeholders actively involved § Focus on working software: 4 Greater feedback makes agile projects easier to manage 4 Less documentation is required 4 Less bureaucracy § Agilists are generalizing specialists: 4 Less hand offs between people 4 Less people required 4 Specialists find it difficult at first to fit into the team § Agile is based on practice, not theory: 4 This is a significant change from traditional 4 You need to see how agile works in practice to truly understand it 7
IBM Software Group | Rational software Mythbusters Myth Reality 1. No Documentation 1. Agile Documentation 2. Undisciplined 2. Requires great discipline 3. No Planning 3. Just-in-time (JIT) planning 4. Not Predictable 4. Far more predictable 5. Does Not Scale 5. Eclipse is agile 6. Is a Fad 6. It’s quickly becoming the norm 7. Silver Bullet 7. It requires skilled people 8. RUP isn’t agile 8. RUP is as agile as you make it 9. Not Fixed Price 9. Agile provides stakeholders control over the budget, schedule, and scope 8
IBM Software Group | Rational software Why Agile Works www. ambysoft. com/essays/why. Agile. Works. Feedback. htm 9
IBM Software Group | Rational software Some Common Practices §Regular Deployment of Working Software §Pair Programming §Refactoring §Continuous Integration §Test Driven Development (TDD) §Shared Code Ownership §Active Stakeholder Participation 10
® IBM Software Group Agile Adoption Rates* Have you Adopted Agile? Number of Projects Run Success Rates *Figures from an April 2007 Survey to be summarized in the August 2007 issue of Dr. Dobb’s Journal © 2007 IBM Corporation
IBM Software Group | Rational software Has Your Organization Adopted One or More Agile Techniques? 12
IBM Software Group | Rational software Number of Agile Projects Run 13
IBM Software Group | Rational software % of Successful Agile Projects 14
® IBM Software Group Going Beyond the Extreme Rhetoric Modeling and Documentation Rational Unified Process (RUP) Testing Database Refactoring Database Regression Testing Governance © 2007 IBM Corporation
IBM Software Group | Rational software Agile Model Driven Development (AMDD) Project Level www. agilemodeling. com/essays/amdd. htm 16
IBM Software Group | Rational software Agile Documentation § Document the stable, not the speculative § Agile documents: 4 Maximize stakeholder ROI 4 Describe “good things to know” 4 Have a specific customer and facilitate the work efforts of that customer 4 Are sufficiently accurate, consistent, and detailed 17
IBM Software Group | Rational software Rational Unified Process (RUP) 18
IBM Software Group | Rational software Agile Testing www. ddj. com/dept/debug/196603549? cid=Ambysoft § Regression testing is critical to the success of evolutionary (iterative and incremental) development § Acceptance tests are considered to be primary requirements artifacts § Unit tests are considered to be detailed design artifacts 19
IBM Software Group | Rational software Database Refactoring § A database refactoring is a simple change to a database schema that improves its design while retaining both its behavioral and informational semantics. Examples: Move Column, Rename Table, and Replace Blob With Table. § A database schema includes both structural aspects such as table and view definitions as well as functional aspects such as stored procedures and triggers. § Important: Database refactorings are a subset of schema transformations, but they do not add functionality. § www. agiledata. org 20
IBM Software Group | Rational software Database Testing www. agiledata. org/essays/database. Testing. html 21
IBM Software Group | Rational software Agility at Scale: “Right-Sizing” Governance § Pragmatic Governance Body § Staged Program Delivery § Manage Project Pipeline By Business Value § Scenario-Driven Development Organization & Meetings Mission & Principles § Self-Organizing Teams § Align HR Policies With IT Values § Align Organization Structure With Architecture § § § Iterative Development Adapt The Process Risk-Based Milestones Continuous Improvement § Simple And Relevant Metrics § Continuous Project Monitoring Embedded Compliance Processes Measures Roles & Responsibilities Policies & Standards § Integrated Lifecycle Environment § Valued Corporate Assets § Flexible Architectures 22
Keep In Touch! ® IBM Software Group Scott W. Ambler www-306. ibm. com/software/rational/bios/ambler. html © 2007 IBM Corporation
IBM Software Group | Rational software References and Recommended Reading § § § www. agilealliance. com www. agilemodeling. com www. agiledata. org www. ambysoft. com www. databaserefactoring. com www. enterpriseunifiedprocess. com Ambler, S. W. (2002). Agile Modeling: Effective Practices for XP and the UP. New York: John Wiley & Sons. Ambler, S. W. (2003). Agile Database Techniques. New York: John Wiley & Sons. Ambler, S. W. (2004). The Object Primer 3 rd Edition: AMDD with UML 2. New York: Cambridge University Press. Ambler, S. W. and Sadalage, P. J. (2006). Refactoring Databases: Evolutionary Database Design. Reading, MA: Addison Wesley Longman, Inc. Larman, C. (2004). Agile and Iterative Development: A Manager’s Guide. Reading, MA: Addison Wesley Mc. Govern, J. , Ambler, S. W. , Stevens, M. , Linn, J. , Sharan, V. , & Jo, E. (2003). The Practical Guide to Enterprise Architecture. Prentice Hall PTR. 24
d2c9cf3566dc45e7a487e63a702e9a1c.ppt