“Architecture is about the important stuff. Whatever that is” - Ralph Johnson

Circle of Knowledge

  • SYK: Stuff You Know
  • SYKYDK: Stuff You Know You Don’t Know
  • SYDKYDK: Stuff You Don’t Know You Don’t Know
pie title Knowledge & Learning "SYK" : 25 "SYKYDK" : 25 "SYDKYDK" : 50

Build Your Own Radar

How to BYOR

Github: BYOR

Leverage Checklists

List not the obvious but rather what’s not obvious!

6 steps in refactoring an architecture

  1. Root cause analysis
  2. Determine changes needed
  3. Create business case
  4. Build refactoring plan
  5. Create timeline and estimates
  6. Present to business

Cost Benefit Analysis

The CBAM process consists of the following steps:

  1. Choose scenarios and architectural strategies.
  2. Assess quality attribute benefits.
  3. Quantify the benefits of architectural strategies.
  4. Quantify the costs and schedule implications of the architectural strategies.
  5. Calculate the desirability of each option.
  6. Make architectural design decisions
flowchart LR A(Business Goals) -->|Define| B(Software Architecture \n-ilities & NFRs) B --> D(Benefits) B --> E(Cost) D --> F{Assess} E --> F F --> G(Selection)

Architectural Decision Records (ADRs)

Lightweight Architecture Decision Records is a technique for capturing important architectural decisions along with their context and consequences.

  • ADR (Simple)

  • MADR (Options & Pros/Cons)

    • Sections:
      • Title
      • Context
      • Decision
      • Considered Options
      • Outcome/Consequences
      • Pros/Cons
    • Template
    • Example