Customer Solution Case Study
/ / ISV Closes Collaboration Gap and Improves Software Development Predictability
Overview
Country:United States
Industry:Software Development
Customer Profile
Microsoft® Gold Certified Partner, The Computer Solution Company (TCSC) develops software and custom solutions.
Business Situation
TCSC wanted to increase the flexibility of its Forensic Laboratory Information System (LIMS).
Solution
Developers used Microsoft Visual Studio® Team System to migrate the Forensic LIMS to Microsoft .NET Framework 2.0 and Microsoft SQL Server™ 2005.
Benefits
Reduces code written and maintained by 20 percent
Reduces complexity of development
Improves communication and collaboration
Lengthens life of solutions / “The access to quality development and testing tools built into Visual Studio Team System itself increases our confidence in the quality of the code that we produce.”
David Romig, Chief Technical Officer, The Computer Solution Company
The Computer Solution Company (TCSC) enjoys and extends to its customers the greatest possible advantage of cutting-edge software by adopting early. TCSC had a successful Forensic Laboratory Information System but wanted to improve the solution to better meet the needs of “virtual” crime-solving teams. TCSC turned to Microsoft® Visual Studio® Team System and Microsoft SQL Server™ 2005. In two weeks, two developers migrated the solution to the Microsoft .NET Framework 2.0 and completely reorganized the source tree. TCSC developers enjoy better communication and collaboration—even involving customers in the development cycle—with Visual Studio Team System and Visual Studio Tools for the Microsoft Office System. The result is a more predictable, less-complex development project and increased competitive advantage.
Situation
Working with proven technology providers and cutting-edge technologies, The Computer Solution Company (TCSC) develops business solutions that precisely meet an organization’s needs. TCSC is a Microsoft® Gold Certified Partner for Information Worker Productivity Solutions, Networking, and Advanced Infrastructure.
Among the products and solutions that TCSC has developed is Forensic Advantage, a laboratory information management system (LIMS). Forensic laboratories rely heavily on lab-centric technologies to collect and analyze evidence. Increasingly, law enforcement and laboratory personnel need to work closely as “virtual teams” in multiple locations and across cooperating agencies to share data and solve crimes. Supporting solutions must be secure and, because data will be used as evidence in criminal trials, must meet stringent requirements in order to hold up in a court of law. In addition, forensic labs and law enforcement agencies now face a growing backlog that requires improved automation and communication in order to enhance the productivity of these virtual crime-solving teams.
Forensic information systems also must be flexible and support the unique needs of individual labs and teams. According to Dave Romig, Chief Technical Officer at TCSC, “Each crime lab has its own distinct way of running its operation. Forensic scientists also have varying ideas as to which data points they want to collect in formulating their opinion about what a piece of evidence means, and how it is significant to a particular crime. To be able to support those differences in how they analyze and treat evidence, we have to develop a product that is very flexible.”
Solution
TCSC developed LIMS as a smart client application, using Microsoft software and technologies, as shown in Figure 1. Recently, TCSC ported its Forensic LIMS to the Microsoft .NET Framework 2.0—an integral component of the Microsoft Windows® operating system that provides a programming model and runtime for Web services, Web applications, and smart client applications—and the Microsoft Visual Studio® Team System development system.
In approximately two weeks, the TCSC development team ported the entire LIMS application and upgraded to Microsoft SQL Server™ 2005 database. Besides porting the application, the development team completely reorganized the source tree to make it more convenient for expansion and to better support a larger team of developers for customer support, maintenance and future releases.
Romig remarks, “Reorganizing the source tree required more effort than did the porting, but still the whole process went very quickly.”
The team used the conversion utility included with Visual Studio 2005 to handle much of the conversion process, including conversion of resource files. The developers worked with the Microsoft Visual C#®development tool and the Microsoft Visual Basic® development system, as well as Transact-SQL (T-SQL), the new language in SQL Server 2005.
Creating Easy Input, Encrypted Output
The client side of the solution features programs from the Microsoft Office System, including the Microsoft Office InfoPath® 2003 informationgathering program, Microsoft Office Word 2003, and the Microsoft Office Outlook® 2003 messaging and collaboration client—all of which are familiar to most users of LIMS.
The solution allows a law enforcement officer to enter information about evidence submitted for examination using the Forensic Advantage smart client or a web browser. The assigned forensic scientist enters results of the examination using a form in InfoPath 2003. The XML metadata is extracted from InfoPath and stored in an XML column in SQL Server 2005. The metadata and examination results are combined to render a document in Word 2003.
“InfoPath can be very easily tailored. So, that gives a fully customized user experience, while reducing significantly the amount of development time for us to provide that customer experience,” says Romig.
Metadata associated with a piece of evidence is fairly standard across all crime labs, and Forensic Advantage manages the metadata, associating the examination results. Because of metadata management, the Forensic Advantage takes advantage of SQL Server 2005 support for XML data columns as a new data type.
Encryption features in SQL Server 2005 enabled TCSC to encrypt specific data columns, such as personally identifiable information. Encrypting these sensitive data columns in the database helps meet stringent security requirements even when the sensitive data is stored on backup media.
ClickOnce for Updates
TCSC has deployed the solution for one client already and is finishing deployment for two other clients in different states. This prompt acceptance for the solution is exciting for the company, but could have created onerous updating tasks for the deployment team.
TCSC uses the Microsoft .NET Framework 2.0 ClickOnce technology for deployments. ClickOnce is a new technology that makes deploying a Microsoft Windows smart client application as easy as deploying a Web application. With ClickOnce, deploying or updating an application is simply a matter of updating files on a server—no need to individually touch every client.
“With ClickOnce,” explains Dave, “we can now deploy modules or upgrades or patches to the lab server, which is much more efficient and easy for end users as well.”
Visual Studio Tools for Office
The TCSC team used Microsoft Visual Studio Tools for the Microsoft Office System to take advantage of the full power of Visual Studio 2005 to the Word-based front end. Through Visual Studio Tools for Office and SQL Server 2005, TCSC developers created a secure workflow for forensic scientists and related workforce. Evidence can be fully and appropriately tracked and maintained, and only authorized personnel can view the data.
Explains Romig, “Using the Visual Studio Tools for Office server document object we create a document on the forensic lab server based on a user-defined Word template. We map the metadata and XML examination results into the Word document. Then we lock those down, using the permissions and digital signing capabilities in Word so the resulting lab report always matches the content stored in the database.”
Choosing a Word-based front-end had additional benefits: TCSC customers believe that using a familiar UI makes the solution more usable and accessible for their employees.
Explains Douglas Chandler, Information Technology Supervisor for Virginia Department of Forensic Science, “Since TCSC integrated their Forensic Advantage product with [the] Microsoft Office product suite, our users needed very little specific training to learn how to do their job with Forensic Advantage. It let them work in a familiar environment and even tailor it to their specific needs. Where some tasks used to take us days, it now takes just seconds! It’s been a real productivity boost for us.”
Truly Collaborative Development
The TCSC team took full advantage of the power and tight integration of Visual Studio Team System, and they were able to enforce quality early and often use proven practices and methodologies. And, because Visual Studio Team System shares data and authentication mechanisms, the team enjoyed an unprecedented level of integration and security for lifecycle tools, which facilitated communication among participants throughout the entire development process.
Additionally, TCSC can involve its customers in the development process by exposing Visual Studio Team System to them. The development team created a custom site using Microsoft Office SharePoint® Portal Server 2003. Through this SharePoint site, TCSC exposed a virtual server so customers can experience the current version of Forensic Advantage and provide feedback—for example, bug reports or feature requests. Customer input comes directly to the TCSC development team by way of Work Item Tracking in Visual Studio Team System. Customers can submit items, check item status, and experience the latest build.
“Simply by using a virtual server and a Web browser, customers—people who have little or no development experience—have a test environment without having to set up or install any infrastructure that typically would be required,” says Romig. “And customers can submit change requests and check status through the familiar InfoPath interface.”
Benefits
A vast and comprehensive array of integrated tools and features in SQL Server 2005 and Visual Studio Team System helped TCSC create a flexible, easily customized Forensic LIMS that meets customers’ needs. Now, by using Visual Studio Team System, the TCSC development team reduces code written and enjoys improved collaboration—including customer involvement—and a less complex, more predictable development cycle.
TCSC customers couldn’t be more thrilled with the results. Says Inspector Thomas C. Dirlam, Assistant Division Commander of the
Michigan Department of State Police, “I'm confident this new technology using Microsoft products will greatly enhance our ability to process forensic casework and deliver a finished report to the investigating agency in a much shorter period of time.”
Reduces Code Written and Maintained by 20 Percent
TCSC developers found that the many enhancements in Visual Studio 2005 meant that they could do more with less code. For instance, by using Microsoft Visual Basic development system generics, TCSC can reduce the amount of code by approximately 20 percent.
“Because we work extensively with collections of objects, being able to use generics significantly reduces the amount of code that we have to write and maintain,” remarks Romig. “Generics let us use the same tested piece of code multiple times, thereby reducing the code base that we have to support.”
In addition, the integrated Common Language Runtime (CLR) of SQL Server 2005 let TCSC developers use Visual C# in addition to the T-SQL language to create database objects, including stored procedures. By using CLR-stored procedures, TCSC implemented a new algorithm for approximate name matches—a powerful and highly useful search feature.
“Approximate name matches would have been challenging to do in T-SQL. We were able to do it without modifying the base tables,” remarks Romig.
Reduces Complexity of Development
Integrated tools in Visual Studio Team System also reduced the complexity of the software development lifecycle for the development team at TCSC.
“The access to quality development and testing tools built into Visual Studio Team System itself increases our confidence in the quality of the code that we produce,” Romig says.
For instance, the TCSC team used Team Build to use code that has been checked in each day to build on a separate build server. A quality analysis is run, and the results of that build and test process is sent by e-mail to people involved in supervising and managing the project.
Romig explains, “In the past, we might have written code for several weeks before we actually did integration, which was when we found any problems. Now we find and resolve integration on the very day that the changes were made. We get fewer surprises, and the whole build and test process is significantly more predictable.”
Microsoft Visual Studio 2005 Team Foundation Server—a server feature included in Visual Studio Team System—also provides important information, such as project status and cost.
“Daily, we know exactly the level of quality of code being produced, and we can track where we are in a given project and how close we are to the end,” says Romig. “Not only that, we can also make informed statements about the quality of the progress that we’re making.”
Improves Communication and Collaboration
Using Visual Studio Team System, the TCSC development team can work from anywhere, despite geographic distance, while sharing resources and involving customers in the development process. Visual Studio Team Foundation Server is an extensible team collaboration server that enables all members of the extended IT team to effortlessly manage and track the progress and health of projects.
“Since we’ve used [Visual Studio] Team System, we have been able to take a scenario or a technical specification—what we call a tear-off project—and assign one of those modules to another team member or group,” explains Romig. “Because Team Foundation Server gives us a single development environment, that developer or group can integrate the code into the code base seamlessly.”
Visual Studio Team System and Visual Studio Team Foundation Server also provide a constant build environment and unified tool set that everyone can use over the network. For instance, TCSC extends collaboration from its development offices near Richmond, Virginia, to a training team in another location and to vendors who write documentation from their offices in another state. Even customers are involved, no matter their location.
By using the virtual server and Visual Studio Team System Work Item Tracking, customers can submit requests and check status any time of day, and no one worries about time zone differences.
“[Visual Studio] Team System enables us to incorporate the customer directly into the development process,” says Romig. “That’s one of the most important steps because it builds confidence in the product early on. Customers can work with the product, try it out, and even begin to get their staff familiar with it before they actually convert over to using it.”
Extending Visual Studio Team System to customers by using a virtual server also benefits TCSC because it automates the process of submitting customer change requests.
“Because the bug reports and feature requests show up as a Work Item in Visual Studio Team System, developers can get right to work,” says Romig. “Developers and project leads can dedicate more time to development and less time on the phone with forensic scientists, obtaining their feedback.”
Lengthens Life of Solutions, Meets Customer Needs
System longevity is important to TCSC customers, who typically switch from aging systems, some of which are no longer supported by their vendors. Because TCSC is an early adopter of Visual Studio 2005 and SQL Server 2005, its customers gain a system that benefits from a significantly longer life.
Romig notes, “Our customers start gaining benefits earlier and have a longer-lived solution. Our competitors won’t start developing for and with these technologies for another year; we’re miles ahead!”
Microsoft Windows Server System
Microsoft Windows Server System™is a line of integrated and manageable server software designed to reduce the complexity and cost of IT. Windows Server System enables you to spend less time and budget on managing your systems so that you can focus your resources on other priorities for you and your business.
For more information about Windows Server System, go to:
Microsoft SQL Server 2005
Microsoft SQL Server 2005 is comprehensive, integrated data management and analysis software that enables organizations to reliably manage mission-critical information and confidently run today’s increasingly complex business applications. By providing high availability, security enhancements,and embedded reporting and data analysis tools, SQL Server 2005 helps companies gain greater insight from their business information and achieve faster results for a competitive advantage. And, because it’s part of Windows Server System, SQL Server 2005 is designed to integrate seamlessly with your other server infrastructure investments.