Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ソフトウェア設計についての基本認識
Search
hihats
June 06, 2019
Technology
130
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ソフトウェア設計についての基本認識
チーム開発するに当たり、設計についての認識があっていないことが割とあります。ごく基本的なことですが、実際の開発作業に入る前に抑えておくべきことを話します。
hihats
June 06, 2019
Transcript
33 slides
Simple talk about software design
シンプルなお話 します I am here Today because I would love
to give you most simplest design talk. You can find me at @hihats 2
TL;DR 1. (チーム開発において)我々の考える設計って 2. ソフトウェア開発における設計 3. 設計と実装 4. 言いたいこと 3
我々の考える 設計 どのくらい共通認識なのか? 1
“ メンバーそれぞれのキャリアや経 験に基づく認識ができあがってい るので、異なる部分はある。 5
基本設計 Bring the attention of your audience over a key
concept using icons or illustrations 6 詳細設計 内部設計 外部設計 DB設計 プログラム設計
基本設計 Bring the attention of your audience over a key
concept using icons or illustrations 7 詳細設計 内部設計 外部設計 DB設計 プログラム設計 これらは一旦忘れ て!!!
設計 → 設計書を書く ざっくりとおそらくこう考え がち 実装 → コードを書く 8
“ ソフトウェア開発において、人の 最終的なアウトプットはソース コードなので、「コードを書くこ と」が実装と考える 9
“ ソフトウェア開発において、人の 最終的なアウトプットはソース コードなので、「コードを書くこ と」が実装と考える 10 が実際はどうか
ソフトウェア 開発における 設計 2
ソフトウェアの特徴 12
ソフトウェアの特徴 ○ 書いたコードを動かして初めてユー ザにとって価値があるモノになると ころにある 13
ソフトウェアの特徴 ○ 書いたコードを動かして初めてユー ザにとって価値があるモノになると ころにある 14 コードを動かすということは
ソフトウェアの特徴 ○ 書いたコードを動かして初めてユー ザにとって価値があるモノになると ころにある 15 コードを動かすということは ○ コンピュータがソースコードを解釈 して実行する
16 In other words
17 ソースコードはコンピュータに とっては設計書
18 ソースコードはコンピュータに とっては設計書 コーディングは設計でもあり、実装 でもある
ソースコードを 書くということ 19 処理がどのよう に動くか 変数名をどう すっべか メソッド名やス コープをどうす るか
その他もろ もろ クラスをどう 分割するか
20
21 全てを網羅したプロ グラム設計書という ものがある
実際は設計しながら実装していますよね? 22
設計と実装 3
ソフトウェアの処理の中身をどう表現 するかを考える「設計」という行為と、 それをソースコードに「実装」する行為 は、切り離して考えることはナンセン スである ○ 引用 from Sonic Garden倉貫さん
24
前置きここまで 25
言いたいこと 4
27 設計と実装を切り離して考えない = 「ごちゃまぜにしろ」という意味ではない
28 設計と実装を切り離して考えない = 「ごちゃまぜにしろ」という意味ではない 設計と実装を行ったり来たり すること
29 コーディングを始める迄に 「何を」「どこまで」設計するのか (≒ 何が設計作業なのか)
プロジェクト単位、チーム単位で そこの線引きを明確にしておくこと コミュニケーションのズレの原因になりやすい 30 コーディングを始める迄に 「何を」「どこまで」設計するのか (≒ 何が設計作業なのか)
プロジェクト単位、チーム単位で そこの線引きを明確にしておくこと コミュニケーションのズレの原因になりやすい 31 コーディングを始める迄に 「何を」「どこまで」設計するのか (≒ 何が設計作業なのか) 結論としては、「設計」とは 現場次第。。。
大 事
32 Thanks! Any questions? You can find me at ○
@hihats
実は本題はここから 33 次のスライドへ
More Decks by hihats
See All by hihats
Which Json Serializer should we use in Ruby on Rails6 era
hihats
1
150
アジャイル開発を始める前におさえておきたいこと
hihats
0
130
AWS Lambdaの今現在
hihats
0
820
コードの静的解析ツールを使う目的と効用
hihats
0
280
DIコンテナを学ぶ
hihats
2
410
Laravel勉強会 2016
hihats
0
1.5k
Other Decks in Technology
See All in Technology
AWS基盤改善を支える 私たちの理念と行動指針
kentosuzuki
0
220
Where Should Platform Complexity Live? Lessons from a Cross-Team PR Preview Platform
taiki45
0
110
顧客合意を取りながら進めるAWSコスト削減の実践
optim
0
170
E2E Test というハーネス — AI時代の自動テスト民主化
daishukojima
1
610
Kiro を使うコツ (頼み方、覚えさせ方、任せ方) | 目指せ Kiro マスター 09
inariku
PRO
3
160
速くなった開発の効果をどう推し量るのか
bulbulpaul
0
110
「AIチャットからもできないの?」と言われたら ~業務アプリをMCP対応するときの認証・認可の勘所
oidfj
0
330
bpf_arenaとstruct_opsを使うのが難しかった話
masu_mi
0
230
Shared Signals Framework 仕様解説
oidfj
0
430
高品質と高スピードを支える品質のシフトレフトのアプローチ
goyoki
3
1k
20261113_JAWS_Osaka
takuyay0ne
0
430
Kiro 入門 (1 つのエージェントを、どの画面からでも) | 目指せ Kiro マスター 01
inariku
PRO
6
1.7k
Featured
See All Featured
Thoughts on Productivity
jonyablonski
76
5.5k
How GitHub (no longer) Works
holman
316
150k
The Cost Of JavaScript in 2023
addyosmani
56
10k
Git: the NoSQL Database
bkeepers
PRO
433
67k
Six Lessons from altMBA
skipperchong
29
4.6k
A better future with KSS
kneath
240
18k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
23k
Are puppies a ranking factor?
jonoalderson
2
4.2k
RailsConf 2023
tenderlove
30
1.6k
Code Reviewing Like a Champion
maltzj
529
40k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
610
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
990