software development life cycle

20
PRESENTATION ON SOFTWARE DEVELOPMENT LIFE CYCLE PRESENTED BY: ANKIT BHARDWAJ COMPUTER SCIENCE & ENGG. DEPTT.

Upload: ankit-bhardwaj

Post on 21-Mar-2017

102 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Software Development Life Cycle

PRESENTATION ON

SOFTWARE DEVELOPMENT LIFE

CYCLEPRESENTED BY: ANKIT BHARDWAJ COMPUTER SCIENCE & ENGG. DEPTT.

Page 2: Software Development Life Cycle

CONTENTINTRODUCTION.

SDLC PHASES.

EXPLANATION OF SDLC PHASES.

EFFORT CHART OF SDLC.

Page 3: Software Development Life Cycle

INTRODUCTION What is SDLC ? “A framework that describes the activity performed at each stage of a software development project.”

Page 4: Software Development Life Cycle

SDLC PHAESES FEASIBILTY STUDY.

SOFTWARE REQURIEMENT AND SPECIFICATION.

DESIGN.

CODING.

TESTING.

MAINTENACE.

Page 5: Software Development Life Cycle
Page 6: Software Development Life Cycle

EXPLANATION OF SDLC PHASESFEASIBILTY STUDY – “A feasibility study is a made to decide whether or not the proposed system is worthwhile.”

The focus of feasibility study is to check- If the system contribute to organizational objectives. If the system can be engineered using current technology. If the system is within the given budget. If the system can be integrated with other useful systems.

Page 7: Software Development Life Cycle

SOFTWARE REQURIEMENT & SPECIFICATION “It is a basically a specification of the system requirements. It is not a design document. It is used by software developers in order to check that user requirements are getting satisfied by the system.”

Importance of SRS : The software requirement provide a basis for creating the software

requirements specifications(SRS).

The SRS is useful in estimating cost, planning team activities, performing tasks, and tracking the teams progress throughout the development activity.

Page 8: Software Development Life Cycle

CHARACTERISTICS OF SRS : Correct. Complete. Unambiguous. Consistent. Stability. Verifiable. Traceable.

Page 9: Software Development Life Cycle

DESIGN “ The software design concept provides a framework for implementing the right software.” It is the model of software which translates the requirements into finished software product in which the details about software data structure, architecture, interfaces. Following are certain issues that are considered while designing the software- Abstraction. Modularity. Architecture. Refinement. Pattern. Information hiding. Functional independence. Refactoring. Design classes.

Page 10: Software Development Life Cycle

DESIGN STRATEGIESBottom-Up Design.

Top-Down Design.

Functional-Oriented Design.

Object-Oriented Design.

Page 11: Software Development Life Cycle

CODING “It is a step in which design is translated into Machine-readable form. If design is done in sufficient detail then coding can be done effectively. Programs are created in this phase.”

Page 12: Software Development Life Cycle

TESTING“Software testing is an activity performed to uncover errors. It is a critical element of software quality assurance and represents the ultimate review of specification, design and coding. ”

OBJECTIVES OF TESTING :

Testing is a process of executing a program with the intend of finding an

error.

A good test case is one that has high probability of finding an

undiscovered error.

A successful test is one that uncovers an as yet undiscovered error.

Page 13: Software Development Life Cycle

TESTING LIFE CYCLE

Page 14: Software Development Life Cycle

TESTING STRATEGIES UNIT TESTING.

INTEGRATION TESTING.

VALIDATION TESTING.

SYSTEM TESTING.

Page 15: Software Development Life Cycle

MAINTENANCE Software maintenance is an activity in which program is modified after it

has been put into use.

In software maintenance usually it is not preferred to apply major software

changes to systems architecture.

Maintenance is a process in which changes are implemented by either

modifying the exiting systems architecture or by adding new components

to the system.

Page 16: Software Development Life Cycle

NEED FOR MAINTENANCE

Correct faults.

Improve the design.

Implemented enhancement.

Interface with other systems.

Adaptation of environment.

Migrated legacy software.

Replacement of old software by new software.

Page 17: Software Development Life Cycle

CATAGORIES OF MAINTENANCE1. Corrective maintenance: Means the maintenance for correcting the

software faults.

2. Adaptive maintenance: Means maintenance for adapting the change in environment.

3. Perfective maintenance: Means modifying or enhancing to system to meet the new requirements.

4. Preventive maintenance: Means changes made to improve future maintainability.

Page 18: Software Development Life Cycle

EFFORT CHART FOR SDLC

Page 19: Software Development Life Cycle

ANY QUERY…???

Page 20: Software Development Life Cycle