Addison wesley agility and discipline made easy practices from OpenUP and RUP may 2006 ISBN 0321321308

213 51 0
Addison wesley agility and discipline made easy practices from OpenUP and RUP may 2006 ISBN 0321321308

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Agility and Discipline Made Easy: Practices from OpenUP and RUP By Per Kroll, Bruce MacIsaac Publisher: Addison Wesley Professional Pub Date: May 19, 2006 Print ISBN-10: 0-321-32130-8 Print ISBN-13: 978-0-321-32130-5 Pages: 448 Table of Contents | Index "The Japanese samurai Musashi wrote: 'One can win with the long sword, and one can win with the short sword Whatever the weapon, there is a time and situation in which it is appropriate.' "Similarly, we have the long RUP and the short RUP, and all sizes in between RUP is not a rigid, static recipe, and it evolves with the field and the practitioners, as demonstrated in this new book full of wisdom to illustrate further the liveliness of a process adopted by so many organizations around the world Bravo!" Philippe Kruchten, Professor, University of British Colum bia "The Unified Process and its practices have had, and continue to have, a great impact on the software industry This book is a refreshing new look at some of the principles underlying the Unified Process It is full of practical guidance for people who want to start, or increase, their adoption of proven practices No matter where you are today in terms of software maturity, you can start improving tomorrow." Ivar Jacobson, Ivar Jacobson Consulting "Kroll and MacIsaac have written a must-have book It is well organized with new principles for software development I encounter many books I consider valuable; I consider this one indispensable, especially as it includes over 20 concrete best practices If you are interested in making your software development shop a better one, read this book!" Ricardo R Garcia, President, Global Rational User Group Council, www.rational-ug.org/index php "Agile software development is real, it works, and it's here to stay Now is the time to come up to speed on agile best practices for the Unified Process, and this book provides a great starting point." Scott W Am bler, practice leader, Agile Modeling "IBM and the global economy have become increasingly dependent on software over the last decade, and our industry has evolved some discriminating best practices Per and Bruce have captured the principles and practices of success in this concise book; a must for executives, project managers, and practitioners These ideas are progressive, but they strike the right balance between agility and governance and will form the foundation for successful systems and software developers for a long time." W alk er Royce, Vice President, IBM Software Services-Rational "Finally, the RUP is presented in digestible, byte-size pieces Kroll and MacIsaac effectively describe a set of practices that can be adopted in a low-ceremony, ad hoc fashion, suited to the culture of the more agile project team, while allowing them to understand how to scale their process as needed." Dean Leffingwell, author and software business advisor and ex ecutive "This text fills an important gap in the knowledge-base of our industry: providing agile practices in the proven, scalable framework of the Unified Process With each practice able to be throttled to the unique context of a development organization, Kroll and MacIsaac provide software teams with the ability to balance agility and discipline as appropriate for their specific needs." Brian G Lyons, CTO , Num ber Six Software, Inc In Agility and Discipline Made Easy, Rational Unified Process (RUP) and O pen Unified Process (O penUP) ex perts Per Kroll and Bruce MacIsaac share twenty welldefined best practices that you and your team can start adopting today to im prove the agility, predictability, speed, and cost of software developm ent Kroll and MacIsaac outline proven principles for software developm ent, and supply a num ber of supporting practices for each You'll learn what problem s each practice addresses and how you can best leverage RUP and O penUP (an open-source version of the Unified Process) to m ak e the practice work for you You'll find proactive, prescriptive guidance on how to adopt the practices with m inim al risk and im plem ent as m uch or as little of RUP or O penUP as you want Learn how to apply sam ple practices from the Unified Process so you can Ex ecute your project in iterations Em brace and m anage change Test your own code Describe requirem ents from the user perspective Architect with com ponents and services Model k ey perspectives W hether you are interested in agile or disciplined developm ent using RUP, O penUP, or other agile processes, this book will help you reduce the anx iety and cost associated with software im provem ent by providing an easy, non-intrusive path toward im proved results without overwhelm ing you and your team Agility and Discipline Made Easy: Practices from OpenUP and RUP By Per Kroll, Bruce MacIsaac Publisher: Addison Wesley Professional Pub Date: May 19, 2006 Print ISBN-10: 0-321-32130-8 Print ISBN-13: 978-0-321-32130-5 Pages: 448 Table of Contents | Index Copyright Praise for Agility and Discipline Made Easy The Addison-Wesley Object Technology Series Foreword Preface About the Authors Chapter Leveraging Key Development Principles Where Do the Practices Come From? Using Practice Descriptions Adopting the Practices: Iterative Development, Levels of Ceremony, and Agility Key Development Principles Unified Process Lifecycle OpenUP/Basic Rational Unified Process (RUP) eXtreme Programming (XP) Scrum Summary Chapter Demonstrate Value Iteratively Practice Manage Risk Practice Execute Your Project in Iterations Practice Embrace and Manage Change Practice Measure Progress Objectively Chapter Focus Continuously on Quality Practice Test Your Own Code Practice Leverage Test Automation Appropriately Practice Everyone Owns the Product! Chapter Balance Stakeholder Priorities Practice Understand the Domain Practice Describe Requirements from the User Perspective Practice 10 Prioritize Requirements for Implementation Practice 11 Leverage Legacy Systems Chapter Collaborate Across Teams Practice 12 Build High-Performance Teams Practice 13 Organize Around the Architecture Practice 14 Manage Versions Chapter Elevate the Level of Abstraction Practice 15 Leverage Patterns Practice 16 Architect with Components and Services Practice 17 Actively Promote Reuse Practice 18 Model Key Perspectives Chapter Adapt the Process Practice 19 Rightsize Your Process Practice 20 Continuously Reevaluate What You Do Chapter Making Practical Use of the Best Practices Which Practices Should I Adopt First? Start with the Basics Adopt Related Practices Practices Supporting Iterative Development How Can RUP and EPF Help Me? Choosing the Right Pilot Project Conclusions Appendix A The Eclipse Process Framework (EPF) Why EPF? What Is EPF? Potential Users of EPF Extensible Process Content Software Process Engineering Metamodel Extensible Process Engineering Tools Participating in the Development of EPF Appendix B IBM Rational Method Composer (RMC) Process for a Variety of Projects Process for the Enterprise How the Practitioner Uses RMC How a Project Manager Uses RMC How Process Managers Use RMC Guiding Principles for Evolving IBM Rational Method Composer Glossary Bibliography Index Copyright Many of the designations used by m anufacturers and sellers to distinguish their products are claim ed as tradem ark s W here those designations appear in this book , and the publisher was aware of a tradem ark claim , the designations have been printed with initial capital letters or in all capitals IBM, ClearCase, O bjectory, PurifyPlus, Rational, Rational Unified Process, RequisitePro, RUP, SUMMIT, and SUMMIT Ascendant are registered tradem ark s of International Business Machines Corporation in the United States, other countries, or both Special perm ission to use and reproduce ex cerpts and im ages from the RUP product in Agility and Discipline Made Easy is granted by International Business Machines Corporation Eclipse is a tradem ark of Eclipse Foundation, Inc Som e of the m aterial in this book is adapted from The Rational Unified Process Made Easy (Per Kroll and Philippe Kruchten, © 2003 Pearson Education) Kroll/Kruchten, The Rational Unified Process Made Easy, p 146 Figure 8-3, p 302 Figure 15-5, © 2003 Pearson Education, Inc Reprinted by perm ission of Pearson Education, Inc., publishing as Pearson Addison-W esley All rights reserved Material in the introductions of Chapters 27 previously appeared in Per Kroll and W alk er Royce, "Key Principles for Business-Driven Developm ent," The Rational Edge, O ctober 2005 Used with perm ission The authors and publisher have tak en care in the preparation of this book , but m ak e no ex pressed or im plied warranty of any k ind and assum e no responsibility for errors or om issions No liability is assum ed for incidental or consequential dam ages in connection with or arising out of the use of the inform ation or program s contained herein The publisher offers ex cellent discounts on this book when ordered in quantity for bulk purchases or special sales, which m ay include electronic versions and/or custom covers and content particular to your business, training goals, m ark eting focus, and branding interests For m ore inform ation, please contact: U.S Corporate and Governm ent Sales (800) 382-3419 corpsales@pearsontechgroup.com For sales outside the United States please contact: International Sales international@pearsoned.com Visit us on the W eb: www.awprofessional.com Library of Congress Cataloging-in-Publication Data Kroll, Per Agility and discipline m ade easy : practices from O penUP and RUP / Per Kroll, Bruce MacIsaac p cm Includes bibliographical references and index ISBN 0-321-32130-8 (pbk : alk paper) Com puter softwareDevelopm ent Software engineering I MacIsaac, Bruce II Title Q A76.76.D47K746 2006 005.1dc22 2006003472 Copyright © 2006 Pearson Education, Inc All rights reserved Printed in the United States of Am erica This publication is protected by copyright, and perm ission m ust be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system , or transm ission in any form or by any m eans, electronic, m echanical, photocopying, recording, or lik ewise For inform ation regarding perm issions, write to: Pearson Education, Inc Rights and Contracts Departm ent 75 Arlington Street, Suite 300 Boston, MA 02116 Fax : (617) 848-7047 Tex t printed in the United States on recycled paper at Courier in Stoughton, Massachusetts First printing, May 2006 Dedication To Natasha, Per's wonderful daughter, conceived at the same time as this bookalmost and To Mary MacIsaac, Bruce's grandmother, who turns 112 as this book is completed Praise for Agility and Discipline Made Easy "The Japanese sam urai Musashi wrote: 'O ne can win with the long sword, and one can win with the short sword W hatever the weapon, there is a tim e and situation in which it is appropriate.' "Sim ilarly, we have the long RUP and the short RUP, and all sizes in between RUP is not a rigid, static recipe, and it evolves with the field and the practitioners, as dem onstrated in this new book full of wisdom to illustrate further the liveliness of a process adopted by so m any organizations around the world Bravo!" Philippe Kruchten, Professor, University of British Colum bia "The Unified Process and its practices have had, and continue to have, a great im pact on the software industry This book is a refreshing new look at som e of the principles underlying the Unified Process It is full of practical guidance for people who want to start, or increase, their adoption of proven practices No m atter where you are today in term s of software m aturity, you can start im proving tom orrow." Ivar Jacobson, Ivar Jacobson Consulting "Kroll and MacIsaac have written a m ust-have book It is well organized with new principles for software developm ent I encounter m any book s I consider valuable; I consider this one indispensable, especially as it includes over 20 concrete best practices If you are interested in m ak ing your software developm ent shop a better one, read this book !" Ricardo R Garcia, President, Global Rational User Group Council, www.rational-ug.org/index php "Agile software developm ent is real, it work s, and it's here to stay Now is the tim e to com e up to speed on agile best practices for the Unified Process, and this book provides a great starting point." Scott W Am bler, practice leader, Agile Modeling "IBM and the global econom y have becom e increasingly dependent on software over the last decade, and our industry has evolved som e discrim inating best practices Per and Bruce have captured the principles and practices of success in this concise book ; a m ust for ex ecutives, project m anagers, and practitioners These ideas are progressive, but they strik e the right balance between agility and governance and will form the foundation for successful system s and software developers for a long tim e." W alk er Royce, Vice President, IBM Software Services-Rational "Finally, the RUP is presented in digestible, byte-size pieces Kroll and MacIsaac effectively describe a set of practices that can be adopted in a lowcerem ony, ad hoc fashion, suited to the culture of the m ore agile project team , while allowing them to understand how to scale their process as needed." Dean Leffingwell, author and software business advisor and ex ecutive "This tex t fills an im portant gap in the k nowledge-base of our industry: providing agile practices in the proven, scalable fram ework of the Unified Process W ith each practice able to be throttled to the unique contex t of a developm ent organization, Kroll and MacIsaac provide software team s with the ability to balance agility and discipline as appropriate for their specific needs." Brian G Lyons, CTO , Num ber Six Software, Inc The Addison-Wesley Object Technology Series Grady Booch, Ivar Jacobson, and Jam es Rum baugh, Series Editors For m ore inform ation, check out the series web site at www.awprofessional.com /otseries Ahm ed/Um rysh, Developing Enterprise Java Applications with J2EE™ and UML Arlow/Neustadt, Enterprise Patterns and MDA: Building Better Software with Archetype Patterns and UML Arlow/Neustadt, UML and the Unified Process, Second Edition Arm our/Miller, Advanced Use Case Modeling: Software Systems Bellin/Sim one, The CRC Card Book Bergström /Råberg, Adopting the Rational Unified Process: Success with the RUP Binder, Testing Object-Oriented Systems: Models, Patterns, and Tools Bittner/Spence, Use Case Modeling Booch, Object Solutions: Managing the Object-Oriented Project Booch, Object-Oriented Analysis and Design with Applications, 2E Booch/Bryan, Software Engineering with ADA, 3E Booch/Rum baugh/Jacobson, The Unified Modeling Language User Guide, Second Edition Box et al., Effective COM: 50 Ways to Improve Your COM and MTS-based Applications Buck ley/Pulsipher, The Art of ClearCase® Deployment Carlson, Modeling XML Applications with UML: Practical e-Business Applications Clark e/Baniassad, Aspect-Oriented Analysis and Design Collins, Designing Object-Oriented User Interfaces Conallen, Building Web Applications with UML, 2E Denney, Succeeding with Use Cases D'Souza/W ills, Objects, Components, and Frameworks with UML: The Catalysis(SM) Approach Douglass, Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks, and Patterns Douglass, Real-Time Design Patterns: Robust Scalable Architecture for Real-Time Systems Douglass, Real Time UML, 3E: Advances in The UML for Real-Time Systems Eeles et al., Building J2EE™ Applications with the Rational Unified Process Fowler, Analysis Patterns: Reusable Object Models Fowler, UML Distilled, 3E: A Brief Guide to the Standard Object Modeling Language Fowler et al., Refactoring: Improving the Design of Existing Code Gom aa, Designing Concurrent, Distributed, and Real-Time Applications with UML Gom aa, Designing Software Product Lines with UML Heinck iens, Building Scalable Database Applications: Object-Oriented Design, Architectures, and Implementations Hofm eister/Nord/Dilip, Applied Software Architecture Jacobson/Booch/Rum baugh, The Unified Software Development Process Jacobson/Ng, Aspect-Oriented Software Development with Use Cases Jordan, C++ Object Databases: Programming with the ODMG Standard Kleppe/W arm er/Bast, MDA Explained: The Model Driven Architecture™: Practice and Promise Kroll/Kruchten, The Rational Unified Process Made Easy: A Practitioner's Guide to the RUP Kruchten, The Rational Unified Process, 3E: An Introduction LaLonde, Discovering Smalltalk Lau, The Art of Objects: Object-Oriented Design and Architecture Leffingwell/W idrig, Managing Software Requirements, 2E: A Use Case Approach Manassis, Practical Software Engineering: Analysis and Design for the NET Platform Marshall, Enterprise Modeling with UML: Designing Successful Software through Business Analysis McGregor/Syk es, A Practical Guide to Testing Object-Oriented Software Mellor/Balcer, Executable UML: A Foundation for Model-Driven Architecture Mellor et al., MDA Distilled: Principles of Model-Driven Architecture Naiburg/Mak sim chuk , UML for Database Design O estereich, Developing Software with UML, 2E: Object-Oriented Analysis and Design in Practice Page-Jones, Fundamentals of Object-Oriented Design in UML Pohl, Object-Oriented Programming Using C++, 2E Pollice et al Software Development for Small Teams: A RUP-Centric Approach Q uatrani, Visual Modeling with Rational Rose 2002 and UML Rector/Sells, ATL Internals Reed, Developing Applications with Visual Basic and UML Rosenberg/Scott, Applying Use Case Driven Object Modeling with UML: An Annotated e-Commerce Example Rosenberg/Scott, Use Case Driven Object Modeling with UML: A Practical Approach Royce, Software Project Management: A Unified Framework Rum baugh/Jacobson/Booch, The Unified Modeling Language Reference Manual Schneider/W inters, Applying Use Cases, 2E: A Practical Guide Sm ith, IBM Smalltalk Sm ith/W illiam s, Performance Solutions: A Practical Guide to Creating Responsive, Scalable Software Tk ach/Fang/So, Visual Modeling Technique Tk ach/Puttick , Object Technology in Application Development, Second Edition Unhelk ar, Process Quality Assurance for UML-Based Projects W arm er/Kleppe, The Object Constraint Language, 2E: Getting Your Models Ready for MDA W hite, Software Configuration Management Strategies and Rational ClearCasereg;: A Practical Introduction The Component Software Series Clem ens Szypersk i, Series Editor For m ore inform ation, check out the series web site at www.awprofessional.com /csseries Cheesm an/Daniels, UML Components: A Simple Process for Specifying Component-Based Software Szypersk i, Component Software, 2E: Beyond Object-Oriented Programming Foreword Since that first day when the first software developm ent team collaborated to deliver the first econom ically viable software-intensive system , there has been and continues to be a philosophical as well as a pragm atic battle over how best to organize a team and how to orchestrate its work At one ex trem e are those who advocate high-cerem ony processes involving rigidly defined artifacts and a strict ordering of activities; at the other ex trem e are those who em brace low-cerem ony processes involving a fierce focus on coding, with everything else considered irrelevant or inconsequential The pendulum has swung between these two ex trem es for years The good news is that, with decades of ex perience in delivering software-intensive system s behind us, it is now possible to identify what has work ed for successful organizations and reject what is com m on am ong unsuccessful ones This is the essence of the Unified Process, in both the Rational Unified Process (RUP) and its sim pler open-source version, O pen Unified Process (O penUP): RUP and O penUP are both sim ply elaborations of a sm all set of best practices that have proved them selves in practice In this book , Per and Bruce ex plain the six k ey principles that serve as the foundation of RUP and O penUP For each of these principles, the authors discuss the points of pain that each principle addresses, the contex t for that principle, and pragm atic advice on applying it Since no single process can work in the sam e fashion for every conceivable com bination of dom ain and developm ent culture, the authors go on to describe how each of these principles can be adapted across the full spectrum of low- to high-cerem ony use Per and Bruce are well suited to this task : both have engaged in a m ultitude of projects over the years, and both have been deeply involved in the form ulation of RUP and O penUP I can think of no authors better qualified to bring you the essence of these processes Grady Booch IBM Fellow Preface The goal of this book is to describe a set of well-defined practices that you and your team can start adopting today You can choose to adopt only one practice or adopt all of them over a period of tim e The practices in this book have been shown to im prove the quality, predictability, speed, and/or cost of software developm ent Why We Wrote This Book During m ore than a decade of assisting com panies in im proving their software developm ent practices and leading the developm ent of the Rational Unified Process (RUP), we have had the opportunity to see what work s and what doesn't W e have seen the rewards of successful adoption of RUP, and we have seen the challenges that projects and team m em bers m ay encounter along the way O ver the last few years, we have also learned a lot from the agile m ovem ent, with its increased focus on people and low-cerem ony approaches to software developm ent More recently, we have also been k ey drivers of an open source project, the Eclipse Process Fram ework (EPF), which includes the O pen Unified Process (O penUP)an open-source version of the Unified Process O ne of the objectives of EPF is to create a repository of industry practices, which are custom izable and can be assem bled into a set of out-of-the-box processes reflecting different developm ent styles Through all of this work , we have gained valuable ex periences in what work s and what doesn't, as well as how to pack age that k nowledge into pragm atic practices that can be easily adopted W e have found that m any com panies view im proving their software developm ent capabilities as a staggering task It seem s to be lik e eating an elephant: where you start, and how you go about it? The answer? You pick a tender spot and tak e one bite at a tim e The "tender spot" is where you have the m ost pain; the "one bite at a tim e" is one or two practices, one or two software disciplines, and/or one or two tools In other words, tak e "good bites." You don't want to chok e on them You want to be just a little bit hungry for the nex t bite This book describes a num ber of "good bites" that will allow you to start im proving your software developm ent capabilities today You can tak e one bite or a larger num ber of bites, all based on your appetite W e want to reduce the initial anx iety and cost associated with tak ing on a software im provem ent effort by providing an easy and unintrusive path toward im proved results, without overwhelm ing you and your team At the sam e tim e we want to show early results that k eep the m om entum going, thus m aintaining the interest and com m itm ent of everyone involved The practices in this book are written independently of any one specific process Tak en together, however, they cover m any k ey aspects of RUP and O penUP W e believe that this book will be an asset for projects and com panies interested in adopting som e or all of RUP or O penUP Each of the practices described in this book distills k nowledge from RUP, O penUP, and other sources to provide pragm atic guidance on how to solve a particular software developm ent problem They help you in your software im provem ent effort by attack ing one problem at a tim e Each practice describes how O penUP and RUP can help you adopt the practice and also references other m ethods such as eXtrem e Program m ing (XP) [1] and Scrum , [2] so that you can understand differences and sim ilarities in relation to other m ethods This book can also be valuable for projects and com panies with no interest in RUP or O penUP You can sim ply tak e any num ber of the practices in this book and adopt them on their own [1] See Beck 2004 [2] See Schwaber 2002 What Will You Learn from This Book? This book will fam iliarize you with the following: A num ber of k ey principles for software developm ent, which have been validated by thousands of successful software projects of different sizes in a variety of industries A num ber of concrete practices that you and your team can adopt today that support the k ey principles Each of the practices described provides inform ation on the following categories: - The problem the practice addresses - How you practically go about adopting the practice - Related practices - W here to read m ore about the practice - How to increm entally adopt practices with m inim al risk , and how to leverage RUP and O penUP Who Should Read This Book? This book is aim ed specifically at the following readers: All m em bers of a software developm ent team who would lik e to learn som e practices that can be applied today Team m em bers who would lik e to learn RUP or O penUP, one practice at a tim e This book does not give you an understanding of the com plete RUP or O penUP, but if you have understood the practices described in this book , you have com e a long way in learning about RUP and O penUP Managers, process engineers, and others who want to understand how key practices can be adopted in their organization, one practice at a tim e Structure and Content of This Book The book is divided into eight chapters Chapter provides an overview of six k ey principles for software developm ent that are used as a base for the structure of this book Chapter also provides an overview of RUP, O penUP, XP, and Scrum Chapters through review each of the six k ey principles in turn For each principle, we describe a num ber of practices that support it Most practices can be adopted individually, allowing you to understand how to m ak e quick im provem ents in your developm ent without having to im plem ent too m uch change Chapter describes how to adopt and benefit from these practices How to Read This Book This book can be read using any of three approaches: Read only the parts that m ak e sense for your team Start by reading Chapter Determ ine which k ey principle you think would add the m ost value to you and your team Go to the corresponding chapter Look through the practices listed for that chapter, and read those you find of m ost interest Does the problem addressed by each practice coincide with a problem you are facing, and is it worth fix ing? If so, share those with your team m em bers and get agreem ent to adopt the ones that pertain to your situation O nce you have adopted the identified practices, use the sam e approach to identify the nex t set of practices to read up on This approach is described in m ore detail in Chapter Read the parts that are relevant for your role Note that since software developm ent is a team effort, it is good to be at least som ewhat fam iliar with practices for other roles The list below identifies the chapters and practices that probably are the m ost applicable for each of the roles on a software team - Project Manager: read Chapters and and Practices 14, 710, 1213, and 1920 - Architect: read Chapter and Practices 1, 2, 1011, 1518, and 20 - Analyst: read Chapter and Practices 12, 710, 12, and 20 - Developer: read Chapter and Practices 12, 59, 1112, 1418, and 20 - Tester: read Chapter and Practices 12, 49, 12, and 20 Read the book from start to finish to learn as m uch as possible about practices applicable for all m em bers on your team For More Information To learn m ore about or to download EPF and O penUP, go to the Eclipse Foundation W eb site at www.eclipse.org/epf/ RUP is delivered through the product IBM Rational Method Com poser (RMC) Additional inform ation about RUP or RMC, including a data sheet and a product dem o, can be obtained from IBM at http://www.ibm com /software/awdtools/rm c/ Inform ation about the Rational Software Global User Group Com m unity can be found at http://www.rational-ug.org/index php.Academ ic institutions can contact IBM for inform ation on a special program for including RUP in a software engineering curriculum at http://www.ibm com /university/ Acknowledgments The ideas and thoughts synthesized in this book have been derived from m any sources W e have learned a lot from the m any talented individuals inside and outside IBM who have helped shape RUP and m ak e it work in the trenches W e have also learned from the agile com m unity, Eclipse, and the various process com m unities W e especially appreciate those who challenged our ideas, helping us to evolve and sharpen what we present in this book This book would not have been written if not for the RUP product and its current product team : Am anda Brijpaul, Ricardo Balduino, Trevor Collins, Carlos Goti, Michael Hanford, Peter Haum er, Margaret Hedstrom , Kelli Houston, Russell Pannone, Thierry Paradan, Cecile Peraire, Dan Popescu, Michael Stern, Pawan Rewari, Jim Ruehlin, Jeff Sm ith, John Sm ith, and Gordon Schneem ann O ver the years, the Rational field team s and technical ex perts have accum ulated a lot of ex perience in im plem enting and using RUP W e are grateful for the m any perceptive review com m ents and ideas from these ex perts, who have added m any insights into what does and does not work out in the trenches W e would especially lik e to recognize David Alvey, Kurt Bittner, Bill Cottrell, Peter Eeles, Bill Higgins, Kelli Houston, Saif Islam , W alk er Royce, and John Sm ith O ur ex ternal reviewers provided invaluable feedback , forcing us to rethink the structure and content of the book and hopefully helping us to create a book that is easier to read and addresses the m ost relevant issues for a book about agility and discipline These insights were provided by Scott Am bler, Joshua Barnes, Lisa Crispin, Jim Dunion, Ivar Jacobson, Philippe Kruchten, Tom Poppendieck , Dan Rawsthorne, Chris Sosk in, Christoph Steindl, Garth Richm ond, Dave Thom as, David Trent, and Michael Vizdos Heath Newburn, Ted Rivera, and Scott W ill assisted us through their deep ex pertise in testing, each contributing a practice to this book , for which we are m ost grateful Catherine Southwood and Deborah Fogel deserve special thank s for m ak ing a proper m anuscript out of our scribbles, as did Mik e Perrow W riting a book always tak es m ore tim e than you think it will, and we want to thank our wives and k ids, Susan and Natasha Kroll, along with Kathy, Blaise, and Courtney MacIsaac, for being patient with the m any week ends and nights spent writing and rewriting the book Finally, m any thank s to our editor, W illiam Zobrist, for corralling us through the writing process; to Mary O 'Brien, for tak ing on this book ; and to the production and m ark eting team s at Addison-W esley, notably Tyrrell Albaugh, Stephane Nak ib, and Kim Silvestro, for helping us to get this book out Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] NTTComware Null pointer dereferences Number Six Software Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] Object Management Group (OMG) 2nd Business Process Modeling Notation (BPMN) and EPF model-driven architecture (MDA) Reusable Asset Specification (RAS) 2nd 3rd software process engineering metamodel (SPEM) Unified Method Architecture (UMA) Object Mentor Objectory AB Objectory Process and Rational Process Open source process framework Open source software 2nd Open source testing cautions Open standards OpenUP 2nd 3rd OpenUP/Basic 2nd 3rd Organization around feature sets Organize around the architecture Out-of-the-box processes Outcome Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] Pair programming (XP practice) 2nd 3rd Parallel development 2nd Part-time workers Partial implementation Patterns automated application benefits documenting and enforcing overuse of persistency proxy design and reference architecture software architecture software design UML for documenting Performance testing 2nd Persistency patterns Personalization Perspectives Phase Plan Phases of project Pilot project Platform dependencies 2nd Platform testing Platform-independent model (PIM) Platform-specific model (PSM) Plug-ins 2nd Points-based measurements Portfolio management Postconditions Practices lists summary list supporting iterative development Practices (XP) Preconditions Presentation patterns PriceWaterhouseCoopers Principles (XP) Principles, list of Prioritizing requirements advocates classifying requirements identifying deliverable increments identifying requirements identifying scenarios requirements attributes stakeholders' goals Problem domain Process advisor Process assets Process authoring Process configuration Process engineering Process improvement plan Process managers Process map 2nd 3rd Process pattern Process view Product Backlog (Scrum) 2nd Product Backlog burn-down report Program management 2nd Progress measurement 2nd burn-down charts and defects earned value 2nd and estimation Inception phase and misinterpretation necessity of readjusting estimates simplest measure trends visualize progress Progressive acquisition Project estimation large or long projects Project manager and prioritization relevant practices for Project sponsors Project velocity Prototypes 2nd Proxy design pattern PSM (platform-specific model) Publishing a process configuration Pure-Atria Purify Plus Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] Quality 2nd Quality assurance Quality by Design Quarterly cycle (XP practice) Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] Ranking sessions RAS (Reusable Asset Specification) 2nd 3rd Rational Approach Rational Method Composer (RMC) 2nd available processes components enterprise content and EPF guidance history personalization practitioner support and process manager use productivity tools and project manager use and RUP Rational Objectory Process Rational Process and Objectory Process Rational Software 2nd Rational Software Global User Group Community Rational Unified Process [See RUP (Rational Unified Process).] Refactoring 2nd 3rd 4th and EPF Reference architecture 2nd Regression testing 2nd 3rd 4th Replaceability Repositories for assets Request for Information (RFI) Request for Proposals (RFP) Requirements 2nd flowdown modeling testing traceability view Requirements management Requisite, Inc Resource leaks Respect (as XP value) 2nd Results-based progress Retrospectives 2nd 3rd Return code Reusable Asset Specification (RAS) 2nd 3rd Reusable assets Reusable behavior Reusable patterns Reuse 2nd 3rd asset repositories barriers to reuse candidates for reuse encouraging reuse by others and EPF from examples of middleware program management reuse-friendly trends rule of three and standard representation "Reuseless" assets Risk avoidance 2nd Risk management documenting risks focusing the team identifying risks impact management strategies mitigation open discussion probability risk list 2nd risk reduction profiles risk transfer RMC [See Rational Method Composer (RMC).] Roles Royce, Walker 2nd 3rd Rule of three Runtime analysis 2nd RUP (Rational Unified Process) 2nd architecture views iteration length and OpenUP/Basic and RMC 2nd Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] Sanitizing of shared assets Scaffolding code Scalable collaboration infrastructure Scalable platforms Scalable processes Scaling your process Scenarios (in use cases) 2nd 3rd 4th Scenarios, general (SEI) Schwaber, Ken Scrum 2nd 3rd 4th founders iteration length 2nd 3rd meetings origin of name Product Backlog 2nd and risk management sprint Sprint Backlog SEI (Software Engineering Institute) general scenarios SEI Carnegie Mellon 2nd SEI CMMI 2nd 3rd Service (definition) Service component Service-oriented architecture 2nd 3rd 4th 5th "Shall statements," Shared responsibility Shared values 2nd Simple Object Access Protocol (SOAP) Simplicity (as XP value) Sit together (XP practice) Sitting together Six principles Slack (XP practice) Small projects Small teams Smoke testing 2nd Softeam Software architecture patterns Software design patterns Software Development Plan Software process engineering metamodel (SPEM) Software Process Improvement Networks (SPIN) Sogeti Source-level debuggers SOX Specification 2nd Spiral model Sprint 2nd Sprint Backlog (Scrum) Sprint goal (Scrum) Sprint Goals SQA Stakeholders 2nd Standard notation Standard representation and reusability Standish Group research 2nd 3rd 4th Static code analysis Status updates within teams Stories (XP practice) Storyboard Streams for parallel development and variants Stress testing Structural patterns Structure diagrams Stubs 2nd Subsystem teams Subsystems 2nd Success, measuring 2nd SUMMIT Ascendant 2nd SUMMIT systems delivery Sun "Sunsetting" processes Super-iterations 2nd Supplementary requirements Supplementary Specifications Supporting requirement Sutherland, Jeff 2nd System integrators Systems engineering 2nd Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] Tasks Team(s) building high-performance collaboration committment communication culture family atmosphere of integration large teams responsibility and risks 2nd shared meals shared values size for pilot project subsystem success support for new hires Teamwork, promoting Templates and reusability Ten-minute build (XP practice) Test automation cost environmental manual testing myths regression testing scope and sizing stress and performance user interface Test drivers Test harnesses Test progress trends Test stubs 2nd Test-driven development (TDD) Test-first design Test-first programming (XP practice) 2nd Testability Tester, relevant practices for Tester's mindset 2nd Thrashing Tivoli Unified Process Tool mentors Traceability 2nd 3rd Tracing Transient information, tagging Transition phase 2nd 3rd 4th 5th Translation issues Traveling light 2nd Trust Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] Unified Method Architecture (UMA) Unified Modeling Language (UML) activity diagram 2nd for documenting patterns and domain models 2nd notation 2nd tools Unified Process [See UP (Unified Process).] Unisys Unit testing and breaking dependencies Universal Description, Discovery, and Integration (UDDI) University of British Columbia Unused features 2nd UP (Unified Process) 2nd 3rd lifecycle 2nd 3rd and measuring progress and testing USC Center for Software Engineering 2nd Use cases 2nd 3rd 4th descriptions primary audience and work items Use-case model Use-case-driven development User interface prototypes User stories (XP) 2nd 3rd User-centered engineering User-interface testing Users Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] Values (XP) Values for teams Variants Version control system 2nd Vertical organization Vision 2nd Visual information Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] Waterfall process 2nd 3rd 4th 5th 6th 7th and risk management Web services and reuse Web Services Definition Language (WSDL) Weekly cycle (XP practice) Whole team (XP practice) 2nd "Why" questions Wiegers, Karl Wiki Winchester Mystery House Wind River Winning from the start Work breakdown structure (WBS) Work items 2nd 3rd Work products Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] XML (eXtensible Markup Language) 2nd XP (eXtreme Programming) 2nd compared with UP core values 2nd 3rd fourteen principles iteration length and measuring progress and ownership pair programming primary practices and risk management and testing user stories 2nd XP iteration length Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] Yahoo! groups .. .Agility and Discipline Made Easy: Practices from OpenUP and RUP By Per Kroll, Bruce MacIsaac Publisher: Addison Wesley Professional Pub Date: May 19, 2006 Print ISBN- 10: 0-321-32130-8... Cataloging-in-Publication Data Kroll, Per Agility and discipline m ade easy : practices from O penUP and RUP / Per Kroll, Bruce MacIsaac p cm Includes bibliographical references and index ISBN 0-321-32130-8 (pbk... Manager: read Chapters and and Practices 14, 710, 1213, and 1920 - Architect: read Chapter and Practices 1, 2, 1011, 1518, and 20 - Analyst: read Chapter and Practices 12, 710, 12, and 20 - Developer:

Ngày đăng: 19/04/2019, 13:40

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan