Categories
Manual Testing Software Testing

Waterfall Model in Software Engineering with Advantage and Disadvantage

There are different models of SDLC. We can also call them methodologies.

Among them these are the methodologies which are most frequently used in software industry.

The different models of SDLC are

1. Waterfall Model

2. Spiral Model

3. Prototype Model

4. V  Model

5. Agile Methodology

Let us discuss each model in detail.

Waterfall Model and Its Phases:

Waterfall model is one of the oldest model.

Waterfall Model is the fundamental model because from this model all other models have been developed.

Phases :

It contains all the phases that are present in the SDLC.

     1.Requirements collection.:

In this phase either BA or PA is going to collect the requirements from the customer.

     2. Feasibility Study:

In this phase a set of people sit together and decides whether the product is doable or not.

     3. Design:

In this phase blue-print of the software will be developed.

     4. Coding:

In this phase developers starts writing the code in one of the programming language.

     5. Testing:

Once the coding is completed the application is giver to the test engineers where they are going the check the functionality of each and every module and also its components which is called testing. During testing   process they may find bugs which needs to be reported to the developer and the developer fixes the bug by  making necessary code changes and he again sends it to the est engineer and test engineer retests the application. This process continues until the application is bug free.

     6. Installation:

Once the application is developed and tested it is handed over to the customer in installation phase.

     7. Maintenance:

Once the customer starts using the application he may find some issues which needs to be immediately fixed and tested and hand it over to the customer in the maintenance phase.

Note:

  • In waterfall model execution takes place sequentially ie., output of one phase is given as input to the next phase.
  • Waterfall is not flexible for changes ie., requirements are freezed at initial stages.
  • The changes in requirements occur due to Business needs have been changed (or) technology have been changed (or) customer needs have been changed.

Q) Where we use Waterfall Model ?

Ans: We use waterfall model in life critical and machine critical applications where requirements are freezed at initial levels.

Q) Why it is called waterfall Model?

Ans: Since backtracking is not possible it is called Waterfall Model.

That’s all regarding Waterfall Model. Let us see the another model in next post….

 

 

 

Categories
Manual Testing Software Testing

Detailed Description of SDLC | SDLC Phases in Detail

Software Development Life Cycle  (SDLC)  is the step by step procedure in-order to develop a software.

SDLC consists of various Phases like:

  1. Requirements collection
  2. Feasibility Study
  3. Design
  4. Coding
  5. Testing
  6. Installation
  7. Maintenance

1. Requirements Collection:

Requirements Collection depends on the type of Companies it is used. Before proceeding further, we should know about types of companies.

There are two types of companies.

  •  Service based Companies
  • Product based Comanies

a. Service Based Companies:

In service based companies, customers who want the software for their business, approaches any one of the software company and gives their requirements to the company. Here BA( Business Analyst) collects the requirements from the customer. The company develops the software according to the requirements given by the customer and hand it over to the customer. The customer in turn pays some money to the company. This is the process that takes place in Service Based Companies. Here the customer is the owner of that software.

b. Product Based Companies:

In product based companies the PA(Product Analyst) collects the requirements by analyzing the market trends. The company will develop the software based on these requirements and sell in the market. Those who need the software they will buy them from the company. Here the company is the owner of that software.

In SDLC Requirements Collection is the First phase. In this phase either BA or PA collects the requirements in the form of Requirements Document.

2. Feasibility Study:

In this phase a set of people sit together and decides whether the product is doable or not. This will be done based on certain factors like

  1. Cost: will be decided by the Financial Department of the company
  2. Time and Resources:  will be decided by the HR Department of the company
  3. Technology: will be decided by the most technical person Architect of the company

3. Design:

In this phase blue print of the software is developed.

It consists of two phases:

  • HLD:  High Level Design. In this Architect will design a flow chart for all the modules present in the application.
  • LLD:  Low Level Design. In the the Development manager will decide the time spent, technology used and the user interfaces of the application.

4. Coding:

Once the design is completed the developers start writing the code in one of the programming languages.

5. Testing.:

Once the coding is completed the application is handed over to the Test Engineers. Now the Test Engineers start checking the application whether the application is working according to the requirements or not. This is called Testing. During this process the may find some bugs which need to be reported to the developers. Now the developers start fixing the bugs and again send the application to the Test engineers for retesting. This process continues until the application is bug free or working according to requirements or stable.

6. Installation:

Once the application is stable it is handed over to the customer and installed at the customer’s place which is called installation.

7. Maintenance:

When the customer starts using the product he may find some issues which needs to be immediately fixed and tested and hand it back to the customer which is done in Maintenance phase.

This is the entire process in SDLC.

We will see about models of SDlC in the next post.