Search This Blog

Wednesday, 14 September 2022

Modern SDLC - A peek into practical Agile

 Phases of SDLC



Lets see how a enterprise project can be worked upon as per Software Development Lifecycle (SDLC)

1. Discuss with Client

- Analysis: Convert Client requirements through examples into technical requirements

- O/p: Requirements Document: SRS - System Requirement Specification


2. Planning: PM comes out with an Estimation Document

- In an estimation document

- Total number of releases for the product

- Total Days required to Deliver

- Team size required

- Delivery Date


3. Implementation: Development

- Designing the Product

- How many modules

- Which Technologies to Use

- Classes, Projects,DBs, APIs

- HTML Wireframes

- Proof of Concept Applications created

- Coding : S.E

4. Testing

- Write all possible cases for a given requirement.

- All cases means: What is expected: Happy Case

   Loopholes / Bugs: Sad Case

5. Deployment

- Instruction Manuals for Client / Support Team

- Installation of the Product

- Servers & Security Certificates

- Configurations



======================================================================

But in today's fast paced world, where several companies would bid for a project, it becomes important to deliver fast which means within a short timeline.

The above process of SDLC, takes a long time (several months) to produce the final product (release to client).

The above SDLC process is also linear, which means, when the UI, development teams are at work, the QA (Quality Assurance Team) is not assigned to work. Parallel work environment is not possible with the traditional SDLC process

=======================================================================

SOLUTION:

AGILE: In this model, a product is delivered in several usable stable parts.

Hence multiple small and stable releases will be given to the client

Eg: Amazon.com delivered in 4 parts

V1: All requirements wrt Product Mgmt, Orders Mgmt, Payment Gateway Integration

V2: Additional requirements for Tracking of Orders

V3: Additional Requirements for Dropshipping and engagement

V4: Additional Requirements for Frachising

- Each Version will follow the Construction phase: Requirements Analysis -> Planning -> Design UI -> Develop

   -> Test -> User Acceptance (Client Acceptance) -> Release

- The cycle is known as SPRINT. Hence, in the above example, we can say there are 4 sprints.

- Requirements or deliverables identified by client will become User Stories

- The Large team is divided into Scrum Teams (smaller teams) each handling a collection of user stories

- Each team member of a single Scrum team will do analysis of assigned user story, work on the elements (parts)

  of a single user story, document the details of the user story and implement it.

- Each user story will have sub-stories (parts/elements) which will get assigned to specific team member

Eg: Product Management

- Create Product Page UI -- UI / Frontend Team member

- BLL -- Backend Developer

- Expected Results, how your module should work, workflow and technical descriptions -- QA Team 

member

- Operations Team member - manage Checkin/checkout, integration & deployment of code, configure
























No comments:

Post a Comment