Software Project Management – Lab Execution Guide
BCA Seventh Semester
Sample Case Used Across Labs: “Online Appointment Booking System” (web & mobile)
for clinics.
What This Guide Contains
1. Lab 1: Project Management Tool Familiarization (Trello/MS Project/OpenProj/ClickUp)
2. Lab 2: Work Breakdown Structure (WBS) Creation
3. Lab 3: Gantt Chart Scheduling & Dependencies
4. Lab 4: Cost Estimation (COCOMO & Simple Spreadsheet)
5. Lab 5: Risk Identification & Management (Risk Register)
6. Lab 6: Quality Management (ISO 9126/25010, TQM, Six Sigma)
7. Lab 7: Configuration Management with Git
8. Lab 8: Change Control Process
9. Lab 9: Resource Allocation & Leveling
10. Lab 10: Project Monitoring & Control (Status Reports, EVM Basics)
Lab 1: Project Management Tool Familiarization
Objective: Set up a project board/schedule and capture basic planning artifacts.
Tools: Trello/ClickUp (board-based) or MS Project/OpenProj (timeline-based).
Deliverables: Screenshot of board/schedule, exported project file, brief notes.
Procedure:
11. 1. Create a new project named: "Online Appointment Booking System".
12. 2. Define project description: purpose, key features (sign-up, doctor search, booking,
reminders, payments).
13. 3. Add 8–12 initial tasks (Backlog): Requirements, UX Wireframes, Backend API,
Frontend Web, Mobile App, Testing, Deployment, Docs.
14. 4. Group tasks into lists (Trello/ClickUp: To Do / In Progress / Done) or phases (MS
Project/OpenProj: Requirements, Design, Build, Test, Deploy).
15. 5. Set due dates and owners (assign yourself/team).
16. 6. Attach acceptance criteria or checklists to 3 tasks (e.g., "Backend API complete when
CRUD for appointments exists, auth works, unit tests pass").
17. 7. Export/Save: JSON/CSV (Trello) or .mpp/.xml (MS Project/OpenProj). Take a
screenshot.
Evidence Template:
Task Owner Due Date Status Checklist/
Criteria
Requirements You 2025-08-20 To Do Stakeholder
Spec sign-off
Backend API v1 Teammate A 2025-09-05 In Progress Auth + CRUD +
Tests
Web UI Teammate B 2025-08-28 To Do Clickable
Prototype prototype
Lab 2: Work Breakdown Structure (WBS) Creation
Objective: Decompose the project into manageable components.
Tools: MS Project, Draw.io/diagrams.net, Lucidchart, or even Word outline.
Deliverables: WBS diagram (image/PDF) and a WBS dictionary table.
Procedure:
18. 1. Identify top-level deliverables: Inception, Requirements, Design, Implementation,
Testing, Deployment, Training & Docs, Maintenance.
19. 2. For each deliverable, create 3–6 child work packages (e.g., Implementation →
Backend API, Web Frontend, Mobile App).
20. 3. Continue to decompose until tasks are 8–40 hours of work each.
21. 4. Assign unique WBS IDs (e.g., 1.2.3).
22. 5. Prepare a brief WBS dictionary entry for 5 key work packages (scope, owner,
acceptance).
23. 6. Export diagram and place in your manual.
Sample WBS Dictionary Entries:
WBS ID Work Package Scope Summary Owner Acceptance
Criteria
3.1 Backend API REST endpoints Teammate A Auth, CRUD,
for users, 80% unit test
doctors, coverage
appointments
3.2 Web Frontend Responsive Teammate B Cross-browser,
web UI for core flows pass
booking flow
3.3 Mobile App Android app for You APK demo,
booking & push
reminders notifications
working
Lab 3: Gantt Chart Scheduling & Dependencies
Objective: Build a time-phased plan and define dependencies.
Tools: MS Project/OpenProj.
Deliverables: Gantt chart image and project file (.mpp/.xml).
Procedure:
24. 1. Create tasks from Lab 2 work packages with estimated durations (days).
25. 2. Link dependencies: Requirements → Design → Implementation → Testing →
Deployment.
26. 3. Use dependency types: Finish-to-Start (FS) for most, Start-to-Start (SS) where tasks
can parallelize, and Finish-to-Finish (FF) for coordinated completion.
27. 4. Set a project start date (e.g., 2025-08-15).
28. 5. Identify the critical path (highlighted automatically in MS Project).
29. 6. Insert milestones (e.g., "M1: Requirements signed off", "M2: Beta Release").
30. 7. Export the Gantt chart view as PDF/PNG.
Example Milestones:
Milestone Planned Date Predecessors
M1: Requirements Signed 2025-08-22 Requirements Review
Off
M2: Beta Release 2025-10-10 Core Implementation &
Smoke Tests
M3: Production Go-Live 2025-11-01 UAT Sign-off & Deployment
Readiness
Lab 4: Cost Estimation
Objective: Estimate development effort and cost.
Tools: Spreadsheet (Excel/Google Sheets), optional COCOMO calculator.
Deliverables: Effort & cost spreadsheet, summary graph.
Procedure (Simple Spreadsheet):
31. 1. List roles: PM, BA, Designer, Developer, QA, DevOps.
32. 2. Estimate hours per role for each work package (from WBS).
33. 3. Multiply hours × rate to get cost per role; sum by work package and total project.
34. 4. Add 10–20% contingency for risks/unknowns.
35. 5. Create a bar chart of cost by phase.
Procedure (COCOMO Basic Outline):
36. 1. Approximate size (KLOC) or use function points → convert to KLOC.
37. 2. Apply Basic COCOMO: Effort = a*(KLOC^b); Development Time = c*(Effort^d). Use
appropriate mode (Organic/Semi-Detached/Embedded).
38. 3. Translate effort (person-months) into team plan and cost (rate × months).
Sample Cost Table:
Work PM Hrs Dev Hrs QA Hrs Rate PM Rate Dev Rate QA Total
Package Cost
(Calc)
Backend 12 120 24 20 18 12 ≈ NPR
API 300,000
Web 10 100 20 20 18 12 ≈ NPR
Fronten 250,000
d
Mobile 10 140 28 20 18 12 ≈ NPR
App 320,000
Lab 5: Risk Identification & Management
Objective: Build a risk register and plan responses.
Tools: Spreadsheet/Docs.
Deliverables: Risk register with at least 10 risks, heat map (optional).
Procedure:
39. 1. Brainstorm risks by categories: Scope, Schedule, Cost, Quality, People, Technology,
External.
40. 2. Score each risk: Probability (1–5) and Impact (1–5).
41. 3. Compute Risk Exposure = P × I; sort descending.
42. 4. Define response strategy: Avoid, Mitigate, Transfer, Accept.
43. 5. Assign owners and target dates.
44. 6. Track a status column (Open/In Progress/Closed).
Risk Register Template (with examples):
ID Risk Categor P(1-5) I(1-5) Exposu Respon Owner Status
y re se
R1 Requir Scope 4 4 16 Mitigat PM Open
ements e: strict
churn CR
process
R2 API Quality 3 5 15 Mitigat Tech Open
perfor e: early Lead
mance perf
issues tests
R3 Dev People 2 5 10 Transfe PM Open
attritio r:
n cross-
train/b
ackup
Lab 6: Quality Management
Objective: Define quality goals and checks using ISO 25010 (successor to ISO 9126), TQM,
and Six Sigma ideas.
Tools: Docs/Spreadsheets; optional test management tool.
Deliverables: Quality plan & checklist; sample test cases for two features.
Procedure:
45. 1. Select quality characteristics (ISO 25010): Functional suitability, Performance
efficiency, Compatibility, Usability, Reliability, Security, Maintainability, Portability.
46. 2. For each characteristic, define 1–2 measurable criteria (e.g., Performance: p50 < 1.5s,
p95 < 3s for booking endpoint).
47. 3. Create a quality checklist mapped to features.
48. 4. Write 6–10 sample test cases (2–3 per feature).
49. 5. Plan basic defect severity/priority scheme.
Quality Checklist Snippet:
Area Check Measure/ Pass/Fail
Expectation
Usability Mobile-friendly Core screens pass
booking flow Lighthouse mobile
checks
Security Password storage Hashed + salted;
OWASP ASVS L1
Performance API latency (p95) < 3s on 20 RPS test
Sample Test Cases:
ID Title Preconditions Steps Expected Result
TC-01 Create User logged in Open booking Appointment
appointment → pick saved;
(happy path) doctor/date/ti email/SMS sent
me → confirm
TC-02 Booking Slot already Attempt to Clear error;
conflict taken book same slot alternative slots
suggested
Lab 7: Configuration Management with Git
Objective: Track versions, branches, and merges for project artifacts.
Tools: Git, GitHub/GitLab/Bitbucket.
Deliverables: Repo URL, commit history screenshot, branch/merge evidence.
Procedure:
50. 1. Initialize a new repository (README.md, /docs, /design, /plans).
51. 2. Add WBS, risk register, quality plan as versioned docs. Commit (message: "Add initial
PM artifacts").
52. 3. Create a feature branch (feature/mobile-app-plan). Edit docs; commit and push.
53. 4. Open a Pull Request and merge to main with meaningful commit messages.
54. 5. Tag a release (v0.1-planning-artifacts).
55. 6. Export commit log for your manual.
Suggested .gitignore Entries:
*.mpp
*.tmp
~$*.docx
.DS_Store
node_modules/
.env
Lab 8: Change Control Process
Objective: Create and run a lightweight change request (CR) workflow.
Tools: Form/Doc/Issue tracker (Jira/GitHub Issues).
Deliverables: Filled CR form, approval record, updated plan snapshot.
Procedure:
56. 1. Draft a CR template capturing: ID, Title, Description, Impacted
scope/schedule/cost/quality, Rationale, Alternatives, Risk, Approvers.
57. 2. Raise a sample CR: "Add telemedicine video calls".
58. 3. Assess impact: add 120 Dev hours, 20 QA hours, extend schedule by 2 weeks.
59. 4. Record decision (Approve/Reject/Defer) with approver signature/note.
60. 5. Update WBS/Gantt/cost sheet accordingly and attach before/after screenshots.
Change Request Template (example filled):
Field Value
CR ID CR-2025-01
Title Add Telemedicine Video Calls
Description Enable video appointments with doctors
inside the app
Impact Scope↑, Schedule +2 weeks, Cost +NPR
180,000
Risk Integration complexity; performance
impact
Decision Approved by PM & Sponsor on 2025-09-01
Lab 9: Resource Allocation & Leveling
Objective: Assign resources to tasks and resolve overallocations.
Tools: MS Project/OpenProj.
Deliverables: Resource Sheet & Usage views, leveling notes.
Procedure:
61. 1. Create resources: PM (50% allocation), Dev A (100%), Dev B (100%), QA (50%),
DevOps (25%).
62. 2. Assign resources to tasks from Gantt.
63. 3. Open Resource Usage view; identify any resource exceeding 100%.
64. 4. Run resource leveling (automatic/manual) to remove conflicts (split tasks, delay non-
critical ones).
65. 5. Export Resource Sheet and leveled Gantt as evidence.
Resource Sheet Example:
Resource Max Units Std Rate Overallocated?
PM 50% NPR 2,500/hr No
Dev A 100% NPR 2,200/hr Yes (before leveling)
QA 50% NPR 1,500/hr No
Lab 10: Project Monitoring & Control (with EVM Basics)
Objective: Track progress, report status, and compute simple Earned Value metrics.
Tools: MS Project/OpenProj + Spreadsheet.
Deliverables: Weekly status report, burndown/percent-complete chart, EVM snapshot.
Procedure:
66. 1. Set Baseline in MS Project (Project → Set Baseline).
67. 2. Update % complete for tasks (e.g., Backend API 40%, Web 25%).
68. 3. Export task progress and create a line chart of % complete by week.
69. 4. Capture status report with summary, accomplishments, risks, blockers, next steps.
70. 5. Compute simple EVM: PV (planned), EV (earned), AC (actual). Derive SV=EV−PV,
CV=EV−AC, SPI=EV/PV, CPI=EV/AC.
71. 6. Interpret results (SPI<1 behind schedule; CPI<1 over budget).
EVM Example Snapshot:
Metric Value Interpretation
PV (Planned Value) NPR 500,000 Baseline plan up to Week 3
EV (Earned Value) NPR 420,000 Work actually earned
AC (Actual Cost) NPR 460,000 Money spent so far
Derived: SV = -80,000 (behind schedule), CV = -40,000 (over budget), SPI = 0.84, CPI = 0.91
Appendix: Checklists & Templates
Included: Risk Register CSV headers, Change Request form, Quality checklist, Status report
skeleton.
Weekly Status Report Skeleton:
Section Notes
Summary One-paragraph overall status
(Green/Amber/Red)
This Week Key accomplishments
Risks/Issues Top 3 with owners
Next Week Planned items
Decisions Needed Escalations/approvals