Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
How to make a better FM
Search
Awesome Incremented
October 09, 2015
Technology
470
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How to make a better FM
Continuous documentation - using mkdocs, PlantUML, NPlant, salt & msbuild
Awesome Incremented
October 09, 2015
More Decks by Awesome Incremented
See All by Awesome Incremented
Fast GeoIp Lookup using Redis
awesomeincremented
0
91
Continuous License Compliance-Analysis
awesomeincremented
0
29
(Almost) Continuous Delivery with Docker in offline environments
awesomeincremented
0
35
Update on Technology Radar
awesomeincremented
0
46
Docker Build Automation with Jenkins
awesomeincremented
1
72
Software Quality
awesomeincremented
1
73
Code Reviews
awesomeincremented
0
74
Coding Guidelies
awesomeincremented
0
52
Oracle Spatial 101 - An Introduction
awesomeincremented
0
140
Other Decks in Technology
See All in Technology
サプライチェーンセキュリティの空白地帯 - 信頼できる”依存性”の未来を考える
rung
PRO
2
780
Claude Code×Terraform IaC テンプレート駆動開発
itouhi
1
440
Databricks における 生成AIガバナンスの実践
taka_aki
1
350
ポケモンの型をTypeScriptの型システムで表現してみた
subroh0508
0
350
MIERUNE JCT 発表資料「宇宙から伊能忠敬ごっこ」
syuchimu
0
190
React、まだ楽しくて草
uhyo
7
4.2k
Ruby::Boxでできること、Refinementsでできること
joker1007
3
400
AI Adaptable なテストを整える工夫 / Ways to Make Your Tests AI-Adaptable
bitkey
PRO
3
220
AI活用を推進するために ファインディが下した、一つの小さな決断
starfish719
0
270
新アーキテクチャ「TiDB X」解説とDedicated比較 TiDB Cloud Premiumのゲーム運用活用を検証
staffrecruiter
0
120
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.8k
いまさら聞けない人のためのAIコーディング入門
devops_vtj
0
130
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.7k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
130
GitHub's CSS Performance
jonrohan
1033
470k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
What's in a price? How to price your products and services
michaelherold
247
13k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.6k
Paper Plane
katiecoart
PRO
1
51k
Making Projects Easy
brettharned
120
6.7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Transcript
How to make a better FM Dev.Talk October 2015 Marcel
Körtgen
None
Agenda •Traditional documentation •Alternative approaches •Demo: docs as part of
the build • Architectural documentation • UI sketches •Conclusions & Perspectives
Traditional documentation Docs feedback ultra-slow, if any •Written as very
last step • if it fails, no time for a 2nd shot •“Documentation Drift” • code changes lot faster • docs maintained out of band
Alternative approaches “Build-Measure-Learn” again • introduce a feedback loop (make
it short) → put docs close to code (git) → make docs part of build process → How?
Introducing MkDocs Why Markdown? •simple plain-text → easy to integrate
(git, build, …) •decouples styling → easy to write & view •lots of tooling around...
MarkdownPad...
Visual Studio...
Dillinger.io (online)...
...or MkDocs (offline)
Architectural Documentation Guidelines → Software Guidebook (Simon Brown) → arc42
Template (in Germany) Tooling → PlantUML
Avoiding Drift UML is ... • usually one-way • suspect
to BDUF and technical drift Solution: introduce feedback loop. Again. → “Yes, this is a pattern!”
Avoiding Drift: NPlant NPlant: code-based fluent DSL for diagrams •
generates UML notation • wraps PlantUML to generate images → “Notice the irony?” build integration: compile & test
UI Prototyping with Salt Salt: PlantUML subproject @startuml salt {
Just plain text [This is my button] () Unchecked radio (X) Checked radio [] Unchecked box [X] Checked box "Enter text here " ^This is a droplist^ } @enduml
UI Prototyping with Salt Salt: plain UML! no code! Feedback?
UI Prototyping with Salt Salt: plain UML! no code! Feedback?
Demo Time Using mkdocs, plantuml, NPlant & salt https://github.com/mkoertgen/hello.NPlant
Demo Time Generating docs & diagrams as part of your
build • git clone https://github.com/mkoertgen/hello.NPlant.git • build.bat /t:Docs /v:m
Summary •Traditional documentation evolves too slow •Documentation needs to be
part of the daily build process •Code generates documentation (and not vice versa) •Markdown, PlantUML & Co. do the work for you
Some references • D.Matthews - MkDocs: Documenting projects with Markdown
(ep2015) • Architekturdokumentation mit Entwicklerwerkzeugen (jaxenter) • write-the-docs.org, EU 2014 Presentations • GitHub Pages • sphinx-doc.org
Thank You Time for Questions!