Slide 1

Slide 1 text

AI時代のアジャイル開発 及部敬雄 (@TAKAKING22) 2024/9/28 XP祭り2024

Slide 2

Slide 2 text

https://speakerdeck.com/kakutani/xpmatsuri2019-keynote

Slide 3

Slide 3 text

かつてエクストリームだったものが、 弾けて混ざりかけらとなって、 今の我々の血肉になっている Photo by Richard R on Unsplash

Slide 4

Slide 4 text

“エクストリームプログラミング(XP)はソーシャルチェンジである” - 「エクストリームプログラミング」 第1章 -

Slide 5

Slide 5 text

最近あったエクストリームな変化といえば?

Slide 6

Slide 6 text

元年 "*

Slide 7

Slide 7 text

AIはもっと前から存在していた

Slide 8

Slide 8 text

AIの歴史 1943年、ニューラルネットワーク研究発祥 1956年、ダートマス会議にて、
 Artificial Intelligence (AI)という言葉が生まれる 1950年代後半ʙ1970年代、第一次AIブーム 1980年代ʙ1990年代、第二次AIブーム 2000年代ʙ現在、第三次AIブーム

Slide 9

Slide 9 text

Star Wars: A New Hope ˜ & TM 2015 Lucasfilm Ltd. All Rights Reserved.

Slide 10

Slide 10 text

AIが登場する主なエンタメ作品 スターウォーズ マトリックス A.I. アイ,ロボット 攻殻機動隊 PSYCHO-PASS サイコパス

Slide 11

Slide 11 text

Photo by BoliviaInteligente on Unsplash

Slide 12

Slide 12 text

AI(未来)が急に現実になった Photo by Igor Omilaev on Unsplash

Slide 13

Slide 13 text

一方その頃、ソフトウェア開発では…

Slide 14

Slide 14 text

 ソフトウェア開発 技術の進化 ビジネスシーンの変化 デジタルトランスフォーメーション COVID-19

Slide 15

Slide 15 text

 ソフトウェア開発 技術の進化 ビジネスシーンの変化 デジタルトランスフォーメーション COVID-19 アジャイル開発が誕生して約23年

Slide 16

Slide 16 text

今日のお話 もともと変化が複雑で激しいと言われていた時代に、
 AIというさらに大きな変化が飛び込んできた ソフトウェア開発ではさまざまの変化が起きる中で、
 アジャイル開発が誕生してから約23年間が経過した これからはじまるAI時代に、
 ソフトウェア開発やアジャイル開発はどうなるのか

Slide 17

Slide 17 text

AI時代のアジャイル開発 及部敬雄 (@TAKAKING22) 2024/9/28

Slide 18

Slide 18 text

TAKAKING22 株式会社ホロラボ Group Lead AGILE-MONSTER.COM アジャイルコーチ Silver Bullet Club所属 及部敬雄

Slide 19

Slide 19 text

個人やチームや組織を支援する、アジャイルコーチをしています。 現在進行で自分自身もエンジニアとしてプロダクト開発に取り組んでいます。 そこで得た経験知をもとにさまざまなチームや組織に貢献する活動をしています。 チームづくり、アジャイル開発、プロダクト開発が大好きです。 ぜひお気軽にお声がけください!

Slide 20

Slide 20 text

本題に入る前に 未来はどうなるかわからないが、妄想することはできる 指示されなくても勝手に妄想することは人間の強み 妄想はいいぞ!

Slide 21

Slide 21 text

アジェンダ アジャイル開発とは AIとソフトウェア開発 AI時代のアジャイル開発 AI時代に個人としてどうふるまうか

Slide 22

Slide 22 text

アジェンダ アジャイル開発とは AIとソフトウェア開発 AI時代のアジャイル開発 AI時代に個人としてどうふるまうか

Slide 23

Slide 23 text

アジャイル開発 Photo by Austin Distel on Unsplash

Slide 24

Slide 24 text

日本語で読めるアジャイル開発関連書籍

Slide 25

Slide 25 text

アジャイル開発誕生に至る時代背景 1960年前後にソフトウェア開発という仕事が誕生した 当時は職人芸的な開発

Slide 26

Slide 26 text

ウォーターフォール誕生 1970年頃、ウォーターフォール・モデル誕生 職人芸的な開発から工業製品としての開発方法へ 工程に分けて進捗を管理する 徹底的に「分析」し、慎重に「計画」して、「実装」する

Slide 27

Slide 27 text

ところが・・・ 科学的管理法から強く影響を受けている 生産とソフトウェア開発は違うことが多い ソフトウェア開発は年々複雑で変化が大きくなっていく

Slide 28

Slide 28 text

2001年、スノーバード

Slide 29

Slide 29 text

https://agilemanifesto.org/iso/ja/manifesto.html

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

XP XP XP XP XP Scrum Scrum Scrum ASD FDD Testing Crystal DSDM Pragmatic Programmer Embedded TDD Executable UML Pragmatic Programmer

Slide 32

Slide 32 text

XP XP XP XP XP Scrum Scrum Scrum ASD FDD Testing Crystal DSDM Pragmatic Programmer Embedded TDD Executable UML Pragmatic Programmer Agile

Slide 33

Slide 33 text

アジャイルソフトウェア開発宣言の署名者 世界中の軽量ソフトウェア開発手法において名声のある人たち それぞれが共通して大切だと思っていることをまとめたものが
 アジャイルソフトウェア開発宣言

Slide 34

Slide 34 text

ウォーターフォールに対するアンチテーゼ Photo by Robert Lukeman on Unsplash

Slide 35

Slide 35 text

作業が終わり、みんなは普段の仕事・活動・生活に戻っていっ た。誰もが物語はそこで終わりだと思っていた。 その後に非常に大きな支持を集めることになるとは、誰も想 像していなかった。 Clean Agile 基本に立ち戻れ/Robert C. Martin 「軽量級プロセスのサミット」に参加したい人が本当にいる だろうか?と思っていた Clean Agile 基本に立ち戻れ/Robert C. Martin

Slide 36

Slide 36 text

世界中のソフトウェア開発者が熱狂した Photo by Spencer Davis on Unsplash

Slide 37

Slide 37 text

アジャイル開発の正体 アジャイル開発はムーブメントだと捉えてみる 定義をしたり、対立構造を考えることにそんなに意味はない あたりまえを打ち壊して変化しようとする反発エネルギー 同じ想いをもった人たちが団結して興す社会的運動

Slide 38

Slide 38 text

「DX白書2023」独立行政法人情報処理推進機構 22.9% 53.9%

Slide 39

Slide 39 text

「アーリーアダプターとは?獲得方法とイノベーター理論をわかりやすく解説」(https://go.chatwork.com/ja/column/efficient/efficient-351.html) 日本 22.9% アメリカ 53.9%

Slide 40

Slide 40 text

熱狂 説得 変革 反骨心 真面目 巻き込み 適応

Slide 41

Slide 41 text

アジェンダ アジャイル開発とは AIとソフトウェア開発 AI時代のアジャイル開発 AI時代に個人としてどうふるまうか

Slide 42

Slide 42 text

生成AIの主なサービス

Slide 43

Slide 43 text

生成AIによってソフトウェア開発はどう変わるのか Photo by Nihon Graphy on Unsplash

Slide 44

Slide 44 text

開発者がコードを書く支援 GitHub Copilotのユーザー数は2023年6月時点で934,533人
 ※2024年2月時点で130万人を突破 Copilotユーザーはツールに慣れるにつれ、生産性は少し落ちてから大幅に上昇し、
 経験の浅いユーザーが最も恩恵を受けている(32%の生産性向上) stack overflowへのアクセス数はLLMプロダクト登場以降急激に減少している https://www.stateof.ai/2023-report-launch

Slide 45

Slide 45 text

AIネイティブ開発 GitHub Copilot Patters & Exercises(旧AI Native Development Guide) コメントからコードを生成する 便利なファイルのピン留め コードからドキュメントへ AIが理解可能な命名規則 AIフレンドリーなドキュメントを書くようにする https://patterns.hattori.dev/ja/

Slide 46

Slide 46 text

ローコード・ノーコードツールの進化 これまでのローコード・ノーコードツールの課題は自由度や拡張性 AIを活用することで対応できるシステムの選択肢が広がる 開発者ではなくても開発保守運用できる機会が増える https://www.mendix.com/platform/ai/#MendixMLKit

Slide 47

Slide 47 text

開発以外の工程での生成AI活用 要件定義 顧客からの要求や仕様書を自然言語で解析し、要件を抽出する 設計 様々な過去の設計情報をもとに最適なアーキテクチャや設計パタンを提案する テスト 仕様やコードからテストケースを自動的に作成し、網羅的なテストを実施する ソースコードを書きながら自動テストを行い、リアルタイムにフィードバックをする 保守 ログやパフォーマンスデータを解析し、障害の予兆を検知して事前に対策する トラブル発生時に、問題を特定し自動修復する

Slide 48

Slide 48 text

生成AIからAIエージェントへ 生成AIの課題はプロンプトを適切に書かないと使えないこと 仕事ができる人は生成AIを活用して仕事をより効率的に、
 仕事ができない人は生成AIを活用できない(二極化) AIエージェントは、人がいちいち指示をしなくても、
 様々なツールを活用して目標を達成する仕組みのこと AIの使い方はAIエージェントに任せる

Slide 49

Slide 49 text

AIエージェントについておすすめのスライド https://speakerdeck.com/masahiro_nishimi/aiezientogabian-erusohutoueanoparadaimu

Slide 50

Slide 50 text

開発者を代替するAIエンジニア 2024年3月12日にCognition社が「Devin」を発表 世界初のAIエンジニア 支援型ではなく自律型で実際にタスクをこなすことができる 仕様変更の対応、バグの発見と修正、デバッグ、デプロイ… 2024年9月28日現在でWaiting List申請受付中 https://www.youtube.com/watch?v=fjHtjT7GO1c

Slide 51

Slide 51 text

これまでのソフトウェアづくり ソフトウェア ユーザー 求めているもの (情報、商品、体験…) ユーザーとユーザーが求めているもの(情報、商品、体験)をどうつなげるか つなげ方を試行錯誤するところがソフトウェア開発の本丸 インプット→仕組み→アウトプット 仕組み=検索、レコメンド、アルゴリズム、ユーザーインタフェース…

Slide 52

Slide 52 text

生成AIの登場によって… AIでいい感じによろ!

Slide 53

Slide 53 text

AI時代のソフトウェアづくり ソフトウェア ユーザー 求めているもの (情報、商品、体験…) つなげ方の一部あるいは大部分を生成AIに任せるように パーソナライズの進化と深化 多様なインプットを受け取ることができる ユーザーが求めるアウトプット方式を選ぶことができる 「予め用意したものを提供する」から「必要なものがリアルタイムで生成される」へ

Slide 54

Slide 54 text

もちろんまだまだ課題は存在する 間違ったことを正しいことのように言うことがある(ハルシネ ーション) 苦手とする作業が存在する 高い精度を求める作業など 同じインプットをしても違うアウトプットをすることがある テストが大変

Slide 55

Slide 55 text

精度はどんどん向上していく Photo by Eugene Zhyvchik on Unsplash

Slide 56

Slide 56 text

変化は既に起きているし加速していく Photo by CHUTTERSNAP on Unsplash

Slide 57

Slide 57 text

その中でいつまで今までと同じような ソフトウェア開発をしていてよいのだろうか Photo by Krystian Piątek on Unsplash

Slide 58

Slide 58 text

アジェンダ アジャイル開発とは AIとソフトウェア開発 AI時代のアジャイル開発 AI時代に個人としてどうふるまうか

Slide 59

Slide 59 text

「開発プロセス」や「人」も変化する対象 Photo by Gift Habeshaw on Unsplash

Slide 60

Slide 60 text

アジャイル開発における開発サイクル “スプリントは1ヶ月以内の決まった長さ”(スクラムガイド2020) コミュニケーションをするタイミングをつくる ex. スプリントプランニング、スプリントレビュー、デイリースクラム… それ以外の時間で開発をする ίϛϡχέʔγϣϯ ։ൃ .PO 5VF 8FE 5IV 'SJ

Slide 61

Slide 61 text

開発サイクルが短くなる AIがコーディングを担うようになると、開発自体にはそれほど時間がかからなくなる その分、なにをつくるのかの検討、つくったものの評価(レビュー)の時間と回数が増える 開発サイクルが短くなり、1日スプリントが基本になっていく スプリント自体が不要になり、カンバンなどでフロー制御したくなるかもしれない .PO 5VF 8FE 5IV 'SJ ίϛϡχέʔγϣϯ ։ൃ

Slide 62

Slide 62 text

アジャイル開発におけるチーム 小規模で自己組織化されたクロスファンクショナルチーム チームメンバーがお互いに補完するさまざまな知識やスキルを持っている さまざまな変化に対応し、チームで多様な問題を解決できるようにする

Slide 63

Slide 63 text

人間+AIのチームへ AIは多様なドメイン知識、プログラミングスキル、設計スキルをもっている 知識の総量は人間よりもはるかに大きい(今後ますます大きくなっていく) もちろん人間にしかできない領域も存在する 人間のみのチーム 人間+AIのチーム AI

Slide 64

Slide 64 text

より小さなチーム、より多くのチームへ 人間+AIのチームであれば、少ない人数でも経験やスキルを補完できるようになる 10人以下(スクラムガイド2020)がよいとされていたチームサイズがより小さくなる 小さなチームが増えるので、これまでよりも多くのチームでコラボレーションをしながら
 開発を進めるシーンが増えるかもしれない 6人 X 2チーム (1ʙ3人+AI) X 5チーム AI AI AI AI AI

Slide 65

Slide 65 text

チームの役割 開発チームは顧客やプロダクトオーナーと会話をし、何を開発する必要があるのか、
 なぜ必要なのかを理解し、それを実現するためにコードを書いてソフトウェアを開発する このサイクルを反復的に行い、ソフトウェアを実現させていく ソフトウェア 顧客や プロダクトオーナー 開発チーム

Slide 66

Slide 66 text

チームメンバーとしてのAI AIはコードにアクセスすることができるようになり、開発やレビューをする 開発者からのリクエストに応じて仕事を完遂することができる 顧客やプロダクトオーナーと直接コミュニケーションをして、
 ユーザー調査や競合分析を手伝い、壁打ち相手になる 要求をヒアリングし、要件や設計に変換して開発者に伝える ソフトウェア 顧客や プロダクトオーナー 開発チーム AI

Slide 67

Slide 67 text

人間とAIの翻訳者としての開発者 AIが高度になっていくことで、ほとんどの作業を実行できるようになる それが進んでいくと、やがて人間が作業するよりも高速かつ正確になる
 (おまけにAIは人間のように疲れないので常時そして並列で働くことができる) 開発者の役割は、顧客やプロダクトオーナーとAIの間に入り、
 ソフトウェアの知識をベースにコミュニケーションを補助したり調整することがメインになる ソフトウェア 顧客や プロダクトオーナー 開発者 AI

Slide 68

Slide 68 text

やがて開発チームは存在しなくなる? AIの高度化が進み、ソフトウェアの知識をベースにした翻訳すらも不要になると、
 AIだけでソフトウェア開発の仕事が完結するようになる 顧客・プロダクトオーナー・開発者といったロールでの区分けは不要になり、
 開発チームは存在しなくなる ソフトウェア 人間 AI

Slide 69

Slide 69 text

「コンピュータ」の語源 “「コンピュータ」という用語は、17世紀初頭から使用されており(最初の文献での言及は1613 年に遡る)、電子コンピュータが商業的に利用可能になる前に数学的計算を行う人、「計算する 人」を意味していた”(wikipedia) かつでは「コンピュータ」という職業が存在したが、とっくに存在しなくなっている By NACA (NASA) - Dryden Flight Research Center Photo Collection -

Slide 70

Slide 70 text

AI時代のアジャイル開発 本当にこうなるかはわからない しかし、これだけ大きく変化している中で、
 自分たちの仕事や開発プロセスだけが変化しないはずがない

Slide 71

Slide 71 text

かつてエクストリームだったものが、 弾けて混ざりかけらとなって、 今の我々の血肉になっている Photo by Richard R on Unsplash

Slide 72

Slide 72 text

なるようになるさ エンジニアという職業がなくなるとか、
 アジャイル開発が必要なくなるとか、
 そういう二元論的な受け止め方をしなくてもよい これまでの経験知が弾けて混ざりかけらとなって、
 新しい技術と組み合わさってよりよい仕事が生成される

Slide 73

Slide 73 text

アジェンダ アジャイル開発とは AIとソフトウェア開発 AI時代のアジャイル開発 AI時代に個人としてどうふるまうか

Slide 74

Slide 74 text

1970年代 ウォーターフォール・モデル誕生 2001年  アジャイルソフトウェア開発宣言 2024年 イマココ

Slide 75

Slide 75 text

1970年代 ウォーターフォール・モデル誕生 2001年  アジャイルソフトウェア開発宣言 2030年  ??? 1970年代 ウォーターフォール・モデル誕生 2001年  アジャイルソフトウェア開発宣言 2024年 イマココ 30年 30年

Slide 76

Slide 76 text

1970年代 ウォーターフォール・モデル誕生 2001年  アジャイルソフトウェア開発宣言 2030年  ??? 1970年代 ウォーターフォール・モデル誕生 2001年  アジャイルソフトウェア開発宣言 2024年 イマココ 30年 30年

Slide 77

Slide 77 text

1970年代 ウォーターフォール・モデル誕生 2001年  アジャイルソフトウェア開発宣言 2030年  ??? 1970年代 ウォーターフォール・モデル誕生 2001年  アジャイルソフトウェア開発宣言 2024年 イマココ 30年 30年

Slide 78

Slide 78 text

Unlearn(学びほぐし) Photo by Anastasia Zhenina on Unsplash

Slide 79

Slide 79 text

“No different! Only different in your mind. You must unlearn what you have learned.” — YODA Photo by Jan S0L0 on Flickr

Slide 80

Slide 80 text

Unlearn 固定観念を捨てる これまでの経験やスキルが無駄になるわけではない これまでの学びをほぐして、再度編み直す

Slide 81

Slide 81 text

AI時代に個人としてどのようにふるまうか 「ソフトウェア開発」も「開発者」も「アジャイル開発」も
 今あるものがかたちを変えたりなくなっていくかもしれない わからない不安のまま置いておくよりも、自ら飛び込んでみて
 やってみたほうがストレスは小さくなる 目の前の現実を受け入れ、不要なこだわりは捨てて、
 学びほぐしをする(Unlearn)

Slide 82

Slide 82 text

お祭りの外から文句を言ってるよりも お祭りの中に飛び込んだほうがきっと楽しい Photo by Danny Howe on Unsplash

Slide 83

Slide 83 text

No content

Slide 84

Slide 84 text

We are uncovering better ways of developing software

Slide 85

Slide 85 text

“XPとは、あなたがあなたの理想について考え、 理想にもとづいて行動するための方法だ” - 「エクストリームプログラミング」 -

Slide 86

Slide 86 text

@TAKAKING22 及部 敬雄 https://agile-monster.com/ Next EXTREME starts with you. 現役のアジャイル開発実践者による アジャイルコーチ 講演、研修、お仕事の依頼などお気軽にどうぞ