Disciplined Agile Delivery: Workshop Overview © Scott Ambler +

Total Page:16

File Type:pdf, Size:1020Kb

Disciplined Agile Delivery: Workshop Overview © Scott Ambler + Disciplined Agile Delivery: Workshop Overview Advanced Disciplined Agile Delivery Workshop Overview Mark Lines Scott W. Ambler [email protected] [email protected] Mark_Lines scottwambler © Scott Ambler + Associates 1 Objectives of this Workshop • To learn what the Disciplined Agile Delivery (DAD) process framework is and how it compares to other agile methods • To learn how common development activities are addressed throughout a disciplined agile project • To discover how a goal-driven approach provides a non-prescriptive, scalable foundation for agile solution delivery • To learn what it means to scale agile approaches • To learn how to adopt disciplined agile strategies © Scott Ambler + Associates 2 © Scott Ambler + Associates 1 Disciplined Agile Delivery: Workshop Overview How we will learn… • This is a workshop, not a lecture • Ask questions – Lots of discussion time is built into the schedule • Many labs are built into the workshop, to learn by doing • You are going to have fun, we promise! © Scott Ambler + Associates 3 Introductions • Your name and current role • Your current and/or recent project • Your experience with agile • One thing that you believe to be true about agile development • One question about agile that still puzzles you © Scott Ambler + Associates 4 © Scott Ambler + Associates 2 Disciplined Agile Delivery: Workshop Overview Audience Anyone willing to learn with an open mind Agile knowledge is necessary Agile development experience is not necessary, although very useful © Scott Ambler + Associates 5 Agenda • Day 1: – Introduction to DAD – DAD Roles: A Deeper Look – Activities throughout the lifecycle – Governing DAD teams • Day 2: – DAD as a foundation from which to scale agile – Scaling DAD – Transitioning to DAD © Scott Ambler + Associates 6 © Scott Ambler + Associates 3 Disciplined Agile Delivery: Introduction to DAD Disciplined Agile Delivery Introduction to DAD © Scott Ambler + Associates 1 Learning Objectives for this Module • Understand what DAD is and why we need it • Discover why DAD is called a “process decision framework” • Understand the basic and advanced DAD Lifecycles • Learn how DAD is goal-driven • To be introduced to the three phases of the DAD lifecycle © Scott Ambler + Associates 2 © Scott Ambler + Associates 1 Disciplined Agile Delivery: Introduction to DAD Agenda • Disciplined Agile Delivery (DAD) • Characteristics of Good Teams • A Hybrid Framework • Potential DAD Lifecycles • Comparing Terminology • Enterprise Awareness • Goal-Driven, Not Prescriptive • How it Works in Practice • Tailoring and Scaling Agile © Scott Ambler + Associates 3 Discussion: What Are You Doing on Agile Projects? • What agile projects have you been on? • What was different compared with non-agile ones? • What was the same? • What types of activities you do to initiate the project and how long did it take? (e.g. Did you do any initial modeling or planning? Did you need to get provide estimates go get funding? Other activities?) • What activities did you do during construction? (e.g. How did you approach documentation? Planning? Testing?) • What did you need to do to deploy/release your solution into production? How long did it take? © Scott Ambler + Associates 4 © Scott Ambler + Associates 2 Disciplined Agile Delivery: Introduction to DAD Disciplined Agile Delivery (DAD) Disciplined Agile Delivery (DAD) is a process decision framework The key characteristics of DAD: – People-first – Goal-driven – Hybrid agile – Learning-oriented – Full delivery lifecycle – Solution focused – Risk-value lifecycle – Enterprise aware © Scott Ambler + Associates 5 Roles on DAD Teams • Team Lead – Agile process expert, keeps team focused on achievement of goals, removes impediments • Product Owner – Owns the product vision, scope and priorities of the solution • Architecture Owner – Owns the architecture decisions and technical priorities, mitigates key technical risks • Team Member – Cross-functional team members that deliver the solution • Stakeholder – Includes the customer but also other stakeholders such as Project Sponsor, DevOps, architecture, database groups, governance bodies © Scott Ambler + Associates 6 © Scott Ambler + Associates 3 Disciplined Agile Delivery: Introduction to DAD Characteristics of Good Teams • The majority of team members should be “generalizing specialists” – Also known as “T-Skilled” people • DAD teams and team members should be: – Self-disciplined , in that they commit only to the work which they can accomplish and then perform that work as effectively as possible. – Self-organizing , in that they will estimate and plan their own work and then proceed to collaborate iteratively to do so. – Self-aware , in that they strive to identify what works well for them, what doesn’t, and then learn and adjust accordingly. © Scott Ambler + Associates 7 DAD is a Hybrid Framework DevOps …and more Extreme Outside In Dev. Agile Data Programming Unified Process Agile Modeling Scrum Kanban Lean DAD leverages proven strategies from several sources, providing a decision framework to guide your adoption and tailoring of them in a context-driven manner. © Scott Ambler + Associates 8 © Scott Ambler + Associates 4 Disciplined Agile Delivery: Introduction to DAD Full Delivery Lifecycle: A High-Level View © Scott Ambler + Associates 9 DAD Lifecycle: Basic/Agile © Scott Ambler + Associates 10 © Scott Ambler + Associates 5 Disciplined Agile Delivery: Introduction to DAD DAD Lifecycle: Advanced/Lean © Scott Ambler + Associates 11 The Phases Disappear Over Time First release: Inception Construction Transition Second release: I Construction T Third release: I Construction T . Nth + releases: C T C T C T C T © Scott Ambler + Associates 12 © Scott Ambler + Associates 6 Disciplined Agile Delivery: Introduction to DAD DAD Lifecycle: Continuous Delivery © Scott Ambler + Associates 13 Comparing DAD and Scrum Terminology DAD Term Scrum Term Iteration Sprint Team lead ScrumMaster * Coordination meeting (Daily) Scrum meeting Retrospective Sprint retrospective Demo Sprint demo * These roles aren’t completely the same, but close © Scott Ambler + Associates 14 © Scott Ambler + Associates 7 Disciplined Agile Delivery: Introduction to DAD Discussion: Enterprise Awareness • What other teams might an agile team need to interact with in your organization? • Do these teams work in an agile manner? If not, what are you doing to address this? • What information do your agile teams need to provide to senior management for governance purposes? Why? • Are your agile teams expected to conform to an existing technical architecture? Organizational business vision? If so, how is this supported? • Do you have coding guidelines to follow? Data guidelines? Usability? Security? Other? How are they supported or enforced? • If you were CEO for a day, what would you do to address these issues more effectively? © Scott Ambler + Associates 15 DAD is Goal-Driven © Scott Ambler + Associates 16 © Scott Ambler + Associates 8 Disciplined Agile Delivery: Introduction to DAD Disciplined Agilists Take a Goal Driven Approach Advantages Option Goal * Issue * Disadvantages Default Option Considerations Explore the Initial Source Scope Team size Team structure Form the Co-located Team members Initial Team Partially dispersed Geographic distribution Fully dispersed Supporting the team Address Changing Distributed subteams Availability Stakeholder Needs © Scott Ambler + Associates 17 Goal: Develop Common Vision © Scott Ambler + Associates 18 © Scott Ambler + Associates 9 Disciplined Agile Delivery: Introduction to DAD Exercise: Goal Driven • Get into small teams of 5-8 people • For 10 minutes, discuss: – Are the goals for Inception reasonable? Why or why not? – What factors will affect the amount of work and time required to address the goals of the Inception phase? – Are the goals of Construction reasonable? Why or why not? – Assuming that you need to meet those goals every iteration, what factors will affect the length of a construction iteration? – What do you think the differences are in the way that teams work when they have a four week iteration compared to a two week iteration? Compared to a one week iteration? – Are the goals for Transition reasonable? Why or why not? – How long do teams in your organization take to deploy into production today? What would they need to do to be able to deploy a new release once a month? Once a week? Once a day? © Scott Ambler + Associates 19 The Agile 3C (Coordinate-Collaborate-Conclude) Rhythm Release rhythm Inception Construction Transition Day to weeks Several iterations Hours to weeks Iteration rhythm Iteration Iteration wrap Development planning up A few hours Several days A few hours Coordination Daily rhythm Daily Work Stabilize Meeting A few minutes Several hours Varies Coordinate Collaborate Conclude © Scott Ambler + Associates 20 © Scott Ambler + Associates 10 Disciplined Agile Delivery: Introduction to DAD The Inception phase © Scott Ambler + Associates 21 The Construction phase © Scott Ambler + Associates 22 © Scott Ambler + Associates 11 Disciplined Agile Delivery: Introduction to DAD A Construction Iteration © Scott Ambler + Associates 23 A Typical Day of Construction © Scott Ambler + Associates 24 © Scott Ambler + Associates 12 Disciplined Agile Delivery: Introduction to DAD The Transition phase © Scott Ambler + Associates 25 Context Counts – Tailoring and Scaling Agile Disciplined agile delivery with one or more complexity factors: ° Large teams Agility ° Geographically distributed teams at ° Compliance Scale
Recommended publications
  • Comparative Study on Agile Software Development Methodologies
    Global Journal of Computer Science and Technology Software & Data Engineering Volume 13 Issue 7 Version 1.0 Year 2013 Type: Double Blind Peer Reviewed International Research Journal Publisher: Global Journals Inc. (USA) Online ISSN: 0975-4172 & Print ISSN: 0975-4350 Comparative Study on Agile Software Development Method- ologies By A B M Moniruzzaman & Dr. Syed Akhter Hossain Daffodil International University, Bangladesh Abstract - Today‘s business environment is very much dynamic, and organizations are constantly changing their software requirements to adjust with new environment. They also demand for fast delivery of software products as well as for accepting changing requirements. In this aspect, traditional plan-driven developments fail to meet up these requirements. Though traditional software development methodologies, such as life cycle-based structured and object oriented approaches, continue to dominate the systems development few decades and much research has done in traditional methodologies, Agile software development brings its own set of novel challenges that must be addressed to satisfy the customer through early and continuous delivery of the valuable software. It‘s a set of software development methods based on iterative and incremental development process, where requirements and development evolve through collaboration between self-organizing, cross-functional teams that allows rapid delivery of high quality software to meet customer needs and also accommodate changes in the requirements. In this paper, we significantly indentify and describe the major factors, that Agile development approach improves software development process to meet the rapid changing business environments. We also provide a brief comparison of agile development methodologies with traditional systems development methodologies, and discuss current state of adopting agile methodologies.
    [Show full text]
  • Disciplined Agile
    Disciplined Agile Jas Madhur and Scott Ambler Presentation for PMI Luxembourg November 22nd, 2016 - Chambre des Metiers, Kirchberg #pmiluxagile Agenda • Part 1 – Jas Madhur (Luxembourg) • Part 2 – Plan A - Scott Ambler (Toronto) • Part 2 – Plan B – Slides. No refunds. Free event. Even food! Sponsors. • agilepartner • Since 2004 architecting agile information systems • Don’t worry be AP! • Lux – Advisory • Since 2009 consulting company specialising in organisation and strategy Questions and comments use #pmiluxagile Part 1 - Jas Madhur – Who am I? • PMI Luxembourg – Director of Finance … 2017 + Sponsorship • Agile Practitioner / Methodologist • 1993 Iterative/Object Oriented Development (Canadian Air Traffic System) • 1997 Rational Unified Process (RUP) Development Team (IBM Rational Software) • 2004 Agile Vancouver – Dr.Philippe Kruchten • 2008 Agile Toronto – Scott Ambler • 2011 Luxembourg • AZUR ERP for Health Insurance Companies • SMEs • Agile RUP (Matisse) • PM / PMO • Write proposals and submit tenders EU institutions at infeurope • jasmadhur.blogspot.com - @jmadhur Who are you? Why are we here? • Audience • IT Project Managers • HR • Curious about what is all this ‘AGILE’ noise is about? • Know • Agile. Like teenage romance. Rampant and variable. Great experts. Let’s hope it’s safe. • Patterns and anti-patterns of agile and agility. • Do • How could the agile approach be useful throughout your organization? • Think • Being agile stimulates evolution and innovation. • Feel • Being agile and adaptive is engrained in our DNA. • It’s natural. The Context • Software/Systems Engineering • 1 Dimensional .. Waterfall .. DoD Mil-Spec 2167a • 2 Dimensional .. Iterative .. IBM Rational Unified Process (RUP) (1996) • Market Pressures of the “Internet Economy” • Small Teams • The Agile Movement • Rapid Delivery and Innovation • A Balanced Reliable Approach • Disciplined Agile DoD Mil-Spec 2167a (1989) Hardware (HW) Computer Software (CS) Unit (U) Component (C) Configuration Item (CI) Baselines WATERFALL 1.
    [Show full text]
  • Disciplined Agile Delivery Enterprise Transformation Coach Helping to Create Agile and Lean Enterprises Around the World
    Governance, Phases, and Milestones are not Agile Dirty Words! Mark Lines, Scott Ambler + Associates Co-creator of Disciplined Agile Delivery Enterprise Transformation Coach Helping to create Agile and Lean enterprises around the world @Mark_Lines © Scott Ambler + Associates 1 DAD Has Caught On! - Organizations using Disciplined Agile Delivery (DAD) © Scott Ambler + Associates 2 Disciplined Agile Delivery (DAD) is a process decision framework The key characteristics of DAD: – People-first – Goal-driven – Hybrid agile – Learning-oriented – Full delivery lifecycle – Solution focused – Risk-value lifecycle – Enterprise aware © Scott Ambler + Associates 3 DAD is a Hybrid Framework SAFe DevOps …and more Outside In Dev. “Traditional” Agile Data Extreme Unified Process Agile Modeling Programming Scrum Kanban Lean DAD leverages proven strategies from several sources, providing a decision framework to guide your adoption and tailoring of them in a context-driven manner. © Scott Ambler + Associates 4 DAD is Goal-Driven, Not Prescriptive © Scott Ambler + Associates 5 © Scott Ambler + Associates 6 Functional Requirements: Potential Model Types Usage Domain Epic/User Story Domain/Conceptual Model Persona Logical Data Model (LDM) Usage Scenario UML Class Diagram Story Mapping UML Component Diagram UML Use Case Diagram User Interface (UI) Process Value Stream Map UI Flow Diagram Business Process Model UI Prototype (Low Fidelity) Data Flow Diagram (DFD) UI Prototype (High Fidelity) Flow Chart UI Specification UML Activity Diagram UML State Chart General
    [Show full text]
  • Quality in an Agile World Software
    TALKING POINTS Quality is an inherent aspect of true agile software development. The majority of agilists take a test-driven approach to development where they write a unit test Quality in an before they write the domain code to fulfill that unit test, with the end result being that they have a regression unit test suite at all Agile World times. They also consider acceptance tests as first-class requirements artifact, not only promoting regular stakeholder validation of BY SCOTT AMBLER their work but also their active inclusion in Ambysoft, Inc. the modeling effort itself. Agilists refactor their source code and database schema to keep their work at the highest possible qual- ity at all times. The challenge for quality professionals is that agilists work in a highly INTRODUCTION collaborative and evolutionary (iterative and Modern software processes are evolutionary, iterative, and incremental) manner, often requiring tradi- incremental in nature. This includes processes such as Rational tional quality professionals to change their Unified Process (RUP) (Kruchten 2004), Extreme Programming approach. (XP) (Beck 2000), Enterprise Unified Process (EUP) (Ambler, Key words: agile model driven development, Nalbone, and Vizdos 2005), and rapid application development agile software development, collaborative (RAD), to name a few. Furthermore, many modern processes development, evolutionary, incremental are agile, which for the sake of simplicity I will characterize as development, iterative development, refac- toring, software processes, test-driven both evolutionary and highly collaborative in nature. The fun- development damental nature of software development is changing, and qual- ity professionals must change with it. In this article I introduce SQP References readers to common agile software development techniques and The Role of Testers in the Agile Methods argue that they lead to software that proves in practice to be of much higher quality than what traditional software teams usu- vol.
    [Show full text]
  • Requirements Engineering and Agile Methodology
    Requirements – Architecture - Agility R. Kuehl/J. Scott Hawker p. 1 R I T Software Engineering Requirements Engineering and Agile Processes (You may be thinking) Requirements engineering model as presented is not very agile Writing a SRS, etc. sounds like a classic heavy weight process It is! But, two points to consider as good software engineers: 1. Fit the software methodology and process to the problem 2. Agile processes do equivalent requirement engineering activities – still need requirements validated by stakeholders for success R. Kuehl/J. Scott Hawker p. 2 R I T Software Engineering Requirements and Agile Traditional approach – the requirements document Agile argument against tradition Communication gaps between authors and readers Change cycle is too long Challenging to capture the complete problem and system context Brain’s capacity to retain information Agile answer: Continuous collaboration with stakeholders . Workshops, conversation Stories (index cards) record conversations Are they the requirements? R. Kuehl/J. Scott Hawker p. 3 R I T Software Engineering Requirements Engineering in Agile Processes Where is the Knowledge? Requirements Eng. Agile Methodology 1. Elicitation 1. Stories 2. Iteration design, 2. Analysis customer collaboration 3. Specification 3. Stories, code, acceptance tests, unit 4. Validation tests 5. Management 4. Customer collaboration, acceptance tests 5. Planning cycle, frequent iterations R. Kuehl/J. Scott Hawker p. 4 R I T Software Engineering A Picture Worth a 1000 Words Requirements Waterfall Incremental Evolutionary “Classic” or agile style Design Always maps Construction (coding & testing) Deployment The Requirements Engineering Model The General Software Engineering Framework R. Kuehl/J. Scott Hawker p. 5 R I T Software Engineering R.
    [Show full text]
  • Ambler Keynote
    Disciplined Agile Delivery: A Principled Approach Scott W. Ambler Senior Consulting Partner scott [at] scottambler.com @scottwambler We’re going to cover a lot of ground © Disciplined Agile Consortium The Story I’m About to Tell © Disciplined Agile Consortium Agile software teams are building awesome race car engines… © Disciplined Agile Consortium …but they are surrounded by organizational tractors © Disciplined Agile Consortium To win the race we need to build a high performing race car… © Disciplined Agile Consortium …supported by an effective team to race it © Disciplined Agile Consortium It’s time to rethink our strategy © Disciplined Agile Consortium © Disciplined Agile Consortium Principle #1: Empiricism is far more important than theory © Disciplined Agile Consortium Disciplined Agile (DA) is a process decision framework The DA framework is empirical: – Originally based on observations from dozens of organizations world wide, and has evolved since then based on continuing observations – Encapsulates inputs from hundreds of practitioners – Hybrid framework that adopts proven ideas from many sources, including agile, lean, and traditional methods and frameworks – Implements insights from industry research © Disciplined Agile Consortium Principle #2: Context counts © Disciplined Agile Consortium Teams are composed of unique individuals… © Disciplined Agile Consortium …and every team faces a unique situation… Team Size Two Hundreds Geographic Distribution Co-located Global Organizational Distribution Single division Outsourcing Compliance
    [Show full text]
  • Contextualizing Agile Software Development
    Contextualizing Agile Software Development Philippe Kruchten, Ph.D., P.Eng. Kruchten Engineering Services Ltd Vancouver, BC, Canada Abstract This paper presents a contextual model for software-intensive systems development to guide the adoption and adaptation of agile software development practices. This model was found especially useful when the project context departs significantly from the “agile sweet spot”, i.e., the ideal conditions in which agile software development practices originated from, and where they are most likely to succeed, “out of the box”. This is the case for large systems, distributed development environment, safety-critical systems, system requiring a novel architecture, or systems with an unorthodox business model or governance model. Keywords Agile software development, software development process, process adaptation 1 Introduction 1.1 Agility defined Drawing from earlier definitions from Jim Highsmith [1] or from Steve Adolph and the OODA loop [2], we define agility as “the ability of an organization to react to changes in its environment faster than the rate of these changes.” This definition uses the ultimate purpose or function of being agile for a busi- ness, rather than defining agility by a labeled set of practices (e.g., you’re agile when you do XP [3], Lean [4-6], or Scrum [7-9]) or by a set of properties defined in opposition to another set -- the agile manifesto approach [10]. This definition is not too far from that Kieran Conboy arrived at in his survey of agile process development literature [11]. An analogy could be the definition of a road. Would you define a road as something made of crushed rocks and tar, or define it as a surface that is black rather than white, flat rather than undulated, and with painted lines rather than monochrome? Or would you rather define a road as a component of a transportation system, allowing people and goods to be moved on the ground surface from point A to point B? And then let the properties or components of the road be derived from this, allowing some novel approaches in road design.
    [Show full text]
  • Disciplined Agile Delivery (DAD): the Foundation for Scaling Agile
    Disciplined Agile Delivery (DAD): The Foundation for Scaling Agile Scott W. Ambler Chief Methodologist for Agile and Lean, IBM Rational www.ibm.com/developerworks/blogs/page/ambler twitter.com/scottwambler © 2012 IBM Corporation We hope that you find these slides useful. If you would like to discuss this topic further, please contact IBM. 1 2 Agenda 1 Agile Fundamentals 2 Disciplined Agile Delivery (DAD) 3 Agility at Scale 4 Parting Thoughts 2 © 2012 IBM Corporation 2 What is agile? Agile is a highly collaborative, evolutionary, quality focused approach to software development. How agile is different: –Focus on collaboration –Focus on quality –Focus on working solutions –Agilists are generalizing specialists –Agile is based on practice, not theory 3 © 2012 IBM Corporation Focus on collaboration: Less paperwork and more conversation Stakeholders actively involved Focus on quality: Have a full regression test suite for your systems Develop loosely-coupled, highly cohesive architectures Refactor to keep them this way Focus on working solutions: Greater feedback makes agile projects easier to manage Less documentation is required Less bureaucracy Agilists are generalizing specialists: Fewer hand offs between people Fewer people required Specialists find it difficult at first to fit into the team Agile is based on practice, not theory: This is a significant change from traditional You need to see how agile works in practice to truly understand it 3 Why agile? Higher success rates Iterative Agile Lean Ad-Hoc Traditional 0% 20% 40% 60% 80% 100% Successful Challenged Failed Source: DDJ 2011 IT Project Success Survey 4 © 2012 IBM Corporation Detailed results online at www.ambysoft.com/surveys/ Success as defined by the respondent (this is the same for all slides in this deck).
    [Show full text]
  • Disciplined Agile Delivery: an Introduction 2 Disciplined Agile Delivery: an Introduction
    IBM Software Thought Leadership White Paper Design and development Disciplined Agile Delivery: An introduction 2 Disciplined Agile Delivery: An introduction Make no mistake, agile is not a fad. When mainstream agile Unfortunately, we need to take adoption rate survey results with methods such as Scrum and Extreme Programming (XP) were a grain of salt: A subsequent Ambysoft survey found that only introduced, the ideas contained in them were not new, nor were 53 percent of people claiming to be on “agile teams” actually they even revolutionary at the time. In fact, many of them have were. It is clear that agile methods have been overly hyped by been described in-depth in other methods such as Rapid various media over the years, leading to abuse and misuse; in Application Development (RAD), Evo, and various instantiations fact, the received message regarding agile appears to have justi- of the Unified Process, not to mention classic books such as fied using little or no process at all. For too many project teams Frederick Brooks’ The Mythical Man Month. It should not be sur- this resulted in anarchy and chaos, leading to project failures and prising that working together closely in co-located teams and a backlash from the IT community that prefers more traditional collaborating in a unified manner towards a goal of producing approaches. working software produces results superior to those based on working in specialized silos concerned with individual rather Properly executed, agile is not an excuse to be undisciplined. It is than team performance. It should also come as no surprise that clear that the execution of mainstream agile methods such as XP reducing documentation and administrative bureaucracy saves have always demanded a disciplined approach, certainly more money and speeds up delivery.
    [Show full text]
  • The Unified Modeling Language V1.1 and Beyond: the Techniques of Object-Oriented Modeling Scott W. Ambler
    The Unified Modeling Language v1.1 and Beyond: The Techniques of Object-Oriented Modeling An AmbySoft Inc. White Paper Scott W. Ambler Object-Oriented Consultant AmbySoft Inc. Material for this White Paper has been modified from the books Building Object Applications That Work and Process Patterns by Scott W. Ambler http://www.ambysoft.com/umlAndBeyond.pdf Finalized: February 11, 2000 Copyright 1998-2000 Scott W. Ambler Table Of Contents 1. THE UNIFIED MODELING LANGUAGE AND BEYOND ............................................................................... 1 2. UNDERSTANDING YOUR MODELING OPTIONS ........................................................................................ 1 2.1 CRC MODELING...............................................................................................................................................1 2.2 DEFINING USE CASES, USE-CASE SCENARIOS, AND USE-CASE DIAGRAMS............................................2 2.3 INTERFACE-FLOW DIAGRAMS.......................................................................................................................3 2.4 CLASS DIAGRAMS.............................................................................................................................................5 2.5 ACTIVITY DIAGRAMS.....................................................................................................................................6 2.6 DATA DIAGRAMS.............................................................................................................................................8
    [Show full text]
  • Agile Modeling: Effective Practices for Extreme Programming and the Unified Process
    Agile Modeling: Effective Practices for eXtreme Programming and the Unified Process Scott Ambler Wiley Computer Publishing John Wiley & Sons, Inc. 72244_FMI 2/27/02 11:34 AM Page iv 72244_FMI 2/27/02 11:34 AM Page i Agile Modeling: Effective Practices for eXtreme Programming and the Unified Process Scott Ambler Wiley Computer Publishing John Wiley & Sons, Inc. 72244_FMI 2/27/02 11:34 AM Page ii Publisher: Robert Ipsen Editor: Theresa Hudson Development Editor: Kathryn A. Malm Managing Editor: Angela Smith New Media Editor: Brian Snapp Text Design & Composition: D&G Limited, LLC Designations used by companies to distinguish their products are often claimed as trademarks. In all instances where John Wiley & Sons, Inc., is aware of a claim, the product names appear in initial capital or ALL CAPITAL LETTERS. Readers, however, should contact the appropriate companies for more complete information regarding trademarks and registration. This book is printed on acid-free paper. Copyright © 2002 by Scott Ambler. All rights reserved. Published by John Wiley & Sons, Inc., New York Published simultaneously in Canada. No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copy- right Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 750-4744. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 605 Third Avenue, New York, NY 10158-0012, (212) 850-6011, fax (212) 850- 6008, E-Mail: PERMREQ @ WILEY.COM.
    [Show full text]
  • CRC Modeling: Bridging the Communication Gap Between Developers and Users an Ambysoft Inc
    CRC Modeling: Bridging the Communication Gap Between Developers and Users An AmbySoft Inc. White Paper Scott W. Ambler Software Process Mentor AmbySoft Inc. Material for this paper has be excerpted from: The Object Primer: The Application Developer’s Guide to Object-Orientation - and - Process Patterns: Building Large-Scale Systems Using Object Technology This Version: November 29, 1998 Copyright 1998 Scott W. Ambler Table of Contents CLASS RESPONSIBILITY COLLABORATOR CARDS....................................................................1 CRC MODELS........................................................................................................................................2 CRC MODELING IN A NUTSHELL....................................................................................................3 PUTTING TOGETHER THE CRC MODELING TEAM.....................................................................................3 ORGANIZE THE ROOM.............................................................................................................................4 BRAINSTORM .........................................................................................................................................4 EXPLAIN THE CRC MODELING TECHNIQUE .............................................................................................5 PERFORM THE ITERATIVE STEPS OF CRC MODELING ...............................................................................5 Finding Classes.................................................................................................................................5
    [Show full text]