EDUCBA Logo

EDUCBA

MENUMENU
  • Explore
    • EDUCBA Pro
    • PRO Bundles
    • Featured Skills
    • New & Trending
    • Fresh Entries
    • Finance
    • Data Science
    • Programming and Dev
    • Excel
    • Marketing
    • HR
    • PDP
    • VFX and Design
    • Project Management
    • Exam Prep
    • All Courses
  • Blog
  • Enterprise
  • Free Courses
  • Log in
  • Sign Up
Home Software Development Software Development Tutorials Software Engineering Tutorial Fish Model
 

Fish Model

Priya Pedamkar
Article byPriya Pedamkar

Updated March 24, 2023

fish model

 

 

Introduction to Fish Model

Fish model is one of the software development methodologies in which both verification (Review) and validation (Testing) are done parallelly by the separate team in each phase of the model. The structure of this model looks like a fish, hence the name shows fish model. It is a time consuming and expensive model. One can be rest assured that both verification and validation are carried out in parallel by separate teams at each step of the model.

Watch our Demo Courses and Videos

Valuation, Hadoop, Excel, Mobile Apps, Web Development & many more.

Block Diagram of Fish Model

The Block Diagram of Fish Model is as follows:

Fish Model

Phases of Fish Model

It is an SDLC methodology having all phases of the software development life cycle process. All the phases are related to the verification and validation process to complete develop the application. These phases are:

1. Project Initiation Phase

It is the first phase in the Fish model i.e. Project Initiation Node (PIN) or a Contract Sign. Here a service level agreement (SLA) would be signed in between client and organization for the work is going to begin.

2. Requirement Gathering Phase

In this phase, the Business Analyst (BA) will gather all the requirements from the client, to prepare Business Requirement Specifications (BRS) document and a parallelly separate team will allocate to review the document.

3. Analysis Phase

Whatever requirements are gathered from the client, the System Architect(SA) will do the analysis of it, to prepare SRS (Software Requirement Specifications) or FRD(Functional Requirement Document) and this phase also review will be done by a separate team.

4. Design Phase

The Technical Lead or Technical Architect will do the design of a project prototype by using those analyzed requirements and to prepare Technical Design Document (TDD).In this phase both High-level design & Low-level design takes place. Similarly, the review will be done by a separate team.

5. Coding Phase

The developers write the appropriate code using different technologies (like java or .net or python etc.) to develop the application and parallelly to test the individual executable part of the software is called Unit Testing. The units which are developed by developers, to combine all the units are called Integration and to test the interfaces and interaction between units are called Integration Testing. The end to end testing of the developed application by an independent testing team in the attesting environment is called Software Testing.

It is a testing of application done from a business point of view by the client to gain confidence for release and it is fit for purpose, is known as Acceptance Testing or User Acceptance Testing (UAT).it has two types, such as:

  • Alpha Testing: It is known as business acceptance testing or factory level testing, which is done by the client in the development organization site.
  • Beta Testing: It is known as product verification testing or field testing, which is done by the client in the place where the software is being used.

For some particular project, we need testing more than one system combined, is known as System Integration Testing (SIT). Ex: IRCTC Application with Banking.

6. Deployment or Release Phase

After completion of all types of testing, the application is ready for deployment or release. During this phase, the before release testing is done by the client is called Release Testing.

7. Maintenance Phase

After releasing the application, if any change on the code or technology or environment of the application i.e. called maintenance and related testing process is called Maintenance Testing. It is done by the testing team. In this phase, we go for Impact Analysis.

NOTE:

  • It is an SDLC model to develop software with extreme quality.
  • It is for more secured projects and also it is more costly.
  • Verification (Quality Assurance (QA)): It is a process-oriented to prevent defect and to improve the development process, so design review is part of this. It performed without program execution.
  • Validation (Quality Control (QC)): It is product-oriented to finds the defect and improves the product quality, so product testing is part of this. It performed with program execution.
  • This model is mainly a parallel combination of quality assurance and quality control.
  • This model generates two reports at the end of each model, one for verification and one for validation.

Advantages & Disadvantages of Fish Model

Below are the advantages and disadvantages of Fish Model:

Advantages

  • It is easy to implement.
  • Every stage of this model is tested by a separate team for completeness and correctness of application, so it provides a high-quality software product.
  • It provides full documentation of the application.
  • It is mostly used for secured and complex projects.

Disadvantages

  • In the model, the review & testing starts from the project initiation node to the maintenance phase, due to this reason the fish model is a costly methodology for development.
  • Similarly, it is a time-consuming process to develop the product.
  • This model is not preferred for a small project.
  • It is an expensive model so the development failure will cause a lot of damage and loss.
  • The risks are not identified at the initial stage and it can’t be prevented.
  • We can’t change the requirements in the middle of the process.

Conclusion

In this article we specifically discussed with one of the SDLC methodologies is called Fish model. By which we used to develop a big project as a highly risky project with exceptional quality. Nowadays, some software industry uses this model to develop software product like the Health Care sector. This article also provides the pros and cons of the Fish model. For any project, if Quality is a highly essential parameter then choose this model. This model of software development looks like the Waterfall model but, it involves continuous or simultaneous deployment of verification & validation processes.

Recommended Articles

This is a guide to Fish Model. Here we discuss the Phases of Fish Model like Project Initiation Phase, Requirement Gathering Phase, Analysis Phase, etc. along with Advantages and Disadvantages. You can also go through our other suggested articles to learn more –

  1. What is Agile Testing?
  2. SDLC vs Agile
  3. Incremental Model
  4. Multidimensional Data Model

Primary Sidebar

Footer

Follow us!
  • EDUCBA FacebookEDUCBA TwitterEDUCBA LinkedINEDUCBA Instagram
  • EDUCBA YoutubeEDUCBA CourseraEDUCBA Udemy
APPS
EDUCBA Android AppEDUCBA iOS App
Blog
  • Blog
  • Free Tutorials
  • About us
  • Contact us
  • Log in
Courses
  • Enterprise Solutions
  • Free Courses
  • Explore Programs
  • All Courses
  • All in One Bundles
  • Sign up
Email
  • [email protected]

ISO 10004:2018 & ISO 9001:2015 Certified

© 2025 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
Loading . . .
Quiz
Question:

Answer:

Quiz Result
Total QuestionsCorrect AnswersWrong AnswersPercentage

Explore 1000+ varieties of Mock tests View more

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

By continuing above step, you agree to our Terms of Use and Privacy Policy.
*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you

EDUCBA Login

Forgot Password?

🚀 Limited Time Offer! - 🎁 ENROLL NOW