Advertisement

More Related Content

Slideshows for you(20)

Similar to アジャイル開発&TFS導入(20)

Advertisement

アジャイル開発&TFS導入

  1. 名古屋アジャイル勉強会 分科会 開発ツール勉強会 #2 2012/02/25 You&I
  2. 0. 自己紹介  H/N You&I(読み:ユーアンドアイ)  出身 生まれも育ちも名古屋市  年齢 30代前半  本職 商学部出身の職業プログラマ  言語 C++, C#, VisualBasic 6.0, 日本語COBOL  日記 http://d.hatena.ne.jp/youandi/  所属 名古屋アジャイル勉強会 プログラミング生放送 名古屋支部 わんくま同盟
  3. 0.マイブーム  おこしもん
  4. Agenda 1. アジャイル開発の紹介 2. Scrumの紹介 3. アジャイル用語の紹介 4. Microsoft Team Foundation Serverのインストール 5. おわりに
  5. Agenda 1. アジャイル開発の紹介 2. Scrumの紹介 3. アジャイル用語の紹介 4. Microsoft Team Foundation Serverのインストール 5. おわりに
  6. 1. アジャイル開発の紹介(1/8)  2001年に、アジャイル開発手法を支持する多くの著名人 によって公開された、アジャイル開発手法の精神をまとめ た文書が、アジャイルマニフェスト(アジャイルソフトウェア 開発宣言)である。日本語訳の公開は2010年。  http://agilemanifesto.org/iso/ja/  アジャイルマニフェストだけではなく、合わせて12の原則 も公開されており、これらを含めてアジャイル開発の根底 を成している。
  7. 1. アジャイル開発の紹介(2/8)  アジャイルマニフェスト 私たちは、ソフトウェア開発の実践あるいは実践を手助けを する活動を通じて、よりよい開発方法を見つけだそうとしてい る。この活動を通して、私たちは以下の価値に至った。 プロセスやツールよりも個人と対話を、 包括的なドキュメントよりも動くソフトウェアを、 契約交渉よりも顧客との協調を、 計画に従うことよりも変化への対応を、 価値とする。すなわち、左記のことがらに価値があることを認 めながらも、私たちは右記のことがらにより価値をおく。
  8. 1. アジャイル開発の紹介(3/8)  アジャイルソフトウェアの12の原則(1/3) 私たちは以下の原則に従う: 1. 顧客満足を最優先し、価値のあるソフトウェアを早く継続 的に提供します。 2. 要求の変更はたとえ開発の後期であっても歓迎します。 変化を味方につけることによって、お客様の競争力を引 き上げます。 3. 動くソフトウェアを、2-3週間から2-3ヶ月というできるだけ 短い時間間隔でリリースします。
  9. 1. アジャイル開発の紹介(4/8)  アジャイルソフトウェアの12の原則(2/3) 4. ビジネス側の人と開発者は、プロジェクトを通して日々一 緒に働かなければなりません。 5. 意欲に満ちた人々を集めてプロジェクトを構成します。環 境と支援を与え仕事が無事終わるまで彼らを信頼します。 6. 情報を伝えるもっとも効率的で効果的な方法はフェイス・ トゥ・フェイスで話をすることです。 7. 動くソフトウェアこそが進捗の最も重要な尺度です。 8. アジャイル・プロセスは持続可能な開発を促進します。一 定のペースを継続的に維持できるようにしなければなりま せん。
  10. 1. アジャイル開発の紹介(5/8)  アジャイルソフトウェアの12の原則(3/3) 9. 技術的卓越性と優れた設計に対する不断の注意が機敏 さを高めます。 10. シンプルさ(ムダなく作れる量を最大限にすること)が本 質です。 11. 最良のアーキテクチャ・要求・設計は、自己組織的な チームから生み出されます。 12. チームがもっと効率を高めることができるかを定期的に振 り返り、それに基づいて自分たちのやり方を最適に調整 します。
  11. 1. アジャイル開発の紹介(6/8)  アジャイルマニフェスト+12の原則とアジャイルプラクティ スの関係  「原則」とは考え方の指針であり、「プラクティス」はその「原 則」を実行する為に何をするか、である。  例えば「個人と対話」→「朝会・デイリースクラム」により毎日 コミュニケーションを取る、「ペアプログラミング」を導入する など。  事例発表でみるべきポイントは、「何をしたのか」を見る前 に「何が問題だったのか」「どのような経緯でそのプラクティ スを選択したのか」が重要である。どのようにプラクティスを 実施したのかも重要ですが、まずはその背景を知るべき。
  12. 1. アジャイル開発の紹介(7/8)  ひとつお伝えしたいのは、「アジャイル開発は銀の弾丸で はない」という事である。  アジャイル開発を行っても失敗する事もある。  アジャイル開発で楽にはならない。やる事は増えます。だか らその分やらなくて良いことはやらない。(リーン開発)  アジャイル開発を行う上で重要なのは、開発チームの自 己組織化と絶え間ないカイゼン活動、そして考える事で ある。  アジャイルプラクティスは、アジャイルマニフェスト以降に 提案されたものではなく、昔からの先人の知恵・英智に対 しての名前付け・定義を行ったものである。プラクティスと はやるべき事のチェックリストである。
  13. 1. アジャイル開発の紹介(8/8)  アジャイル開発は一人で考えるものではなく、チームで物 事を考え・決める。  チーム内で相談できないなら社内で。社内でもダメなら社 外の勉強会等を利用する。  10人のAgilerが居たとして、その10人のアジャイル感とい うのはそれぞれで異なっている可能性があります。  大事な事はそれぞれにどんな背景があって、そこに至った のか。  あるチームにとって何が最適なのかは、最終的にはその チームにしか結果を出せません。
  14. Agenda 1. アジャイル開発の紹介 2. Scrumの紹介 3. アジャイル用語の紹介 4. Microsoft Team Foundation Serverのインストール 5. おわりに
  15. 2. Scrumの紹介(1/7)  アジャイル開発にはアジャイルマニフェストとアジャイルプ ラクティスがあると説明しましたが、開発プロセスとしての 視点でアジャイル開発を見た場合、朝会といった小さな レベルではなく、開発プロセスのレベルでのプラクティス も存在する。  それらの開発プロセスは、様々なプラクティス(アジャイル 由来ものと、それ以外のもの)を組み合わせて定義されて いる。
  16. 2. Scrumの紹介(2/7)  アジャイルな開発プロセス 1. Crystal Family(The Crystal methodology:Crystal Clear, etc.) 2. DSDM(Dynamic Systems Development Method:反復 型開発) 3. FDD(Feature-Driven Development) 4. RUP(Rational Unified Process)/UP 5. Scrum 6. eXtreme Programming(XP)
  17. 2. Scrumの紹介(3/7)  アジャイルな開発プロセスで定義されている事 1. ゴール(完了条件) 2. ロール(役割) 3. 見積もり 4. 要件定義(フィーチャー、ユーザーストーリー、バックログ) ( 5. タイムボックス管理(イテレーション、スプリント) ) 6. 製品リリース管理 7. ふりかえり 8. PDCAサイクル(Plan-Do-Check-Act cycle) 9. 見える化
  18. 2. Scrumの紹介(4/7)  Scrumは1986年に、野中郁次郎・竹内弘高両氏の論文 にて初めてScrumという名前で紹介された。  Scrumの名前の由来はラグビーのスクラムによる。  Scrum Allianceによる7種類の認証制度がある。所謂スク ラムマスター。これはScrumを実施するのに必須ではな い。新たにアジャイル開発を行う上では、アジャイル開発 を理解した人(アジャイルコーチ等)をチームに入れる事 が推奨される。  Scrumの流れは以下の画像が分かり易い。 http://www.ryuzee.com/contents/blog/3964
  19. 2. Scrumの紹介(6/7)  Scrumの構成(1/2)  プロダクトバックログ  リリースバックログ  スプリント  スプリントバックログ  スプリント計画会議  日々の開発作業  デイリースクラム  バーンダウンチャート  スプリントレビュー  ふりかえり
  20. 2. Scrumの紹介(7/7)  Scrumの構成(2/2)  ロール(役割)  プロダクトオーナー(製品責任者)  スクラムマスター(チームを外部から守る)  チームメンバー  ステークホルダー(製品利用者、出資者、管理職)  10名以内の人数構成  プロダクトオーナーの役割は以下の画像が分かり易い。 http://www.ryuzee.com/contents/blog/4107
  21. Agenda 1. アジャイル開発の紹介 2. Scrumの紹介 3. アジャイル用語の紹介 4. Microsoft Team Foundation Serverのインストール 5. おわりに
  22. 3. アジャイル用語の紹介(1/4) ハンズオンで出てくるアジャイル開発に関連する用語につ いて解説します。  イテレーション 反復と呼ばれたり、Scrumではスプリントと表現される。1~4 週間の区切りによる作業単位の事。  バックログ いわゆる作業リスト。製品全体の場合はプロダクトバックログ、 製品リリースの場合はリリースバックログ、イテレーション期 間の場合はイテレーションバックログ。
  23. 3. アジャイル用語の紹介(2/4)  フィーチャー、ストーリー、タスク ソフトウェアの実現機能や大枠の作業項目をフィーチャーと 呼ぶ。 フィーチャーを構成する一連の処理群をストーリーと呼ぶ。 ストーリーを構成する具体的な作業項目をタスクと呼ぶ。 フィーチャー フィーチャー ストーリー ストーリー ストーリー ストーリー タスク タスク タスク タスク タスク タスク タスク タスク
  24. 3. アジャイル用語の紹介(3/4)  ストーリーの考え方をプログラムで例えると・・・  従来のやり方だと、「画面」「データアクセス」「データベー ス」の縦方向でタスクを洗い出す。  アジャイル開発では、赤枠の横方向でタスクを洗い出す。 画面 データアクセス データベース • 売上入力 • 売上入力 • 売上テーブル • 請求書発行 • 請求書発行 • 月次テーブル
  25. 3. アジャイル用語の紹介(4/4)  ユーザーストーリー ストーリーと同義。ソフトウェアの要求項目。  ストーリーポイント 作業の見積もり時において、とある基準に対する相対的な作 業量を示す値。 一般的にはストーリーポイントが「2」の場合は、基準の作業の 2倍の作業量を意味する。 ストーリーポイントは、チームミーティングの場でプランニング ポーカーを使用してせーの!で決める。
  26. Agenda 1. アジャイル開発の紹介 2. Scrumの紹介 3. アジャイル用語の紹介 4. Microsoft Team Foundation Serverのインストール 5. おわりに
  27. 4. TFSのインストール(1/10)  最後に本題のTFSのインストールについて紹介。  TFSの紹介記事では、TFSのインストールについて懇切丁 寧に書かれたものがあまり見当たらない・・・ような。  TFS 2010からはセットアップが格段に簡単になったとの事 ですが、今回の勉強会向けに環境を用意した中で、何か 伝えられることがあるのではないかというセッションです。
  28. 4. TFSのインストール(2/10)  TFSの機能は大きく以下の5つ 1. ソースコード管理 2. 作業項目トラッキング 3. ビルドサービス 4. レポート 5. テスト管理  TFS2010からは、Windows Vista/Windows 7といったク ライアントOSへのインストールもサポートされる。但し、こ の場合、SharePoint・レポート機能は利用出来ない。
  29. 4. TFSのインストール(3/10)  TFS 2010のサーバーに必要なもの  Windows Server 2003以降  SharePoint 3.0以降  SQL Server 2008以降  VisualStudio 2005以降(VS2010未満は機能制限あり)  TFS 2010のクライアントに必要なもの  VisualStudio 2005以降 / TFS Everywhere 2010  Excel 2007以降
  30. 4. TFSのインストール(4/10)  今回の勉強会では、皆さんの接続用にTFS 2010をセット アップしたサーバーを用意しました。  このサーバーのセットアップに当たっては、OSからOffice に至るまで、全て評価版ライセンスに基づき、評価目的 でセットアップしたものです。  実運用にするに当たっては、クライアント接続ライセンス 等の考慮が必要となります。今回はその辺りについては 言及致しませんので、ご了承下さい。
  31. 4. TFSのインストール(5/10)  今回は1台のサーバーに全てのアプリケーションをインス トールしましたが、導入規模に合わせてサーバーを分散 する事も可能です。  TFS 2010  SQL Server 2008 R2  MSDNサブスクリプションで提供されるものは、分散構 成での運用を認めていない等の制限が有ります。
  32. 4. TFSのインストール(6/10)  標準構成のTFSサーバーを1からインストールする(1/3)  Windows Server 2008 R2のインストール  60分程度  Windows Server 2008 R2の設定  10分程度(70分)  Windows Server 2008 R2をWindowsUpdate  50分程度(120分)  SQL Server 2008 R2 Standard Editionをインストール  40分程度(160分)  SQL Server 2008 R2 SP1をインストール  40分程度(200分)
  33. 4. TFSのインストール(7/10)  標準構成のTFSサーバーを1からインストールする(2/3)  VisualStudio 2010をインストール  30分程度(230分)  VisualStudio 2010 SP1をインストール  30分程度(260分)  VisualStudio 2010をWindowsUpdate  20分程度(280分)  TFS 2010をインストール  20分程度(300分)  TFS 2010 SP1をインストール  10分程度(310分)
  34. 4. TFSのインストール(8/10)  標準構成のTFSサーバーを1からインストールする(3/3)  TFS 2010をWindowsUpdate  30分程度(330分)  TFS 2010の設定  30分程度(360分)  Office 2010のインストール  20分程度(380分)  Office 2010をWindowsUpdate  10分程度(390分)
  35. 4. TFSのインストール(9/10)  インストール作業自体は、「次へ」ボタンの押下を行うだけ で、後はファイルコピーの時間でした。  あまり数えたく有りませんが、セットアップに最低でも6時 間は覚悟が必要ですね。  これは、4コアCPU+4GBメモリー+SSDのデスクトップPC にセットアップした時の時間です。  今回の勉強会に向けて、4回位やりました・・・。
  36. 4. TFSのインストール(10/10)  自分が体験した中での注意点等  Windows Serverのマシン名は、OSインストール完了後に 直ぐに設定する。間違ってもSQL Server/TFSをインストール した後に変更しない事。  Windows ServerにIE以外のブラウザをインストールすると ちょっと捗る。  TFS 2010のインストール前にSQL Serverをインストールしま しょう。  書籍「チーム開発プラットフォーム Team Foundation Server 入門」はとても役立つ。
  37. Agenda 1. アジャイル開発の紹介 2. Scrumの紹介 3. アジャイル用語の紹介 4. Microsoft Team Foundation Serverのインストール 5. おわりに
  38. 5. おわりに  参考にした書籍のご紹介  実践!アジャイルプロジェクト管理 ISBN:978-4774140124  チーム開発プラットフォームTeamFoundationServer入門 ISBN:978-4774146089
Advertisement