SlideShare una empresa de Scribd logo
1 de 45
Descargar para leer sin conexión
Ultimate Agilist Tokyo
               Nov 17, 2012

     アジャイルプログラマーになるためには!
                               日本語ガイド
               How to be an Agile
                 Programmer
                              T s u y o s h i   U s h i o




12年11月21日水曜日
12年11月21日水曜日
Think about


        Definition of Agile Programmer
               アジャイルプログラマの定義を考えてみよう

                            in this session




12年11月21日水曜日
Agenda


                Learn about other definitions
                                  他の定義について学ぶ
                Discussion
                                   ディスカッション
                Conclusion
                                     結果のまとめ




12年11月21日水曜日
Learn about
                  other
               definitions

12年11月21日水曜日
What is
               Agile Development?

Agile software development is a group of software development methods based on iterative and
incremental development, where requirements and solutions evolve through collaboration between
self-organizing, cross-functional teams. It promotes adaptive planning, evolutionary development
and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to
change. It is a conceptual framework that promotes foreseen interactions throughout the development
cycle. The Agile     Manifesto[1] introduced the term in 2001.
                                               WIKIPEDIA            http://en.wikipedia.org/wiki/Agile_software_development




      アジャイルソフトウェア宣言でGoogleすると、日本語の定義が出てきます!

                                http://agilemanifesto.org/iso/ja/



12年11月21日水曜日
アジャイルソフトウェア宣言でGoogleすると、日本語の定義が出てきます!
                             http://agilemanifesto.org/iso/ja/principles.html

                        Agile Manifesto
         Value                                                 Principle
                                 1. Our highest priority is to satisfy the customer through early
                                    and continuous delivery of valuable software.
                                 2. Welcome changing requirements, even late in development.
  Individuals and interactions     Agile processes harness change for the customer's competitive advantage.
    over processes and tools
                                 3. Deliver working software frequently, from a couple of weeks to a
                                    couple of months, with a preference to the shorter timescale.
                                 4. Business people and developers must work
                                                                           together daily throughout the project.
    Working software over
       comprehensive             5. Build projects around motivated individuals. Give them the environment
       documentation                and support they need, and trust them to get the job done.
                                 6. The most efficient and effective method of conveying information to
                                    and within a development team is face-to-face conversation.

    Customer collaboration       7. Working      software is the primary measure of progress.
   over contract negotiation     8. Agile processes promote sustainable development. The sponsors, developers,
                                   and users should be able to maintain a constant pace indefinitely.
                                 9. Continuous attention to technical    excellence and good design enhances agility.
  Responding to change over      10. Simplicity--the art of maximizing the amount of work not done--is essential.
      following a plan
                                 11. The best architectures, requirements, and designs emerge from
                                     self-organizing teams.
                                 12. At regular intervals, the team reflects on how      to become more effective,
                                     hen tunes and adjusts its behavior accordingly.
12年11月21日水曜日
Analyze it
                                                                     ごめん、これは勘弁して
                                                                ただし、ブログにこれの後さらに
                                                                  分析して日本語化したTreeあり




         https://s3-ap-northeast-1.amazonaws.com/ultimateagilisttokyoupload/アジャイルプログラマのスキルマップ.png




12年11月21日水曜日
XP practices
                                       XPのプラクティス




               http://ullizee.wordpress.com/2009/11/02/extreme-programming-revisited-part-i/




12年11月21日水曜日
five objectives for
                agile programmer
                       アジャイルプログラマーが達成すべき5つの目的



                            Continuous Delivery of valuable software
                                         Embrace change
                              Deliver Working Software frequently
                 Continuous attention to Technical Excellence and Good Design
                  Create the best architecture, requirements and design emerge
                                  form Self-Organization-Team
                           Programmer related Agile Manifesto 12 principles
               価値あるソフトウェアを継続的にデリバリーする
                              変化を抱擁する
                 頻繁に動作するアプリケーションを届ける
       技術的に卓越することと、よいデザインにずっと注意を払う
        最高のアーキテクチャ、要求、設計は、自己組織化された
                            チームから生まれる
                 プロブラマーに関係するアジャイルソフトウェア宣言の12の原則からピックアップしました
12年11月21日水曜日
Manifesto for software
                   craftsmanship

               Not only working software, but also well-crafted software

               Not only responding to change, but also steadily adding value

               Not only individuals and interactions, but also a community of professionals

               Not only customer collaboration, but also productive partnerships



                                  ソフトウェア職人宣言       http://manifesto.softwarecraftsmanship.org
                  動作するソフトウェアだけではなく、しっかり作られたソフトウェアを
                     変化に対応するだけではなく、着実に価値を付加していくことを
                   個人と相互作用だけでなく、プロフェッショナルたちのコミュニティを
                       顧客との強調だけでなく、生産的なパートナーシップを




12年11月21日水曜日
ICAgile
                           ICAgile exists to support education in the agile space.
                    Use ICAgile’s definitive learning roadmap to find accredited courses
                    that recognize students as they progress along their specialty paths.
                                            ICAgileは、アジャイル分野に関する教育を助けるために存在します
                                     ICAgileの定義されたロードマップをつかうことで、公式なコースを見つける事ができます
                                       進路に応じて、生徒がどのように成長していけばいいか、理解することができます

       Fundamentals of Agile
                   アジャイルの基本

      Agile Business Analysis
        +Value Management
      ビジネスアナリシスとバリューマネジメント

     Agile Project Management
         アジャイルプロジェクトマネジメント

   Agile Facilitation + Coaching
      アジャイルファシリテーションとコーチング

      Agile Software Design +
            Programming
      アジャイルソフトウェア設計とプログラミング
               Agile Testing                         http://www.icagile.com/index.html
                アジャイルテスト


12年11月21日水曜日
Learning Areas
                Agile Software Design +Programming
                                            1.1. Test Driven Development
                                                                                 1.1. テスト駆動開発
                                            1.2. Good Design                       1.2. よい設計
                                                                                  1.3. 技術的負債
               1. Designing & Programming   1.3. Technical Debt
                                                                                1.4. リファクタリング
                                            1.4. Refactoring                     1.5. レガシーコード
                        設計とプログラミング
                                            1.5. Legacy Code
                                            2.1. Acceptance Test                  2.1. 受入テスト
               2. Testing                                                      2.2. テストのプログラミング
                                            2.2. Programming the test
                              テスト
                                            3.1. Collaboration                  3.1. コラボレーション
                                                                                   3.2. 共同責任
               3. Teams and Behaviors       3.2. Collective Accountability     3.3. チームアクティビティ
                            チームと振る舞い        3.3. Team Activity
                                            4.1. Function-Based Development
               4. Structuring Work                                                4.1. 機能ベース開発
                                            4.2. Planning                          4.2. プランニング
                            作業を構造化する

               5. Environment               5.1. Leveraging Tools
                                環境                             5.1. ツールを活用する




12年11月21日水曜日
five objectives and
                    practices
          Five Objectives

                                                                               Practices




                                                 日本語版
         https://s3-ap-northeast-1.amazonaws.com/ultimateagilisttokyoupload/アジャイルプログラマのスキルマップ.png




                                Agile Programmer’s mandatory skill Map
12年11月21日水曜日
Please get documents from

    http://simple-architect.blogspot.jp
                             日本語版
   http://d.hatena.ne.jp/simplearchitect/20121117/1353181189




12年11月21日水曜日
Discussion


12年11月21日水曜日
Golden Circle
                          Why is Vision
                            is our gut
                                has emotion and heart
                             create something bigger then your self


                          How is Mission
                                  brings up guiding principle         Why


                          What is Rules                               How

                             has practices                            What
                                    is dynamic organic
 Why time to market(ex)
 How 12 principles
 What priactices

 1. Post What (Practice ex. TDD)
 2. Post How (Principles ex 12 principles)
 3. Post Why (Guts, Visions ex. time to market)
12年11月21日水曜日
Conclusion


12年11月21日水曜日
http://newtechusa.net/culture-con/




        I’ll share your conclusions later in English.
                        Thank you!

12年11月21日水曜日
We thought
                   This is the
               Agile Programmer’s
                    Skill set

                    Workshop Results in 10 minutes
12年11月21日水曜日
Team Golden Circle




                                      Rhythm
               Collective Ownership                                         Repository
                                                        Coding
                                                       Standard
                   Team Building                         Code
                                                        Review
                    Self Organizing Team

                                                                         PairProgramming
                Visualization      WhiteBoard Refactoring     Planning                     Dairy Meeting

                   Kaizen
                                    Burn down                                Design
        Working Software                                    Retrospective
                                      chart
                                                                                            Ceremony
         Trust & Respect
                                                                                           Drink Party
                                                                         War-Room




12年11月21日水曜日
Team Door Side




                             Collaboration with customer
                           Collaboration with team members



                                      ability to
                                  think realization
                                                                  Identify customer’s
                                                                   Power Structure
                                ability to think

                                                             Listening Skill




                                                      Vagrant &
                                                       chef!!!



12年11月21日水曜日
Team 7



                                                     Understand
                                                Business Requirement
                                                                       Embrace Change
                          Design Test
                                                                                          Stout heart




               ability to read someone’s code

                                                                       ambition
                                                                                        sincerity
                                                Communication Skill
                       coarse grained design
                           architecture




12年11月21日水曜日
Team Maid



                                                                                                    Simple Design

                      mix up the ideas
                that written in some papers                                           Refactoring
                                                                           Simple

                                                      Design Test

                                                                             Design
                         Recognize requirement
               communication                            Pair Programming


                                              Continuous Delivery

                           proposal




12年11月21日水曜日
Team
       Ushio LOVE

                                                                                          Ability to
                                         embrace change        Frequent feedback      Keep on something!




                                           Test Driven Development
                                                                                             Passion
               Continuous delivery
               of valuable software
                                                          Object Oriented


                           Continuous                                        Retrospective
                           Integration

                                                                          Face-to-Face
                                                                         Communication
                         Continuous
                          Delivery

                                                                                 UML
                                                                      Common Language or something..



                                                                     Communication Skill

12年11月21日水曜日
Summary




12年11月21日水曜日
Summary




12年11月21日水曜日
Appendix.
               Technical element
                      of
                    iCAgile
               Agile Software Design +
                     Programming
                         every books are referenced by Amazon.co.jp or Amazon.com
12年11月21日水曜日
1. Designing & Programming                                                      1. 設計とプログラミング
                                                                                       1.1. テスト駆動開発

      1.1. Test Driven Development

         1.1.1. The value of test-driven development
         1.1.2. Identifying usage patterns to define the object or function interface
                                                                               1.1.1. テスト駆動開発の価値
         1.1.3. Identifying completeness of conditions that drive usage patterns in the code
                                                          1.1.2. オブジェクトや関数のインターフェイスの利用パターンを探し出す
         1.1.4. Avoiding duplication in the conditions           1.1.3. コードの中の条件の完全性の利用パターンを探し出す
         1.1.5. Red-Green-Refactor                                              1.1.4. 条件の重複を避ける
         1.1.6. Test Speed                                           1.1.5. レッド、グリーン、リファクタリングパターン
                                                                                     1.1.6. テストのスピード




               Test Driven Development: By Example   Test-Driven iOS Development   Growing Object-Oriented Software, Guided by Tests
               Kent Beck (2002)                      Graham Lee (2012)             Steve Freeman, Nat Pryce (2009)



                                                                                                    required knowledge
12年11月21日水曜日
1. Designing & Programming
                                                                Architecture (1.2.1)
      1.2. Good Design                      1. 設計とプログラミング
                                               1.2. よい設計
                                                                Beck’s 4 rules of simple design(1.2.2)
                                                                McCabe complexity (1.2.2)
                                                                DRY (1.2.3.)
                                                                SOLID (1.2.3.)
         1.2.1. Role of Design-in-the-Large
         1.2.2. Simple design
         1.2.3. Evaluating Design and Design Principle
         1.2.4. Design Patterns                                          1.2.1. 大きな設計の役割

         1.2.5. Clean Programming                                         1.2.2. シンプルな設計
                                                                      1.2.3. 設計の評価と、設計原則
         1.2.6. Listening to your tests
                                                                         1.2.4. デザインパターン
                                                                      1.2.5. クリーンプログラミング
                                                                   1.2.6. あなたのテストに聞いてみよう




               Agile Software Development                   The Art of Readable Code
               Robert C. Martin (2011)                      Dustin Boswell, Trevor Foucher (2011)




12年11月21日水曜日
BECKのシンプルデザインの4つのルール
                                                                                      全てのテストがパスしていること



                                               continue...                                      重複が無い事
                                                                                  プログラマの意図が表現されていること
                                                                              クラスとメソッドの数が最小化されていること

                                                              Beck’s 4 rules of simple design
                                                              Pass all tests
                                                              Contains no duplications
                                                              Express the intent of the programmers
                                                              Minimizes the number of classes and methods
                                                             http://theholyjava.wordpress.com/2011/02/14/clean-code-four-simple-design-rules/

           Patterns of Enterprise Application Architecture
           Martin Fowler (2002)                               SOILD
                                                              Single responsibility principle
                                                              Open/Closed Principle
                                                              Liskov substitution principle
                                                              Interface segregation principle
                                                              Dependency Inversion Principle
                                                                If you want to understand SOLID , Read Agile Software Development!



Design Patterns: Elements of         増補改訂版Java言語で学ぶ
Reusable Object-Oriented Software    デザインパターン入門 
Erich Helm, Richard Johnson,
Ralph Vissides, John Gamma(1994)     結城浩(2004)
                                       SOLID
                                     単一責任の原則
                                    オープンクローズ原則
                                    リスコフ置換の原則
                               インターフェイス分離の原則
                                                                                Pattern-oriented software architecture
                                     依存姓反転の原則                                   Frank Buschmann, etc (1996)
12年11月21日水曜日
continue...
                                                                       もし、オブジェクト指向がわからないなら、これしたら?


                                                                If you can’t understand OO, try these.




  Just Enough Software Architecture: A Risk-Driven Approach   オブジェクト脳のつくり方
  George Fairbanks (2010)                                     牛尾 剛 (2003)
                                                                                    Agile Education by Object Game
                                                                                    AGILE2011 session

                                                                                      http://enterprisezine.jp/iti/detail/3385?p=2




12年11月21日水曜日
1. Designing & Programming
      1.3. Technical Debt                                        1.3. 技術的負債




         1.3.1. Recognizing technical debt
         1.3.2. Discussing technical debt choices with stakeholders.
                                         1.3.1. 技術的負債を理解する
                                1.3.2. 技術的負債の選択について利害関係者と議論する




12年11月21日水曜日
1. Designing & Programming
                                                                                              DB, HTML refactoring (1.4.4.

      1.4. Refactoring
                                                         1.4. リファクタリング


                                                                              1.4.1. リファクタリングの原則
           1.4.1. Principles of refactoring                                         1.4.2. 不吉な香り
           1.4.2. Code smells                                                1.4.3. 一般的なリファクタリング
           1.4.3. Common refactorings                                      1.4.4. 広がるリファクタリングの世界

           1.4.4. The larger world of refactoring                          1.4.5. リファクタリング(そのもの)

           1.4.5. Refactoring




    Refactoring: Improving the Design of Existing Code               Refactoring Workbook                        Refactoring Databases:
    Martin Fowler , Kent Beck, John Brant,                           William C. Wake (2003)                      Evolutionary Database Design
    William Opdyke, Don Roberts(1999)                                                                            Scott W. Ambler (2006)




12年11月21日水曜日
テストコードが無い時(1.5.2.)


    1. Designing & Programming                                               リファクタリングツールを使う
                                                                             静的型付け言語の場合
                                                                               ・エラーをコンパイラが見つけてくれる

                                                      witout test code (1.5.2.)    レベルに小さなステップに分解する
      1.5. Legacy code                                refactoring tools
                                                                                動的型付け言語の場合
                                                                                  ・エラーがほとんど起こらない程度の
                             1.5. レガシーコード             statically typed langage    小さなステップに分解する
                                                          breaking down into steps
                                                          catch errors with compiler
                                                      dynamic language
          1.5.1. Approaching legacy code                  breaking down into steps
          1.5.2. Refactoring without test                    which are likely less error
          1.5.3. Retrofitting test onto legacy code
                                                                      1.5.1. レガシーコードへのアプローチ
                                                                     1.5.2. テストなしでリファクタリングする
                                                                      1.5.3. レガシーコードにテストをつける




                                                     「派生開発」を成功させるプロセス改善の技術と極意
      Working Effectively With Legacy Code
      Michael Feathers (2004)                        清水吉男(2007)




12年11月21日水曜日
2. Testing
      2.1. Acceptance Testing
                                                                                                        ユニットテスト(2.1.1.)
                                          2.1. 受入テスト
                                                                                                        コンポーネントテスト
                                                                                   Unit Test (2.1.1.)  受入テスト
            2.1.1. Types of tests to automate                                      Component Test      非機能テスト
            2.1.2. Test as Specification and Documentation                          Acceptance Test
            2.1.3. ATDD as aid to design thinking                                  non-functional Test
            2.1.4. Tester-Business-Developer Collaboration
            2.1.5. ATDD Process                                                    ATDD 3 different forms (2.1.6.)
                                                                                   a text based form ( cucumber)
            2.1.6. ATDD Styles & Tools
                                                                                   table (FIT)       ATDDの3形態(2.1.6)
            2.1.7. Testing the system bypassing the user interface                 in code (xUnit)   テキストベース(cucumber)
            2.1.8. Testing the system through the user interface                                       テーブル形式(fit)
            2.1.9. Cross-functional testing                                        cucumber (2.1.8.)   コードに記述(xUnit)
                                     2.1.1. 自動化するテストの種類
                                     2.1.2. 仕様、ドキュメントとしてのテスト
                                                                                   Robot Framework
                                     2.1.3. ATDD がデザインシンキングを助ける
                                     2.1.4. テスターとビジネスの人と開発者の                       non-functional tests(2.1.9.)
                                       コラボレーション                                    capacity
                                     2.1.5. ATDDプロセス                               response time
                                     2.1.6. ATDDのスタイルとツール                          security 非機能テスト(2.1.9)
                                     2.1.7. ユーザインターフェイスをバイパスしたテスト                  etc...     キャパシティ
                                     2.1.8. ユーザインターフェイスを介したテスト                                応答速度
                                     2.1.9 機能横断テスト                                            セキュリティ

        ATDD by Example: A Practical Guide to Acceptance Test-Driven Development              などなど
        Markus Gartner (2012)
12年11月21日水曜日
2. Testing
      2.2. Programming the tests
                    2.2. テストをプログラミングする
                                                                          test doubles (2.2.6.)
                                                                          stub
           2.2.1. Coding Tests by Intention                               mocks
           2.2.2. Testing the tests                                       fakes
           2.2.3. Test execution time                                     spies
                                          2.2.1. プログラマの意図をもったテストコードを書く
           2.2.4. Fixture Setup           2.2.2. テストをテストする
           2.2.5. Result Verification      2.2.3. テスト実行時間
           2.2.6. Use test doubles        2.2.4. フィクスチャのセットアップ
           2.2.7. Refactoring Test        2.2.5. 評価の結果
                                                        2.2.6. テストダブルを使う(例えばデータベースを直接つかわないでテストする事等)
                                                        2.2.7. テストのリファクタリング




                                                                                    at least 3 different ways
                                                                                    of verifying the test code
                                                                                    (2.2.2.)
                                                                        少なくとも、3つの違った方法でテストコードを確認すること

               xUnit Test Patterns: Refactoring Test Code
               Gerard Meszaros (2007)


12年11月21日水曜日
3. Teams and behaviors                                                     Class Diagrams (3.1.5.)
                                                                               Sequence Diagram
      3.1. Collaboration                                                       Instance and Deployment diagrams
                                                                               CRC cards and similar
           3.1.1. Collaboration Skills
                                                                               task and kanban board (3.1.6.)
           3.1.2. Work allocation
                                                                               story maps
           3.1.3. Stakeholder Conversations                                    burn chart
           3.1.4. Pair Programming                                             cumulative flow diagrams
           3.1.5. Communication design                                         physical and electronic radiators
           3.1.6. Information Radiators 3.1.1. コラボレーションスキル
           3.1.7. Working spaces        3.1.2. 仕事の割り当て
                                                                                                    タスクとカンバン(3.1.6)

           3.1.8. Distributed teams     3.1.3. 利害関係者との会話
                                                                                                    ストーリマッピング
                                                                                                    バーンチャート
                                                     3.1.4. ペアプログラミング
                                                                                                    累積フロー図
                                                     3.1.5. コミュニケーションを設計する
                                                                                                    あんどん
                                                     3.1.6. あんどんの情報
                                                     3.1.7. 作業場所
                                                     3.1.8. 分散したチーム




                                                                   UML Distilled: A Brief Guide to the Standard Object Modeling Language
       Agile Software Development: The Cooperative Game
                                                                   Martin Fowler (2003)
       Alistair Cockburn (2006)




12年11月21日水曜日
3. Teams and behaviors
      3.1. Collaboration
                                                                                     コミュニケーションスキル(3.1.1.)
                                                                                     アクティブリスニング
                                                                                     共同もしくは個人のファシリテーション
                                                                                     オープンな提案と、批判ができること

               Communication Skills (3.1.1.)                                         建設的な批判ができること
                                                                                     正直でいることが良い事であるムードを作れる
               active listening
                                                                                     失敗をしても責められないこと
               self- or shared facilitation
                                                                                     尊敬しあうこと
               being open for suggestions & criticisms                               クリーンであること
               constructive criticism                                                自分の意見をいうことhttp://www.wikihow.com/Speak-Up
               making sefe-to-be-honest                                              黙っていること
               safe-to-fail                                                          ディベート
               giving respect                                                        (何かをコラボレーションで)生産すること
               hygiene                                                               コミュニケーションスタイルの違いを理解する
               speaking up
               staying silent
               debating
               yielding
               recognizing defferent communication styles



                               http://cte.uwaterloo.ca/teaching_resources/tips/teamwork_skills.html




12年11月21日水曜日
3. Teams and behaviors
      3.2. Collective accountability

           3.2.1. Collective accountability
           3.2.2. Collective Ownership                          3.2.1. 共同責任
                                                                3.2.2. 共同所有




                                                        three models (3.2.2.)
                                                        owner-only
                                                        any-pair
                                                        any-one
                                                           3.2.2. 共同所有3つのモデル
                                                            オーナーのみ
                                                            どんなペアでもよい
                                                            誰もいい
        Extreme Programming Explained: Embrace Change
        Kent Beck (1999)




12年11月21日水曜日
3. Teams and behaviors
      3.3. Team activity

           3.3.1. Reflection workshops                      3.3.1. ふりかえり

           3.3.2. Daily meetings                           3.3.2. デイリーミーティング




                          Agile Retrospectives: Making Good Teams Great
                          Esther Derby ,Diana Larsen (2006)


12年11月21日水曜日
機能単位(4.1.1.)
                                                        主なWBS


    4. Structuring Work
                                                        粗粒度、中粒度、細粒度の機能の理解の必要性
                                                        ユースケース、ストーリマップ
                                                        MMF (最低限のマーケット化可能な機能)もしくは機能リスト
                                                        良い仕事のための統計
      4.1. Function-Based Development                                      function units (4.1.1.)
                                                                           Primary work breakdown structure
                                                                           understanding the need for coarse-,
            4.1.1. Developing in function units                            medium-, and fine-grained function
            4.1.2. Slicing                                                 use case, story maps minimum-
            4.1.3. Cross-functional constraints                            marketable features or feature lists
            4.1.4. Technical risk reduction                                heuristic for good work unit
                         4.1.1. 機能単位で開発する                                  Risk reduction (4.1.4.)
                         4.1.2. 分解する                                       spikes
                         4.1.3. 機能横断的な制約                                   prototypes
                         4.1.4. 技術的リスクの軽減                                  walking skeleton
                                                                           others




               Writing Effective Use Cases
               Alistair Cockburn (2000)
     リスクの軽減(4.1.4.)
     スパイク
     プロトタイプ
     ウォーキングスケルトン(とりあえず一通り度長する小さ
                                                          User Stories Applied       要求開発             User Story Mapping
     な実装)http://alistair.cockburn.us/Walking+skeleton     Mike Cohn (2004)           山岸耕二他(2006)      Jeff Patton (2013)
     その他


12年11月21日水曜日
4. Structuring Work
      4.2. Planning
           4.2.1. Sizing                                                      粗い粒度で長期的に、
           4.2.2. Planning at different granularities                             細粒度で短期的に
                                                                           計画するのがアジャイルのやり方
           4.2.3. Scheduling Risk Mitigation Items                          開発側も、ビジネス側も
                                                         4.2.1. 見積もり
           4.2.4. Sequencing work                        4.2.2. 異なるグラニュリティを計画する
                                                         4.2.3. リスク軽減アイテムをスケジュールする
                                                         4.2.4. 仕事を繰り返す




                         Agile Estimating and Planning
                         Mike Cohn (2005)




12年11月21日水曜日
5. Environment
       5.1. Leveraging tools
                                                                               5.1. ツールを活用する
                                                                               5.1.1. バージョン管理ツール
              5.1.1. Version Control                                           5.1.2. ビルドツール
              5.1.2. Build Tools                                               5.1.3. 継続的インテグレーション

              5.1.3. Continuous Integration                                    5.1.4. 継続的デリバリ

              5.1.4. Continuous Delivery




   Continuous Delivery: Reliable Software Releases through
   Build, Test, and Deployment Automation                              Continuous Integration: Improving Software
   Jez Humble, David Farley (2010)                                     Quality and Reducing Risk
                                                                       Paul M. Duvall, Steve Matyas,
                                                                       Andrew Glover (2007)




                                                             Pragmatic Guide to Git
                                                             Travis Swicegood (2010)


12年11月21日水曜日
Sorry Japanese only
                              メソッド屋の日記

               こんなプログラマはアジャイル出来ますって言ったらアカンやろ

                 http://d.hatena.ne.jp/simplearchitect/20120810/1344615415




12年11月21日水曜日

Más contenido relacionado

La actualidad más candente

ソフトウェア開発を加速させるリーン開発の原則 公開用
ソフトウェア開発を加速させるリーン開発の原則 公開用ソフトウェア開発を加速させるリーン開発の原則 公開用
ソフトウェア開発を加速させるリーン開発の原則 公開用ESM SEC
 
DeNA QA Night#2 Game QA part
DeNA QA Night#2 Game QA partDeNA QA Night#2 Game QA part
DeNA QA Night#2 Game QA partYukihiro Yamamoto
 
10 years devsumi agile and the future
10 years devsumi agile and the future10 years devsumi agile and the future
10 years devsumi agile and the futureKenji Hiranabe
 
リーンソフトウェア開発とは
リーンソフトウェア開発とはリーンソフトウェア開発とは
リーンソフトウェア開発とはStudyTech
 
RAD Studioで実践する継続的インテグレーション アプリとデベロッパーの価値を拡張するエッセンス #dcamp_jp
RAD Studioで実践する継続的インテグレーション アプリとデベロッパーの価値を拡張するエッセンス #dcamp_jpRAD Studioで実践する継続的インテグレーション アプリとデベロッパーの価値を拡張するエッセンス #dcamp_jp
RAD Studioで実践する継続的インテグレーション アプリとデベロッパーの価値を拡張するエッセンス #dcamp_jp智治 長沢
 
アジャイル開発の始め方
アジャイル開発の始め方アジャイル開発の始め方
アジャイル開発の始め方ESM SEC
 
人がつくるソフト
人がつくるソフト人がつくるソフト
人がつくるソフトTomonori Fukuta
 
ソフトウェア構成管理入門
ソフトウェア構成管理入門ソフトウェア構成管理入門
ソフトウェア構成管理入門智治 長沢
 
Qlik TechFest B-6_QlikSense拡張機能 Vizlib 補足資料
Qlik TechFest B-6_QlikSense拡張機能 Vizlib 補足資料Qlik TechFest B-6_QlikSense拡張機能 Vizlib 補足資料
Qlik TechFest B-6_QlikSense拡張機能 Vizlib 補足資料QlikPresalesJapan
 
Agility@Scale(アジャイル開発のスケールアップ)を実現する14のベストプラクティス
Agility@Scale(アジャイル開発のスケールアップ)を実現する14のベストプラクティスAgility@Scale(アジャイル開発のスケールアップ)を実現する14のベストプラクティス
Agility@Scale(アジャイル開発のスケールアップ)を実現する14のベストプラクティスSORACOM, INC
 
アジャイルリーダーシップと組織改革 ~楽天のアジャイル開発というリアル~
アジャイルリーダーシップと組織改革 ~楽天のアジャイル開発というリアル~アジャイルリーダーシップと組織改革 ~楽天のアジャイル開発というリアル~
アジャイルリーダーシップと組織改革 ~楽天のアジャイル開発というリアル~Dai FUJIHARA
 
デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方Yusuke Suzuki
 
【TFSUG】プロダクトオーナーシップ
【TFSUG】プロダクトオーナーシップ【TFSUG】プロダクトオーナーシップ
【TFSUG】プロダクトオーナーシップshibao800
 
アジャイル開発の進め方
アジャイル開発の進め方アジャイル開発の進め方
アジャイル開発の進め方ESM SEC
 
アジャイル風の開発で集中を実現する
アジャイル風の開発で集中を実現するアジャイル風の開発で集中を実現する
アジャイル風の開発で集中を実現するMakoto SAKAI
 
「JIRA」「JIRA Agile」デモによる活用紹介
「JIRA」「JIRA Agile」デモによる活用紹介「JIRA」「JIRA Agile」デモによる活用紹介
「JIRA」「JIRA Agile」デモによる活用紹介ricksoftKK
 

La actualidad más candente (20)

ソフトウェア開発を加速させるリーン開発の原則 公開用
ソフトウェア開発を加速させるリーン開発の原則 公開用ソフトウェア開発を加速させるリーン開発の原則 公開用
ソフトウェア開発を加速させるリーン開発の原則 公開用
 
Agile overview
Agile overviewAgile overview
Agile overview
 
TFSUG 2 technique
TFSUG 2 techniqueTFSUG 2 technique
TFSUG 2 technique
 
DeNA QA Night#2 Game QA part
DeNA QA Night#2 Game QA partDeNA QA Night#2 Game QA part
DeNA QA Night#2 Game QA part
 
10 years devsumi agile and the future
10 years devsumi agile and the future10 years devsumi agile and the future
10 years devsumi agile and the future
 
リーンソフトウェア開発とは
リーンソフトウェア開発とはリーンソフトウェア開発とは
リーンソフトウェア開発とは
 
RAD Studioで実践する継続的インテグレーション アプリとデベロッパーの価値を拡張するエッセンス #dcamp_jp
RAD Studioで実践する継続的インテグレーション アプリとデベロッパーの価値を拡張するエッセンス #dcamp_jpRAD Studioで実践する継続的インテグレーション アプリとデベロッパーの価値を拡張するエッセンス #dcamp_jp
RAD Studioで実践する継続的インテグレーション アプリとデベロッパーの価値を拡張するエッセンス #dcamp_jp
 
アジャイル開発の始め方
アジャイル開発の始め方アジャイル開発の始め方
アジャイル開発の始め方
 
人がつくるソフト
人がつくるソフト人がつくるソフト
人がつくるソフト
 
AgilePM読書会 #5
AgilePM読書会 #5AgilePM読書会 #5
AgilePM読書会 #5
 
ソフトウェア構成管理入門
ソフトウェア構成管理入門ソフトウェア構成管理入門
ソフトウェア構成管理入門
 
Qlik TechFest B-6_QlikSense拡張機能 Vizlib 補足資料
Qlik TechFest B-6_QlikSense拡張機能 Vizlib 補足資料Qlik TechFest B-6_QlikSense拡張機能 Vizlib 補足資料
Qlik TechFest B-6_QlikSense拡張機能 Vizlib 補足資料
 
Agility@Scale(アジャイル開発のスケールアップ)を実現する14のベストプラクティス
Agility@Scale(アジャイル開発のスケールアップ)を実現する14のベストプラクティスAgility@Scale(アジャイル開発のスケールアップ)を実現する14のベストプラクティス
Agility@Scale(アジャイル開発のスケールアップ)を実現する14のベストプラクティス
 
Xp2
Xp2Xp2
Xp2
 
アジャイルリーダーシップと組織改革 ~楽天のアジャイル開発というリアル~
アジャイルリーダーシップと組織改革 ~楽天のアジャイル開発というリアル~アジャイルリーダーシップと組織改革 ~楽天のアジャイル開発というリアル~
アジャイルリーダーシップと組織改革 ~楽天のアジャイル開発というリアル~
 
デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
 
【TFSUG】プロダクトオーナーシップ
【TFSUG】プロダクトオーナーシップ【TFSUG】プロダクトオーナーシップ
【TFSUG】プロダクトオーナーシップ
 
アジャイル開発の進め方
アジャイル開発の進め方アジャイル開発の進め方
アジャイル開発の進め方
 
アジャイル風の開発で集中を実現する
アジャイル風の開発で集中を実現するアジャイル風の開発で集中を実現する
アジャイル風の開発で集中を実現する
 
「JIRA」「JIRA Agile」デモによる活用紹介
「JIRA」「JIRA Agile」デモによる活用紹介「JIRA」「JIRA Agile」デモによる活用紹介
「JIRA」「JIRA Agile」デモによる活用紹介
 

Similar a Ultimate agilisttokyo(japanese)

アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援智治 長沢
 
Cloud Native and Agile Approach
Cloud Native and Agile ApproachCloud Native and Agile Approach
Cloud Native and Agile ApproachShinya Yanagihara
 
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...Rakuten Group, Inc.
 
夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方Yusuke Suzuki
 
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk  JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk 智治 長沢
 
JAWS FESTA Kansai 2013 | ビジネスに貢献する戦略的なITのためのDevOps
JAWS FESTA Kansai 2013 | ビジネスに貢献する戦略的なITのためのDevOpsJAWS FESTA Kansai 2013 | ビジネスに貢献する戦略的なITのためのDevOps
JAWS FESTA Kansai 2013 | ビジネスに貢献する戦略的なITのためのDevOps智治 長沢
 
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.Recruit Technologies
 
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】 Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】 智治 長沢
 
DAY2_Keynote_Alan Shalloway
DAY2_Keynote_Alan ShallowayDAY2_Keynote_Alan Shalloway
DAY2_Keynote_Alan Shallowayguest866ce9be
 
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発Developers Summit
 
[G-Tech2014講演資料] 汎用プラクティスとしてのアジャイル開発 - グローバルナレッジ
[G-Tech2014講演資料] 汎用プラクティスとしてのアジャイル開発 - グローバルナレッジ[G-Tech2014講演資料] 汎用プラクティスとしてのアジャイル開発 - グローバルナレッジ
[G-Tech2014講演資料] 汎用プラクティスとしてのアジャイル開発 - グローバルナレッジTrainocate Japan, Ltd.
 
【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック智治 長沢
 
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレース
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレースデブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレース
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレースDevelopers Summit
 
DOO-004_楽天での DevOps 実践事例と Azure ベスト プラクティス
DOO-004_楽天での DevOps 実践事例と Azure ベスト プラクティスDOO-004_楽天での DevOps 実践事例と Azure ベスト プラクティス
DOO-004_楽天での DevOps 実践事例と Azure ベスト プラクティスdecode2016
 
博士論文公聴会
博士論文公聴会博士論文公聴会
博士論文公聴会Makoto SAKAI
 
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門陽一 滝川
 

Similar a Ultimate agilisttokyo(japanese) (20)

To be sn agile enterprise
To be sn agile enterpriseTo be sn agile enterprise
To be sn agile enterprise
 
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援
 
Cloud Native and Agile Approach
Cloud Native and Agile ApproachCloud Native and Agile Approach
Cloud Native and Agile Approach
 
Ti dd force09
Ti dd force09Ti dd force09
Ti dd force09
 
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
 
夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
 
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk  JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk
 
JAWS FESTA Kansai 2013 | ビジネスに貢献する戦略的なITのためのDevOps
JAWS FESTA Kansai 2013 | ビジネスに貢献する戦略的なITのためのDevOpsJAWS FESTA Kansai 2013 | ビジネスに貢献する戦略的なITのためのDevOps
JAWS FESTA Kansai 2013 | ビジネスに貢献する戦略的なITのためのDevOps
 
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.
 
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.
 
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】 Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
 
DAY2_Keynote_Alan Shalloway
DAY2_Keynote_Alan ShallowayDAY2_Keynote_Alan Shalloway
DAY2_Keynote_Alan Shalloway
 
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発
【16-E-4】残業ゼロで開発スピードが10倍に!もう元の開発体制には戻れないデンソー流のアジャイル開発
 
LeanUX at Tech Talk
LeanUX at Tech TalkLeanUX at Tech Talk
LeanUX at Tech Talk
 
[G-Tech2014講演資料] 汎用プラクティスとしてのアジャイル開発 - グローバルナレッジ
[G-Tech2014講演資料] 汎用プラクティスとしてのアジャイル開発 - グローバルナレッジ[G-Tech2014講演資料] 汎用プラクティスとしてのアジャイル開発 - グローバルナレッジ
[G-Tech2014講演資料] 汎用プラクティスとしてのアジャイル開発 - グローバルナレッジ
 
【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック
 
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレース
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレースデブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレース
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレース
 
DOO-004_楽天での DevOps 実践事例と Azure ベスト プラクティス
DOO-004_楽天での DevOps 実践事例と Azure ベスト プラクティスDOO-004_楽天での DevOps 実践事例と Azure ベスト プラクティス
DOO-004_楽天での DevOps 実践事例と Azure ベスト プラクティス
 
博士論文公聴会
博士論文公聴会博士論文公聴会
博士論文公聴会
 
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
 

Más de Tsuyoshi Ushio

ログの書き方がチームの生産性を爆上げする話
ログの書き方がチームの生産性を爆上げする話ログの書き方がチームの生産性を爆上げする話
ログの書き方がチームの生産性を爆上げする話Tsuyoshi Ushio
 
アメリカの超巨大クラウドの 「中の人」に転生した ガチ三流プログラマが 米国システム開発の現実を リークする話
アメリカの超巨大クラウドの「中の人」に転生したガチ三流プログラマが米国システム開発の現実をリークする話アメリカの超巨大クラウドの「中の人」に転生したガチ三流プログラマが米国システム開発の現実をリークする話
アメリカの超巨大クラウドの 「中の人」に転生した ガチ三流プログラマが 米国システム開発の現実を リークする話Tsuyoshi Ushio
 
Serverless の自動回復と自動化のためのアーキテクチャ
Serverless の自動回復と自動化のためのアーキテクチャServerless の自動回復と自動化のためのアーキテクチャ
Serverless の自動回復と自動化のためのアーキテクチャTsuyoshi Ushio
 
"サーバーレス"を超越する。なぜ?から理解する Durable Functions
"サーバーレス"を超越する。なぜ?から理解する Durable Functions"サーバーレス"を超越する。なぜ?から理解する Durable Functions
"サーバーレス"を超越する。なぜ?から理解する Durable FunctionsTsuyoshi Ushio
 
三年後のエンジニアがもっているとお得な資質
三年後のエンジニアがもっているとお得な資質三年後のエンジニアがもっているとお得な資質
三年後のエンジニアがもっているとお得な資質Tsuyoshi Ushio
 
ワタシハ Azure Functions チョットデキル
ワタシハ Azure Functions チョットデキルワタシハ Azure Functions チョットデキル
ワタシハ Azure Functions チョットデキルTsuyoshi Ushio
 
Visual Studio Team Services を使った Serverless のための継続的デリバリ
Visual Studio Team Services を使った Serverless のための継続的デリバリVisual Studio Team Services を使った Serverless のための継続的デリバリ
Visual Studio Team Services を使った Serverless のための継続的デリバリTsuyoshi Ushio
 
Container microservices
Container microservicesContainer microservices
Container microservicesTsuyoshi Ushio
 
Rakuten and Microsoft talk DevOps in Real World
Rakuten and Microsoft talk DevOps in Real WorldRakuten and Microsoft talk DevOps in Real World
Rakuten and Microsoft talk DevOps in Real WorldTsuyoshi Ushio
 
技術と度胸のミニワークショップ InfoQで英語学習
技術と度胸のミニワークショップ InfoQで英語学習技術と度胸のミニワークショップ InfoQで英語学習
技術と度胸のミニワークショップ InfoQで英語学習Tsuyoshi Ushio
 
A New Business Model of Custom Software Development For Agile Software Develo...
A New Business Model of Custom Software Development For Agile Software Develo...A New Business Model of Custom Software Development For Agile Software Develo...
A New Business Model of Custom Software Development For Agile Software Develo...Tsuyoshi Ushio
 
Build Less Patterns AgileRoots 2014
Build Less Patterns AgileRoots 2014Build Less Patterns AgileRoots 2014
Build Less Patterns AgileRoots 2014Tsuyoshi Ushio
 
ITエンジニアのためのゼロから始める英語勉強法
ITエンジニアのためのゼロから始める英語勉強法ITエンジニアのためのゼロから始める英語勉強法
ITエンジニアのためのゼロから始める英語勉強法Tsuyoshi Ushio
 
Agile Fundamental Skill Set
Agile Fundamental Skill SetAgile Fundamental Skill Set
Agile Fundamental Skill SetTsuyoshi Ushio
 
プレゼンビフォアアフタ
プレゼンビフォアアフタプレゼンビフォアアフタ
プレゼンビフォアアフタTsuyoshi Ushio
 
How to be an agile programmer.
How to be an agile programmer.How to be an agile programmer.
How to be an agile programmer.Tsuyoshi Ushio
 
アジャイルツアー大阪
アジャイルツアー大阪アジャイルツアー大阪
アジャイルツアー大阪Tsuyoshi Ushio
 
Java festa2011(改訂中)
Java festa2011(改訂中)Java festa2011(改訂中)
Java festa2011(改訂中)Tsuyoshi Ushio
 

Más de Tsuyoshi Ushio (20)

ログの書き方がチームの生産性を爆上げする話
ログの書き方がチームの生産性を爆上げする話ログの書き方がチームの生産性を爆上げする話
ログの書き方がチームの生産性を爆上げする話
 
アメリカの超巨大クラウドの 「中の人」に転生した ガチ三流プログラマが 米国システム開発の現実を リークする話
アメリカの超巨大クラウドの「中の人」に転生したガチ三流プログラマが米国システム開発の現実をリークする話アメリカの超巨大クラウドの「中の人」に転生したガチ三流プログラマが米国システム開発の現実をリークする話
アメリカの超巨大クラウドの 「中の人」に転生した ガチ三流プログラマが 米国システム開発の現実を リークする話
 
Serverless の自動回復と自動化のためのアーキテクチャ
Serverless の自動回復と自動化のためのアーキテクチャServerless の自動回復と自動化のためのアーキテクチャ
Serverless の自動回復と自動化のためのアーキテクチャ
 
"サーバーレス"を超越する。なぜ?から理解する Durable Functions
"サーバーレス"を超越する。なぜ?から理解する Durable Functions"サーバーレス"を超越する。なぜ?から理解する Durable Functions
"サーバーレス"を超越する。なぜ?から理解する Durable Functions
 
三年後のエンジニアがもっているとお得な資質
三年後のエンジニアがもっているとお得な資質三年後のエンジニアがもっているとお得な資質
三年後のエンジニアがもっているとお得な資質
 
ワタシハ Azure Functions チョットデキル
ワタシハ Azure Functions チョットデキルワタシハ Azure Functions チョットデキル
ワタシハ Azure Functions チョットデキル
 
Visual Studio Team Services を使った Serverless のための継続的デリバリ
Visual Studio Team Services を使った Serverless のための継続的デリバリVisual Studio Team Services を使った Serverless のための継続的デリバリ
Visual Studio Team Services を使った Serverless のための継続的デリバリ
 
Container microservices
Container microservicesContainer microservices
Container microservices
 
Rakuten and Microsoft talk DevOps in Real World
Rakuten and Microsoft talk DevOps in Real WorldRakuten and Microsoft talk DevOps in Real World
Rakuten and Microsoft talk DevOps in Real World
 
技術と度胸のミニワークショップ InfoQで英語学習
技術と度胸のミニワークショップ InfoQで英語学習技術と度胸のミニワークショップ InfoQで英語学習
技術と度胸のミニワークショップ InfoQで英語学習
 
英語のリズム
英語のリズム英語のリズム
英語のリズム
 
A New Business Model of Custom Software Development For Agile Software Develo...
A New Business Model of Custom Software Development For Agile Software Develo...A New Business Model of Custom Software Development For Agile Software Develo...
A New Business Model of Custom Software Development For Agile Software Develo...
 
Build Less Patterns AgileRoots 2014
Build Less Patterns AgileRoots 2014Build Less Patterns AgileRoots 2014
Build Less Patterns AgileRoots 2014
 
ITエンジニアのためのゼロから始める英語勉強法
ITエンジニアのためのゼロから始める英語勉強法ITエンジニアのためのゼロから始める英語勉強法
ITエンジニアのためのゼロから始める英語勉強法
 
Agile Fundamental Skill Set
Agile Fundamental Skill SetAgile Fundamental Skill Set
Agile Fundamental Skill Set
 
プレゼンビフォアアフタ
プレゼンビフォアアフタプレゼンビフォアアフタ
プレゼンビフォアアフタ
 
How to be an agile programmer.
How to be an agile programmer.How to be an agile programmer.
How to be an agile programmer.
 
Ultimate agilisttokyo
Ultimate agilisttokyoUltimate agilisttokyo
Ultimate agilisttokyo
 
アジャイルツアー大阪
アジャイルツアー大阪アジャイルツアー大阪
アジャイルツアー大阪
 
Java festa2011(改訂中)
Java festa2011(改訂中)Java festa2011(改訂中)
Java festa2011(改訂中)
 

Ultimate agilisttokyo(japanese)

  • 1. Ultimate Agilist Tokyo Nov 17, 2012 アジャイルプログラマーになるためには! 日本語ガイド How to be an Agile Programmer T s u y o s h i U s h i o 12年11月21日水曜日
  • 3. Think about Definition of Agile Programmer アジャイルプログラマの定義を考えてみよう in this session 12年11月21日水曜日
  • 4. Agenda Learn about other definitions 他の定義について学ぶ Discussion ディスカッション Conclusion 結果のまとめ 12年11月21日水曜日
  • 5. Learn about other definitions 12年11月21日水曜日
  • 6. What is Agile Development? Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change. It is a conceptual framework that promotes foreseen interactions throughout the development cycle. The Agile Manifesto[1] introduced the term in 2001. WIKIPEDIA http://en.wikipedia.org/wiki/Agile_software_development アジャイルソフトウェア宣言でGoogleすると、日本語の定義が出てきます! http://agilemanifesto.org/iso/ja/ 12年11月21日水曜日
  • 7. アジャイルソフトウェア宣言でGoogleすると、日本語の定義が出てきます! http://agilemanifesto.org/iso/ja/principles.html Agile Manifesto Value Principle 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 2. Welcome changing requirements, even late in development. Individuals and interactions Agile processes harness change for the customer's competitive advantage. over processes and tools 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. 4. Business people and developers must work together daily throughout the project. Working software over comprehensive 5. Build projects around motivated individuals. Give them the environment documentation and support they need, and trust them to get the job done. 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Customer collaboration 7. Working software is the primary measure of progress. over contract negotiation 8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. 9. Continuous attention to technical excellence and good design enhances agility. Responding to change over 10. Simplicity--the art of maximizing the amount of work not done--is essential. following a plan 11. The best architectures, requirements, and designs emerge from self-organizing teams. 12. At regular intervals, the team reflects on how to become more effective, hen tunes and adjusts its behavior accordingly. 12年11月21日水曜日
  • 8. Analyze it ごめん、これは勘弁して ただし、ブログにこれの後さらに 分析して日本語化したTreeあり https://s3-ap-northeast-1.amazonaws.com/ultimateagilisttokyoupload/アジャイルプログラマのスキルマップ.png 12年11月21日水曜日
  • 9. XP practices XPのプラクティス http://ullizee.wordpress.com/2009/11/02/extreme-programming-revisited-part-i/ 12年11月21日水曜日
  • 10. five objectives for agile programmer アジャイルプログラマーが達成すべき5つの目的 Continuous Delivery of valuable software Embrace change Deliver Working Software frequently Continuous attention to Technical Excellence and Good Design Create the best architecture, requirements and design emerge form Self-Organization-Team Programmer related Agile Manifesto 12 principles 価値あるソフトウェアを継続的にデリバリーする 変化を抱擁する 頻繁に動作するアプリケーションを届ける 技術的に卓越することと、よいデザインにずっと注意を払う 最高のアーキテクチャ、要求、設計は、自己組織化された チームから生まれる プロブラマーに関係するアジャイルソフトウェア宣言の12の原則からピックアップしました 12年11月21日水曜日
  • 11. Manifesto for software craftsmanship Not only working software, but also well-crafted software Not only responding to change, but also steadily adding value Not only individuals and interactions, but also a community of professionals Not only customer collaboration, but also productive partnerships ソフトウェア職人宣言 http://manifesto.softwarecraftsmanship.org 動作するソフトウェアだけではなく、しっかり作られたソフトウェアを 変化に対応するだけではなく、着実に価値を付加していくことを 個人と相互作用だけでなく、プロフェッショナルたちのコミュニティを 顧客との強調だけでなく、生産的なパートナーシップを 12年11月21日水曜日
  • 12. ICAgile ICAgile exists to support education in the agile space. Use ICAgile’s definitive learning roadmap to find accredited courses that recognize students as they progress along their specialty paths. ICAgileは、アジャイル分野に関する教育を助けるために存在します ICAgileの定義されたロードマップをつかうことで、公式なコースを見つける事ができます 進路に応じて、生徒がどのように成長していけばいいか、理解することができます Fundamentals of Agile アジャイルの基本 Agile Business Analysis +Value Management ビジネスアナリシスとバリューマネジメント Agile Project Management アジャイルプロジェクトマネジメント Agile Facilitation + Coaching アジャイルファシリテーションとコーチング Agile Software Design + Programming アジャイルソフトウェア設計とプログラミング Agile Testing http://www.icagile.com/index.html アジャイルテスト 12年11月21日水曜日
  • 13. Learning Areas Agile Software Design +Programming 1.1. Test Driven Development 1.1. テスト駆動開発 1.2. Good Design 1.2. よい設計 1.3. 技術的負債 1. Designing & Programming 1.3. Technical Debt 1.4. リファクタリング 1.4. Refactoring 1.5. レガシーコード 設計とプログラミング 1.5. Legacy Code 2.1. Acceptance Test 2.1. 受入テスト 2. Testing 2.2. テストのプログラミング 2.2. Programming the test テスト 3.1. Collaboration 3.1. コラボレーション 3.2. 共同責任 3. Teams and Behaviors 3.2. Collective Accountability 3.3. チームアクティビティ チームと振る舞い 3.3. Team Activity 4.1. Function-Based Development 4. Structuring Work 4.1. 機能ベース開発 4.2. Planning 4.2. プランニング 作業を構造化する 5. Environment 5.1. Leveraging Tools 環境 5.1. ツールを活用する 12年11月21日水曜日
  • 14. five objectives and practices Five Objectives Practices 日本語版 https://s3-ap-northeast-1.amazonaws.com/ultimateagilisttokyoupload/アジャイルプログラマのスキルマップ.png Agile Programmer’s mandatory skill Map 12年11月21日水曜日
  • 15. Please get documents from http://simple-architect.blogspot.jp 日本語版 http://d.hatena.ne.jp/simplearchitect/20121117/1353181189 12年11月21日水曜日
  • 17. Golden Circle Why is Vision is our gut has emotion and heart create something bigger then your self How is Mission brings up guiding principle Why What is Rules How has practices What is dynamic organic Why time to market(ex) How 12 principles What priactices 1. Post What (Practice ex. TDD) 2. Post How (Principles ex 12 principles) 3. Post Why (Guts, Visions ex. time to market) 12年11月21日水曜日
  • 19. http://newtechusa.net/culture-con/ I’ll share your conclusions later in English. Thank you! 12年11月21日水曜日
  • 20. We thought This is the Agile Programmer’s Skill set Workshop Results in 10 minutes 12年11月21日水曜日
  • 21. Team Golden Circle Rhythm Collective Ownership Repository Coding Standard Team Building Code Review Self Organizing Team PairProgramming Visualization WhiteBoard Refactoring Planning Dairy Meeting Kaizen Burn down Design Working Software Retrospective chart Ceremony Trust & Respect Drink Party War-Room 12年11月21日水曜日
  • 22. Team Door Side Collaboration with customer Collaboration with team members ability to think realization Identify customer’s Power Structure ability to think Listening Skill Vagrant & chef!!! 12年11月21日水曜日
  • 23. Team 7 Understand Business Requirement Embrace Change Design Test Stout heart ability to read someone’s code ambition sincerity Communication Skill coarse grained design architecture 12年11月21日水曜日
  • 24. Team Maid Simple Design mix up the ideas that written in some papers Refactoring Simple Design Test Design Recognize requirement communication Pair Programming Continuous Delivery proposal 12年11月21日水曜日
  • 25. Team Ushio LOVE Ability to embrace change Frequent feedback Keep on something! Test Driven Development Passion Continuous delivery of valuable software Object Oriented Continuous Retrospective Integration Face-to-Face Communication Continuous Delivery UML Common Language or something.. Communication Skill 12年11月21日水曜日
  • 28. Appendix. Technical element of iCAgile Agile Software Design + Programming every books are referenced by Amazon.co.jp or Amazon.com 12年11月21日水曜日
  • 29. 1. Designing & Programming 1. 設計とプログラミング 1.1. テスト駆動開発 1.1. Test Driven Development 1.1.1. The value of test-driven development 1.1.2. Identifying usage patterns to define the object or function interface 1.1.1. テスト駆動開発の価値 1.1.3. Identifying completeness of conditions that drive usage patterns in the code 1.1.2. オブジェクトや関数のインターフェイスの利用パターンを探し出す 1.1.4. Avoiding duplication in the conditions 1.1.3. コードの中の条件の完全性の利用パターンを探し出す 1.1.5. Red-Green-Refactor 1.1.4. 条件の重複を避ける 1.1.6. Test Speed 1.1.5. レッド、グリーン、リファクタリングパターン 1.1.6. テストのスピード Test Driven Development: By Example Test-Driven iOS Development Growing Object-Oriented Software, Guided by Tests Kent Beck (2002) Graham Lee (2012) Steve Freeman, Nat Pryce (2009) required knowledge 12年11月21日水曜日
  • 30. 1. Designing & Programming Architecture (1.2.1) 1.2. Good Design 1. 設計とプログラミング 1.2. よい設計 Beck’s 4 rules of simple design(1.2.2) McCabe complexity (1.2.2) DRY (1.2.3.) SOLID (1.2.3.) 1.2.1. Role of Design-in-the-Large 1.2.2. Simple design 1.2.3. Evaluating Design and Design Principle 1.2.4. Design Patterns 1.2.1. 大きな設計の役割 1.2.5. Clean Programming 1.2.2. シンプルな設計 1.2.3. 設計の評価と、設計原則 1.2.6. Listening to your tests 1.2.4. デザインパターン 1.2.5. クリーンプログラミング 1.2.6. あなたのテストに聞いてみよう Agile Software Development The Art of Readable Code Robert C. Martin (2011) Dustin Boswell, Trevor Foucher (2011) 12年11月21日水曜日
  • 31. BECKのシンプルデザインの4つのルール 全てのテストがパスしていること continue... 重複が無い事 プログラマの意図が表現されていること クラスとメソッドの数が最小化されていること Beck’s 4 rules of simple design Pass all tests Contains no duplications Express the intent of the programmers Minimizes the number of classes and methods http://theholyjava.wordpress.com/2011/02/14/clean-code-four-simple-design-rules/ Patterns of Enterprise Application Architecture Martin Fowler (2002) SOILD Single responsibility principle Open/Closed Principle Liskov substitution principle Interface segregation principle Dependency Inversion Principle If you want to understand SOLID , Read Agile Software Development! Design Patterns: Elements of 増補改訂版Java言語で学ぶ Reusable Object-Oriented Software デザインパターン入門  Erich Helm, Richard Johnson, Ralph Vissides, John Gamma(1994) 結城浩(2004) SOLID 単一責任の原則 オープンクローズ原則 リスコフ置換の原則 インターフェイス分離の原則 Pattern-oriented software architecture 依存姓反転の原則 Frank Buschmann, etc (1996) 12年11月21日水曜日
  • 32. continue... もし、オブジェクト指向がわからないなら、これしたら? If you can’t understand OO, try these. Just Enough Software Architecture: A Risk-Driven Approach オブジェクト脳のつくり方 George Fairbanks (2010) 牛尾 剛 (2003) Agile Education by Object Game AGILE2011 session http://enterprisezine.jp/iti/detail/3385?p=2 12年11月21日水曜日
  • 33. 1. Designing & Programming 1.3. Technical Debt 1.3. 技術的負債 1.3.1. Recognizing technical debt 1.3.2. Discussing technical debt choices with stakeholders. 1.3.1. 技術的負債を理解する 1.3.2. 技術的負債の選択について利害関係者と議論する 12年11月21日水曜日
  • 34. 1. Designing & Programming DB, HTML refactoring (1.4.4. 1.4. Refactoring 1.4. リファクタリング 1.4.1. リファクタリングの原則 1.4.1. Principles of refactoring 1.4.2. 不吉な香り 1.4.2. Code smells 1.4.3. 一般的なリファクタリング 1.4.3. Common refactorings 1.4.4. 広がるリファクタリングの世界 1.4.4. The larger world of refactoring 1.4.5. リファクタリング(そのもの) 1.4.5. Refactoring Refactoring: Improving the Design of Existing Code Refactoring Workbook Refactoring Databases: Martin Fowler , Kent Beck, John Brant, William C. Wake (2003) Evolutionary Database Design William Opdyke, Don Roberts(1999) Scott W. Ambler (2006) 12年11月21日水曜日
  • 35. テストコードが無い時(1.5.2.) 1. Designing & Programming リファクタリングツールを使う 静的型付け言語の場合   ・エラーをコンパイラが見つけてくれる witout test code (1.5.2.)    レベルに小さなステップに分解する 1.5. Legacy code refactoring tools 動的型付け言語の場合   ・エラーがほとんど起こらない程度の 1.5. レガシーコード statically typed langage    小さなステップに分解する breaking down into steps catch errors with compiler dynamic language 1.5.1. Approaching legacy code breaking down into steps 1.5.2. Refactoring without test which are likely less error 1.5.3. Retrofitting test onto legacy code 1.5.1. レガシーコードへのアプローチ 1.5.2. テストなしでリファクタリングする 1.5.3. レガシーコードにテストをつける 「派生開発」を成功させるプロセス改善の技術と極意 Working Effectively With Legacy Code Michael Feathers (2004) 清水吉男(2007) 12年11月21日水曜日
  • 36. 2. Testing 2.1. Acceptance Testing ユニットテスト(2.1.1.) 2.1. 受入テスト コンポーネントテスト Unit Test (2.1.1.) 受入テスト 2.1.1. Types of tests to automate Component Test 非機能テスト 2.1.2. Test as Specification and Documentation Acceptance Test 2.1.3. ATDD as aid to design thinking non-functional Test 2.1.4. Tester-Business-Developer Collaboration 2.1.5. ATDD Process ATDD 3 different forms (2.1.6.) a text based form ( cucumber) 2.1.6. ATDD Styles & Tools table (FIT) ATDDの3形態(2.1.6) 2.1.7. Testing the system bypassing the user interface in code (xUnit) テキストベース(cucumber) 2.1.8. Testing the system through the user interface テーブル形式(fit) 2.1.9. Cross-functional testing cucumber (2.1.8.) コードに記述(xUnit) 2.1.1. 自動化するテストの種類 2.1.2. 仕様、ドキュメントとしてのテスト Robot Framework 2.1.3. ATDD がデザインシンキングを助ける 2.1.4. テスターとビジネスの人と開発者の non-functional tests(2.1.9.)   コラボレーション capacity 2.1.5. ATDDプロセス response time 2.1.6. ATDDのスタイルとツール security 非機能テスト(2.1.9) 2.1.7. ユーザインターフェイスをバイパスしたテスト etc... キャパシティ 2.1.8. ユーザインターフェイスを介したテスト 応答速度 2.1.9 機能横断テスト セキュリティ ATDD by Example: A Practical Guide to Acceptance Test-Driven Development などなど Markus Gartner (2012) 12年11月21日水曜日
  • 37. 2. Testing 2.2. Programming the tests 2.2. テストをプログラミングする test doubles (2.2.6.) stub 2.2.1. Coding Tests by Intention mocks 2.2.2. Testing the tests fakes 2.2.3. Test execution time spies 2.2.1. プログラマの意図をもったテストコードを書く 2.2.4. Fixture Setup 2.2.2. テストをテストする 2.2.5. Result Verification 2.2.3. テスト実行時間 2.2.6. Use test doubles 2.2.4. フィクスチャのセットアップ 2.2.7. Refactoring Test 2.2.5. 評価の結果 2.2.6. テストダブルを使う(例えばデータベースを直接つかわないでテストする事等) 2.2.7. テストのリファクタリング at least 3 different ways of verifying the test code (2.2.2.) 少なくとも、3つの違った方法でテストコードを確認すること xUnit Test Patterns: Refactoring Test Code Gerard Meszaros (2007) 12年11月21日水曜日
  • 38. 3. Teams and behaviors Class Diagrams (3.1.5.) Sequence Diagram 3.1. Collaboration Instance and Deployment diagrams CRC cards and similar 3.1.1. Collaboration Skills task and kanban board (3.1.6.) 3.1.2. Work allocation story maps 3.1.3. Stakeholder Conversations burn chart 3.1.4. Pair Programming cumulative flow diagrams 3.1.5. Communication design physical and electronic radiators 3.1.6. Information Radiators 3.1.1. コラボレーションスキル 3.1.7. Working spaces 3.1.2. 仕事の割り当て タスクとカンバン(3.1.6) 3.1.8. Distributed teams 3.1.3. 利害関係者との会話 ストーリマッピング バーンチャート 3.1.4. ペアプログラミング 累積フロー図 3.1.5. コミュニケーションを設計する あんどん 3.1.6. あんどんの情報 3.1.7. 作業場所 3.1.8. 分散したチーム UML Distilled: A Brief Guide to the Standard Object Modeling Language Agile Software Development: The Cooperative Game Martin Fowler (2003) Alistair Cockburn (2006) 12年11月21日水曜日
  • 39. 3. Teams and behaviors 3.1. Collaboration コミュニケーションスキル(3.1.1.) アクティブリスニング 共同もしくは個人のファシリテーション オープンな提案と、批判ができること Communication Skills (3.1.1.) 建設的な批判ができること 正直でいることが良い事であるムードを作れる active listening 失敗をしても責められないこと self- or shared facilitation 尊敬しあうこと being open for suggestions & criticisms クリーンであること constructive criticism 自分の意見をいうことhttp://www.wikihow.com/Speak-Up making sefe-to-be-honest 黙っていること safe-to-fail ディベート giving respect (何かをコラボレーションで)生産すること hygiene コミュニケーションスタイルの違いを理解する speaking up staying silent debating yielding recognizing defferent communication styles http://cte.uwaterloo.ca/teaching_resources/tips/teamwork_skills.html 12年11月21日水曜日
  • 40. 3. Teams and behaviors 3.2. Collective accountability 3.2.1. Collective accountability 3.2.2. Collective Ownership 3.2.1. 共同責任 3.2.2. 共同所有 three models (3.2.2.) owner-only any-pair any-one 3.2.2. 共同所有3つのモデル  オーナーのみ  どんなペアでもよい  誰もいい Extreme Programming Explained: Embrace Change Kent Beck (1999) 12年11月21日水曜日
  • 41. 3. Teams and behaviors 3.3. Team activity 3.3.1. Reflection workshops 3.3.1. ふりかえり 3.3.2. Daily meetings 3.3.2. デイリーミーティング Agile Retrospectives: Making Good Teams Great Esther Derby ,Diana Larsen (2006) 12年11月21日水曜日
  • 42. 機能単位(4.1.1.) 主なWBS 4. Structuring Work 粗粒度、中粒度、細粒度の機能の理解の必要性 ユースケース、ストーリマップ MMF (最低限のマーケット化可能な機能)もしくは機能リスト 良い仕事のための統計 4.1. Function-Based Development function units (4.1.1.) Primary work breakdown structure understanding the need for coarse-, 4.1.1. Developing in function units medium-, and fine-grained function 4.1.2. Slicing use case, story maps minimum- 4.1.3. Cross-functional constraints marketable features or feature lists 4.1.4. Technical risk reduction heuristic for good work unit 4.1.1. 機能単位で開発する Risk reduction (4.1.4.) 4.1.2. 分解する spikes 4.1.3. 機能横断的な制約 prototypes 4.1.4. 技術的リスクの軽減 walking skeleton others Writing Effective Use Cases Alistair Cockburn (2000) リスクの軽減(4.1.4.) スパイク プロトタイプ ウォーキングスケルトン(とりあえず一通り度長する小さ User Stories Applied 要求開発 User Story Mapping な実装)http://alistair.cockburn.us/Walking+skeleton Mike Cohn (2004) 山岸耕二他(2006) Jeff Patton (2013) その他 12年11月21日水曜日
  • 43. 4. Structuring Work 4.2. Planning 4.2.1. Sizing 粗い粒度で長期的に、 4.2.2. Planning at different granularities 細粒度で短期的に 計画するのがアジャイルのやり方 4.2.3. Scheduling Risk Mitigation Items 開発側も、ビジネス側も 4.2.1. 見積もり 4.2.4. Sequencing work 4.2.2. 異なるグラニュリティを計画する 4.2.3. リスク軽減アイテムをスケジュールする 4.2.4. 仕事を繰り返す Agile Estimating and Planning Mike Cohn (2005) 12年11月21日水曜日
  • 44. 5. Environment 5.1. Leveraging tools 5.1. ツールを活用する 5.1.1. バージョン管理ツール 5.1.1. Version Control 5.1.2. ビルドツール 5.1.2. Build Tools 5.1.3. 継続的インテグレーション 5.1.3. Continuous Integration 5.1.4. 継続的デリバリ 5.1.4. Continuous Delivery Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation Continuous Integration: Improving Software Jez Humble, David Farley (2010) Quality and Reducing Risk Paul M. Duvall, Steve Matyas, Andrew Glover (2007) Pragmatic Guide to Git Travis Swicegood (2010) 12年11月21日水曜日
  • 45. Sorry Japanese only メソッド屋の日記 こんなプログラマはアジャイル出来ますって言ったらアカンやろ http://d.hatena.ne.jp/simplearchitect/20120810/1344615415 12年11月21日水曜日