4-page Case Study - Posted 7/31/2008
Views: 1473
Rate This Evidence:

The Test Factory

Fast-Growing Software-as-a-Service Provider Uses New Tools to Hit Key Business Target

Companies worldwide increasingly rely on testing to screen prospective employees and evaluate existing staff. The Test Factory, a fast-growing software development firm based in Durham, England, provides an online solution for creating and administering tests to meet this growing need. Following the brilliant debut of its Web-based testing solution, The Test Factory pushed ahead with an aggressive schedule for the delivery of version two of its application. Using Microsoft® Visual Studio® Team System and technologies introduced in Service Pack 1 for the Microsoft .NET Framework 3.5, a team of five developers completed version two in four months—two months ahead of schedule. Now, The Test Factory benefits from faster development, improved application scalability, and increased business agility.

Situation

More companies are recognizing the benefits of using online tests to evaluate job candidates and train current staff. Companies have turned to these kinds of tests for several reasons:

  • The tests objectively measure job-related skills.
  • Companies can administer online tests to large numbers of people simultaneously, making the tests a cost-effective alternative to other assessment tools.
  • Companies can score the tests quickly, enabling those who administer the tests to provide rapid feedback to participants.

*
* The decision to use the .NET Framework 3.5 SP1 and Visual Studio Team System to build version two of the application was the key to hitting our delivery date ahead of schedule. *
Kevin Beales, Founder and Managing Director, The Test Factory
*

Though there has been a proliferation in the use of online testing across a range of industries, many of the applications currently available are difficult to use or lack the flexibility to make them easily customizable.

The Test Factory, a fast-growing software-as-a-service provider based in Durham, England, was born out of the recognition that there was strong market demand for a better online testing solution. “The idea originally came from my experience working in the technology industry,” says Kevin Beales, Founder and Managing Director of The Test Factory. “Once we started doing the research, it became clear that virtually every organization could benefit from an online testing solution that combined rich functionality with an easy-to-use interface.”

With that in mind, the company set out to develop a Web-based testing application that met these fundamental criteria. After nine months of development work, the company delivered The Test Factory application to the market and began building market share almost immediately after the release. “The success of the initial release demonstrated the need among blue-chip companies for an on-demand testing application that was simple to use,” says Beales.

Admittedly, the original version of The Test Factory application had its limitations. Says Beales, “The first version was the appropriate vehicle for getting our idea to market, but we always knew that we wanted to make changes and improvements going forward.” In fact, the company had set an aggressive timeline for market delivery of version two of the application to meet obligations to existing clients and capture new opportunities.

But The Test Factory had to confront several technical challenges in order to reach this goal. First, the developers had generated the data access source code for the original application using template-based code generation. As developers manually created custom code to enable new features over the course of the development life cycle, the code base became more difficult to manage. Second, although the data access layer for the application was simplified by using the Enterprise Library Data Access Application Block, the developers still needed to write substantial data access code for each new feature that required new business entities. “Most of the features of the application are driven by the business and by the front end, so we were spending a lot of time creating new classes of business entities to create new features,” says David Copple, Lead Developer at The Test Factory.

*
* Using the Entity Framework has significantly sped up our development cycle by cutting out a lot of the custom code we have to write. *
David Copple, Lead Developer, The Test Factory
*

To meet the goal of expanding functionality in version two within the constraint of an aggressive delivery schedule, The Test Factory developers needed to streamline the development process. They wanted to make continuous, rapid improvements, while providing a scalable infrastructure to support future projects.

Solution

The Test Factory team developed version two of the application using Microsoft® Visual Studio® Team System. Working in Visual Studio Team System enabled developers to easily take advantage of technologies introduced in Service Pack 1 for the Microsoft .NET Framework 3.5, including the Microsoft ADO.NET Entity Framework and Microsoft ASP.NET MVC.

Figure 1
The new wizard-based user interface of The Test Factory application.

Converting the Data Access Layer
To support the rapid development of new features in version two, the team recognized the need to implement a new data access model. They had previously considered replacing the Data Access Application Block with the Entity Framework, a modeling framework that lets developers quickly define a conceptual model of a database schema that closely aligns to a real-world view of information. After evaluating expected gains in development speed and application flexibility, the team migrated the entire data access layer to the Entity Framework. “One of our initial concerns was the amount of time it would take to convert the application, but this turned out to be a nonissue,” states Copple. “Switching to the Entity Framework took less than two weeks.”

Accelerating Development of New Features
One of the principal objectives in developing version two of the application was to expand the feature set. The team relied heavily on the Entity Framework to build new features more quickly than they were previously able to do using the Data Access Application Block.

Because business entities consist of logic generated by the Entity Framework, developers did not have to spend time creating these entities or the related stored procedures for each new feature they added. This meant that they could quickly meet client requirements for new functionality. “The Entity Framework took away the tedium of having to write standard data access code and business objects, which gave our team a big productivity boost,” notes Copple. Key enhancements to version two of The Test Factory application include:

  • An open testing feature, which lets candidates access a test through a hyperlink supplied by the test administrator.
  • A wizard-style approach to authoring tests.
  • Drag-and-drop controls for test editing.

Making the Test Player Easier to Use and Customize

Fast Facts
Number of developers 5 developers
Time to complete 4 months
Developer tools Microsoft Visual Studio Team System
Programming languages
  • Microsoft ASP.NET
  • C#
Programming model and technologies
  • Microsoft .NET Framework 3.5 SP1
  • Microsoft ADO.NET Entity Framework
  • Microsoft ASP.NET MVC

The Test Factory application consists of two Web sites: “Client Web” enables clients to author and issue tests, and “Test Web,” also referred to as the “Test Player,” is the site candidates use to take the tests. In developing version two of the application, the team from The Test Factory focused on implementing two major user interface improvements to the Test Player, which employs the MVC pattern. Developers took advantage of the enhanced URL control in the MVC pattern to enable rendering of client-specific URLs. This feature lets clients incorporate their company name into the Test Player URL for the tests they issue.

*
* The Entity Framework took away the tedium of having to write standard data access code and business objects, which gave our team a big productivity boost. *
David Copple, Lead Developer, The Test Factory
*
Benefits

Using Visual Studio Team System, the Entity Framework, and ASP.NET MVC, The Test Factory team increased productivity while greatly improving the functionality and scalability of its online testing application. The ability to rapidly develop new application features enabled The Test Factory to be more responsive to client needs, helping the company strengthen its competitive advantage.

Faster Development
The Test Factory team benefitted from a significant productivity boost after converting the data access layer to the Entity Framework. Previously, each time developers introduced a new feature that required new business entities, they had to write new data access code. Now, because the Entity Framework automatically generates this code, developers have dramatically reduced the amount of time required to create new features. While developing version two, the team estimated that it took them one-third the amount of time to add features to the application that rely on new business entities or require new database queries and updates. “Using the Entity Framework has significantly sped up our development cycle by cutting out a lot of the custom code we have to write,” says Copple. “The less code we have, the less time it takes to test and the less room there is for error.”

Improved Scalability
The team took advantage of enhancements to the .NET Framework 3.5 to improve the scalability of version two of the application. Using the Entity Framework, developers were able to model data more efficiently, which meant that they could concentrate on testing new functionality and making sure it could handle increased demand. “Without having to worry about data access concerns, we were able to devote more time to considering new features,” Copple says. “The Entity Framework gives you built-in scalability. It lets you immediately start thinking about ways to build out your application, instead of worrying about the plumbing.”

Figure 2.
The Test Factory application helps identify candidate strengths and skill gaps.
Increased Business Agility
Through the enhanced URL control provided by ASP.NET MVC, The Test Factory team implemented two major user interface improvements in version two of the application. “The MVC pattern made it possible to create client-specific and readable URLs,” notes Copple. “But even at a more fundamental level, it makes the process of adding and testing new functionality much easier, so we can quickly adapt to new requirements.” Underscoring the business value gained through Microsoft software and technologies, Beales notes, “The decision to use the .NET Framework 3.5 SP1 and Visual Studio Team System to build version two of the application was the key to hitting our delivery date ahead of schedule.”

Microsoft .NET Framework 3.5
.NET provides you with a comprehensive and consistent programming model and a common set of APIs across all tiers of your application. .NET helps you to build applications that work the way you want, in the programming language you prefer, across software, services, and devices. .NET helps developers move quickly from idea to the creation of rich, responsive applications that people want to use.


.NET Framework 3.5 SP1 expands and improves offerings in the .NET Framework and Visual Studio 2008. .NET Framework 3.5 SP1 introduces the ADO.NET Entity Framework and ADO.NET Data Services, which simplify data access code in applications by providing an extensible, conceptual model for accessing data from any source.

For more information about the .NET Framework 3.5, please go to:
www.microsoft.com/netframework

For More Information
For more information about Microsoft products and services, call the Microsoft Sales Information Center at (800) 426-9400. In Canada, call the Microsoft Canada Information Centre at (877) 568-2495. Customers who are deaf or hard-of-hearing can reach Microsoft text telephone (TTY/TDD) services at (800) 892-5234 in the United States or (905) 568-9641 in Canada. Outside the 50 United States and Canada, please contact your local Microsoft subsidiary. To access information using the World Wide Web, go to:

www.microsoft.com

For more information about The Test Factory products and services, call (44) 191 305 5212 or visit the Web site at:
www.thetestfactory.com

This case study is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
Solution Overview



Organization Size: 20 employees

Organization Profile

The Test Factory is a fast-growing software-as-a-service provider based in Durham, England, that provides an easy-to-use Web-based resource for creating and administering online tests.


Business Situation

To quickly build new application features in version two of its flagship application, The Test Factory team needed to streamline its development process.


Solution

Using Microsoft® Visual Studio® Team System and the Microsoft .NET Framework 3.5 SP1, a team of five developers created version two of the application in four months.


Benefits
  • Faster development
  • Improved scalability
  • Increased business agility

Software and Services
  • Microsoft Visual Studio Team System
  • Microsoft .NET Framework
  • Microsoft ADO.NET
  • Microsoft ASP.NET

Vertical Industries
Training Industry

Country/Region
United Kingdom