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
http://www.windowsitpro.com/go/whitepapers/lefthand/iscsi/?code=DEVTop0519
Scalable Software
http://www.windowsitpro.com/go/whitepapers/scalable/compliance?code=DevMid0519
Thawte
http://www.windowsitpro.com/go/whitepapers/thawte/iis?code=DevWatch0519
AppDev
http://www.appdev.com/promo/RN00372
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."
http://www.windowsitpro.com/go/whitepapers/lefthand/iscsi/?code=DEVTop0519
1. Developer .NET Perspectives
by Bill Sheldon, bills@interknowlogy.com
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 http://msdn2.microsoft.com/en-
us/library/ms181709(VS.80).aspx . If you want more information about Scrum,
check out these Web sites:
http://www.controlchaos.com
http://www.scrumforteamsystem.com/en/default.aspx
http://www.mountaingoatsoftware.com/scrum/index.php
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!
http://www.windowsitpro.com/go/whitepapers/scalable/compliance?code=DevMid0519
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!
http://www.windowsitpro.com/roadshows/sqlservereurope/?code=0517emailannc
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
http://www.windowsitpro.com/go/seminars/surgient/virtuallab/?partnerref=0517emailannc
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
http://www.windowsitpro.com/go/seminars/webroot/spyware/?partnerref=0518emailannc
How Are You Managing Your Fax Communications?
Maximize your VoIP environment by integrating FoIP technology to increase
ROI and streamline processes.
http://www.windowsitpro.com/go/toolkit/faxback/?code=0517emailannc
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.
http://www.windowsitpro.com/go/whitepapers/bindview/permissions?code=0517featwp
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!.
http://www.windowsitpro.com/go/whitepapers/thawte/iis?code=DevWatch0519
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:
https://store.pentontech.com/index.cfm?s=1&promocode=eu2765uv
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:
https://store.pentontech.com/index.cfm?s=1&promocode=eu2665us
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.
http://www.appdev.com/promo/RN00372
Contact Us
About Developer .NET Perspectives -- bills@interknowlogy.com
About technical questions -- http://www.sqlmag.com/forums
About product news -- products@sqlmag.com
About your subscription -- Developer_dot_NET_update@sqlmag.com
About sponsoring an UPDATE -- contact Richard Resnick, rresnick@sqlmag.com, or Lisa Kling, lkling@sqlmag.com
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.
https://store.pentontech.com/index.cfm?s=9&promocode=eu215xdb
You can manage your SQL Server Magazine email newsletter subscriptions by going to http://www.sqlmag.com/email.
You can view the SQL Server Magazine Privacy Policy at http://www.sqlmag.com/aboutus/index.cfm?action=privacy.
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.
End of Article