Software Development Life Cycle

SDLC (Software Development Life Cycle)

1) Introduction

2) Phases of SDLC

    i) Requirements Gathering

    ii) Analysis too Planning

    iii) Software Design

    iv) Coding or Implementation

    v) Testing

    vi) Release too Maintenance
-----------------------------------
Before Software Development:


i) Software Bidding   
 

> Influenza A virus subtype H5N1 proposal to develop novel software is called software bidding.

> For Software application evolution bidding is done too quotation is sent
   to the customer.

> For Software production development, organizations bring their ain initiation for
  proposal of novel production based on the marketplace needs.

> Requirements are gathered based on inputs from model customers too from
  competition products analysis.

ii) PIN document (Project Initiation Note)
 

> Once the projection is confirmed, higher management appoints projection director who handles the novel software evolution process.

> Project director prepares PIN document to render overall estimates of required budget, fourth dimension too resources (developers, testers, maintenance) for developing the novel software.

> Project director submits this document to higher management for approval.

iii) Kick-off meeting
 

> Kick-off coming together is conducted to review the information provided past times the Project Manager. During this meeting, Higher Management provides blessing to showtime the novel software development.

> Project Manager prepares Initial Project Plan which consists of tasks for unlike teams like Business Analysis, Development, Testing, System Administration and also Non-Technical teams.
-------------------------------
1) Introduction to SDLC
 

SDLC (Software Development Life Cycle)

> In olden days, Software were developed without whatsoever systematic approach, because of which many software failed to perform every bit intended in ane lawsuit they are released. This led to follow a systematic means to deliver Quality software too is known every bit SDLC.

> SDLC (Software Development Life Cycle) is the procedure of developing software through occupation organisation needs, analysis, design, implementation too Release and maintenance.

> SDLC  is every bit good called every bit Software evolution process.

> ISO/IEC 12207 is an international measure for software life-cycle processes.

ISO - International Organization for Standards

IEC -  International Electrotechnical Commission

STLC ( Life Cycle)

The procedure of testing Computer software inwards good planned too systematic means is known every bit Life cycle or Software Test process.

 
STLC consists of the next phases
 

i) Test Planning

ii) Test Design

iii) Test Execution

iv) Evaluating Exit Criteria too Test Closure

Note: STLC or Software Test Process is a part of SDLC or Software Development process.

We receive got therefore many types of SDLC models available inwards the information technology Industry, nosotros tin give notice pick out the SDLC Model based on our Project, only no STLC models. Testing is mutual for all SDLC Models. Some models may receive got unmarried stage of Testing, to a greater extent than or less models receive got multiple stages of Testing.
---------------------------------------------
2) Phases of SDLC
 

SDLC phases too stage names may vary from ane model to another, only purpose is most all same.

Phases of SDLC are:

i) Requirements Gathering

ii) Analysis too Planning

iii) Software Design

iv) Coding/Implementation

v) Testing

vi) Release too Maintenance
-----------------------------------------------------
i) Requirements Gathering
 

What is Requirement?
 

> Influenza A virus subtype H5N1 status or capability needed past times a user to solve a occupation or accomplish an
 objective.

Basically nosotros receive got 2 types of Requirements,

i) Functional Requirements

ii) Non Functional Requirements

What is Functional Requirement?
 

> Influenza A virus subtype H5N1 Requirement that specifies a business office that a element or System must perform.

Example : Login to the System (Business Rule: After entering the valid user id too Password user should login to the Application.)

Field 1 accepts alpha-numeric information entry

Field 2 accepts numeric information entry

Field iii submits the data.

What is Non Functional Requirement?
 

> Influenza A virus subtype H5N1 Requirement that is does non related to functionality, only to attribute such every bit Performance, Usability, Reliability, Portability etc...

Performance: System has to login to application for grand concurrent users       inside v Seconds.

Usability: Login enshroud has to render slowly navigation too meaningful assistance messages.

Requirements Gathering:
 

> During this phase, Requirements of the software to survive gathered too documented.

> Business Analyst gathers requirements from the client too documents them  inwards a document called BRS (Business Requirements Specification).

> Suppose, Software is intended for multiple customers, Business Team gathers
  requirements from model customers, explores competition products too prepares PRD (Product Requirement Document) or BRD (Business Requirement Document)

> BRS or BRD document acts every bit a pair betwixt the client too the designers  who develop the software.

> BRS or BRD document is sent to Project Manager for Review too Approval.

> Output of this stage is Base-lined (finalized) BRS or BRD document.
-----------------------------------------
ii) Analysis too Planning


> During this phase, Technical director creates SRS (Software Requirements
Specification) document past times analyzing BRS document.

> Project Manager creates Project Plan.

Analysis 


Technical Manger analyzes BRS document inwards damage of below factors

i) Are they consummate requirements?
ii) Are they right requirements?
iii) Are they achievable requirements?
iv) Are they Testable requirements?

After analyzing the BRS document, Technical Manager creates SRS document which consists of 2 sub documents.

i) FRS (Functional Requirement Specification) that describes the functionalities
   to survive developed

ii) SRS (System Requirement Specification) that describes Software too Hardware to survive used.

> During this procedure Technical Manager focuses on Technology alternative based on the next factors.

 
Technical factors
i) Nature of the application
ii) Organization’s sense

Business factors
i) Cost/Budget (Open rootage software or Licensed software)
ii) Customer interests
------------------
Planning:
 

> Planning is done to come upward up amongst a schedule, the compass too resources requirements for a release.

> Project Manager creates the programme that explains how the requirements volition survive
  met too past times which time.

> Project programme every bit good contains the compass of the requirements (what volition survive met too what volition non survive met) for the project, resources availability.

> Project Manager every bit good analyzes the risks involved too contingency programme for them.

> Finally he comes upward amongst the milestones too unloose engagement for the project.

Output of this stage is SRS document too Project Plan
--------------------------------------------
iii) Software Design
 

> During this phase, System architect or Senior developer creates Software Design Document (SDD) based on the SRS document from the Analysis phase.

> The purpose of this stage is to figure out how to satisfy the requirements
  explained inwards System Requirements Specification (SRS) document.

Design is unremarkably split upward into 2 levels
 

i) High Level Design (HLD) or Global Design that contains the overall architecture of the system.

ii) Low Level Design (LLD) or Detailed Design that contains internal architecture
    of each too every unit/component/module.

Software Design Document (SDD) produced during this phase, It volition survive used past times the evolution squad to create the programs.
---------------------------------------
iv) Implementation or Coding
 

> During this phase, Developers develop or implement programs based on the Design documents past times next the coding standards inwards the chosen programming language.

> In improver to coding, this stage every bit good involves the creation of documentation
  for the software beingness developed.

Output of this stage is code documents too software that meets the requirements.
-------------------------------------
v) Testing
 

> Software, developed during coding phase, is subjected to testing.

> Earlier Developers themselves were testers too in that location are no assort exam teams to test the software.

> Now-a-days, inwards companionship to better the Quality of the software, most of the organizations panning for assort Testing teams (Independent Test Teams to exam the software).

 
> During this phase, Testers exam the software based on the SRS document to depository fiscal establishment check if the requirements are met or not.  If in that location is whatsoever mismatch, defects are  reported.

> Developers create the Defects too testers confirm the defect fixes too unopen them.

Output of this stage is Tested Software too Test Documents.
--------------------------------------
vi) Software Release too Maintenance


Software Release:
 

> Once the software is tested therefore it is released to the customers.

> The released software needs to survive deployed inwards production surround too this is mostly done past times the Release squad (consists of few developers, testers,   projection management executive too scheme administrator). 

> Project Manager forms the Release Team, Release squad deploy the Software inwards Production Environment too provides necessary preparation to the customers(if required.)

Software Maintenance
 

> As the users/customers showtime using the software inwards their environments, they may position to a greater extent than or less defects which demand to survive addressed.

> Thus the software right away enters into maintenance stage where inwards the software is modified to satisfy the changes raised past times the customers.

> The maintenance activities are performed past times the maintenance squad (consists of a few developers, testers, projection management executive) that is formed past times
  Project Manager.

Three types of Software Maintenance

a) Modifications
 

a) Corrective changes – Defects institute during production stage require emergency fixes or corrective changes every bit these are non identified during the Testing phase.

b) Enhancements – If client wants novel functionalities to survive added to the electrical flow scheme therefore they are considered every bit Enhancements.

b) Migration 


Migrating the software from quondam applied scientific discipline to novel technology.

Example: Migrating software from MS Access to SQL Server/Oracle

c) Retirement 


Retiring the quondam scheme too developing novel system.

Example: Changing II-Tier Application to Web application
-----------------------------------------

Sumber http://www.gcreddy.com/
Post a Comment (0)
Previous Post Next Post