In this quality assurance training session, you will learn Introduction to Software Testing. Topics covered in this course are:
• SDLC and Quality Standard
• What is SDLC and Stages
• Phases of SDLC
• SDLC Models
To know more, visit this link: https://www.mindsmapped.com/courses/quality-assurance/software-testing-quality-assurance-qa-training-with-hands-on-exercises/
3. Page 3Classification: Restricted
• What is SDLC and Stages
• SDLC Models
• Waterfall Model
• V-Model
• Spiral Model
• Agile Model and Testing
• Quality Standard
• ISO(9001,14001,27001)
• SEI-CMMI
-- Level 1 – Performed
-- Level 2 – Managed
-- Level 3 – Defined
-- Level 4 -Quantitatively Managed
-- Level 5-Optimizing
• IEEE
• Class Assignment
Module 2 – SDLC and Quality Standard
4. Page 4Classification: Restricted
What is SDLC and Stages
Software Development Life Cycle(SDLC)
SDLC, Software Development Life Cycle is a process used by software
industry to design, develop and test high quality software. The SDLC aims
to produce a high quality software that meets or exceeds customer
expectations, reaches completion within times and cost estimates
The software development life cycle (SDLC) is a framework defining tasks
performed at each step in the software development process.
6. Page 6Classification: Restricted
Software Development Life Cycle
6
WaterFall Model
V Model
Spiral Model
Prototype Model
AGILE Model
Requirement
Gathering
and Analysis
Design
Coding
Testing
Deployment
Maintenance
9. Page 9Classification: Restricted
• High Level Design (HLD)
• List of modules and a brief description of each module.
• Brief functionality of each module.
• Interface relationship among modules.
• Dependencies between modules (if A exists, B exists etc).
• Database tables identified along with key elements.
• Overall architecture diagrams along with technology details.
• Low Level Design(LLD)
• Detailed functional logic of the module, in pseudo code.
• Database tables, with all elements, including their type and
size.
• All interface details.
• All dependency issues
• Error message listings
• Complete input and outputs for a module.
10. Page 10Classification: Restricted
Coding
Developers use the LLD document and write the code in the
programming language specified.
Testing
The testing process involves development of a test plan,
executing the plan and documenting the test results.
Implementation
Installation of the product in its operational environment.
11. Page 11Classification: Restricted
Maintenance
After the software is released and the client starts using the software,
maintenance phase is started.
3 things happen - Bug fixing, Upgrade, Enhancement
Bug fixing – bugs arrived due to some untested scenarios.
Upgrade – Upgrading the application to the newer versions of the
Software
Enhancement - Adding some new features into the existing software.
12. Page 12Classification: Restricted
SDLC Models
Waterfall Model
Waterfall approach was first SDLC Model to be used widely in Software
Engineering to ensure success of the project. In "The Waterfall" approach,
the whole process of software development is divided into separate
phases.
In Waterfall model, typically, the outcome of one phase acts as the input
for the next phase sequentially.
14. Page 14Classification: Restricted
• System is well documented.
• The model is rigid as each phase is separate.
Specific deliverables and a review process.
• More clarity in the system as one phase is executed
at a time.
• Easy to arrange tasks and clear milestones
Waterfall Approach - Advantages
15. Page 15Classification: Restricted
• All risks must be dealt with in a single software development effort.
• Because the model is sequential, there is only local feedback at the
transition between phases.
• A working product is not available until late in the project.
• Progress and success are not observable until the later stages. If a mistake
or deficiency exists in the documentation of earlier phases, it may not be
discovered until the product is delivered.
• Corrections must often wait for the maintenance phase.
Application
The Waterfall model can be successfully used when requirements are well
understood in the beginning and are not expected to change or evolve over
the life of the project. Project risks should be relatively low.
Waterfall Approach - Disadvantages
16. Page 16Classification: Restricted
Spiral Model
• The spiral model has four phases. A software project repeatedly passes
through these phases in iterations called Spirals.
• Identification: This phase starts with gathering the business requirements in
the baseline spiral. In the subsequent spirals as the product matures,
identification of system requirements, subsystem requirements and unit
requirements are all done in this phase.
• Design: Design phase starts with the conceptual design in the baseline spiral
and involves architectural design, logical design of modules, physical product
design and final design in the subsequent spirals.
• Construct or Build: Construct phase refers to production of the actual software
product at every spiral. In the baseline spiral when the product is just thought
of and the design is being developed a POC (Proof of Concept) is developed in
this phase to get customer feedback.
• Then in the subsequent spirals with higher clarity on requirements and design
details a working model of the software called build is produced with a version
number. These builds are sent to customer for feedback.
• Evaluation and Risk Analysis :Risk Analysis includes identifying, estimating, and
monitoring technical feasibility and management risks, such as schedule
slippage and cost overrun. After testing the build, at the end of first iteration,
the customer evaluates the software and provides feedback.
18. Page 18Classification: Restricted
V-Model
Under V-Model, the corresponding testing phase of the development phase
is planned in parallel. So there are Verification phases on one side of the .V.
and Validation phases on the other side. Coding phase joins the two sides of
the V-Model.
19. Page 19Classification: Restricted
Big Bang Model
• Big bang model comprises of focusing all the possible resources in software
development and coding, with very little or no planning. The requirements
are understood and implemented as they come. Any changes required may
or may not need to revamp the complete software.
• This model is ideal for small projects with one or two developers working
together and is also useful for academic or practice projects. It’s an ideal
model for the product where requirements are not well understood and the
final release date is not given
Pros Cons
•This is a very simple model
•Little or no planning required
•Easy to manage
•Very few resources required
•Gives flexibility to developers
•Is a good learning aid for new comers
or students
•Very High risk and uncertainty.
•Not a good model for complex and
object-oriented projects.
•Poor model for long and ongoing
projects.
•Can turn out to be very expensive if
requirements are misunderstood