Software Design and DevelopmentUnit 108 min read
Project Mgmt & Quality Assurance: Metrics, Models, Standards
Unit 10 of Software Design and Development covers project management frameworks (Agile, Waterfall, Hybrid), quality models (ISO/IEC 25010, CMMI), risk management, and quality assurance techniques—with real-world applications in Nepali tech (e.g., eSewa’s Agile sprints, Ncell’s CMMI compliance) and exam-focused worked e
Key Concepts and Frameworks
1. Software Project Management
Software project management (SPM) is the application of knowledge, skills, tools, and techniques to deliver software products efficiently. It involves planning, executing, monitoring, and controlling resources to meet project goals.
Project Management Frameworks
Three dominant frameworks are used in industry:
| Framework | Approach | Best For | Example in Nepal |
|---|---|---|---|
| Waterfall | Sequential phases | Stable requirements, low risk | NTC’s legacy billing systems |
| Agile | Iterative, incremental | Dynamic requirements, fast delivery | eSewa’s payment gateway updates |
| Hybrid | Mix of Waterfall + Agile | Large projects with some stability | NEPSE’s trading platform upgrades |
flowchart LR
A["Waterfall"] --> B["Requirements"] --> C["Design"] --> D["Implementation"] --> E["Testing"] --> F["Deployment"]
G["Agile"] --> H["Sprint 1"] --> I["Review"] --> J["Sprint 2"] --> K["Review"] --> L["... Repeat"]Worked Example: Agile Sprint Planning for Pathao
Pathao uses 2-week Agile sprints to update its ride-hailing app. Suppose:
- Sprint Goal: Reduce driver wait time by 20%.
- Tasks:
- Optimize route algorithm (3 story points)
- Fix GPS lag in low-signal areas (5 story points)
- Add real-time traffic updates (2 story points)
- Velocity: Past 3 sprints averaged 10 story points/sprint.
- Calculation:
- Total story points = 3 + 5 + 2 = 10 (matches velocity).
- Risk: GPS lag depends on third-party APIs (identify as a risk in the sprint).
Exam Tip: Always relate sprints to velocity and risk management in questions.
2. Software Quality Management
Quality is conformance to requirements and fitness for use. Key models:
ISO/IEC 25010 Quality Model
Defines 8 quality characteristics with sub-characteristics:
| Characteristic | Sub-Characteristics | Example in Daraz |
|---|---|---|
| Functionality | Suitability, Accuracy, Interoperability | Order tracking API works with Khalti |
| Reliability | Fault tolerance, Recoverability | Daraz’s "Retry Payment" button |
| Usability | Learnability, Operability, User error protection | Mobile app’s one-tap checkout |
| Performance | Time behavior, Resource utilization | Fast page load during sales |
| Security | Confidentiality, Integrity, Non-repudiation | Encrypted user data |
| Maintainability | Modularity, Analyzability | Separate code for promotions |
| Portability | Adaptability, Installability | Works on Android/iOS |
| Compatibility | Co-existence, Interoperability | Integrates with Ncell Pay |
Hierarchy of quality characteristics (Image: Spuspita, CC BY-SA 4.0, via Wikimedia Commons)
CMMI (Capability Maturity Model Integration)
A 5-level maturity model for process improvement:
| Level | Focus | Example in Nepal |
|---|---|---|
| 1 | Initial (ad-hoc) | Startup with no formal processes |
| 2 | Managed (basic project mgmt) | Ncell’s helpdesk ticketing system |
| 3 | Defined (standardized) | eSewa’s documented sprint reviews |
| 4 | Quantitatively Managed | NTC’s defect tracking metrics |
| 5 | Optimizing (continuous improvement) | Daraz’s A/B testing for UI changes |
Exam Tip: CMMI Level 3+ requires documented processes—always check for this in case studies.
3. Quality Assurance (QA) Techniques
Static vs. Dynamic Testing
| Technique | Description | Example |
|---|---|---|
| Static Testing | Review code/docs without execution | Code walkthroughs at NEPSE |
| Dynamic Testing | Execute code to find defects | Automated UI tests for Khalti |
Defect Metrics
Key metrics for quality control:
- Defect Density = Total Defects / Size (LOC or Function Points)
- Example: A 10,000-line Daraz module has 50 defects. Defect Density = 50 / 10,000 = 0.005 defects/LOC (acceptable if < 0.01).
- Mean Time To Repair (MTTR): Average time to fix a defect.
- Example: Ncell fixes 80% of app crashes in <2 hours → MTTR = 1.5 hours.
4. Risk Management
Risk Identification and Prioritization
Use a risk matrix to prioritize risks:
| Probability | Impact | Risk Level | Example (Pathao) |
|---|---|---|---|
| High | High | Critical | Driver app crashes during peak hours |
| Medium | High | Major | Payment gateway fails (Khalti integration) |
| Low | Medium | Minor | Slow loading of ride history |
Worked Example: NTC’s Risk Management
- Risk: Power outage during billing system update.
- Mitigation:
- Backup generators (contingency plan).
- Rollback script to revert changes if needed.
stateDiagram-v2
[*] --> UpdateStart
UpdateStart --> BackupDatabase
BackupDatabase --> DeployCode
DeployCode --> TestInStaging
TestInStaging --> DeployToProduction: Success
DeployToProduction --> Monitor: 24h
Monitor --> [*]: Stable
DeployToProduction --> Rollback: Failure
Rollback --> [*]5. Project Documentation and Standards
Key Documents
| Document | Purpose | Example |
|---|---|---|
| Project Charter | Scope, objectives, stakeholders | Daraz’s "Black Friday" campaign plan |
| SRS (Software Requirements Spec) | Functional/non-functional reqs | eSewa’s payment timeout limits |
| Test Plan | QA strategy | Ncell’s app crash test cases |
| Post-Mortem Report | Lessons learned | Pathao’s failed promo launch analysis |
In the Real World
eSewa’s Agile Adoption
- Uses 2-week sprints with daily standups to update its payment gateway.
- Quality Model: ISO 25010’s security (PCI-DSS compliance) and usability (one-tap payments).
- Risk: Integration with banks (e.g., NMB, Global IME) requires strict defect density tracking.
Ncell’s CMMI Level 3 Compliance
- Standardized ticketing system for customer complaints (Level 2).
- Quantitative metrics: MTTR for app crashes (<30 mins for critical bugs).
- Real Example: During the 2023 monsoon, Ncell’s predictive maintenance (Level 5) reduced tower failures by 40%.
Daraz’s Hybrid Project Model
- Waterfall for stable backend (inventory system).
- Agile for UI/UX (weekly A/B tests on product pages).
- Quality Assurance: Automated tests for performance (page load <2s) and compatibility (works on low-end phones).
Exam Tip
Case Study Focus: Expect questions on Nepali companies (eSewa, Ncell, Daraz). Always:
- Identify the framework (Agile/Waterfall/Hybrid).
- Calculate defect density or MTTR if data is given.
- Suggest risk mitigation (e.g., backup plans for NTC).
Diagrams Are Mandatory:
- Draw risk matrices, Agile sprint timelines, or CMMI level comparisons.
- Label all axes in ISO 25010 quality models.
Short Answer Tricks:
- For Waterfall vs. Agile, compare flexibility and documentation.
- For CMMI, list Level 3’s key process area: "Defined processes for all projects."
Numerical Questions:
- If given defects = 30, LOC = 5000, compute defect density = 0.006.
- For sprint velocity, use past averages to predict completion.
Final Visual Summary:
mindmap
root((Software Project & Quality Mgmt))
Framework
Waterfall["Sequential\n(NTC billing)"]
Agile["Iterative\n(eSewa sprints)"]
Hybrid["Mixed\n(Daraz)"]
Quality
ISO25010["8 Characteristics\n(Security, Usability)"]
CMMI["5 Levels\n(Ncell: Level 3)"]
QA
Static["Code Reviews"]
Dynamic["Automated Tests\n(Khalti UI)"]
Risk
Matrix["Probability x Impact"]
Mitigation["Backup Plans\n(NTC power outage)"]Based on the TU BITM syllabus for Software Design and Development (IT242), unit 10.
Discussion
Loading…