You are previewing Eating the IT Elephant: Moving from Greenfield Development to Brownfield.
O'Reilly logo
Eating the IT Elephant: Moving from Greenfield Development to Brownfield

Book Description

A Practical, Start-to-Finish Approach to Managing, Evolving, and Transforming Legacy IT Systems

For every IT executive, manager, architect, program leader, project leader, and lead analyst

“Richard and Kevin introduce us to a reality that’s often neglected in our industry: the problem of evolving legacy systems, a domain they call ‘Brownfield development.’ The authors identify the root of the problem as that of complexity, and offer an approach that focuses on the fundamentals of abstraction and efficient communication to nibble at this problem of transformation bit by bit. As the old saying goes, the way you eat the elephant is one bite at a time. Richard and Kevin bring us to the table with knife and fork and other tools, and show us a way to devour this elephant in the room.”

Grady Booch, IBM Fellow, co-creator of UML

“Most organizations in the 21st century have an existing, complex systems landscape. It is time that the IT industry face up to the reality of the situation and the need for new development methods and tools that address it. This book describes a new approach to the development of future systems: a structured approach that recognizes the challenges of ‘Brownfield’ development, is based on engineering principles, and is supported by appropriate tooling.”

Chris Winter, CEng CITP FBCS FIET, IBM Fellow, Member of the IBM Academy of Technology

Most conventional approaches to IT development assume that you’re building entirely new systems. Today, “Greenfield” development is a rarity. Nearly every project exists in the context of existing, complex system landscapes--often poorly documented and poorly understood. Now, two of IBM’s most experienced senior architects offer a new approach that is fully optimized for the unique realities of “Brownfield” development.

Richard Hopkins and Kevin Jenkins explain why accumulated business and IT complexity is the root cause of large-scale project failure and show how to overcome that complexity “one bite of the elephant at a time.” You’ll learn how to manage every phase of the Brownfield project, leveraging breakthrough collaboration, communication, and visualization tools--including Web 2.0, semantic software engineering, model-driven development and architecture, and even virtual worlds.

This book will help you reengineer new flexibility and agility into your IT environment…integrate more effectively with partners…prepare for emerging business challenges… improve system reuse and value…reduce project failure rates…meet any business or IT challenge that requires the evolution or transformation of legacy systems.

·   System complexity: understand it, and harness it

    Go beyond the comforting illusion of your high-level architecture diagrams

·   How conventional development techniques actually make things worse

    Why traditional decomposition and abstraction don’t work--and what to do instead

·   Reliably reengineer your IT in line with your business priorities

    New ways to understand, communicate, visualize, collaborate, and solve complex IT problems

·   Cut the elephant down to size, one step at a time

    Master all four phases of a Brownfield project: survey, engineer, accept, and deploy

Table of Contents

  1. Copyright
    1. Dedication
  2. Foreword by Grady Booch
  3. Foreword by Chris Winter
    1. Foreword Endnotes
  4. Preface
    1. The Day the Elephant Was Born
    2. Do I Need to Move from Greenfield to Brownfield?
    3. A Reader’s Digest
      1. Part I: Introducing Brownfield
      2. Part II: The Elephant Eater
    4. Walking the Brownfields
    5. Endnotes
  5. Acknowledgments
  6. About the Authors
  7. I. Introducing Brownfield
    1. 1. Eating Elephants Is Difficult
      1. Today’s Delivery Methods
      2. Why Do Big Projects Fail?
        1. Demands of Global IT Systems
        2. Organization and Planning
        3. Project Reporting
        4. Change Management
        5. Induced Complexity
        6. Requirements Definition
      3. Environmental Complexity
        1. Complexity Is Everywhere
        2. How Complex Is Complex?
        3. The Effects of Environmental Complexity
          1. The Ripple Effect
      4. Brownfield Sites Must Be Surveyed
      5. Endnotes
    2. 2. The Confusion of Tongues
      1. Introducing Brownfield
      2. Key Communication Problems
        1. Introducing Views
          1. Inconsistency
          2. Ambiguity
          3. Parochialism
          4. Language Speciation
          5. The Business/IT Gap
      3. Overcoming Communication Complexity
      4. Endnotes
    3. 3. Big-Mouthed Superhero Required
      1. Elephant-Eating Strategies
      2. Consuming the Environment
        1. Overcoming Inconsistency and Ambiguity
          1. The Syntax Wars
          2. It’s What You Say and When You Say It
      3. Architecting the Elephant Eater
        2. Inventory
        3. Transforms
        4. Artifacts
          1. Documents Should Be Generated Instead of Written
          2. Consistent Configuration
          3. Efficient Execution
          4. Testing Transforms
      4. The Elephant Eater in Action
        1. The Brownfield Lifecycle
        2. Iteratively Generate and Refine
        3. Use What’s Around
      5. The Brownfield Beliefs
        1. Make Business and IT Indivisible
        2. Embrace Complexity
        3. Use What’s Around
        4. Iteratively Generate and Refine
        5. Use Your Own Language
        6. Establish One Version of the Truth
        7. Bridging the Business/IT Gap
      6. Endnotes
    4. 4. The Trunk Road to the Brain
      1. Alternative Wallpapers
      2. Invading Hilbert Space
        1. Manually Exploring the Inventory
      3. Architecture Is the Solution
        1. Elephants Have Two Lives
      4. Bridging the Business/IT Gap
        1. The Grand Tour
          1. Business and IT Services (A Logical View of the Business)
          2. Business Resources (A Physical View of the Business Combined with a Logical View of the IT)
          3. The Machine Room (A Physical View of the IT)
      5. Endnotes
    5. 5. The Mythical Metaman
      1. When You Eliminate the Impossible
        1. Software Archaeologist Digs Up Babel Fish
        2. Radical Options for Business
        3. At Your Service
      2. The Long Tail of Business Services
        1. Enabling the Semantic Web
        2. Dynamic Services
        3. Everything We Do Is Driven by You
      3. Business Attractors for Attractive Businesses
      4. The Death of Brownfield
      5. Endnotes
  8. II. The Elephant Eater
    1. 6. Abstraction Works Only in a Perfect World
      1. Considerations for an Elephant Eater
        1. Lack of Transparency
        2. Multiple Conflicting Goals
        3. Dynamic Aspects
      2. Systems Integration and Engineering Techniques
        1. Walk the Easy Path or...
        2. ...Break the Boulders and Make Them Smooth
      3. Abstraction Is the Heart of Architecture
        1. Mirror, Mirror on the Wall, Which Is the Fairest Software of All?
        2. Plumbing the Depths
          1. Don’t Abstract Until You See the Whole Elephant
          2. Successful Abstraction Does Not Come from a Lack of Knowledge
        3. The Ripple Effect
      4. Do We Need a Grand Unified Tool?
      5. The Connoisseur’s Guide to Eating Elephants
      6. Endnotes
    2. 7. Evolution of the Elephant Eater
      1. The Sources of Brownfield
      2. Isn’t This CASE?
      3. Isn’t This MDA?
        1. Empowering the Business Analyst
        2. Evolution, Not Revolution
      4. Endnotes
    3. 8. Brownfield Development
      1. Agile Waterfalls
        1. Agility under Waterfalls, or Waterfalls with Agility?
        2. An Agile Approach to a Waterfall Problem
        3. Turning Model Driven Architecture on Its Head
          1. Pattern Driven Engineering
          2. Model Driving Is Not a One-Way Street
          3. Brownfield Encourages Earlier Testing
        4. Accelerated Delivery on a Brownfield Site
      2. The Brownfield Development Approach
      3. Endnotes
    4. 9. Inside the Elephant Eater
      1. Looking Inside the Elephant Eater
      2. Step 1: Parse View and Identify Patterns
        1. Harvesting a Brownfield
        2. Inventory
          1. The Structure of the Inventory
          2. Triples
          3. Owls and Elephants
      3. Step 2: Merge Views
        1. Step 2a: Identify Missing or Incorrect Information
          1. Dimensions in Time
          2. The Sum Is Greater Than the Parts
          3. Precision Architectures
        2. Transforms
          1. How Does the Single Version of the Truth Cope with a Million Shades of Gray?
      4. Step 3: Create Transforms
        1. Artifacts
      5. Step 4: Generate Artifacts
        1. Paying Your Own Way
      6. Steps 5.1: Test Artifacts and 5.1a: Identify Generation Faults
      7. Step 5.1b: Add and Update Information
      8. A Portrait of an Elephant Eater
      9. Endnotes
    5. 10. Elephant Eater at Work
      1. Making the Move to Brownfield
        1. Building Your Own Elephant Eater
        2. Empowering Business Change
      2. Taking the First Step
      3. A Better Way to Build Interfaces
      4. A Better Way to Build an Enterprise Service Bus
      5. The End of Middleware?
      6. Evolving a Deployable Enterprise Architecture