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
技術的負債を返し続ける取り組み
Search
akki
May 29, 2021
Technology
0
610
技術的負債を返し続ける取り組み
akki
May 29, 2021
Tweet
Share
More Decks by akki
See All by akki
Open AI APIを使う前に知っておきたいアカウントTier の話
akki_megane
0
3.5k
データの民主化はじめました 俺たちの民主化はこれからだ
akki_megane
2
1.6k
フィーチャートグルを 使って素早く価値を検証する 早く安全に失敗し学ぶために
akki_megane
0
2.8k
「明日からフロントもよろしく」と言われたときに備える Atomic Design
akki_megane
0
3.7k
Editor 調査
akki_megane
0
190
Laravel Vapor Serverless Laravel
akki_megane
2
360
アノテーションコメントについて調べてみた
akki_megane
2
750
入門 無限LT
akki_megane
0
4.7k
PHP Insights - リファクタリングが100倍楽しくなるツール -
akki_megane
3
1.6k
Other Decks in Technology
See All in Technology
Azure AI Foundryでマルチエージェントワークフロー
seosoft
0
120
活きてなかったデータを活かしてみた話 / Shirokane Kougyou vol 19
sansan_randd
1
380
Workflows から Agents へ ~ 生成 AI アプリの成長過程とアプローチ~
belongadmin
3
170
Uniadex__公開版_20250617-AIxIoTビジネス共創ラボ_ツナガルチカラ_.pdf
iotcomjpadmin
0
130
評価の納得感を2段階高める「構造化フィードバック」
aloerina
1
280
成立するElixirの再束縛(再代入)可という選択
kubell_hr
0
500
AWS と定理証明 〜ポリシー言語 Cedar 開発の舞台裏〜 #fp_matsuri / FP Matsuri 2025
ytaka23
9
2.6k
今からでも間に合う! 生成AI「RAG」再入門 / Re-introduction to RAG in Generative AI
hideakiaoyagi
1
190
AIにどこまで任せる?実務で使える(かもしれない)AIエージェント設計の考え方
har1101
3
1.2k
比起獨自升級 我更喜歡 DevOps 文化 <3
line_developers_tw
PRO
0
870
マルチテナント+マルチプロダクト SaaS への AI Agent の組み込み方
kworkdev
PRO
2
400
「どこにある?」の解決。生成AI(RAG)で効率化するガバメントクラウド運用
toru_kubota
2
460
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
123
52k
Scaling GitHub
holman
459
140k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Why Our Code Smells
bkeepers
PRO
337
57k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Docker and Python
trallard
44
3.4k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.7k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Automating Front-end Workflow
addyosmani
1370
200k
Transcript
技術的負債を 返し続ける取り組み PHPカンファレンス沖縄 2021/05/29 @akki_megane ~ あなたのPHPのバージョンいくつですか?~
自己紹介 名前:秋葉 誠一 好きな技術:PHP、Vue.js、Serverless 会社:ROXX 趣味:スノボ、サバゲ、野球、アロハシャツ @akki_megane
あなたのPHPは? ## サポート期限 - 7.2 2020/11/03 (サポート終了) - 7.3 2021/12/06
- 7.4 2022/11/28 - 8.0 2023/11/26
あなたのPHPは? バージョンアップするご予定はありますか? 更新されてないライブラリやフレームワークはありませんか? 直したい実装はありませんか? 技術的負債に苦しんでいませんか?
技術的負債 手抜き、ハック、重複などなど、開発速度と期日の名の下に、私たち は数々の狼藉をコードベースにコミットしている。技術的負債とは、そ うした狼藉が時間と共に積み重なったものだ。 君のコードは、常に何かしらの負債を書かている(負債がまったくない というのは、新しいことや、これまでとは違うことに取り組もうとしてな いってことだ) かつては楽しくて気軽でシンプルだった作業が、辛く困難で複雑なも のになって初めて、人は自からが技術的負債を抱えすぎてしまったこ とに気づくんだ。
引用 アジャイルサムライ
技術的負債 - 更新されないVersion(言語、FW、ライブラリ) - 実装が現実と乖離している - 非推奨機能を使った実装 - あのときは最高だと思った設計 -
過去の自分をしばきたいコード - いつか直すと思っているあのバグ - etc,etc
技術的負債 負債がまったくないというのは、新しいことや、これまでとは違うことに 取り組もうとしてないってことだ プロダクトが生き続ける限りは、負債を負い続けるということ 負債は負うということは、返済する必要があるといこと
技術課題リファインメント
前提条件 - 継続的な開発であるか - スクラムに則った開発であるか - スプリントベロシティが計測できているか
リファインメントの説明 リファインメントの活動を通じて、選択に必要な透明性を獲得する。 プ ロダクトバックログアイテムがより小さく詳細になるように、分割および 定義をする活動である。 これは、説明・並び順・サイズなどの詳細を 追加するための継続的な活動である。多くの場合、属性は作業領域 によって異なる。 作業を行う開発者は、その作業規模の評価に責任 を持つ。
開発者がトレードオフを理解して選択できるように、プロダク トオーナーが開発者を支援することもできる。 引用 スクラムガイド2020
技術課題リファインメント STEP1 課題を見つける - よくないコードを見つけた - バージョンアップ情報があった - DB正規化したい 見つけた課題を技術課題バックログに起票します
新機能のバックログとは別に専用のバックログを作ります
技術課題リファインメント STEP2 リファインメントする 内容の詳細化、分割、優先順位決め、見積もりする 誰がやってもいいようにするために 優先順位決めは大事、チームとして何を大切にするかはチームごと決め よう
STEP3 実施 スプリントプランニングの際に、ベロシティポイントを一定の割合で技術 課題に割り当てる 新規開発とは別軸の優先順でやることを決める 起票した人間がやるとは限らない (弊社だと大体10% + 手が空いたら優先的にやる) ※ベロシティポイント
= 1スプリントでチームが提供できる価値のポイント 技術課題リファインメント
STEP4 繰り返す 継続して習慣化する、1回だけでは変わらない プロダクトが開発される続けるかぎり負債は溜まっていきます 継続的に早い段階での負債の返済をおすすめします 技術課題リファインメント
- 新規の開発とは別軸の優先順位になる - 負債の可視化し、優先順位がつけられる - 誰か特定の人がやっているという状況をさける - いつかやるではなく仕組みでカバーする 技術課題リファインメントの利点
まとめ
- 継続的に開発をするうえで技術的負債は必ず発生する - 負債は早い段階で返済しないとどんどん辛くなる - 負債を可視化しよう - 新機能の開発とは別軸の優先順位をつける - 負債の返済を開発のサイクルに組み込み習慣化する
- 後は継続あるのみ まとめ
ROXX 開発メンバー募集 https://speakerdeck.com/roxxrecurit 宣伝
ご清聴ありがとうございました 沖縄に行きたかった