Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
ソフトウェア開発って なにか?を学ぶ勉強会
Yasunobu Kawaguchi
PRO
February 03, 2022
Business
6
3k
ソフトウェア開発って なにか?を学ぶ勉強会
ホロラボの社内勉強会で話した資料です。
Yasunobu Kawaguchi
PRO
February 03, 2022
Tweet
Share
More Decks by Yasunobu Kawaguchi
See All by Yasunobu Kawaguchi
我々はなぜテストをするのか?
kawaguti
PRO
0
810
Agile and Requirement : アジャイルな要件定義について考える
kawaguti
PRO
12
4.4k
Revisit the DevOps Origin: 10+ Deploys Per Day by Flickr
kawaguti
PRO
0
270
AntiCovid19
kawaguti
PRO
0
260
Roots of Scrum 2005
kawaguti
PRO
4
5k
Scaling up Excellence
kawaguti
PRO
4
1k
10 min de Scrum 2021
kawaguti
PRO
0
700
Age of Agile Development 3
kawaguti
PRO
7
1.4k
Scrum Gaiyo 2
kawaguti
PRO
1
460
Other Decks in Business
See All in Business
株式会社ウエディングパーク会社紹介資料|Weddingpark introduction
weddingpark
0
140
株式会社shizai - Recruit Deck
shizai
2
22k
継続とUnlearn〜七転八倒で向き合う組織の評価と目標設定〜
junki
1
970
Eco-Pork_Culture_Deck
ecopork
0
690
株式会社Rehab for JAPAN会社概要
rehabrecruiting
1
640
株式会社ZELXUS:会社紹介
zelxus
0
530
タケウチグループRecruit
takeuchigroup
0
3k
アルプ株式会社 会社紹介資料 / Alp, Inc. Company Deck
alpinc
0
870
トリコ株式会社 エンジニア向け会社紹介資料
tricot_hr
0
310
大規模で複雑!巨大レガシーシステムをリプレイスするためにスクラムチームを立ち上げた話
ktzwystk
1
1.3k
リテイギ会社紹介資料_20220628
re_teigi
0
110
文書作成ソフトからの脱却 ~Markdownによるアラート対応手順書CI/CD~
terukei
0
270
Featured
See All Featured
Unsuck your backbone
ammeep
659
55k
A Philosophy of Restraint
colly
192
15k
Navigating Team Friction
lara
175
11k
Music & Morning Musume
bryan
35
4.2k
GraphQLの誤解/rethinking-graphql
sonatard
27
6.6k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
151
13k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_i
23
15k
5 minutes of I Can Smell Your CMS
philhawksworth
196
18k
Designing with Data
zakiwarfel
91
3.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
237
19k
What's new in Ruby 2.0
geeforr
336
30k
Scaling GitHub
holman
451
140k
Transcript
アジャイルにものをつくる とはどういうことか? ソフトウェア開発って なにか?を学ぶ勉強会
システムを作る
証券取引所 証券会社
現在の株価を見 たい。
ネットワークにつなぐ
= 5000円
= 5000円 = 5000円
株式には いろいろある
https://www.jpx.co.jp/listing/co/index.html
3825種類
自分の知りたい 株価だけ見たい
None
None
None
6501 [Enter]
6501 [Enter] 日立 5870 +68 (+1.17)
https://www.hitachihyoron.com/jp/pdf/1974/08/1974_08_05.pdf
https://www.hitachihyoron.com/jp/pdf/1974/08/1974_08_05.pdf
https://museum.ipsj.or.jp/computer/main/0026.html
日立 5870 +68 (+1.17) https://www.jpx.co.jp/corporate/ about-jpx/history/01-02.html 証券取引所 相場報道回線
でも株価って 動くんですよね。
https://www.hitachihyoron.com/jp/ pdf/1988/03/1988_03_11.pdf
https://www.jpx.co.jp/corporate/ about-jpx/history/01-02.html 証券取引所 相場報道回線 日立 5870 +68 (+1.17) 160 自動
更新
値動きも 見たいよね。
https://www.jpx.co.jp/corporate/ about-jpx/history/01-02.html 証券取引所 相場報道回線 時系列方向に拡張
グラフで 見たいよね。
https://www.jpx.co.jp/corporate/ about-jpx/history/01-02.html 証券取引所 パソコンの普及 グラフ 描画
回線料 安くしたい
建物内 LAN 広域網 データ センター エッジサーバ
ちょっ、何の話
30年の変遷
https://www.juse.or.jp/ departmental/point02/08.html 狩野 紀昭先生 東京理科大学名誉教授、工学博士 KANOモデル
狩野モデル ないと話にならない。 あればあるほどよい。 なくても困らないけど、 好き。持っていたい。 当たり前品質 一元的品質 魅力的品質 業界の競争の基準が変わる
例えば自動車の歴史 走る。曲がる。 より速く。より遠く。 エアバッグやABSで 安全。安心。 当たり前品質 一元的品質 魅力的品質 30年の変遷
https://hbr.org/1986/01/the-new- new-product-development-game 新製品開発におけるゲームのルールは 変わりつつあります。多くの企業が、 今日の競争市場で優位に立つためには、 高品質、低コスト、差別化という 基本的な要素だけでは不十分であることに 気づいています。また、スピードと 柔軟性も必要です。 (野中、竹内
1986年)
また、物理的な世界に存在すると考 えられている産業のバリューチェー ンの多くをソフトウェアが担ってい ます。今日の自動車では、ソフト ウェアがエンジンを動かし、安全機 能を制御し、乗客を楽しませ、ドラ イバーを目的地に案内し、各車をモ バイル、衛星、GPSネットワークに 接続しています。車好きの人が自分 で車を修理できた時代ははるか昔の
ことですが、それは主にソフトウェ アの内容が充実しているからです。 ソフトウェアが 世界を食べている https://www.wsj.com/articles/SB10001424053111903480904576512250915629460 2011年マーク・アンドリーセン
個体発生は 系統発生を 繰り返す https://ja.wikipedia.org/wiki/エルンスト・ヘッケル
狩野モデルは新製品開発にも適用できる ないと話にならない。 あればあるほどよい。 なくても困らないけど、 好き。持っていたい。 当たり前品質 一元的品質 魅力的品質 順に必要な品質を備えていく 機能
機能 機能 機能 機能 機能 機能
狩野モデルは新製品開発にも適用できる ないと話にならない。 あればあるほどよい。 なくても困らないけど、 好き。持っていたい。 当たり前品質 一元的品質 魅力的品質 順に必要な品質を備えていく 機能
機能 機能 機能 機能 機能 機能 ここを 狙いたい
狩野モデルは新製品開発にも適用できる ないと話にならない。 あればあるほどよい。 なくても困らないけど、 好き。持っていたい。 当たり前品質 一元的品質 魅力的品質 順に必要な品質を備えていく 機能
機能 機能 機能 機能 機能 機能 ここを 狙いたい でも、 ここは 無視でき ない
狩野モデルは新製品開発にも適用できる ないと話にならない。 あればあるほどよい。 なくても困らないけど、 好き。持っていたい。 当たり前品質 一元的品質 魅力的品質 順に必要な品質を備えていく 機能
機能 機能 機能 機能 機能 機能 MVP 生き残れる 最低限の機能 (の仮説)
ユーサーストーリーマッピング 利用者の行動(フロー)を分析する
ユーサーストーリーマッピング 必要な機能が 少ない方が リリースの 確実性が高い リリースごとに 一貫して 利用できること
最小限の機能で、 最大の成果を 機能を洗い出す だけでなく、 できるだけ 絞ることが重要
https://kawaguti.hateblo.jp/entry/20111030/1319926043 作る都合 = インクリメンタル 確かめる都合 = イテレーティブ
https://kawaguti.hateblo.jp/entry/20111030/1319926043 作る都合 = インクリメンタル 確かめる都合 = イテレーティブ まず全体を洗い出して、 順に、手戻りなく 作っていくと効率がよい
…のでちゃんと先に 調べて設計してほしい
https://kawaguti.hateblo.jp/entry/20111030/1319926043 作る都合 = インクリメンタル 確かめる都合 = イテレーティブ まず全体を洗い出して、 順に、手戻りなく 作っていくと効率がよい
…のでちゃんと先に 調べて設計してほしい カタチにしてみないと、 本当にそれでいいのか わからないので、 全体像を描いてみて、 徐々に調整したい
囲碁の目標 = なるべく多くの 陣地を囲む • 大きく囲もうとすると 裏を取られる。 • 小さく着実に進みすぎ ると大きく囲めない。
チームで一歩ずつ着実に進む = スクラム 機能 機能 機能 機能 機能 作業 作業
作業 作業 実装 デモ / レビュー (企画書ではなく 動くソフトウェアを見せて、 早期にフィードバック をもらう) 自分たちで考え、集中して作業を進める
チームで一歩ずつ着実に進む = スクラム 機能 機能 機能 機能 機能 作業 作業
作業 作業 実装 デモ / レビュー (企画書ではなく 動くソフトウェアを見せて、 早期にフィードバック をもらう) 自分たちで考え、集中して作業を進める
集中してチームとして仕事を進める 作業 作業 作業 作業 実装 自分たちで考え、集中して作業を進める
https://hbr.org/1986/01/the-new- new-product-development-game ラグビー・アプローチでは、 選び抜かれた多分野のチームメンバーが、 最初から最後まで一緒に仕事をすることで、 製品開発プロセスが生まれます。 製品開発プロセスは、 高度に構造化された段階を踏むのではなく、 チームメンバーの相互作用から生まれます。 (野中、竹内
1986年) 新製品開発の新たなゲーム
オリジナルのスライド https://www.infoq.com/presentations/The-Roots-of-Scrum/ 竹内野中論文(1986)が示した マネジメントスタイル • Type A NASAのウォーターフォール型 • 要求、分析、設計、実装、試験と、
順に次の工程の部署に引き渡される • Type B 富士ゼロックスのサシミ型 • 前工程と後工程が同席する • Type C ホンダのスクラム型 • 一時は全工程が同席する Jeff SutherlandはこのType Cから、 自らのフレームワークの名前を とった。
オリジナルのスライド https://www.infoq.com/presentations/The-Roots-of-Scrum/ ラグビーのスクラム
単純作業であれば、 作業分担が 機能しやすい。 複雑な作業は、 相互に連携して 進める必要がある。 水を汲む専門家 水を運ぶ専門家 水をかける専門家 全員が同じ情報を見て、できることをする
単純作業であれば、 作業分担が 機能しやすい。 複雑な作業は、 相互に連携して 進める必要がある。 水を汲む専門家 水を運ぶ専門家 水をかける専門家 全員が同じ情報を見て、できることをする
リソース効率を重視 (全員が働いている) フロー効率を重視 (目標に速く到達)
最初のスクラムは、 まずガントチャートを 廃止するところから始まった。 必要なスキルを 持った人が都合よく 割り当てられるか? 水を汲む専門家 水を運ぶ専門家 水をかける専門家
問題が起きたら、 全員で対策にあたる 最初からわかってい る情報が少ない。 探索的に進めたい。
チームで一歩ずつ着実に進む = スクラム 機能 機能 機能 機能 機能 作業 作業
作業 作業 実装 デモ / レビュー (企画書ではなく 動くソフトウェアを見せて、 早期にフィードバック をもらう) 自分たちで考え、集中して作業を進める
最小限の機能(努力)で、最大の成果を 機能 機能 機能 機能 機能 作業 作業 作業 作業
実装 自分たちで考え、集中して作業を進める
チームで一歩ずつ着実に進む = スクラム 機能 機能 機能 機能 機能 作業 作業
作業 作業 実装 デモ / レビュー (企画書ではなく 動くソフトウェアを見せて、 早期にフィードバック をもらう) 自分たちで考え、集中して作業を進める
作ったら素早くリリースする仕組みづくり 機能 機能 機能 機能 機能 作業 作業 作業 作業
実装 デモ / レビュー (企画書ではなく 動くソフトウェアを見せて、 早期にフィードバック をもらう) 自分たちで考え、集中して作業を進める
チームで一歩ずつ着実に進む = スクラム 機能 機能 機能 機能 機能 作業 作業
作業 作業 実装 デモ / レビュー (企画書ではなく 動くソフトウェアを見せて、 早期にフィードバック をもらう) 自分たちで考え、集中して作業を進める
ソフトウェアはコピーできる つまり、新しく作る、 ということは、 世の中にないから 作るということになる。 それゆえ、不確実性が高く。常に学ぶ必要がある。
作れる人はコピーできない 内容を理解した人を 他の人に簡単に 「引き継ぐ」ことは できない。 レシピは渡せても、 スキルは引き継げない。 それゆえ、うまくいくチームを維持する必要がある
https://simplearchitect.hatenablog.com/entry/2016/06/20/080807
チームで一歩ずつ着実に進む = スクラム 機能 機能 機能 機能 機能 作業 作業
作業 作業 実装 デモ / レビュー (企画書ではなく 動くソフトウェアを見せて、 早期にフィードバック をもらう) 自分たちで考え、集中して作業を進める
動くソフトウェアを 生み出すチームの活 動を通じて、一つ一 つ課題に対応し、 信頼を積み上げます。