A comprehensive pharmaceutical analysis tool is just what the doctor ordered read Fab Gear's prescription here.
The Challenge: "We need a technology team."
Our customer was starting up. They had a killer business plan, they had seed capital, they had deep experience in their target industry.
What they didn't have was a technology team. They had enough experience with software development to understand that building such a team takes time you need to work through the differences in approach and outlook, find leaders as comfortable with the technology as they are with the people behind it, develop processes to carry you from ideas to product release, not to mention find productive people who can work together. Most folks who have lived through that process will tell you that you won't be running at full speed for at least six months - and our customer needed to have a prototype in front of investors long before that.
The Solution: Fab Gear Interactive brought a creative, skilled, fully-productive team to bear on the product.
First things First. We assigned senior software architects to help refine the offering and organize the software, the database, and the schedule. Meanwhile, one of Fab Gear's graphic artists worked with the customer to design brochures and a preliminary web site to help with early presentations.
Since the project called for analysis and manipulation of millions of database records, the customer was looking for a best-of-breed database product, and we recommended Oracle. Our experience with that product got us out of the gate quickly, and served us well later in the project when tuning the database became a consideration.
On the first day of development, our configuration specialist created a revision control repository (using CVS), a web-based issue tracking site (using Bugzilla), and established complete development environments in which each developer has his or her own virtual domain name, web server, running application, database, and source tree. These development environments are known as sandboxes - you play in your sandbox, I play in mine, we don't interfere with each other but can share our work as appropriate. All this might seem like a lot of work, and it is if you haven't done it before, but it takes us minutes.
With our goals laid out and an environment in place, we brought in a team of developers already experienced with the technology, the processes, and each other. As the developers built the software behind the site, the designer used a page template system to form the prototype by combining the software with the graphics elements designed earlier.
Page template systems separate the look and feel of a site from the underlying logic. They're both important, but they evolve at vastly different rates, and you're best served by allowing each of them their natural rhythms. We've used (and even written) a number of them over the years, and for this project we used elements of WebMacro and Apache Struts, which are both Java-oriented template systems implementing variations on the model-view-controller model.
During the development process, we used a number of techniques to improve real-time communication amongst the team members at Fab Gear and at the customer's site. For example, we kept a common prototype system up to date through continuous integration of the software, providing immediate feedback to developers and allowing the people responsible for demonstrating the protoype to refine their presentations. Meanwhile, we used issue tracking and prioritization tools visible across the team, which allowed the customer to coordinate events based on a proven, realistic track record.
The prototype made its way around the world, supporting efforts to win early customers, partners and investors. Fab Gear staff went with it, providing technical backup and marketing support as members of the customer's team. Not simply demonstrating the product, but helping to educate the user community on why the product was different from competitors and how it could make an appreciable difference to the businesses our client was serving. Those efforts paid off; they signed up customers and secured more funding.
With more fuel in the engine, the team could work on the larger parts of the project, one of which involved the integration of a third-party product. Fab Gear acted as technology liaison for all third-party technology items those offering product add-ins, potential partners for integration strategies, and ISPs and ASPs for deployment.
The last step was building a company. As a technology-based enterprise, our customer needed to build up an internal technology team to carry the product to version 2 and beyond. We helped the customer identify and prioritize needs, and helped transfer knowledge, techniques and responsibilities to the new crew members as they came on board. They eventually developed their own habits and culture, but since they never had to start from scratch, they were able to make progress almost immediately.