Before going to learn the Advanced SDLC models, let you know the reasons for
outdating the old SDLC models in the organizations. They are:
- In all the Old SDLC Models, Testing Stage comes after Coding only.
- This Single Stage of Testing is conducted by the Same Programmers / Developers who
perform Coding. - Due to this, Organizations are not able to release Quality Software to Customer or to
Market. - To Develop and Release Quality Software, Organizations are following New SDLC
Models. - In New SDLC Models, Organizations conduct Multiple Stages of Testing and maintain
Separate Testing Teams. The new SDLC models are as follows:
a) Fish Model
b) V-Model
c) Agile Model(XP,SPRINT,SCRUM)
d) Devops
Fish Model
To release quality software to customer/market, we need to conduct multiple
stages of testing by including separate tester. Do you this reason , organization
are following advanced SDLC model.
To develop a quality s/w w.r.t to customer requirements and expectations,
organizations are following fish model. But, this model is costly to follow and time
consuming model.
- At first project initiation note(PIN) will be given to the CEO, from there
the work is going to begin. - One BA can prepare BRS and other BA can review BRS for Completeness
and correctness.
BRSBusiness Requirement specifications
Customer Requirement specifications
User Requirement specifications - One SA can prepare SRS and Other SA can review SRS for completeness
and correctness.
SRS Software Requirement specifications - Design is two levels such as
HLDHigh Level Design
LLDSLow Level Designs - One TA can prepare HLD & LLDS and other TA can review HLD & LLDS for
completeness and correctness. - Programmers can develop software by writing programs and by
integrating those programs. - Other programmer can conduct unit testing & integration testing.
- A separate testing team can test software called as software testing.
- PM can take care of Acceptance and release. Here programmers and
testers can involve along with customer site people. - CCB can take care of maintenance/support/service
(OR)
- At first project initiation note(PIN) will be given to the CEO, from there the
work is going to begin. - The business analyst(BA) will gather all the requirements from the customer
and for that gathered requirements testing purpose a ‘separate testing team’ will
be assigned. - Then system analyst (SA) will do the analysis of that requirements and for
the review of those analysed requirements a ‘separate testing team’ will
be assigned.
14 - Technical architect (s.r programmer) will do the design of those analysed
requirements in the form of HLD and LLD’s after that a ‘separate testing team’
will be assigned for the review of those design. - All the above conducted testing or reviewing is called as ‘documents testing’
or ‘verification’ or ‘static testing’. - Unit testing: unit testing means that conducting testing on a single
programme in java, .NET,oracle,SAP,C,C++ and etc. - Integration testing: Integration testing means conducting testing on the
interconnection of two or more programmes. The below diagram depicts the
integration testing:
- Software testing: software testing means conducting the testing on a
complete Software w.r.t to the customer requirements and expectations. - Acceptance testing: Acceptance testing means that collecting the
feedback on S/w from the real customers (Clients) or model customers (Public). - Release testing: Release testing means that the whether s/w was
completely and correctly ported into customer site or not. It is also called
as onsite testing/Delivery testing/port testing. - Maintenance testing: During the maintenance testing, CCB people can
modify and test s/w w.r.t to customer change request.
Advantages of fish model:
Due to thorough verification and validation Fish Model yields a quality product.
Disadvantages of fish model:
It is more time consuming/taking.
It is more expensive/costly.
Note: But this model is follow able to develop software relative to satellites,
aeronautical, Health care equipments, robotics, and export systems because those
software critical to develop and quick sharing in usage.