pro_agile_.net_development_with_scrum.pdf

(9425 KB) Pobierz
488
CHAPTER 9: Super Jumper: A 2D OpenGL ES Game
For your convenience Apress has placed some of the front
matter material after the index. Please use the Bookmarks
and Contents at a Glance links to access them.
1154789242.007.png 1154789242.008.png
Contents at a Glance
About the Authors ................................................................................................. xv
About the Technical Reviewers ........................................................................... xvi
Acknowledgments .............................................................................................. xvii
Introduction ....................................................................................................... xviii
Chapter 1: The Art of Agile Development ................................................................ 1
Chapter 3: eXtreme Programming ........................................................................ 29
Chapter 4: Sprint 0: Generating the Product Backlog.......................................... 53
Chapter 5: Sprint 1: Starting a Game .................................................................... 87
Chapter 6: Sprint 2: Playing a Basic Game ......................................................... 135
Chapter 7: Sprint 3: Changing the Game............................................................. 161
Chapter 8: Sprint 4: The Release ........................................................................ 203
Chapter 9: Code Review ...................................................................................... 243
Chapter 10: What’s Ahead for You and Scrum?.................................................. 273
Appendix A: TDD Primer with NUnit.................................................................... 281
Appendix B: BDD Primer with SpecFlow............................................................. 297
Appendix C: Mocking with Moq .......................................................................... 311
Appendix D: Manage a Product Backlog with Pivotal Tracker .......................... 319
Appendix E: Web Testing with WatiN .................................................................. 325
Appendix F: Source Control with SVN ................................................................. 335
Appendix G: Continuous Integration with Cruise Control.NET ............................ 351
Index ................................................................................................................... 365
iv
1154789242.009.png 1154789242.001.png 1154789242.002.png 1154789242.003.png 1154789242.004.png
 
Introduction
The Agile Manifesto set forth a set of principles on how we as developers create software for our
customers. Over the past 10 or so years, we have seen those ideas and principles expanded upon by
developers all over the world.
Transitioning into an agile team takes hard work and may be a bit overwhelming. What we hope
to show in this book is what this transition might look like for a .NET development team.
Who This Book Is For
This book is for software developers who want to learn how to work in an agile environment and develop
software using a test-first/behavior-first approach. This book is for developers who want to start with the
business, not a column in a table.
This book assumes that you have some familiarity with the .NET framework. When it comes to
the testing and mocking frameworks, this book assumes you have little familiarity.
How This Book Is Structured
This book contains ten chapters and seven appendices.
Chapter 1: “The Art of Agile Development” gives a general overview of agile. This overview includes
the difference between plan-driven and value-driven development.
Chapter 2: “Managing Agile Projects with Scrum” provides an introduction to Scrum.
Chapter 3: “eXtreme Programming” discusses the fundamentals of eXtreme Programming (XP) and
its relationship with Scrum and behavior-driven development.
Starting in Chapter 4, the book provides a fictional case study about a team utilizing the
concepts and ideas from the previous chapters to develop a web-based blackjack game.
Chapter 4: “Sprint 0: Generating the Product Backlog,” covers establishing a baseline sprint to
develop three different user stories: Initial Bet, Start Game, and Deck of Cards. We'll establish the
logistical fundamentals of a sprint and set the tone for the next four chapters.
Chapter 5: “Sprint 1: Starting a Game” introduces the team experiencing their first sprint in the
project. It shows how the daily stand-up, retrospective, planning, and product demo meetings work
in the real world.
Chapter 6: “Sprint 2: Playing a Basic Game” shows the team dealing with their second sprint and the
user stories they have completed.
xviii
1154789242.005.png
INTRODUCTION
Chapter 7: “Sprint 3: Changing the Game” finds the team dealing with a change in their group
dynamics.
Chapter 8: “Sprint 4: The Release” presents the culmination of four sprints’ worth of work for the
first release of the blackjack game to the customer.
Chapter 9: “Code Review” gives a brief overview of the behind-the-scenes framework used on the
blackjack web application.
Chapter 10: “What’s Ahead for You and Scrum,” is our retrospective of the product release; it takes a
look at what we've covered and gives some pointers on where to go from here.
Appendix A: “TDD Primer with NUnit” is a tutorial on installing and using NUnit to begin to build
an automated test suite.
Appendix B: “BDD Primer with SpecFlow” gets you started with the basics of SpecFlow and shows
how to transform specifications into workable code.
Appendix C: “Mocking with Moq” is a tutorial explaining why mocking is important and showing
you how to mock using the Moq framework.
Appendix D: “Manage a Product Backlog with Pivotal Tracker” is an introduction to a free, online
agile management tool to track user stories throughout their lifecycle.
Appendix E: “Web Testing with WaitiN” discusses how to use WaitiN, an automated GUI framework
for the browser.
Appendix F: “Source Control with SVN” discusses how to set up and use a version control system for
your source code.
Appendix G: “Continuous Integration with CruiseControl .NET” explains how to install and
configure a continuous integration server using CruiseControl .NET.
Conventions
You will notice a tremendous amount of dialog among the team members in the case study chapters.
These conversations are italicized.
In instances where a code line is too long to fit the page’s width, we break it with a code
continuation character. Please note that when you try to type the code, you have to concatenate the line
without any spaces.
Prerequisites
A knowledge of C# and ASP.NET MVC is tremendously useful. No other previous knowledge is required.
To make the most of this book, install Visual Studio 2010 Express with Service Pack 1 or higher
and SQL Server 2008 Express R2 or higher. Both are available for free download from
xix
Zgłoś jeśli naruszono regulamin