Developer .NET UPDATE--Daily Builds and Scrum--May 19, 2006

This Issue Sponsored By
This email newsletter comes to you free and is supported by the following advertisers, who offer products and services that might interest you. Please take a moment to visit these advertisers' Web sites and show your support for Scripting Central.

LeftHand Networks

Scalable Software



1. Developer .NET Perspectives

  • Daily Builds and Scrum
  • 2. Events and Resources

  • Get the Facts About Deploying SQL Server 2005!
  • Configuring and Managing a Virtual Lab for the Enterprise
  • Are You Ready for the Next Spyware Attack?
  • How Are You Managing Your Fax Communications?
  • 3. Featured White Paper

  • User and Group Entitlement Reporting
  • 4. Announcements

  • Access to 26,000 IT Articles
  • May Exclusive: Save $80 off Windows Scripting Solutions

    Sponsor: LeftHand Networks

    Explore how the standardization of storage hardware will change market dynamics, focusing on the growth of iSCSI SANs and "glue software."


    1. Developer .NET Perspectives

    by Bill Sheldon, [email protected]


    Daily Builds and Scrum
    I want to take a moment to talk about the software development process in two areas that deal with how organizations develop software. In particular, I want to focus briefly on some emerging trends that are supported by Microsoft Team Foundation Server (TFS). In the spirit of covering both existing and emerging trends, I want to start with a concept that I've heard about for years: the daily build.

    Six years ago I remember first hearing about how one of the keys to success in a project was having a daily build of your application as you neared the end of your development cycle. I don't mean a daily build as in you open Microsoft Visual Studio 2005 on your desktop and compile the project. I mean having a centralized location in which the files developers check into Visual SourceSafe (VSS) would be picked up and a new instance of the application would be built and submitted for testing. This task isn't trivial. If you've worked with VSS you know that having developers check in their code daily and having that code successfully built is pretty much impossible, especially near the end of a project when you're in crunch mode.

    Yet the fact is a daily build is a good way to ensure your code is progressing toward release. Fortunately, one of the add-ons that ships with TFS--Team Foundation Build, which is often referred to as Team Build-- automates the build process. You can install Team Build on a separate server or on the same server on which you installed TFS. When you install Team Build, you also need to install the associated language compilers that you want to use to build your application. Generally speaking, the easiest way to do this is to leverage a copy of Visual Studio 2005 on the Team Build server. Team Build is a scheduling and build environment management engine that relies on the same MSBuild compilers that you use as part of Visual Studio 2005.

    The Team Build engine, which interfaces with the source control engine in TFS, lets you automate your build process. When combined with the ability to shelve (and thus not expose) changes that aren't ready for the common build, you have an engine that can, after hours, perform a daily build of your team's application, which you can then test.

    However, if Team Build stopped here, there would still be a significant challenge in terms of being able to realistically test the resulting code. But Team Build isn't just a build engine--it's a fully automated build lab. Team Build is fully integrated into the Team System architecture. As such, it reruns static code analysis checks on your application after retrieving and building your application. You can give it the path to your unit test files (created as part of the application development process) and after Team Build runs the analysis engine, Team Build will automatically run these tests. Thus, with a little planning, you can be in a position to not only support a daily build but also have that build provide value beyond just seeing your code compile.

    Team Build tracks each step, so after you set up the environment, you can automatically rebuild your application and run unit tests to track progress on open bugs. Team Build can even create new bugs in the task list if, for example, someone checks in a set of source files that "break the build." Let's face it, when you automate this process, no one will want to check in changes that break the build and prevent the automated test runs. (This would be a major faux pas.) Meanwhile, your test team, which is focused on validating build reports and extending unit tests, can also regularly pick up builds for more time-consuming human-interface testing.

    Automated builds and tests isn't something new to the developers who work for Microsoft. What is new is that Microsoft has now provided the tools to support this model to the developer community. The result is that after you've set up TFS and installed Team Build, you can move toward a more responsive environment for building applications. The trend across our industry is for faster application development. As part of this trend, one of the emerging processes that application developers are leveraging is the Scrum methodology. Some people refer to Scrum as the "Scrum software development process," but in reality, Scrum isn't a full software development process.

    In case you're unfamiliar with Scrum, Scrum is one of the "agile" processes. The name Scrum isn't an acronym but rather a reference to the term as it is used in rugby. The idea is that managing software development is a little like trying to manage the chaos that occurs when two teams face off with locked arms over a small ball. The Scrum process accepts that in the short-term attempting to manage the conflicting priorities and technical challenges that occur on a project is futile.

    The Scrum process focuses on the fact that every project can be broken down into a series of smaller steps. Thus, a project's features are broken into subsets. Each subset is given timeframe (measured in days, such as up to 30 days) in which those features must be completed. TFS helps implement Scrum by providing a task list that developers can use to manage the outstanding items in each interim release. In addition, automating the build and testing processes support the shorter development cycles that are common in Scrum.

    The Scrum process focuses on managing complexity and developer assignments. It isn't in and of itself a complete software development process. When I hear developers say they're using Scrum as their process, the first thought that consistently crosses my mind is "with what?" Combining Scrum with TFS is a solid step in managing your development process but not the final step.

    In my next column, I'll walk you through a couple theoretical projects to demonstrate how to apply Team System (including TFS) and Scrum. In doing so, I'll address some of the advantages and risks. In the meantime, if you want more information about Team Build, go to us/library/ms181709(VS.80).aspx . If you want more information about Scrum, check out these Web sites:


  • Sponsor: Scalable Software

    How much are you spending on IT compliance? Streamline and automate the compliance life cycle with this FREE white paper, and reduce your costs today!


    2. Events and Resources

    (brought to you by SQL Server Magazine)


    Get the Facts About Deploying SQL Server 2005!
    Learn how to use the new capabilities of SQL Server 2005 to improve your database computing environment. The SQL Server 2005 Roadshow is coming to Copenhagen. Register now!

    Configuring and Managing a Virtual Lab for the Enterprise
    Use virtual lab automation solutions to address special challenges in preproduction and staging environments, such as virtual server file library management, provisioning, configuration, and remote access concerns. Live Event: Thursday, May 18

    Are You Ready for the Next Spyware Attack?
    Mark Joseph Edwards discusses emerging spyware threats, including rootkits and keyloggers, and spyware distribution methods. Live Event: Tuesday, May 30

    How Are You Managing Your Fax Communications?
    Maximize your VoIP environment by integrating FoIP technology to increase ROI and streamline processes.


    3. Featured White Paper


    User and Group Entitlement Reporting
    Determining effective permissions on Windows can be incredibly challenging. In this must-have white paper, you'll learn why it's essential to determine effective permissions; how to determine who has access to critical information in Windows; how to resolve overlapping permissions for network access, shared hierarchies, and local machine rights; and how entitlement reporting can overcome the challenges with an automated solution.

    2006 Watch

    Discover how to ensure efficient ongoing management of your digital certificates, how your business will benefit by addressing unique online security issues and more!.


    4. Announcements

    (brought to you by SQL Server Magazine)


    Access to 26,000 IT Articles
    Become a VIP subscriber and get continuous access to ALL content ever published in Windows IT Pro, SQL Server Magazine, and the Exchange & Outlook Administrator, Windows Scripting Solutions, and Windows IT Security newsletters. That's more than 26,000 articles at your fingertips. You'll also get a valuable one-year print subscription to Windows IT Pro and biannual VIP CDs that contain the entire article database. Order now:

    May Exclusive: Save $80 off Windows Scripting Solutions
    For a limited time, order the Windows Scripting Solutions newsletter and SAVE up to $80 off the cover price! You'll get 12 helpful issues loaded with expert-reviewed code and scripting techniques, as well as hundreds of tips on automating repetitive tasks. You'll also get FREE, unlimited access to the full online scripting article library (more than 500 articles). Subscribe now:

    Hot Spot

    FREE Visual Studio 2005 Training CD-ROM!
    Start learning Visual Studio 2005 today with award-winning training from AppDev. Get a FREE Visual Studio 2005 training CD taken directly from one of our training courses (a $115 value). Choose from Visual Basic 2005, Visual C# 2005, or ASP.NET 2.0. Click the link below for your FREE Visual Studio 2005 training CD.


    Contact Us



  • About Developer .NET Perspectives -- [email protected]
  • About technical questions --
  • About product news -- [email protected]
  • About your subscription -- [email protected]
  • About sponsoring an UPDATE -- contact Richard Resnick, [email protected], or Lisa Kling, [email protected]
  • Developer .NET UPDATE is brought to you by SQL Server Magazine, the only magazine devoted to helping developers and DBAs master new and emerging SQL Server technologies and issues. Subscribe today.

    You can manage your SQL Server Magazine email newsletter subscriptions by going to

    You can view the SQL Server Magazine Privacy Policy at

    SQL Server Magazine is a division of Penton Media, Inc. 221 East 29th Street, Loveland, CO 80538, Attention: Customer Service Department

    Copyright 2006, Penton Media, Inc. All Rights Reserved.

    Hide comments


    • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

    Plain text

    • No HTML tags allowed.
    • Web page addresses and e-mail addresses turn into links automatically.
    • Lines and paragraphs break automatically.