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
terahide
May 28, 2013
Technology
0
8
システム設計の謎 ~べ、別にあんたのために設計してるんじゃないんだからね///~
2013/05/28 横浜道場 特別会 「システム設計の謎 ~べ、別にあんたのために設計してるんじゃないんだからね///~」
terahide
May 28, 2013
Tweet
Share
More Decks by terahide
See All by terahide
アニメに学ぶチームの多様性とコンピテンシー
terahide
0
290
テスト駆動開発でダイエットに挑戦して失敗した話
terahide
0
1.1k
コミュニケーション不全はなぜ起きるか
terahide
0
110
オレオレになりがちなテスト計画を見直した話
terahide
0
100
和服を普段着にするようになって気づいたアジャイルの心
terahide
0
28
Management3.0のワークを受けてから会社の偉い人へM3.0のワークショップをするまでにやったこと
terahide
0
51
一番アジャイルな料理人はソーマくんだと思うんだ
terahide
0
39
Att
terahide
0
17
受託開発でテストファーストしたらXXXを早期発見できてハイアジリティになったはなし
terahide
0
26
Other Decks in Technology
See All in Technology
普通のエンジニアがLaravelコアチームメンバーになるまで
avosalmon
0
120
GitHub Copilot のテクニック集/GitHub Copilot Techniques
rayuron
39
16k
APIとはなにか
mikanichinose
0
110
DUSt3R, MASt3R, MASt3R-SfM にみる3D基盤モデル
spatial_ai_network
2
260
クレカ・銀行連携機能における “状態”との向き合い方 / SmartBank Engineer LT Event
smartbank
2
100
Work as an App Engineer
lycorp_recruit_jp
0
360
Google Cloud で始める Cloud Run 〜AWSとの比較と実例デモで解説〜
risatube
PRO
0
120
ずっと昔に Star をつけたはずの思い出せない GitHub リポジトリを見つけたい!
rokuosan
0
160
【re:Invent 2024 アプデ】 Prompt Routing の紹介
champ
0
160
[トレノケ雲の会 mod.13] 3回目のre:Inventで気づいたこと -CloudOperationsを添えて-
shintaro_fukatsu
0
110
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
18
5.5k
TSKaigi 2024 の登壇から広がったコミュニティ活動について
tsukuha
0
170
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Visualization
eitanlees
146
15k
Automating Front-end Workflow
addyosmani
1366
200k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
How to Think Like a Performance Engineer
csswizardry
22
1.2k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Agile that works and the tools we love
rasmusluckow
328
21k
Building Adaptive Systems
keathley
38
2.3k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Side Projects
sachag
452
42k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Transcript
システム設計の謎 ~べ、別にあんたのために 設計してるんじゃないんだからね///~ ひ・み・つ アジャイルサムライ読書会 横浜道場 てらひで
はじめに
None
本当のタイトルは 「システム設計の謎を解く 強いSEになるための、 機能設計/入出力設計の極意 」 です。 高安厚思 著 ソフトウェアバンククリエイティブ/ISBN 4797358181
てらひで 「こんど横浜道場で話します」 高安さん 「がんばってね」 てらひで 「絵を描いてもらいました」 高安さん 「人の本をパロディにするなw」 てらひで 「ちょっとだけ公開」
高安さん 「このウエストからのラインw」 てらひで 「www」 高安さん 「www」
てらひで @terahide27 認定スクラムマスター アーキテクト アジャイルコーチ
てらひで @terahide27 http://gigazine.net/news/20130301-anime-2013spring/ 深夜アニメの カバレッジ90%以上
http://akunohana-anime.jp ク ソ ム シ が
さて
設計 今日のお題
やってみよう 「折り鶴」の設計書 を書いてください みなさいよ
どう だった?
設計って なに?
やってみよう 普段「設計」ってどう いうことをしている か周りと話してくだ さい
どう だった?
設計って なに?
こんな経 験ない?
となりと違う http://blog.goo.ne.jp/world-douwa/e/2f1f7a3046e58369d1c2986b2cfbc24c
伝わらない http://f.hatena.ne.jp/pema/20130129023304
どうしてこうなった? http://dokusyossyo.blog.fc2.com/blog-entry-166.html ISDN 4063842770 まんが アニメ
設計という分 野は範囲が 広い 「システム設計の謎を解く」 より
設計はどんな 「モノ」を作るか を考える作業 と定義! http://ja.wikipedia.org/wiki/%E8%80%83%E3%81%88%E3%82%8B%E4%BA%BA_%28%E3%83%AD%E3%83%80%E3%83%B3%29
http://ameblo.jp/gsc-mikatan/entry-10958545511.html 共通の枠組 みがあった方 が話しやすい
いくつかの枠 アーキテクチャ 工程 粒度 構成要素
要件 設計 実装 テスト
http://www.akitafan.com/sightseeing/detail.html?data_id=227
None
要件 設計 実装 テスト
要件 設計 実装 テスト plunning timebox ・・・ 繰 り 返
し
http://ja.wikipedia.org/wiki/%E8%80%83%E3%81%88%E3%82%8B%E4%BA%BA_%28%E3%83%AD%E3%83%80%E3%83%B3%29
工程 抽 象 度 粒 度 大 小 前 後
工程 概念 基本 詳細 概要(フロー・構成・連 携・etc.) 実現手段 実装手段 例 「システム設計の謎を解く」
より
構成要素 インフラ オンライン バッチ 画面 帳票 DB 機能 プログラム 例
「システム設計の謎を解く」 より
工程 抽 象 度 粒 度 大 小 前 後
「システムの全 体像を表した 資料はありま すか?」
うん百台のマシ ンが並んだイン フラの資料 http://typista.it-creates.com/diary/195.html
繋げたら模造 紙3枚くらいに なる業務フ ロー http://www.oct.zaq.ne.jp/i-garage/hiroimono/tr1000.htm
レベル0 組織全体のレベル レベル1 部署間の連携業務 レベル2 部署の対象業務 レベル3 業務機能を実現するための機能 レベル4 アプリケーションの
1動作を表す機能 粒度 例 「システム設計の謎を解く」 より
http://www.goodsmile.info/product/ja/3300/%E3%81%BA%E3%81%9F%E3%82%93%E5%A8%98+%E5%BE%A1%E5%9D%82%E7%BE%8E%E7%90%B4.html レベル5
工程 抽 象 度 粒 度 大 小 前 後
網羅率低 不整合
http://www.shikki-shuuri.jp/%E4%BF%AE%E7%90%86%E4%BE%8B-%E5%80%8B%E4%BA%BA%E6%A7%98/%E6%9C%A8%E8%A3%BD%E3%81%AE%E9%87%8D%E7%AE%B1-%E4%BE%8B1/
http://plaza.rakuten.co.jp/atinoue/diary/201302060000/
みんな 詳しすぎる
それ以外は ...
抽象化 大事
http://nendoroid.jp/ 嫁 例 ツンデレ
抽象化 →共通化に もつながる
アーキテクチャ は構造
分 割 と 統 合
構成要素の 組み合わせ
•データ整合性 •セキュリティ •ログ出力 •例外処理 例 「システム設計の謎を解く」 より
None
アジャイル の話じゃ なくね?
http://akunohana-anime.jp ク ソ ム シ が
どう作るか 考えるで しょ?
伝え方って むずかしい よね?
http://ameblo.jp/gsc-mikatan/entry-10958545511.html 共通の枠組 みがあった方 が話しやすい
ユーザストーリー他 出荷可能なモノ テスト 実装 設計 ドキュメント テストケース ソースコード
ドキュメントは ツール 伝えるための
•忘れない •分かりやすい •時空を超える
相手に合わせ たものである ことが大事
•表 •絵 •日本語 •動くもの •テストケース
自慢じゃないけ ど、設計書 読んだことあり ません
(☆_@;)☆ \(`-´メ)
欲しいのは どう動くかを 表したもの
日本語の SQL
日本語の プログラム
設計書を書く のが「設計」 作業ではない
さて
やってみよう 「Coolな折り紙」 を作ろう
Cool(価値) •複雑 •モチーフが現実のもの •目新しい •曲線が混じっている 評価は ぼくがします
完了条件 •出来上がったものがある •別の島の人が同じものを 再現して作れる(3分以 内で)
どう だった?
None
アジャイルサムライ 第13章 リファクタリング 「ソフトウェア開発の仕事 で一番大変なのは、きれ いな設計を保ち続けるこ とだからだ」
まとめ
•だんどり重要 •考えること重要 •伝えること重要 •効率よくしたいね •記録も残そう
設計書を書く のが「設計」 作業ではない
てらひでさんから依頼を受けた時に、「6-2 読めやこらー#」という会話をしましたが、 是非にとのことだったので… アジャイルへの思い! ああいう本を書いていますが、アジャイルがベストだと思っています! ですが、悪い意味での「アジャイル」【暗黒面】に落ちてしまう場合もあると思ってます。 必要な知識を習得せずにその時に学習すればいい
無駄を省きすぎて、必要なタスクまでなくしてしまって 後でトラブルになった。あるいは運用しにくくしてしまった そのプロジェクトでは必要であった「設計要素」を知らずに 省いてしまった てらひでさんが話された通りだと思っていますが、必要な知識(ソフトウェア エンジニアリング・ドメインの知識)は身につけて、そのうえでアジャイルマインドで プロジェクトに臨みましょう!
参考資料 高安厚思 著 ソフトウェアバンククリエイティブ/ISBN 4797358181
None
Special Thanks!! @s_kic
ちょっとはよくで きてるじゃないの あ、ありがと///