Slide 1

Slide 1 text

EOIN WOODS ENDAVA @eoinwoodz 20160525.2

Slide 2

Slide 2 text

Capturing Design The Problem Why Document Design? How?

Slide 3

Slide 3 text

People move jobs Organisations change Memories Fade Priorities change Knowledge Attrition

Slide 4

Slide 4 text

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

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

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

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

• • • •

Slide 10

Slide 10 text

• • • •

Slide 11

Slide 11 text

Effective Design Artefacts Principles Pragmatics

Slide 12

Slide 12 text

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

Slide 13

Slide 13 text

• PRINCIPLES • • DECISIONS • • ELEMENTS RESPONSIBILITIES INTERACTIONS • • •

Slide 14

Slide 14 text

• WORK IN PROGRESS “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.

Slide 15

Slide 15 text

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

Slide 16

Slide 16 text

• • • • • • •

Slide 17

Slide 17 text

Low Fidelity High Fidelity Abstract Detailed

Slide 18

Slide 18 text

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

Slide 19

Slide 19 text

George Fairbanks – Just Enough Software Architecture

Slide 20

Slide 20 text

• LINK CODE DOCUMENTATION • • RECENT APPROACH • • ANNOTATE CODE • EXTENDED MODEL

Slide 21

Slide 21 text

https://www.structurizr.com/

Slide 22

Slide 22 text

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

Slide 23

Slide 23 text

Database Calculation Engine Batch Processor Change Notifier User Interface Services

Slide 24

Slide 24 text

Little and Often Create a commons Find evidence of use

Slide 25

Slide 25 text

RECORD • FUTURE NEED TO KNOW • LONGEVITY • SEMANTICS • LINK • ORGANISE COMMUNICATE • WHO WHY • CLARITY • THROW IT AWAY

Slide 26

Slide 26 text

• CODE STORY • WHOLE STORY • KNOWLEDGE ATTRITION • RECORD COMMUNICATE • PRINCIPLES PRAGMATICS

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

RESEARCH DESIGNERS ATTENTION SURVEY

Slide 29

Slide 29 text

Eoin Woods CTO Endava @eoinwoodz www.eoinwoods.info eoin.woods@endava.com

Slide 30

Slide 30 text

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