Hitchhiking Life

For a moment, nothing happened. Then, after a second or so, nothing continued to happen. - DNA
Ramblings of a guy who is taking life as it comes.
Blogger Code - B3 d t k+ s u-- f i o++ x- e+ l-- c

Monday, January 17, 2005

Product Development Life Cycle

There are a nunber of methodologies that are in use for product development. I have tried to summarize the most prominent methodologies in use and their salient features. Later I try to identify the methodology that we followed while developing Tata Bio-Suite. There are certain commonalities between all these methods. I have also listed them separately.

Market Survey and Analysis

This is carried out before any work on the product is started. The aim of carrying out a market survey is to identify the need of the proposed product in a target population and also to study competitive products already in the market. The market study is based on a lot of assumptions and the accuracy of these assumptions is crucial to the success of the product.

Research

This includes literature survey and pseudocoding. In this phase a team of people, usually domain experts, study the domain in depth and come up with a list of features the product would provide. They also go through literature and come up with algorithms that would be used to implement those features. The aim here is to come up with solutions that satisfy the customer's needs better than competitors. At the end of this phase the team comes up with conceptual or actual prototypes that are then used by the development team to build the actual product.

System Development

There are a variety of methods that can be employed at this phase. The prominent being

  • Linear Model

  • Prototyping Model

  • Rapid Application Development Model (RAD)

Linear Model

This is perhaps the simplest model in use for system development. The following are the prominent steps used in this model.

  • Requirements Analysis

  • System Design

  • Code Generation

  • Testing

  • Maintenance

Prototyping Model

This is a cyclic version of the linear model. In this model, once the requirement analysis is done and the design for a prototype is made, the development process gets started. Once the prototype is created, it is given to the customer for evaluation. The customer tests the package and gives her feed back to the developer who refines the product according to the customer's exact expectation. After a finite number of iterations, the final software package is given to the customer.

RAD Model

The RAD is a linear sequential software development process that emphasizes an extremely short development cycle. The RAD software model is a "high speed" adaptation of the linear sequential model in which rapid development is achieved by using a component-based construction approach. Used primarily for information systems applications, the RAD approach encompasses the following phases:

  • Business Modeling

  • Data Modeling

  • Process Modeling

  • Application Generation

  • Testing and Turnover

Design of Tata Bio-Suite

We followed a prototyping based approach while developing Bio-Suite. Starting from version 0.3, the prototype was sent to partners for testing. After the feedback of the partners was received and incorporated into the product, a newer version would be released. This cycle continued till version 1.0 was released. After this the product entered the maintenance phase.

0 Comments:

Post a Comment

<< Home