Lean Domain Architecture

Agile Architecture is not Fragile Architecture! In this course Jim Coplien will teach you how great projects do architecture the Agile way.

Agile Architecture is not Fragile Architecture!

There is a popular misconception that Agile development means not doing architecture, yet every major school of Agile practice advocates architecture. You can do a great Agile architecture in one week or in a single sprint, and overwhelming industry experience with Scrum bears out a return on investment before the end of your third sprint! In this course, designed as a one-day addendum to the Scrum course, we'll teach you how great projects do architecture the Agile way.

The course focuses in interactive systems and draws from a broad range of sources including Trygve Reenskaug's work on architectural underpinnings of MVC and his new work on the DCI architecture, Jim Coplien's lightweight domain analysis, dressed-down Use Cases, CRC cards, and role-basesd development. The course is for architects, designers, and programmers, and is programming-language neutral.

This course is a natural foundation for Agile Feature Architecture.

Target audience

  • Designers
  • Programmers
  • System and software architects
  • White-box /clear-box testers
  • Line managers;
  • User experience folks (note the relationship between HCI and architecture in an Agile system)
  • Domain experts
  • System Engineers
  • To a lesser degree, ScrumMasters and Product Owners (wouldn't it be nice to know where architectural PBIs come from and where they go?)

Prerequisites

  • Familiarity with Agile vocabulary
  • At least two years of professional experience in some domain
  • Competence in a modern mainstream programming language (Java, C#, or C++)

You'll learn

  • Why architecture is perhaps more crucial to Agile development than to conventional development
  • How to adapt Agile techniques so that they are supported by a good architecture, rather than doing damage to the architecture
  • How to sustain a business object architecture and domain object architecture that support each other
  • An overall development framework that reduces cost and has prospects for increasing revenues
  • How to reduce risk with eager decision-making strategies
  • The importance of "factoring" and "re-factoring"

Course Outline

  1. Introduction
  2. Time and Time to Market Motivating Architecture's Value
    • YAGNI Re-visited
    • Case studies and models of profitability with and withosut up-front work
  3. Architecture and Technique
    • The Potential for TDD to erode architecture — and the remedy
    • Symbiosis between architecture and usability
    • MVC foundations and business objects
    • The link from architecture to functional requirements and Use Cases
  4. Architecture and Maintainability
    • Lightweight Domain Modeling
    • How much architecture?
    • Software Families Commonality and Variability Analysis
  5. Domain-Driven Design: Problem Domain Analysis
    • Commonality and Variation
    • Domain Starter Sets
  6. Solution Domain Analysis
    • The Paradigms
    • Positive and Negative Variation
    • Simple Domain Parititioning
    • Transformational Analysis
    • Variability Tables
    • Transformational Analysis
    • Reducing to Code
    • Domain Depedency graphs
  7. The MVC-U Four-Layer Architecture
    • Business Objects and Domain Modeling
    • Business Objects as Tools
    • Tools and MVC
  8. Summary and wrapup

Zaplanowane szkolenie "Lean Domain Architecture"

W chwili obecnej nie jest zorganizowane takie szkolenie. Prosimy o kontakt telefoniczny bądź mailowy. W naszej ofercie znajdują się również szkolenia zamknięte, które są organizowane dla konkretnej firmy, a czas, miejsce oraz trener jest dopasowany do indywidualnych potrzeb klienta.