チーム開発には TFS /VSO が必要
HOME ⇒ ダッシュボード・見える化
CODE ⇒ ソースバージョン管理
WORK ⇒ タスク管理・工程管理・進捗管理・バグトラッキングシステム
BUILD ⇒ 自動ビルド・自動テスト・自動リリース・継続的デリバリー
TEST ⇒ テストケース管理(バグトラッキングシステム)
RELEASE ⇒ リリース管理(自動化・ワークフロー・継続的デリバリー)
ソースバージョン管理システムからもう一歩次に進もう!
8
9.
どれを採用するか?は “クラスタ” の違い?
Visual Studio + TFS(オンプレ)
Visual Studio + VSO(クラウド)
Visual Studio
+ Subversion~Git、Trac~Redmin、hudson~jenkins、NUnit ...(OSS)
どれを採用するのが自分のチームに一番適しているか?
※ TFS/VSO ではソースバージョン管理システムとして Git が使用できます 9
Team Foundation Server
Visual Studio Online
10.
オンプレか?クラウドか?OSSか?
全てやりたいなら TFS
初期投資大&バージョンアップは大変(ハードウェア要件が上がる)
VSO は 5名まで無料ですぐに始められて、常に最新
一部従量課金、まだフル機能ではない感じだが、どんどん強化されている
全て無料(あるいは、人件費がとてもかかる) OSS
何でも出来る=全部自分達で解決する必要があり人に依存・トレンドの変化も早い
おすすめは VS + VSO、機能が不足してきたら VS + TFS を検討 10
MVVMで設計できれば「単体テスト」を作れる
M :Model
DBやクラウドサービスから入手したデータを入れる箱
V: View
画面に表示して、人間がデータの内容を確認出来るようにする
VM : View Model
画面(V) に表示するために、モデル(M) を複製して、その画面用のモデル(VM) とする
クラスライブラリ、あるいはアプリの一部分の「単体テスト」を作る
22
23.
MVVM : Model– View – View Model の動き
DBやクラウドから取得した Model を、画面用の View Model に格納
画面にデータバインドで表示
双方向バインドなら V でユーザーが値を変える VM も変わる
プログラムで今度は逆に VM から M に格納、それぞれDBやクラウドに保存する
23
“A” Model
“C” View Model View “C”
Database “A”
Cloud Service “B” “B” Model
データバインド
Data Binding
Web API, WCF
Entity Framework, LINQ to SQL
24.
MVVM ならロジックを分離して単体テストできる
MVVMの色んな部分を差し替えることが可能 DBにもインターネットに繋がずにテスト出来る 24
“A” Model
“C” View Model 単体テスト
Database “A”
Cloud Service “B” “B” Model
View Model
を試験
Web API, WCF
Entity Framework, LINQ to SQL
単体テスト“C” View Model
View Model
を試験
テスト用 Model
を作るプログラム
“A” Model
“B” Model