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
500
0
Share
終わってる風終わってないタスクが自分の首を締めた話
スクラム開発で発生した終わってる風終わってないタスクが自分の首を締めた話
Tatsuya Asami
January 19, 2023
More Decks by Tatsuya Asami
See All by Tatsuya Asami
NestJSのコードからOpenAPIを自動生成する際の最適解を探す
astatsuya
0
550
Other Decks in Programming
See All in Programming
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
1.2k
へんな働き方
yusukebe
6
2.9k
Strategy for Finding a Problem for OSS: With Real Examples
kibitan
0
130
Laravel Nightwatchの裏側 - Laravel公式Observabilityツールを支える設計と実装
avosalmon
1
300
KagglerがMixSeekを触ってみた
morim
0
360
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
4
1.5k
20260315 AWSなんもわからん🥲
chiilog
2
180
車輪の再発明をしよう!PHP で実装して学ぶ、Web サーバーの仕組みと HTTP の正体
h1r0
2
480
条件判定に名前、つけてますか? #phperkaigi #c
77web
2
910
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
820
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
4.1k
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
210
Featured
See All Featured
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Mobile First: as difficult as doing things right
swwweet
225
10k
Balancing Empowerment & Direction
lara
5
1k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
440
Rails Girls Zürich Keynote
gr2m
96
14k
Crafting Experiences
bethany
1
100
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
99
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.5k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
54k
How to Ace a Technical Interview
jacobian
281
24k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
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/)