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
Tatsuya Asami
January 19, 2023
Programming
520
0
Share
終わってる風終わってないタスクが自分の首を締めた話
スクラム開発で発生した終わってる風終わってないタスクが自分の首を締めた話
Tatsuya Asami
January 19, 2023
More Decks by Tatsuya Asami
See All by Tatsuya Asami
React Compiler導入から21ヶ月、いま始めるならこうやる
astatsuya
2
330
NestJSのコードからOpenAPIを自動生成する際の最適解を探す
astatsuya
0
600
Other Decks in Programming
See All in Programming
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
1
610
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
3.6k
inferと仲良くなる10分間
ryokatsuse
1
370
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
710
LLM Plugin for Node-REDの利用方法と開発について
404background
0
160
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
3.4k
今さら聞けないCancellationToken
htkym
0
220
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
170
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
4
1.4k
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
12k
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
150
Claspは野良GASの夢をみるか
takter00
0
160
Featured
See All Featured
Making Projects Easy
brettharned
120
6.7k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
Typedesign – Prime Four
hannesfritz
42
3.1k
Fireside Chat
paigeccino
42
3.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Tell your own story through comics
letsgokoyo
1
940
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.3k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
160
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
600
Transcript
終わってる風終わってないタスク が自分の首を締めた話 コミューン株式会社 浅見達也 / @astatsuya1
自己紹介 フロントエンドエンジニア 浅見達也 twitter: astatsuya/@astatsuya1 2022年7月 コミューン株式会社入社 スクラムチームでcommmune(プロダクト名です)のフロントエンド・バックエンド開発 を行っています
2022年に所属した2つのスクラムチームの話をし ます
終わってる風終わってないタスクとは?🤔
まだやることが残っているのに終わったものとみなさ れているタスク
まだやることが残っているのに終わったものとみなされているタスク 一応動く状態になってるのでスプリントレビューで発表したけど・・・ • 実はアプリが動くかわからない ◦ まだテストしていない ◦ 特定のユーザー操作によって動作しないケースがあるのを知っている ◦ 本番環境で動かすためにやることがある
• アプリ自体は動作している ◦ 良くないコードで作ってそのまま ◦ 自動テストを書いていない ◦ 資料作成が終わっていない
どんな問題が起こるのか?
実はアプリが動くかわからない 1. 出来た部分をスプリントレビューで発表 2. ほぼ終わってると思われてるのでリリース予定日の調整が進む 3. ではリリースしましょう! 4. まだやることがあって焦る
実はアプリが動くかわからない • 焦っているので妥協したり、普段とは違うプロセスで開発をしたりする結果、問 題が起きがち • 焦っても間に合わないので、スケジュールを再調整する場合は、プロダクトオー ナー、ステークホルダーを含む多くの人を巻き込むことになりがち
アプリ自体は動作している 1. 終わってる風終わってないタスクを抱えた状態でスプリントが始まる 2. スプリントプランニングで決めたスプリントバックログ+終わってる風終わってな いタスクをやらないといけない
アプリ自体は動作している 問題が起きなくてもスクラム3本柱の1つ、「透明性」にかける スクラムガイドの「透明性」によると 創発的なプロセスや作業は、作業を実 ⽰する⽰とその作業を受け取る ⽰に⽰える必要がある。 スクラムにお ける重要な意思決定は、 3 つの正式な作成物を認知する状態に基づいている。
透明性の低い作成物は、 価値を低下させ、リスクを ⽰める意思決定につながる可能性がある。 透明性によって検査が可能になる。透 明性のない検査は、誤解を招き、ムダなものである。 引用: https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf
アプリ自体は動作している • バグ修正等、急いで変更を入れたいときに素早い動きができない ◦ 自動テストがない場合はまず自動テストを書くところから始めないといけない ◦ 自動テストを書かないで変更する場合はそのたびに手動テストが必要 ◦ 最後に直したバグ修正が別のバグを引き起こしているかもしれないと気にしながら実装しない といけない
失敗はなぜ起こってしまったのか
失敗はなぜ起こってしまったのか とにかく出来た部分を見せてフィードバックをもらうべきだと思っていた • そうした方が良いってどこかで読んだ気がしていた ◦ 「まだ終っていない部分もありますが、動きはするので見ていただきたいです」と言われて動い ているものをみたらほぼ終わっていると思ってしまうのも当然
失敗はなぜ起こってしまったのか 自動テスト、リファクタリング、資料作成等が一番最後に残りがち • プロセス的にこれらだけがスプリント内に終わらないというのがよくある ◦ 各プロダクトバックログアイテムの最後にやるタスクがこれらになりがち ◦ 機能だけは出来ているのでリリースしがち ◦ 自動テストをなるべく早い段階で書きたいと思っていても最後になりがち
教訓 1. 終わってないことをスプリントレビューで提示しない 2. 急ぎでやらないといけないことは結構な頻度で突然やっ てくる 3. 優先順位は変わるもの。薄めて完了にしない
1. 終わってないことをスプリントレビューで提示しない スクラムガイドの「確約(コミットメント):完成の定義」によると プロダクトバックログアイテムが完成の定義を満たしていない場合、リリースすることはできない。 ましてやスプリントレビューで提⽰することもできない。そうした場合、あとで検討できるようにプロ ダクトバックログに戻しておく。 引用: https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf と書いてあるのでそれに従うのみ 途中でもフィード・バックが欲しいのであれば、スプリントレビューとは明確に区別して扱う
2. 急ぎでやらないといけないことは結構な頻度で突然やってくる スプリント中に差し込みタスクが発生することはある • 普段から緊急事態に動けるようにしておく ◦ 残業前提でスケジュールを組まない ◦ 丁寧な開発を心がける。自動テストも書く ◦
忘れるまでにやればいいとなりがちな資料作成や、スクラムの仕事以外でやらないといけない こと(日報や経費精算とか)もやれるときにやっておく
1つの機能を作るためのプロダクトバックログが複数になることはあるが、やり残した ことがあるものを次のプロダクトバックログに回して完了にしない • 新規登録、削除、更新が全て出来上がってリリースの予定でも、「1度登録した ら変更することはほとんどないから、更新は開発不要」となることはありえる • 自動テストは次に回そう、バグはあるけどまだ誰も使わないから次で修正しよ う、をしない。同じプロダクトバックログで終わらせる 3. 優先順位は変わるもの。薄めて完了にしない
まとめ
日頃から最後まできっちりと丁寧にタスクを終わ らせて、終ってる風終ってないタスクを増やさない ようにしましょう
© commmune Inc. All rights reserved コミューン株式会社 / We are
hiring!! 22 顧客コミュニティ作りに 特化したプロダクト commmune(コミューン) 顧客コミュニティプラットフォームを提供することによって、 企業とユーザー間にある”コミュニケーションの壁”を取り払い、 “対話による深い相互理解”と”共創の場作り”を提供するプロダクトです。 募集中ポジション • エンジニアリングマネージャー • フロントエンドエンジニア • サーバサイドエンジニア • QAエンジニア • APPエンジニア(Flutter) • データサイエンティスト commmuneは全レイヤー TypeScript実装 開発組織 開発組織は順調に成長してきておりますが、今後更に良いプロダクトを 作りをしていくためにもエンジニアメンバーを募集しています! まずはカジュアル面談でぜひお話しさせてください! >> 会社説明資料・job description (https://commmune-careers.studio.site/) >> テックブログ (https://tech.commmune.jp/)