Software Development Workflow (Agile)

Introduction

This document collects the information I have learnt from my software (web) development experience in the past.

Since we have not sticky followed specific methdology like Scrum or Kaban, the following information is just a summary, not a guideline or learning material for others.

Reference Articles

Different dimension

DimensionDescription
StagesThe software development can be divided into different stages, time-sensitive
TypesThe type of work. For example: Epic, Feature, User Story, Task, Bug,...etc.
RolesThe worker in specific role

Stages

The following are the different stages in the Agile SDLC

Initial Stage

A staring point initiated (and owned):

  • By the stakeholders, business analyst, product manager, for Project vision or Business idea (e.g. Epic, Feature, User Story)
  • By internal needs (e.g. Request or Task)
  • By bug reporting

Planning Stage

By busines analyst or product manager, and/or project manager:

  1. High-level user requirements or scope
  2. Ballpark estimation of the resource, cost,...etc.
  3. Rough schedule

By technical:

  1. Ballpark estimation of the time needed
  2. Technical feasibility study

By creative:

  1. Ballpark estimation of the time needed
  2. UI/UX Research
    • Brief
    • User Personas
    • Screen Sections Scheme (custom deliverables)
    • User Behavior Diagram (custom deliverables)

By QA:

  1. Ballpark estimation of the time needed (per the complete test cycle)

Hands-on Working Stage

In general, it is called implementation stage. However, it can be better to express and highlight the non-IT work using the Hands-on work. The hands-on work includes:

(Italic = Optional / If needed)

By busines analyst or product manager:

  1. User/interact flows
  2. Information architecture / Sitemap
  3. User requirements
  4. User stories
  5. Release plan

By creative:

  1. Sketching
  2. Wireframing
  3. Visualization
  4. Media assets creation
  5. Visual QA

By technical:

  1. User requirement and System analysis
  2. POC
  3. Technical and System design
  4. Software design
  5. Data modeling
  6. API design
  7. Coding and testing (e.g. unit test)
  8. Integration and testing
  9. Data and/or System Migration
  10. Sampling Test (Functional/Regression/API)
  11. Deployment (and fallback) plan

By QA:

  1. Test cases
  2. Testing Plan

Testing Stage

(Italic = Optional / If needed)

By QA:

  1. Funtional Test
  2. Regression Test
  3. API Test
  4. Data/Text checking

By busines analyst, product manager, or project manager:

  1. Sampling test (Functional/Regression)
  2. Selective Data/Text checking

By creative:

  1. Visual (or media, including UI text) checking

By technical:

  1. Deployment (to staging)
  2. System integration/migration test
  3. Data migration test
  4. Security check
  5. Stress test

By user:

  1. Conduct UAT

Release Stage

(Italic = Optional / If needed)

By QA:

  1. Sampling test (Functional/Regression) with production data

By busines analyst, product manager, or project manager:

  1. Sampling test (Functional/Regression) with production data
  2. Selective Data/Text checking

By creative:

  1. Sampling visual (or media, including UI text) checking

By technical:

  1. Deployment (to production)
  2. Security scaning

By user:

  1. Final check

The workflow I used in the company in 2022