Capturing Design (When you really have to)

EoinWoods1 403 views 30 slides Jun 28, 2017
Slide 1
Slide 1 of 30
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30

About This Presentation

A presentation at XP2016 to discuss how to capture design information, when this is valuable, what to capture and how to do it effectively.


Slide Content

EOINWOODS
ENDAVA
@eoinwoodz
20160525.2

Capturing
Design
The Problem
Why
Document
Design?
How?

People move
jobs
Organisations
change
Memories Fade
Priorities
change
Knowledge
Attrition

Knowledge
Attrition
•“untouchable” code
•mysteriously failing tests
•odd decisions from long ago
•new extensions are always
an adventure!

Reducing
Knowledge Loss
Why we need
more than code
How design
information helps

Limitations of
code
The truth not the whole truth
Many people don’t read code
Organised for machines
Mismatch with communication

Design as a
Record
Design for
Communication
Design for
Analysis
Using Design
Information







Effective
Design
Artefacts
Principles
Pragmatics

•M
•U
•S
•I
•C
•AUDIENCE
•PURPOSE
“MUSIC”

•PRINCIPLES

•DECISIONS

•ELEMENTSRESPONSIBILITIESINTERACTIONS


•WORKINPROGRESS
“Indexed” and “checked” are Nat Pryce’s suggestions to add to
the “minimal”, “significant”, “usable” set I proposed. These look
important to me, but I haven’t thought them through yet.

•WHO
•TECHNICAL
• KNOW
• UNDERSTAND
•WHAT
• TASKS
• INFORMATION
•CHARACTERISTICS







Low
Fidelity
High
Fidelity
Abstract
Detailed

Fidelity
Cost
Naming
Linking
Embedding
Shared
Versioning
Architecturally
Evident Coding
Shared Tooling
But beware limits!

George Fairbanks –Just Enough Software Architecture


LINKCODEDOCUMENTATION

• RECENTAPPROACH

•ANNOTATECODE
•EXTENDEDMODEL

https://www.structurizr.com/

Effort
“Quality”
Morning
Standup
Team Wiki
Review
Documents
Long-term
record
Regulatory
Deliverable
Product
Documentation

Database
CalculationEngine
Batch Processor
Change Notifier
User InterfaceServices

Little and OftenCreate a
commons
Find evidence
of use

RECORD
•FUTURE
NEEDTOKNOW
•LONGEVITY
•SEMANTICS
•LINK
•ORGANISE
COMMUNICATE
•WHOWHY
•CLARITY
•THROWITAWAY

• CODESTORY
• WHOLESTORY
•KNOWLEDGEATTRITION
• RECORDCOMMUNICATE
•PRINCIPLESPRAGMATICS

RESEARCHDESIGNERS
ATTENTION
SURVEY

Eoin Woods
CTO
Endava
@eoinwoodz
www.eoinwoods.info
[email protected]




http://thumbs.dreamstime.com/z/techn
ology-blueprints-23277500.jpg
•Design for Communication -
http://optymyze.com/