Microsoft .NET Framework 3.0
Customer Solution Case Study
/ / Programmers Rapidly Build Game-Like Team Training Software to Give Athletes an Edge
Overview
Country or Region: United States
Industry: Software Development
Customer Profile
Agile Sports Technologies develops software that helps collegiate and professional athletic teams train more effectively off the field.
Business Situation
In pursuit of the win, coaches and players needed an easy way to share scouting and training videos as well as playbook information and other intelligence.
Solution
By using the Microsoft® .NET Framework 3.0, Agile Sports Technologies is developing visually engaging software that helps teams collaborate in new ways to gain a competitive advantage.
Benefits
Engaging interface
Seamless communication
Efficient development / “With today’s players, everything is visual. Huddle does an excellent job reinforcing the information we provide to players… by presenting it in a way that looks and feels ‘game-like.’”
Bill Callahan, Head Football Coach,University of Nebraska
To gain an edge on competitors, coaches and athletes regularly study video clips, playbooks, and other intelligence. Existing methods for sharing this information relied heavily on coach involvement and left little opportunity for players to study independently. The goal of Agile Sports Technologies is to help collegiate and professional athletic teams train more effectively off the field. Today, Agile Sports uses the Microsoft® .NET Framework 3.0to provide a powerful training tool called Huddle. By harnessing the graphic power of Windows®Presentation Foundation, Huddle can prepare players and coaches using a "video game-like" interface that exposes crucial data for improving performance and scouting opponents. These cutting-edge Microsoft technologies help developers quickly bring to market a software solution that helps athletes prepare for gameday victories.

Situation

To hone their physical and mental prowess, professional and collegiate athletes devote thousands of hours to training. But even the most athletically gifted players will not find success on gameday unless they have a solid understanding of their teammates, their opponents, and the game plan. To help gain that advantage, teams scout rival players and compile and review hundreds of hours of video clips. Coaches also use playbooks to capture intelligence on competitors. But the sheer magnitude of information and the variety of media it’s stored on can make it difficult to find the right information and share it. Also, file size can make it difficult for teams to share training clips outside the confines of the athletic department—a particularly vexing problem when the team goes on the road.

The training media itself limits its effectiveness and reach. For example, a player can view scouting clips or review the playbook, but unless the coach is available to provide commentary, the player’s potential to learn is limited. Coaches already spend countless hours on the job and constantly look for ways to be even more effective and efficient.

Solutions for managing, cataloguing, and distributing training video files, playbook information, and scouting reports have had limited functionality, were difficult to use, or were not integrated. Even if coaches were equipped with training tools, they still faced challenges such as difficulty monitoring individual players’ independent training, difficulty communicating among players and coaching staff, and the vulnerability of sensitive information.

Agile Sports Technologies was founded in 2006 to help college athletic departments and professional teams solve these issues. After surveying coaches, Agile Sports Technologies set out to create a software solution to help coaches more effectively convey crucial information, help players independently learn, extend the usefulness of video clips and other competitive intelligence, and, above all, be engaging and easy to use.

The company stipulated that a technology platform and development system should include the following:

Capability for rapid and productive development, for the fastest possible time-to-market and lowest possible development cost while providing rich functionality

Rapid prototyping capability

Simple portability to a Web-based architecture

Facility for easily re-designing or updating the user interface

Solution

Agile Sports is developing Huddle—team training software that helps give teams a competitive advantage. The easy-to-use, visually compelling, video-game-like interface helps keep players engaged in the process of learning. Agile Sports Technologies programmers rely on Microsoft® Visual Studio® 2005 Professional Edition or Microsoft Visual Studio 2005 Standard Edition development system. Developers also are taking advantage of the Microsoft .NET Framework 3.0 managed programming model, including Windows® Communication Foundation and Windows Presentation Foundation.

Huddle Team Training Software

Huddle integrates information such as video clips, playbook information, and scouting reports. Using Huddle, coaches can review video and insert annotations and remarks. They can annotate the video by speaking audio notes, or by inserting text or ink comments (using a standard keyboard or
Tablet PC stylus). Using the Huddle
messaging interface, the coach assigns and transmits annotated clips or other intelligence for players or fellow coaches to review. The recipient receives a notice that they have new videos to watch. The coach’s notations appear in the video clips, as shown in Figure 1.

Coaches and players can use Huddle whether or not they have an Internet connection. When a player has an Internet connection, the software automatically downloads the latest set of assigned video clips or reports for the player’s review. Figure 2 shows a player home page.

Development Process

Agile Sports created a working prototype of Huddle in a few weeks, and the company expects to release the full product in early 2008. Its development staff currently consists of the full-time equivalent of three developers and three testers—a small team considering the ambitious scope
of the project.

Brian Kaiser, Chief Technical Officer and Co-Founder of Agile Sports Technologies, describes the development effort this way: “We’re developing an enterprise-level application that will be used by large organizations with very complex Web service back-ends.”

When a technology sponsor at Microsoft heard about the scope of the project, he commented that he would have expected a team of about 20 people for a project of this size and complexity. “We have a great development team that has worked hard,” says Kaiser, “but our rapid success can be attributed in a large degree to Windows Communication Foundation and Windows Presentation Foundation.”

User Interface Development

To create an engaging user experience, programmers relied on Windows Presentation Foundation and Extensible Application Markup Language (XAML). Windows Presentation Foundation is .NET Framework 3.0 technology that provides developers with a unified programming model for building rich user experiences. XAML enables developers to create visible user interface elements in the declarative XAML markup, separate the user interface definition from the run-time logic by using code-behind files, and then join the two through a partial class definition.

This meant that the development team was able to break apart the presentation layer from the code base. Kaiser remarks, “The fact that we have the presentation layer separated from the logic lets us make tweaks to the look and feel and add functionality later with trivial effort.” By using XAML, the Agile Sports development team created prototype interfaces for coaches to review in just a few days. In the future, if Agile Sports wants to contract out a re-design of the interface to a design firm, there will be no impact to the actual code.

Connected Systems

Agile Sports also relied on Windows Communication Foundation. Windows Communication Foundation is .NET Framework 3.0 technology for building and running connected systems. This technology unifies a broad array of distributed systems capabilities in a composable and extensible architecture to provide secure, reliable, and transacted messaging along with interoperability. With Windows Communication Foundation, whether Agile Sports developers target the thick client or a yet-to-be-developed Web client, they can use the same services.

Windows Communication Foundation supports a wide variety of open standards and delivers extensive support for basic and advanced Web services specifications. Agile Sports benefited from Windows Communication Foundation support for basic Web services and duplex Web services as well as SSL transport, reliable messaging, and the low-level streaming of video files.

Benefits

Gameday is the ultimate test for athletic teams, and many teams have already benefited from Huddle. Players and coaches alike benefit from this uncomplicated and engaging way to share targeted and rich information. Bill Callahan, Head Football Coach at the University of Nebraska, says, “With today’s players, everything is visual. Huddle does an excellent job reinforcing the information we provide to players on a daily basis by presenting it in a way that looks and feels “game-like.” The information is quickly and efficiently presented in order to accommodate and maximize the schedule of today’s student-athlete.”

By using comprehensive, flexible, cutting-edge Microsoft tools and technologies, Agile Sports Technologies developers are highly productive and can quickly bring to market this powerful and extensive team training software. Specifically, Agile Sports Technologies meets several goals for its team training software:

Attention-grabbing. “Teams told us that making the software feel like an Xbox 360™ game isn’t just a fringe benefit; it’s essential because it keeps people involved,” says Kaiser.

Simple. “Coaches and players don’t have time or inclination to click dialogue boxes or read a user’s guide or help files,” Kaiser remarks. “Windows Presentation Foundation let us create an intuitive, game-like interface.”

Mobile. Teams need to access training information while on the road as easily as they can while they are in their home training facility. Microsoft .NET Framework 3.0 managed programming model helps Agile Sports Technologies rapidly write software that supports players and coaches during the playing season as well as the off-season, from home and hotel, on any computing form factor, including Tablet PCs and slate Tablet PCs.

Robust. Likewise, the Microsoft .NET Framework 3.0 supports Agile Sports in developing an enterprise-level solution with wide-ranging capabilities, including an administrative console and an application that enables Agile Sports to automate hotfixes and updates.

Engaging Interface

Windows Presentation Foundation helped Agile Sports develop precisely the kind of UI they wanted to deliver to players and coaches. Interesting animations and effects help keep the players engaged in the system. “Because Windows Presentation Foundation provides the fundamentals we needed and wanted, it’s the ideal foundation for designing and developing the Huddle interface,” remarks Kaiser.

Jeff Raikes, President, Microsoft Business Division, says, “Agile Sports is using Windows Presentation Foundation and Tablet PC to provide an amazing user experience and invaluable knowledge to a set of users that might otherwise be somewhat technology averse. Huddle delivers ease of use in a very powerful solution that engages coaches and players alike.”

Native support for media elements in Windows Presentation Foundation enables key functionality in Huddle such as animation, audio playback, and the ability to use digital ink. In Windows Presentation Foundation, media elements are treated as an object, which, for example, makes it almost effortless for developers to provide functionality that lets users lay ink or text on top of video.

In addition, by applying different XAML style sheets, Agile Sports can quickly extend and customize the user interface for each team. A simple change in style sheet changes the entire Huddle look and feel including team logos, background images, and colors. Also, different developers work on different modules, and XAML style sheets help Agile Sports maintain continuity across modules.

Seamless Communication

To enable individual players and the team to

access Huddle while they are away from their team training complex, Agile Sports plans to develop an XAML Browser Application (XBAP) with the same functionality as the thick client. Windows Communication Foundation separates communication details from service functionality, so it will be relatively simple for Agile Sports to port the code quickly.

Currently, Windows Communication Foundation enables automatic pushes to error logs on a central server when an error occurs on the client. “We use that information to push out a hotfix,” remarks Kaiser.

Efficient Development

In only about two weeks, Kaiser and the development team created an initial prototype complete with videos and ink annotations. “Getting coach time is usually just shy of miraculous, and the Microsoft .NET Framework 3.0 helped us quickly create a compelling, functioning prototype to show coaches when we met them in person,” says Kaiser.

The Microsoft .NET Framework 3.0 helps the Agile Sports Technologies development team be more productive and quickly bring a product to market. “There is significant time savings with these Microsoft technologies, and that’s just fact,” Kaiser states. “I can’t even imagine the amount of code and time it would take if you were to develop a comparable Java solution in terms of just the Web services. The fact that we had just one developer working on the Windows Communication Foundation components of Huddle is a testament to how quickly this technology lets you develop something this powerful and extensive.”

The Microsoft .NET Framework 3.0 unifies and extends today’s distributed technologies to help Agile Sports meet its development and business goals. “Windows Communication Foundation is both complete and versatile,” enthuses Kaiser. “We save considerable time and avoid potential coding errors by avoiding writing a lot of code because what we need is provided in Windows Communication Foundation.”

Integrated Microsoft development software and the Microsoft .NET Framework 3.0 managed programming model not only supported rapid development; it also will help Agile Sports make rapid design changes. Kaiser concludes, “We could outsource re-design of the system in the future, and the design firm could modify the XAML files and not touch any of our code. A designer with no technical knowledge could restyle our system for us without disrupting the back-end logic. That’s powerful. Because of Windows Presentation Foundation, we have so much flexibility in how we can re-arrange our UI. It’s amazing.”


Microsoft .NET Framework 3.0

.NET Framework 3.0 is Microsoft’s managed-code programming model for developing software on the Windows platform. It builds on the .NET Framework 2.0, combining the power of the existing .NET Framework 2.0 application programming interfaces with new technologies for building applications that provide visually stunning user experiences, seamless interoperable communications, and the ability to model a range of business processes. The .NET Framework 3.0 includes Windows Presentation Foundation, Windows Communication Foundation, Windows Workflow Foundation, and Windows CardSpace technologies. It provides a consistent and familiar development experience,bringing new technology to the millions of developers programming in managed code today.

For more information about the .NET Framework 3.0, please go to: