sdlc its model and software testing

Post on 14-Jul-2015

1.520 Views

Category:

Education

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Presented by-Praveen Chaurasia

Abhinav Shukla

SDLC

A framework that describes the activity performed at each stage of a software development project.

SDLC PHASES

Requirement Gathering and Analysis

Design

Development

Testing

Implementation

Maintenance

SDLC MODEL

To help understand and implement the SDLC phases various SDLC model have been created by software development expert universities and standard organizations.

REASONS FOR USING SDLC MODEL

Provides basis for project planning ,estimating and scheduling

Provide framework for standard set of terminologies, activity& deliverable

Provide mechanism for project tracking & control

Increase visibility of project progress to all stakeholders

Advantage of choosing An Appropriate SDLC

Increase development speed

Increase product quality

Improve tracking and control

Improve client and relation

Decrease project risk

Decrease project management overhead

COMMON LIFE CYCLE MODELS

Waterfall

Spiral

Agile

WATERFALL MODEL

Oldest and most well known SDLC model

Follow a Sequence step by step process from requirement analysis to maintenance

System that have well-define and understood requirements are good fit for waterfall model

User Requirements

Software Requirements

Architecture Design

Detailed design & Coding

Testing

Delivery

The WaterfallLifecycle Workflow

”Swimmingupstream”

ADVANTAGE OF WATERFALL MODEL

Easy to understand

Provide structure

Set requirement stability

Good for management control

DISADVANTAGE OF WATERFALL MODEL

It does not allow for much reflection or revision.

Estimating time and costs with any degree of accuracy is often extremely difficult.

Designs that look feasible on paper turn out to be expensive or difficult in practice.

SPIRAL MODEL

Process is represented as a spiral rather than as a sequence of activities with backtracking.

Each loop in the spiral represents a phase in the process.

Suitable for large, expensive and complicated projects

SPIRAL MODEL

ADVANTAGE OF SPIRAL MODEL

Risks are explicitly assessed and resolved throughout the process.

Software engineers can start working on the project earlier rather than wading through a lengthy early design process.

DISADVANTAGE OF SPIRAL MODEL

Requires highly skilled people in risk analysis and planning

Requires more time, and is more expensive

Estimates of budget and time are harder to judge at the beginning of the project since the requirements evolve through the process

AGILE(XP) MANIFESTOXP = Extreme Programming emphasizes:

Individuals and interactions

– Over processes and tools

Working software

– Over documentation

Customer collaboration

– Over contract negotiation

Responding to change

– Over following a plan

AGILE PRINCIPLES Continuous delivery of software

Continuous collaboration with customer

Continuous update according to changes

Value participants and their interaction

Simplicity in code

AGILE ADVANTAGE

Lightweight methods suit small-medium size projects

Produces good team cohesion

Emphasises final product

Iterative

Test based approach to requirements and quality assurance

AGILE DISADVANTAGE Difficult to scale up to large projects where

documentation is essential

Needs experience and skill

Programming pairs is costly

Test case construction is a difficult and specialised skill

SOFTWARE TESTING

“Testing is the process of executing a program with the intention of finding errors.”

“Testing can show the presence of bugs but never their absence.”

OBJECTIVE TESTING uncover as many as error(or bug) as possible in a

given produce.

Demonstrate a given software product matching its requirement specification.

Validate the quality of a software testing using the minimum cost and effort.

Generate high quality test case, perform effective test and issue correct and helpful problem report.

TESTING METHOLOGY

BLACK BOX TESTING

WHITE BOX TESTING

BLACK BOX TESTING

No knowledge of internal program design or code required

Testing are based on requirement and functionality

WHITE BOX TESTING

Knowledge of the internal program design and code required.

Test are based on coverage of code statement,branches,path,condition.

LEVEL OF TESTING

Unit testing

Integration testing

System testing

UNIT TESTING

Test each module individually.

Follows a white box testing.

INTEGRATION TESTING Once all modules have been tested, integration testing is

perform.

It is systematic testing

Produce test to identify errors associated with interfacing.

TYPES:- Big bang integration testing

Top down integration testing

Bottom up integration testing

Mixed integration testing

SYSTEM TESTING This system as a whole is tested to uncover requirement

errors.

verifies that all system element work properly and that overall system function and performance has been achieved.

TYPES:- Alfa testing

Beta testing

Acceptance testing

Performance testing

top related