Okładka artykułu: 01 - The Method

01 - The Method

Chapter 1. The Method.

The Method

Początkujący architekt widzi wiele możliwych rozwiązań. Doświadczony architekt wie, że dobrych rozwiązań jest niewiele, a często tylko jedno.

The Method zamienia doświadczenie architektoniczne w powtarzalny proces projektowania systemu i projektu potrzebnego do jego zbudowania.

What Is The Method?

The Method = System Design + Project Design

System Design określa architekturę: podział systemu na małe, modularne komponenty oraz sposób ich współpracy.

Project Design określa, jak system zbudować, poprzez warianty czasu, kosztu i ryzyka.

Project Design ma większy wpływ na sukces niż sama architektura. Świetnego systemu nie da się uratować, jeśli projekt nie ma wystarczających zasobów, czasu lub akceptowalnego ryzyka.

Design Validation

Przed rozpoczęciem implementacji trzeba zwalidować:

  • czy architektura spełnia wymagania,
  • czy organizacja jest w stanie ją zbudować.

Błędna architektura odkryta po rozpoczęciu implementacji staje się bardzo kosztowna. Projekt systemu i projektu musi zostać zweryfikowany możliwie wcześnie.

Celem jest usunięcie design jako ryzyka projektu.

Time Crunch

Projektowanie powinno być szybkie — zazwyczaj kilka dni, nie tygodnie.

Presja czasu wymusza koncentrację i decyzje. Więcej czasu często prowadzi do projektowania zbędnych elementów, które zwiększają złożoność i koszt systemu.

Eliminating Analysis-Paralysis

Paraliż analityczny wynika przede wszystkim z podejmowania decyzji w niewłaściwej kolejności.

Design Decisions Tree

Projekt składa się z hierarchicznego drzewa decyzji. Późniejsze decyzje zależą od wcześniejszych.

Podejmowanie decyzji poza właściwą kolejnością powoduje, że nowe odkrycia unieważniają wcześniejsze decyzje i wymuszają ciągłe powtarzanie pracy.

Software System Design Decision Tree

The Method prowadzi przez właściwe drzewo decyzji:

najpierw System Design, potem Project Design.

Ograniczenia stopniowo zawężają liczbę możliwych rozwiązań, aż projekt konwerguje do właściwej decyzji.

Communication

Architektura musi zostać zrozumiana przez ludzi, którzy ją implementują.

The Method daje wspólną strukturę, semantykę i język do komunikowania:

  • architektury programistom,
  • projektu managementowi,
  • decyzji innym architektom.

Review ma wykrywać odchylenia od projektu. Nie zastąpi jednak zrozumienia i akceptacji jego intencji przez zespół.

What The Method Is Not

The Method nie jest automatycznym przepisem na sukces.

Nie zastępuje odpowiedzialności architekta za:

  • właściwe zrozumienie systemu,
  • podjęcie właściwych decyzji,
  • komunikację architektury,
  • utrzymanie projektu podczas implementacji,
  • stworzenie realistycznego Project Design.

The Method działa tylko wtedy, gdy jest stosowana uczciwie, na podstawie rzeczywistych informacji i rzeczywistych ograniczeń.