SDLC/STLC/AGILE/JIRA/ALM

📘 Topic 1: What is SDLC?


🔹 Definition

SDLC (Software Development Life Cycle) is a structured process used by software teams to design, develop, test, and deploy high-quality software efficiently.

📖 Nepali Insight:
SDLC भनेको software बनाउने पुरा process हो — idea देखी लिएर testing, deployment र maintenance सम्मको step-by-step plan।


🔹 Key Objectives of SDLC

GoalExplanation
Structureहर काम plan अनुसार हुन्छ
QualityTesting integrated हर चरणमा हुन्छ
Time-savingRework कम हुन्छ
Cost-effectiveError early stage मा नै पकडिन्छ

🔹 Common SDLC Phases

PhaseDescription
1. Requirement GatheringClient संग कुरा गरी expectation लेखिन्छ
2. PlanningTimeline, tools, resources तय हुन्छ
3. DesignUI/UX, architecture, wireframes बनाइन्छ
4. DevelopmentActual coding सुरू हुन्छ
5. TestingQA team ले verify गर्छ कि software सही काम गर्छ कि छैन
6. DeploymentProduction मा software launch गरिन्छ
7. MaintenanceBugs fix, updates, support चलिरहन्छ

🧠 QA Role Focuses on:
Testing phase, but also starts giving feedback from requirement and planning phase onward.


🔹 SDLC Models

We’ll cover these models in upcoming topics:

Generated image
  1. Waterfall
  2. V-Model
  3. Agile
  4. Spiral
  5. Iterative
  6. Big Bang

📘 Topic 2: SDLC Models – Types, Differences & QA Role


🔹 1. Waterfall Model

Oldest and most linear model — each phase is completed fully before the next begins.

📖 Nepali View:
Waterfall भनेको “step by step” model हो — एक चरण सकिएपछि मात्र अर्को सुरू हुन्छ।

| Phase Flow: | Requirements → Design → Development → Testing → Deployment → Maintenance |
| QA Role: | Testing occurs only after development finishes |

✅ Best For:

  • Fixed scope projects
  • Government or compliance-based work

❌ Not Ideal:

  • If changes are expected later

🔹 2. V-Model (Validation & Verification)

Same as Waterfall but with parallel testing at every stage.

📖 Nepali View:
V-Model मा development र testing side-by-side parallel मा जान्छ — validation हुन्छ हरेक चरणमा।

| Flow: | Left = Dev, Right = Test |
| QA Role: | Starts early (test plan during design phase) |

✅ Best For:

  • Critical systems (banking, healthcare)
  • Early QA involvement

🔹 3. Agile Model

Iterative, flexible, and fast — development happens in short cycles (called Sprints).

📖 Nepali View:
Agile भनेको “छोटो-छोटो टुक्रामा काम गर्ने तरिका” हो — feedback अनुसार सुधार गरिँदै अगाडि बढ्ने।

| Key Concepts: | Sprint, Scrum, Daily Stand-ups, Backlogs |
| QA Role: | Involved from Day 1 — test, review, report continuously |

✅ Best For:

  • Changing requirements
  • Team collaboration and CI/CD
  • QA Automation and DevOps

🔹 4. Iterative Model

Build a basic version → get feedback → refine again → repeat until complete.

📖 Nepali View:
Software टुक्रा टुक्रामा बनाइन्छ, हरेक पटक feedback अनुसार सुधार गरिन्छ।

✅ Best For:

  • Long-term projects
  • Risk-heavy systems needing validation

🔹 5. Spiral Model

Combines Waterfall + Iterative + Risk Analysis
Includes prototyping + feedback in every cycle.

📖 Nepali View:
Spiral भनेको risk र feedback दुवैलाई ध्यानमा राखेर software development गर्ने तरिका हो।

✅ Best For:

  • High-risk projects (e.g., AI systems)
  • Budget and risk control required

🔹 6. Big Bang Model

No planning, no structure — develop as needed, test as you go.

📖 Nepali View:
कुनै ठोस plan छैन — जे मन लाग्यो, develop गर्ने।

✅ Used in:

  • POCs (Proof of Concepts)
  • Personal projects, quick demos

❌ Not suitable for:

  • Large teams or client-driven software

✅ Comparison Table

ModelFlexibilityQA InvolvementRisk HandlingBest For
WaterfallLowLateLowFixed-scope
V-ModelLowEarlyLowSafety projects
AgileHighContinuousModerateDynamic teams
IterativeMediumFrequentMediumFeedback-driven dev
SpiralMediumIn each cycleHighRisk-prone projects
Big BangHighRandomVery highDemos, small apps

🧩 JIRA – Agile Project Management Tool in SDLC


🔹 What is JIRA?

JIRA is a project management and issue tracking tool developed by Atlassian. It is commonly used in Agile SDLC to manage user stories, tasks, bugs, test cases, sprints, and releases.

📖 Nepali Insight:
JIRA भन्नाले team को सबै काम track गर्न प्रयोग हुने tool हो — कुन काम कसले गर्दैछ, कहिले सकिन्छ भन्ने सबै कुरा plan गर्न मिल्छ।


🔹 Core Features for QA Engineers

FeatureUse
User StoriesQA ले test case linkage गर्छ
Tasks & SubtasksDaily QA execution track गर्छ
Bug ReportingQA ले defect details, steps, screenshots attach गर्छ
SprintsQA ले story estimate गर्छ, point assign गर्छ
Boards (Scrum/Kanban)Visual tracking for progress
Filters & DashboardsCustom QA status reports तयार गर्न

🔹 Example QA Workflow in JIRA (Agile SDLC)

  1. Backlog Grooming: QA reviews stories for test impact
  2. Sprint Planning: QA commits to test execution points
  3. During Sprint: QA writes & executes test cases
  4. Defect Logging: Issues are logged in JIRA
  5. Daily Standups: QA shares progress/blockers
  6. Sprint Review & Retrospective: QA provides test summary

🧠 JIRA integrates with tools like:

  • Zephyr, Xray (for test case management)
  • Jenkins, GitHub (for automation triggers)

✅ QA Interview Tip:

🗣️ Q: How do you use JIRA in your testing process?
Answer:
“I use JIRA to track requirements, link them with test cases using Zephyr, log defects, and report QA status during sprints. I also use filters and dashboards to present test progress during reviews.”


Now your Topic 2: SDLC Models looks like this:

  • All 6 models explained
  • Comparison table
  • QA role in each
  • Plus ➕ JIRA as the standard Agile workflow too

🧩 ALM – Application Lifecycle Management Tool


🔹 What is ALM?

ALM (Application Lifecycle Management) is a complete tool or framework used to manage the entire software development process — from requirements to testing to deployment — in one centralized platform.

📖 Nepali Insight:
ALM भनेको एकदमै structured र centralized system हो, जहाँ development, testing, defect tracking, र release planning सबै एउटै system भित्र हुन्छ।


🔹 Common ALM Tools

ToolVendorPurpose
Micro Focus ALM/Quality CenterMicro Focus (formerly HP)End-to-end test management
Azure DevOpsMicrosoftPlanning, repo, test, deploy
IBM Rational ALMIBMLegacy enterprise apps
JIRA + Zephyr/XrayAtlassianAgile-based ALM integration

🔹 Key ALM Features for QA

FeatureDescription
Requirement TraceabilityLink test cases to business requirements
Test Planning & ExecutionDesign, assign, execute and track test runs
Defect ManagementLog bugs with trace-back to test case and requirement
Version ControlMaintain history of test artifacts
Audit and ComplianceUseful for banking, insurance, healthcare apps

🧠 Example Use:

  • QA can run test cycles directly from ALM and report progress to business
  • Automated test results from UFT or Selenium can be integrated with Micro Focus ALM

🔹 JIRA vs ALM (Comparison)

FeatureJIRA (Agile)ALM (Enterprise)
FlexibilityHighMedium
Agile FocusNativeAdd-on required
TraceabilityWith pluginsBuilt-in
Enterprise UseStartups to large teamsLarge regulated enterprises
QA ReportingVia dashboards, filtersFull traceability with audit trail

📌 Tip: ALM is commonly used in banking, insurance, defense, or healthcare, where traceability and compliance are critical.


✅ QA Interview Tip

🗣️ Q: Have you worked with ALM tools like HP ALM or JIRA?
Answer:
“Yes, I’ve used JIRA for Agile-based QA workflows and Micro Focus ALM for structured enterprise testing. In ALM, I managed test cases, executed test runs, logged defects, and ensured full traceability back to business requirements.”


🧩 Agile Sprint and Ceremonies (Scrum Framework)


🔹 What is a Sprint?

A Sprint is a fixed period (usually 1–4 weeks) during which a team delivers a potentially shippable increment of product.

📖 Nepali Insight:
Sprint भनेको छोटो समयको development cycle हो — जसमा team ले specific features वा tasks complete गर्न target गर्छ।

| Typical Sprint Duration: | 2 weeks (standard) |
| QA Focus: | Test planning, execution, defect reporting within each sprint |


🔹 Sprint Workflow Overview

nginx

CopyEdit

Backlog → Sprint Planning → Development & Testing → Sprint Review → Retrospective


🔹 Agile Ceremonies (Scrum Events)

CeremonyTimingQA Role
1. Sprint PlanningStart of sprintQA reviews stories, adds test tasks, estimates effort
2. Daily Stand-upEvery day (~15 mins)QA shares progress, blockers, upcoming work
3. Sprint ReviewEnd of sprintQA shows tested features, discusses bugs, demo
4. Sprint RetrospectiveAfter reviewQA provides feedback on what went well or not
5. Backlog Grooming (Refinement)Mid-sprint or pre-planningQA helps clarify acceptance criteria, raise test concerns early

🧠 Tools Used:

  • JIRA: Sprint board, backlog grooming, story pointing
  • Zephyr/Xray: Test case linkage
  • TestRail/ALM: Test cycles and defect linkage

🔹 QA Responsibilities in a Sprint

PhaseQA Tasks
PlanningReview user stories, ask questions, add test subtasks
Mid-sprintWrite & execute test cases, report bugs in JIRA
Daily StandupCommunicate blockers, retest status, test coverage
ReviewValidate stories meet Definition of Done (DoD)
RetrospectiveSuggest process/test improvements

✅ Summary

TermMeaningQA Relevance
SprintTime-boxed iterationQA must complete all testing in the time box
PlanningStory selection, estimationPrepare test coverage plan
Stand-upDaily syncQA updates team
ReviewDemo tested storiesShow test results
RetrospectiveProcess improvementImprove QA cycle for next sprint

📘 Epic, User Stories, Test Scenarios, Test Cases – Explained Together


🔹 1. Epic

An Epic is a large feature or requirement that is too big to complete in a single sprint. It is broken down into smaller user stories.

📖 Nepali Insight:
Epic भन्नाले ठूलो काम हो — जस्तै “Customer Portal बनाउने”। त्यसलाई साना टुक्रा (User Stories) मा विभाजन गरिन्छ।

🧠 Example:

pgsql

CopyEdit

Epic: Implement Online Claims Portal

→ Story 1: As a user, I want to upload claim documents

→ Story 2: As a user, I want to view claim status


🔹 2. User Story

A User Story represents a small, functional piece of a requirement from the end user’s perspective.
Format:

pgsql

CopyEdit

As a <user role>, I want to <action> so that <goal>.

📖 Nepali Example:
“As a policyholder, I want to upload accident photos so that I can complete my claim process.”

🧠 QA’s Role:

  • Understand expected behavior
  • Ask questions during grooming
  • Link test cases to story in JIRA/Xray/Zephyr

🔹 3. Acceptance Criteria (AC)

Acceptance Criteria define the conditions that must be met for the story to be considered complete.

📖 Nepali View:
Acceptance Criteria भन्नाले QA र Developer दुवैले बुझ्ने स्पष्ट rule हो — “पास गर्न के गर्नुपर्छ” भनेर।

🧪 Example:

makefile

CopyEdit

AC1: Photo file must not exceed 10 MB 

AC2: Only JPG/PNG format should be accepted 

AC3: Upload must show success message

✅ QA uses AC to write test cases and determine Pass/Fail


🔹 4. Test Scenario

A Test Scenario is a high-level condition or objective to test. It tells what to test, not how.

📖 Nepali Insight:
Scenario भन्नाले कुन-कुन तरिकाले test गर्न सकिन्छ भन्ने overview हो।

🧠 Example:

yaml

CopyEdit

Scenario 1: Verify valid photo upload 

Scenario 2: Upload file exceeding size limit 

Scenario 3: Try unsupported file format


🔹 5. Test Case

A Test Case is a set of predefined steps, inputs, expected results, and test data used to validate a specific feature.

📖 Nepali View:
Test Case भन्नाले clearly लेखिएको instruction हो जुन QA ले follow गरेर result verify गर्छ।

🧪 Example:

StepActionExpected Result
1Login as customerDashboard loads
2Click “Upload Document”Upload modal appears
3Select valid imageFile preview shown
4Click UploadSuccess message appears

✅ Each Test Case should map to at least one Acceptance Criteria or Scenario


🔹 6. Test Steps

These are the exact steps inside a test case, one by one, that the QA performs during execution.

📌 Well-written steps ensure any tester can execute the test without confusion.


🔹 7. Test Data

Test Data is the input used during test execution:

  • Usernames
  • Policy numbers
  • Claim IDs
  • File samples

📖 Nepali Tip:
Test Data realistic हुनुपर्छ — जस्तो production जस्तै, तर sensitive नभएको।

🧠 Store it in Excel, SQL DB, or data files integrated with automation tools.


🔹 Full QA Mapping Example (Claim Portal)

ElementExample
EpicOnline Claim Submission
StoryUpload supporting documents
ACFile < 10MB, valid types
ScenarioUpload valid/invalid file
Test CaseStep-by-step action to test file upload
Test StepsClick → Upload → Validate message
Test DataAccident1.jpg, Claim12345, User: John Doe

✅ Summary Table

TermMeaningQA Use
EpicLarge featureOrganizes stories
User StoryUser perspective needQA starts test planning
ACCompletion rulesQA uses to write test cases
Test ScenarioWhat to testBasis for test cases
Test CaseHow to testRepeatable validation
Test StepsExact actionsExecutable instructions
Test DataInput valuesDrive test coverage

📘 Topic 3: STLC – Software Testing Life Cycle


🔹 What is STLC?

Generated image

STLC is a systematic and structured process that defines the various stages of software testing — from requirement analysis to test closure.

📖 Nepali Insight:
STLC भनेको testing मात्र केन्द्रित life cycle हो — कुन चरणमा के गरिन्छ भन्ने स्पष्ट चरणहरू हुन्छन्।

While SDLC focuses on the full software development, STLC focuses only on testing activities.


🔹 STLC Phases Overview

PhaseDescription
1. Requirement Analysisके-कसको testing गर्नुपर्छ भनेर बुझ्ने चरण
2. Test PlanningScope, strategy, resource, tool decide गर्ने
3. Test Case DesignTest cases/scenarios तयार गर्ने
4. Test Environment SetupTesting को लागि सही environment तयार गर्ने
5. Test ExecutionTest cases चलाउने र defect report गर्ने
6. Defect ReportingBug tracking tools (JIRA, ALM) मा issue लेख्ने
7. Test ClosureFinal reporting, documentation, lessons learned

🔹 Phase-wise Detail with QA Responsibilities


1️⃣ Requirement Analysis

  • Understand the functional & non-functional requirements
  • Ask questions to resolve ambiguities

🧠 QA Tasks:

  • Analyze BRD (Business Requirements Document)
  • Identify testable items
  • Raise clarifications

📖 Nepali View:
QA ले बुझ्नुपर्छ के-के test गर्नुपर्ने हो — यदि केही थाहा छैन भने तुरुन्तै सोध्नुपर्ने।


2️⃣ Test Planning

  • Define the scope, objective, testing strategy, and tools
  • Estimate effort, timeline, and assign roles

🧠 QA Tasks:

  • Write Test Plan Document
  • Identify entry/exit criteria
  • Choose tools: Selenium, TestNG, Postman, etc.

📌 Example: Testing login feature in Sprint 1 — plan includes manual + automation.


3️⃣ Test Case Design

  • Write detailed test cases or scenarios with steps and expected results

🧠 QA Tasks:

  • Map test cases to requirements
  • Apply boundary value, equivalence partitioning
  • Peer review test cases

📖 Nepali View:
Test case ले सबै behavior cover गर्नुपर्छ — सही, गलत, edge case सबै कुरा।


4️⃣ Test Environment Setup

  • Prepare the system, tools, test data, and credentials

🧠 QA Tasks:

  • Deploy app on test server
  • Get DB access
  • Configure test user roles

📌 Tools: Jenkins (CI), BrowserStack, Postman, SQL, JIRA


5️⃣ Test Execution

  • Execute test cases (manual or automated)
  • Log pass/fail status, compare actual vs expected

🧠 QA Tasks:

  • Run tests
  • Report bugs with steps, screenshots
  • Track execution status

📖 Nepali Tip:
Issue पाएको बेला तुरुन्त report गर्नु, कसरी fail भयो भन्ने step राम्रोसँग लेख्नु।


6️⃣ Defect Reporting & Retesting

  • Submit issues in JIRA, ALM, Azure DevOps, etc.
  • QA retests once bug is fixed

🧠 Defect Details:

  • Summary
  • Steps to Reproduce
  • Actual vs Expected Result
  • Screenshot or video

📌 Status flow:
New → Open → In Progress → Resolved → Retested → Closed/Rejected


7️⃣ Test Closure

  • Evaluate test coverage and test result summary
  • Conduct closure meeting
  • Archive test artifacts

🧠 QA Tasks:

  • Write test summary report
  • Provide bug trends
  • Document lessons learned

📖 Nepali View:
Sprint/testing सकिएपछि feedback दिने, reporting गर्ने, र documentation मिलाउने चरण हो।


✅ Summary Table

PhaseWhat QA Does
Requirement AnalysisStudy, clarify scope
Test PlanningEstimate, tools, strategy
Test Case DesignCreate & review test cases
Environment SetupPrepare test environment
Test ExecutionRun test cases, log results
Defect ReportingReport bugs, retest fixes
Test ClosureReport summary, lessons learned

🧪 Real-World Tip:
In Agile, STLC is repeated in every sprint. Each Sprint has mini-STLC within it.

Scroll to Top