Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
documentation-driven-development-in-small-team
Search
chanko
May 29, 2019
Programming
2.5k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
documentation-driven-development-in-small-team
documentation driven development in small team with Angular
chanko
May 29, 2019
More Decks by chanko
See All by chanko
co-trip-ux-design
chanko
2
87
Other Decks in Programming
See All in Programming
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
330
App Intentsのビルドプロセスを支える技術
kntkymt
0
480
Agents on Rails - Rails at Scale 2026
irinanazarova
0
290
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
310
Heart of Swift Concurrency
koher
0
1.1k
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
360
Ghostty + Neovimで作る 透明でカッコ良い開発環境
j341nono
0
140
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
250
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
240
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
320
Security issues being discussed on Web Platforms
petamoriken
0
1.4k
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1k
Featured
See All Featured
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
250
The Language of Interfaces
destraynor
162
27k
Utilizing Notion as your number one productivity tool
mfonobong
4
600
Git: the NoSQL Database
bkeepers
PRO
432
67k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
530
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
390
Raft: Consensus for Rubyists
vanstee
142
7.7k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Navigating Weather and Climate Data
rabernat
0
540
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
600
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Transcript
小規模チームにおける ドキュメント駆動開発のすすめ Kohei Iizuka ng-japan meetup 2019 Spring 2019/5/29
• 飯塚 航平(いいづか こうへい) • フロントエンドエンジニア(Angular) • 兼サーバサイドエンジニア(Go) • Voicy
• 開発歴1年弱 About me @chankolfin
What’s Voicy? パーソナリティが自らの声を通して 声のブログやニュースを放送している ボイスメディアです。 スマートフォンやウェブサイト、 スマートスピーカーを通して、 いつでもどこでもリスナーの耳に届きます。 ボイシーとは?
• 現在の開発と組織体制について • ドキュメント駆動による開発体制とアーキテクチャの改善 • 今後の展望 TL;DR
現在の開発と組織体制について
• toB案件のシステムの開発をほぼ一人で担当(サーバサイド含む) • 海外開発チームとの仕様書を通した開発連携 • フロントエンド主担当がいなかったことによるコンポーネントの肥大化 (スタイルガイドラインで400行推奨のところ、800行、、) • リリース重視によるテストなし、未使用メソッドの嵐 現在の開発と組織体制について
None
• NgRxによる状態管理 • テスト駆動開発によるコンポーネントの抽象化 • Atomic Designによるコンポーネントの標準化 • (モジュールの分割とLazy loading)
よく出てくるコンポーネント綺麗化対策
調べた結果 →あ、、これ一気に始めるの無理だわ
調べた結果 • 全て一気に行うことは工数的に難しい • 海外開発チームとの連携のため学習コストは下げたい、仕様書から開発できるよう にしたい →全てはコンポーネント、モジュール階層を適切に単純化すること →ドキュメント作成の自動化 + ドキュメント駆動による開発の単純化
+ コミュニケーション明確化
None
compodocとは
Demo 皆さんもすぐに実行可能 npm install -g @compodoc/compodoc // add to package.json
"scripts": { "compodoc": "npx compodoc -p src/tsconfig.app.json" } npm run compodoc
• コンポーネントの階層を見える化 • コメントの徹底 • 必要なメソッドが入ったことをそのまま確認できる • 実装不足や不必要なレビューを減らせる • 海外開発チームへの開発依頼を単純化
• 仕様書作成コストの削減 Compodocによるドキュメント作成自動化
Before(コンポーネント&モジュール)
After(コンポーネント&モジュール)
エンジニア in 日本 → 設計、スケール、事業の成長、仕様書の作成とQ&A対応、細かいレビュー エンジニア in 海外 → 開発、仕様書に対するQ&A セミコミットエンジニア → 開発とアドバイス、仕様書の作成とレビュー
Before(コミュニケーション)
エンジニア in 日本 → 設計、スケール、事業の成長、仕様書の作成とQ&A対応、細かいレビュー エンジニア in 海外 → 開発、仕様書に対するQ&A セミコミットエンジニア → 開発とアドバイス、仕様書の作成とレビュー
After(コミュニケーション)
• ドキュメントによる海外開発チームとの円滑&シンプルなコミュニケーションができる 体制づくり ◦ 「こんなメソッドが入っている、こういうコンポーネントを、こういう階層で作って!」 ◦ 実際に作ったものが要件通りに入っているかが一目でわかる ◦ コメント不足の見える化とコメントの徹底 •
コンポーネント再設計→テストの流れを少しずつ作る ◦ Lazy loading with Doc(モジュールの分離) ◦ Container & Presentational Component with Doc(コンポーネントの分離) ◦ State Management with Doc(状態管理) ◦ Testing with Doc(テスト) • 新規で開発する人、セミコミがすぐにバリューを出せる環境づくり 今後の展望
は、、?NgRxもテストもドキュメント化できないで使えると思ってんのか おまけ ← 4月にIssue化されている
おまけDemo