Professional Documents
Culture Documents
To
Software Testing
Table of Contents:
Software Engineering:
Engineering
Manufacturing
Art
Performance
Market Research
Once the Market study is made, the customer's need is given to the
Research and Development (R&D) Department to conceptualize a
cost-effective system that could potentially solve customer's needs
better than the competitors. Once the conceptual system is
developed and tested in a hypothetical environment, the
development team takes control of it. The development team
adopts one of the software development methodologies that is
given below, develops the proposed system, and gives it to the
customers.
This is also known as Classic Life Cycle Model (or) Linear Sequential
Model (or) Waterfall Method. This has the following activities.
Code Generation
Maintenance
1. Prototyping Model
2. Rapid Application Development Model
3. Component Assembly Model
4. Water fall Model
1. 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 his/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. In this methodology, the software is evolved
as a result of periodic shuttling of information between the
customer and developer. This is the most popular development
model in the contemporary IT industry. Most of the successful
software products have been developed using this model - as it is
very difficult (even for a whiz kid!) to comprehend all the
requirements of a customer in one shot. There are many variations
of this model skewed with respect to the project management
styles of the companies. New versions of a software product evolve
as a result of prototyping.
2. Rapid Application Development (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
RAD assumes the use of the RAD tools like VB, VC++, Delphi etc
rather than creating software using conventional third generation
programming languages. The RAD works to reuse existing program
components (when possible) or create reusable components (when
necessary). In all cases, automated tools are used to facilitate
construction of the software.
Feasibility
Implementation
Testing