SlideShare a Scribd company logo
1 of 59
Download to read offline
「ツナガル」

クミコミシステム

2013-12-19 組込みシステム特論@FUN

天野 良


ソニーデジタルネットワークアプリケーションズ株式会社
Agenda
自己紹介
‣私について
‣所属会社の紹介と私の仕事

外とツナガル
‣組込みシステムと外界のI/Fの話

中でツナガル
‣組込みシステムのチームとは?

まとめ
2013-12-19 SDNA@FUN

!2
自己紹介
2013-12-19 SDNA@FUN

!3
その前に…
2013-12-19 SDNA@FUN

!4
2013-12-19 SDNA@FUN

以前にベトナムの会社と
一緒に仕事した時に作成
した「偏愛マップ」

!5
もっと知りたい

2013-12-19 SDNA@FUN

!6
弊社について(1)
社名が長いです
‣普段はSDNAって呼んでます/呼ばれています

ソニーの子会社です
‣ソフトウェア専門の子会社は弊社だけ
‣ソニー本体、SCE、SOMC、などグループ各社の仕事の

他、自社ブランドソフトウェアも手がけています

2013-12-19 SDNA@FUN

!7
弊社について(2)
ソフトウェアに関わるあらゆるエキス
パートがいます
‣設計/実装だけでなく、検証、UI/UX、ローカライズ、イ

ンテグレーション、プロジェクトマネジメント etc..
‣メディア技術(動画/静止画/音声)、ネットワーク技術

(DLNA/Cloud/etc..)、セキュリティ技術 etc..
‣PCアプリ(Win/Mac)、スマホアプリ(Android/iOS)、


そしてもちろん組込み!

2013-12-19 SDNA@FUN

!8
本日、会社説
明会もあるの
で詳しくはそ
ちらで
2013-12-19 SDNA@FUN

!9
で、私は…?
2013-12-19 SDNA@FUN

!10
組込みやったことありません
前職から一貫して PCアプリ屋さんを
10年以上
‣途中、動画編集エンジン開発でメディア系技術を、


社内留学制度でセキュリティ技術を習得したりしたけど

ここ一年はスマホアプリ屋さん
前職の新人研修でCPUボード向けの
ファームウェア(アセンブラ+μITRON)
を書いたことがあるくらい
2013-12-19 SDNA@FUN

!11
「組込みシステ
ム特論」て…

(;´∀`)
2013-12-19 SDNA@FUN

!12
でも、、、
2013-12-19 SDNA@FUN

!13
2013-12-19 SDNA@FUN

!14
私と組込み
組込みシステムそのものは担当してい
ませんが、、、
‣組込み機器とおしゃべりをするアプリがメインです

つまり、組込み機器と外界の界面を
たくさんみてきました
今日はまず、界面I/Fについてお話

2013-12-19 SDNA@FUN

!15
外とツナガル
2013-12-19 SDNA@FUN

!16
イマドキの組込みシステム
スタンドアローンなものは殆ど無い
‣なんらかの方法で外とつながっている
‣物理的規格の例







外界と「おしゃべり」する必要がある
物理的規格の上になんらかの論理的プ
ロトコルを載せる
‣組込みシステムが制御するのはこの部分
2013-12-19 SDNA@FUN

!17
外界とのI/F パターン1
標準規格、またはデファクトスタンダー
ドを使う
‣ある規格が、別の規格(群) の運用規則の集合になってい

る場合もある

例えば、どんなものがあると思いま
すか?

2013-12-19 SDNA@FUN

!18
例) DLNA

2013-12-19 SDNA@FUN

社内勉強会の資料より

!19
外界とのI/F パターン2
独自プロトコルを使う
とは言え、完全に独自ということは
まずない
‣何らかのプロトコルの上に「乗っける」
‣「レイヤー」を意識することも重要


いま、何の上に乗っけてるんだっけ?

パターン1との併用、も多い

2013-12-19 SDNA@FUN

!20
寄り道)レイヤーを意識する例

2013-12-19 SDNA@FUN

!21
独自プロトコルの理由
開発工数
‣しかし、標準/デファクトスタンダード規格には


大抵の場合、既存の流用できるスタック等があるので、

それが要件を満たさない場合
‣いろんなものとツナガル、というメリットを捨てる


設計上、経営判断上の妥当な理由も必要

標準規格の限界、拡張
‣セキュリティ
‣パフォーマンス
‣独自機能への対応
2013-12-19 SDNA@FUN

!22
2013-12-19 SDNA@FUN

!23
There are
too many
protocols...
2013-12-19 SDNA@FUN

!24
今日これだけ
お願いしたい
2013-12-19 SDNA@FUN

!25
必須知識
どのようなI/Fを使うにせよ、

現代の開発者が避けて通れない必須の
要素技術がある
‣組込み開発も例外ではない

さて、なんでしょう?
‣もちろん、答えはひとつではありませんが…

2013-12-19 SDNA@FUN

!26
文字列処理
2013-12-19 SDNA@FUN

!27
i18n

l10n
m17n
2013-12-19 SDNA@FUN

!28
→Unicode
2013-12-19 SDNA@FUN

!29
Joel on Software
• 第4章:すべてのソフトウェア開発者が絶対確実
に知っていなければならないUnicodeとキャラク
タセットに関する最低限のこと(言い訳なし!)

私は宣言する。もしあなたが21世紀において仕事をしているプログラ
マであり、キャラクタ、キャラクタセット、エンコーディング、
Unicodeの基本について知らないのであれば、私はあなたをひっ捕まえ
て、潜水艦で6か月のたまねぎ剥きの刑に処する。∼∼(中略)∼∼細
菌の存在を信じていない医者よりもひどい。この文章を読み終えるま
で、1行たりともコードを書かないでもらいたい。
̶ (p.38)
2013-12-19 SDNA@FUN

!30
でも、怖くない
Unicodeの膨大な仕様の全てに

通じる必要は(普通は)ない
掛け算で言えば九九に相当する

基本的な部分は是非押さえて頂きたい
‣なぜか苦手意識を持ったエンジニアが多い
‣実際にここの知識不足が原因のバグが発生したことも

I/Fの上でやり取りされるデータは

もちろん、たとえ組込みでもI/Fそのも
のが文字列となるケースも増えている
2013-12-19 SDNA@FUN

!31
BTW...
2013-12-19 SDNA@FUN

!32
中でツナガル
2013-12-19 SDNA@FUN

!33
組込み開発も大規模化
• ハードウェアの機能増大

大規
模化

• ソフトウェアに要求され
る機能も増大
• 増大に伴う内部の複雑化

開発サイクルの短縮要求
• インターネットの dog year
が組み込みにも

スクラッチから全て作る
ことは困難

テスト期間も短縮を要求される!

開発規模は増大し、期間は
短縮を要求される。
一体どうすれば!?

2013-12-19 SDNA@FUN

10/24 本講義

サムシングプレシャス

古賀さんの資料より
!34
どう立ち向かう?
古賀さんの講義では、

よくデザインされた組込み向け

プラットホームをうまく活用する

ことを紹介してくれました
私は、違うアプローチを紹介しよう
と思います
‣もちろん、排他的なものではなく、むしろ相乗効果


を出すためのものです
2013-12-19 SDNA@FUN

!35
いいモノを

作るには...
2013-12-19 SDNA@FUN

!36
いいチーム

で作る
2013-12-19 SDNA@FUN

!37
簡単!
2013-12-19 SDNA@FUN

!38
いい、って

なんだ?
2013-12-19 SDNA@FUN

!39
ちょっと

ワークを

しましょう
2013-12-19 SDNA@FUN

!40
好きなの取る
2013-12-19 SDNA@FUN

!41
折る
2013-12-19 SDNA@FUN

!42
ちぎる
2013-12-19 SDNA@FUN

!43
折る
2013-12-19 SDNA@FUN

!44
ちぎる
2013-12-19 SDNA@FUN

!45
折る
2013-12-19 SDNA@FUN

!46
ちぎる
2013-12-19 SDNA@FUN

!47
開く
2013-12-19 SDNA@FUN

!48
比べる
2013-12-19 SDNA@FUN

!49
Diversity 重要
得意技、がちょっ
とずつ違うから補完
し合える
必要な時は他の場
所もカバーできる
でも、大前提は共
通のルールを理解し
ていること
2013-12-19 SDNA@FUN

!50
一筋縄では

いかない
2013-12-19 SDNA@FUN

!51
タックマンモデル(Tuckman s stages of group
development)

• チームビルディング

の5つの段階
-

2013-12-19 SDNA@FUN

Forming 形成
Storming 混乱
Norming 統一
Performing 機能
Adjourning 散会

!52
Stormingは

必ずやってくる

http://www.flickr.com/photos/kadman420/3638018524/

2013-12-19 SDNA@FUN

!53
ソフトウェア開発のベストプラクティス?

いや「ベスト」なんてないですよ
それよりも

 「自分たちにとっての」

 「ベターなプラクティスを」

 「追求し続ける」

ことが大切
僕は,偉大なプログラマなんかじゃない。偉大な
習慣を身につけたプログラマなんだ。
-- Kent Beck
2013-12-19 SDNA@FUN

!54
スタート地点はある
XP, Scrum, Lean, ...
TDD
Pair Programming
Daily Standup Meeting
Burn down chart
Project Facilitation
...
2013-12-19 SDNA@FUN

!55
コンウェイの法則(Conway s law)
システムを設計する組織は、その構造をそっくり
まねた構造の設計を生み出してしまう

「組込み担当」「アプリ担当」と分
掌をすること自体は構わないが、相互
インターフェース設計をするにあたって
は「同じチーム」という意識をどれだ
け持てるかがポイント

2013-12-19 SDNA@FUN

!56
まとめ
2013-12-19 SDNA@FUN

!57
「ツナガル」クミコミシステム
イマドキの組込みシステムは

外とツナガル
‣レイヤーを意識しよう

いいものを、いいやり方で作るには

中でツナガル
‣信頼貯金重要、超重要

2013-12-19 SDNA@FUN

!58
Do you have any questions?

2013-12-19 SDNA@FUN

!59

More Related Content

More from Ryo Amano

20130211.yuko party.beakmark
20130211.yuko party.beakmark20130211.yuko party.beakmark
20130211.yuko party.beakmarkRyo Amano
 
デブサミ100人本のご紹介
デブサミ100人本のご紹介デブサミ100人本のご紹介
デブサミ100人本のご紹介Ryo Amano
 
MY JOB WENT TO VIETNAM?
MY JOB WENT TO VIETNAM?MY JOB WENT TO VIETNAM?
MY JOB WENT TO VIETNAM?Ryo Amano
 
リーダー塾第4期説明会に寄せて
リーダー塾第4期説明会に寄せてリーダー塾第4期説明会に寄せて
リーダー塾第4期説明会に寄せてRyo Amano
 
Meisters 6年目の挑戦
Meisters 6年目の挑戦Meisters 6年目の挑戦
Meisters 6年目の挑戦Ryo Amano
 
わたしといがいが
わたしといがいがわたしといがいが
わたしといがいがRyo Amano
 
XP Fiesta Kansai 2010 "アジャイルマインド勉強会の方からやってきました"
XP Fiesta Kansai 2010 "アジャイルマインド勉強会の方からやってきました"XP Fiesta Kansai 2010 "アジャイルマインド勉強会の方からやってきました"
XP Fiesta Kansai 2010 "アジャイルマインド勉強会の方からやってきました"Ryo Amano
 
ビーク・マークとはなにか
ビーク・マークとはなにかビーク・マークとはなにか
ビーク・マークとはなにかRyo Amano
 
Movie Format in a nutshell
Movie Format in a nutshellMovie Format in a nutshell
Movie Format in a nutshellRyo Amano
 
IT現場のリーダー塾卒業式プレゼンテーション
IT現場のリーダー塾卒業式プレゼンテーションIT現場のリーダー塾卒業式プレゼンテーション
IT現場のリーダー塾卒業式プレゼンテーションRyo Amano
 
"involve" NOT "evolve" DevLOVE ed.
"involve" NOT "evolve" DevLOVE ed."involve" NOT "evolve" DevLOVE ed.
"involve" NOT "evolve" DevLOVE ed.Ryo Amano
 
Activities in the "R" Pj.
Activities in the "R" Pj.Activities in the "R" Pj.
Activities in the "R" Pj.Ryo Amano
 
DDDのすすめ
DDDのすすめDDDのすすめ
DDDのすすめRyo Amano
 
"involve", NOT "evolve" -- DevSumi2008
"involve", NOT "evolve" -- DevSumi2008"involve", NOT "evolve" -- DevSumi2008
"involve", NOT "evolve" -- DevSumi2008Ryo Amano
 
わたしのところのニコカレ事情
わたしのところのニコカレ事情わたしのところのニコカレ事情
わたしのところのニコカレ事情Ryo Amano
 
アジャイルレトロスペクティブズのご紹介
アジャイルレトロスペクティブズのご紹介アジャイルレトロスペクティブズのご紹介
アジャイルレトロスペクティブズのご紹介Ryo Amano
 
FIGHT meets "L"
FIGHT meets "L"FIGHT meets "L"
FIGHT meets "L"Ryo Amano
 
腰カラビナ そして野帳
腰カラビナ そして野帳腰カラビナ そして野帳
腰カラビナ そして野帳Ryo Amano
 
an agille way of drinking session
an agille way of drinking sessionan agille way of drinking session
an agille way of drinking sessionRyo Amano
 
Happy & Soft Landings!
Happy & Soft Landings!Happy & Soft Landings!
Happy & Soft Landings!Ryo Amano
 

More from Ryo Amano (20)

20130211.yuko party.beakmark
20130211.yuko party.beakmark20130211.yuko party.beakmark
20130211.yuko party.beakmark
 
デブサミ100人本のご紹介
デブサミ100人本のご紹介デブサミ100人本のご紹介
デブサミ100人本のご紹介
 
MY JOB WENT TO VIETNAM?
MY JOB WENT TO VIETNAM?MY JOB WENT TO VIETNAM?
MY JOB WENT TO VIETNAM?
 
リーダー塾第4期説明会に寄せて
リーダー塾第4期説明会に寄せてリーダー塾第4期説明会に寄せて
リーダー塾第4期説明会に寄せて
 
Meisters 6年目の挑戦
Meisters 6年目の挑戦Meisters 6年目の挑戦
Meisters 6年目の挑戦
 
わたしといがいが
わたしといがいがわたしといがいが
わたしといがいが
 
XP Fiesta Kansai 2010 "アジャイルマインド勉強会の方からやってきました"
XP Fiesta Kansai 2010 "アジャイルマインド勉強会の方からやってきました"XP Fiesta Kansai 2010 "アジャイルマインド勉強会の方からやってきました"
XP Fiesta Kansai 2010 "アジャイルマインド勉強会の方からやってきました"
 
ビーク・マークとはなにか
ビーク・マークとはなにかビーク・マークとはなにか
ビーク・マークとはなにか
 
Movie Format in a nutshell
Movie Format in a nutshellMovie Format in a nutshell
Movie Format in a nutshell
 
IT現場のリーダー塾卒業式プレゼンテーション
IT現場のリーダー塾卒業式プレゼンテーションIT現場のリーダー塾卒業式プレゼンテーション
IT現場のリーダー塾卒業式プレゼンテーション
 
"involve" NOT "evolve" DevLOVE ed.
"involve" NOT "evolve" DevLOVE ed."involve" NOT "evolve" DevLOVE ed.
"involve" NOT "evolve" DevLOVE ed.
 
Activities in the "R" Pj.
Activities in the "R" Pj.Activities in the "R" Pj.
Activities in the "R" Pj.
 
DDDのすすめ
DDDのすすめDDDのすすめ
DDDのすすめ
 
"involve", NOT "evolve" -- DevSumi2008
"involve", NOT "evolve" -- DevSumi2008"involve", NOT "evolve" -- DevSumi2008
"involve", NOT "evolve" -- DevSumi2008
 
わたしのところのニコカレ事情
わたしのところのニコカレ事情わたしのところのニコカレ事情
わたしのところのニコカレ事情
 
アジャイルレトロスペクティブズのご紹介
アジャイルレトロスペクティブズのご紹介アジャイルレトロスペクティブズのご紹介
アジャイルレトロスペクティブズのご紹介
 
FIGHT meets "L"
FIGHT meets "L"FIGHT meets "L"
FIGHT meets "L"
 
腰カラビナ そして野帳
腰カラビナ そして野帳腰カラビナ そして野帳
腰カラビナ そして野帳
 
an agille way of drinking session
an agille way of drinking sessionan agille way of drinking session
an agille way of drinking session
 
Happy & Soft Landings!
Happy & Soft Landings!Happy & Soft Landings!
Happy & Soft Landings!
 

Recently uploaded

The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024koheioishi1
 
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドKen Fukui
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ssusere0a682
 
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドリアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドKen Fukui
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドKen Fukui
 
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptyuitoakatsukijp
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドKen Fukui
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfyukisuga3
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドKen Fukui
 
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationYukiTerazawa
 

Recently uploaded (10)

The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
 
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
 
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライドリアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
リアル戦国探究in米沢 当日講座1(スタッフ共有用)『兵は詐をもって立つ』についてのスライド
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
 
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScript
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
 
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
 

「ツナガル」クミコミシステム