アジャイルというモダンな開発手法を知りたい

1K Views

April 09, 25

スライド概要

MIERUNE BBQ #15 にて発表したやつです。
どしどしご意見ください

profile-image

miyamoto naoyuki N High School Student

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

アジャイルというモダンな開発手法を知りたい MIERUNE BBQ 宮本直幸 @MSprzk

2.

自己紹介 名前: 宮本直幸 - Miyamoto sprzk 所属: 北海道情報大学 言語: JS, TS, Java 興味: software dev, IoT, etc.. とまとくん 最近やったこと: ポートフォリオつくってみた! @Msprzk

3.

自己紹介

4.

アジェンダ 1. きっかけ 2. アジャイルとは 3. ラーメン 4. 良い点、悪い点(個人の感想) 5. まとめ

5.

1. きっかけ

6.

きっかけ 1.ツイッターで、アジャイルの話がよく上がっていた 2.友達との開発の工程がなんとなくでしかなかったの で良いプラクティスを知りたい 3.ITパスポートで学んだとき、Waterfallやめて全部 Agileでよくね?って思った

7.

2. アジャイルとは

8.

アジャイルとは ”アジャイルおよびアジャイル開発とは、小さな単位で 動くソフトウエアを作っていく考え方、あるいは、その 方法論まで含めて表現する場合もあります。2020年 ごろから、ソフトウエア開発だけではなく、経営にもア ジャイルを取り入れる動きが見られます。” 引用: 野村総研 アジャイル | 用語解説 | 野村総合研究所(NRI)

9.

アジャイルとは https://agilemanifesto.org/iso/ja/manifesto.html

10.

アジャイルとは アジャイルの価値 ● プロセスやツールよりも個人と対話を ● 包括的なドキュメントよりも動くソフトウェアを ● 契約交渉よりも顧客との協調を ● 計画に従うことよりも変化への対応を https://agilemanifesto.org/iso/ja/manifesto.html

11.

アジャイルとは アジャイルの原則 ● ● ● ● 動くソフトウェアを、2-3週間から2-3ヶ月というできるだけ短い時 間間隔でリリースします。 要求の変更はたとえ開発の後期であっても歓迎します。変化を味方に つけることによって、お客様の競争力を引き上げます。 情報を伝えるもっとも効率的で効果的な方法はフェイス・トゥ・フェイスで 話をすることです。 ビジネス側の人と開発者は、プロジェクトを通して日々一緒に働かなけ ればなりません。 and more 8… https://agilemanifesto.org/iso/ja/manifesto.html

12.

じゃあ、実際どうやってるの?

13.

アジャイルとは 実際にやる場合(XP) 反復(イテレーション)と呼ばれる短い開発期間単位を採用 →リスクを最小化 参考: NECソリューションイノベータ アジャイル開発 ~顧客を巻き込みチーム一丸と なってプロジェクトを推進する~ (前編): コラム | NECソリューションイノベータ

14.

アジャイルとは 2〜5を繰り返す イテレーションの例 2 1 顧客とエンジニアが少数精鋭の共 開発範囲全体を短い(2週間程度 同開発チームを作成(複数のチーム を同時に立ち上げることも) でできそうな)範囲に区分する。 3 4 5 業務プロセスの優先度を考慮 2週間の期間内に、その範囲の要 リリースできた機能や残っている 業務プロセスの範囲を検討し、次 に着手する優先すべき区分を決 める。 し、どの範囲から着手するかを決 定する。 求の決定、実装、テスト、修正、リ リースを行う。 参考: NECソリューションイノベータ アジャイル開発 ~顧客を巻き込みチーム一丸と なってプロジェクトを推進する~ (前編): コラム | NECソリューションイノベータ

15.

ラーメンづくり ウォーターフォール VS アジャイル(XP)

16.

ラーメン(前提) ● しょうゆラーメンを作る ● 顧客は、家族・友人

17.

ラーメン(Waterfall の場合) 要件定義 設計 味はあっさりしょうゆ、具は チャーシュー・メンマ・ねぎ スープの煮込み時間、麺の茹で 時間、具の配置等を全て決める 実装(調理) テスト(試食) 決まった工程に忠実に作る 味見は一切なし(完成まで変更 不可) 「ちょっと薄いね…」 →でも仕様通りだからやり直さない

18.

ラーメン(Waterfall の場合) 結果... 完成品は仕様通りだけど… 「なんか味が物足りない…」 「味玉ほしい…(切実)」 でも、再調整は手間なのでリリースして終わり

19.

ラーメン(XP の場合) 顧客と一緒に「どんな味が好 き?」ってざっくり決める ペアで調理 →味見&FBで技術を高める! ミニラーメンを試するぞ! 「もうちょいコクがほしい」 →かつおだしを追加 「味玉がほしい」 →味玉を追加

20.

ラーメン(XP の場合) 結果... 完成までに何度も味見と改善! 食べる人も巻き込んで、一緒に作ってるので、 細かい認識のズレを減らせる 「うんめぇ〜!」 「味玉入ってる!!」 顧客満足度Good👍

21.

比較 観点 Waterfall Agile(XP) 計画 完全に事前定義する 最小限にしてスタート 変更 基本的になし 何度も味見・調整 顧客の関与 なし 計画段階から巻き込む 柔軟性 低い とても高い

22.

3. 良い点、悪い点(個人の感想)

23.

良い点、悪い点(個人の感想) 良い点 ● ● 柔軟に変更ができる 継続的デリバリー ○ ● ● ● → 問題が起きても影響範囲が限定的 最低限の機能に絞って開発するため、早期にデリバリーを行い、顧客 からのFBを受けることができる チーム間のコミュニケーションが活発になる(というかそうでないと 成立しない) 小さな目標が見据えやすそう & 成果物が頻繁に見れるので、楽しそ う ○ モチベーション↑↑

24.

良い点、悪い点(個人の感想) 悪い点 ● ● ● ● ● agile に慣れていないと、スムーズな進行が難しい(らしい) ドキュメントが不足しがち コストや時間がWFに比べて予測しにくい 契約等の法律の課題[1]がある。 多分だけど、「詳細設計ができる」などの高い能力がメンバーに求め られる 参考:[1]情報処理学会「情報処理に関する法的問題」研究グループLIP. (2024). アジャイル開発 〜契約における課題の解決〜. Available from: https://www.ipsj.or.jp/sig/lip/AgileResolvingContractIssues.pdf. [Accessed 2025-04-07].

25.

それぞれの立場で考える

26.

良い点、悪い点(個人の感想) 開発者的な目線 変更できるし、最高のものが作れる! Waterfallと違って、設計ずっとやらないから、成果 が見えやすくて楽しい! 顧客が思っていたものと違っても、比較的柔軟に対 応できていいね👍 でも、自分で設計からテスト、リリースまで全てに関 わるってシニアなエンジニアじゃないと難しいよね...

27.

良い点、悪い点(個人の感想) 責任者的な目線 変更入ったら、予定変わるじゃん... 契約上にある完成予 定日すぎたらどうしよう... コストの見積もりも予定の見積もりもWaterfallより難 しい... ドキュメントより実際のコードを重視するから、保守性が 下がってしまいやすくなる...注意せねば...

28.

良い点、悪い点(個人の感想) 開発者目線 → Waterfall < Agile 責任者目線 → Waterfall > Agile なんじゃないかな...?

29.

5. まとめ

30.

まとめ ● Agileとは、変更に対して柔軟である開発手 法 ● Agileには良い点、悪い点がある ● 開発者から見たら利点が多くあるが、責任 者から見るとリスクが高い 間違っていることも多くあると思いますので、ご意見いた だけるとありがたいです!