Project Management Overview
Pichle weeks me humne requirements gather karna aur UI design karna seekha. Ab sawaal ye hai — ye saara kaam actually hoga kaise? Kaun karega, kab karega, kitne paise lagenge? Yahi manage karta hai Project Manager (PM) — project ka "boss".
Project Manager ki key responsibilities
- Client ↔ Team bridge: PM customers/stakeholders aur dev team ke beech ka main point of contact hota hai. Ensure karta hai ki customer ki needs address ho rahi hain.
- Team banana aur manage karna: Sahi log dhundhna, sahi task dena, aur track pe rakhna. Technology decisions me team + outside experts dono se consult karna.
- Scheduling: Requirements ko major activities me todna → activities ko tasks me todna → dependencies check karna → plan banana.
- Estimation: Size, effort, time, cost — sab estimate karna (client ko batana padta hai kitna charge hoga).
- Risk management: Risks identify karna, assess karna, aur mitigation plans (Plan A/B/C) ready rakhna.
- Configuration management: Final system kaise configure hoga — tools, documentation, modules combine karna, versions manage karna.
- Timely + within-cost delivery ensure karna.
Plan & Document vs Agile perspective
| Plan & Document | Agile |
|---|---|
| Goal: software engineering ko predictable banana in budget & schedule. Start me heavy planning + documentation. | Start me cost/schedule predict nahi karta. Customers ke saath frequent iterations me kaam. |
| WBS, Gantt charts, milestones, COCOMO jaisi techniques. | User stories ko difficulty ke hisaab se points dete hain, per-iteration completed points record karte hain → realistic estimate milta hai. |
Project Estimation Techniques
Estimation kyun? Cost establish karne ke liye (client ko batana hai), schedule banane ke liye, aur bidding/contract ke liye. Jitni zyada detail project ki hogi, utna accurate estimate. Exact estimate possible nahi hota.
Key Estimation Parameters
- Size of code: Lines of code (LOC). 1 KLOC = 1000 LOC.
- Effort: Measured in person-months (PM). 1 person-month = ek individual ka ek month ka typical kaam.
- Time (duration) aur Cost (₹₹).
Agar project = 12 person-months:
Bas multiply karke check karo total match karta hai ya nahi.
A. Empirical Estimation (experience-based)
Empirical = experience of people jo similar projects complete kar chuke hain.
Expert problem ko thoroughly analyze karke ek educated guess deta hai — har component ka cost estimate karke sabko combine karta hai.
Drawbacks: human errors, individual bias (favourite tech ke taraf), optimistic estimates (specially contract jeetne ke liye), kuch areas me knowledge ki kami (e.g. DB me expert but plugins me nahi). Group of experts se bhi solve nahi hota — group bhi biased ho sakta hai, assertive/senior members dominate kar sakte hain.
- Ek coordinator har expert ko SRS + estimate form deta hai.
- Experts anonymously apne estimates coordinator ko submit karte hain.
- Coordinator summary compile karke publish karta hai.
- Process kai rounds repeat hota hai jab tak consensus na aaye.
Anonymous + coordinator + repeated rounds = Delphi — assignment Q3 me exactly yahi scenario tha!
B. Heuristic Estimation (mathematical models)
Heuristic = mathematical expressions se parameters ke beech relationships model karna. Sabse famous: COCOMO.
a aur b project ke type pe depend karte hain:
| Type | Matlab | Formula |
|---|---|---|
| Organic | Well-understood application; small & experienced team | 2.4 × KLOC1.05 |
| Semi-detached | Experienced + inexperienced ka mix; limited related experience | 3.0 × KLOC1.12 |
| Embedded | Hardware se strongly coupled; large team, many inexperienced | 3.6 × KLOC1.20 |
- Product ka type decide karo (organic / semi-detached / embedded).
- Har module ka LOC estimate karo.
- Formula se initial estimate nikalo.
- Effort Adjustment Factor (EAF) — 15 cost drivers (product, computer, personnel attributes etc.) ke multipliers ko multiply karo.
- Final estimate = Initial × EAF.
Type: semi-detached, Size: 4 KLOC →
EAF = 1.40 × 1.08 × 1.13 × 0.95 = 1.62 →
Fun fact from lecture: British Computer Society survey (1000+ projects) me 92% project managers ne formulas nahi, experience se estimate kiya tha. 😅
Project Scheduling
Main activities in scheduling (order yaad rakho)
- Saari major activities identify karo.
- Har activity ko tasks me break down karo (→ WBS).
- Tasks ke beech dependencies determine karo.
- Har task ka time duration estimate karo.
- Is info ko represent karo — chart / graph / network.
- Task start & end dates nikalo.
- Critical path determine karo — wo chain of tasks jo project ki total duration decide karti hai.
- Tasks ko resources allocate karo (people, equipment).
Work Breakdown Structure (WBS)
Project ko tree structure me todo:
- Root = project ka naam (assignment Q5!)
- Internal node = activity jo aur chhote parts me break ho sakti hai (Q7!)
- Leaf = task jo ek developer ko allocate + schedule ho sakta hai (Q6!)
- Ek task ≈ roughly 2 weeks ka development time.
Example (Task Manager project): Root = Task Manager → children = Requirement gathering & analysis, Design, Development → leaves = Gather requirements, Generate SRS, Component diagram, Database schema, User interface, Task planner, Task organizer, Task reviewer.
Activity Network
WBS ke leaf nodes activity network ke nodes ban jaate hain. Arrows dependencies dikhate hain + har task ka duration likha hota hai. Isse pata chalta hai kya sequential hai (e.g. catalog mgmt → inventory mgmt → order tracking) aur kya parallel chal sakta hai (e.g. payment, sales, feedback tracking ek saath).
Gantt Chart
Special bar chart — har bar ek task/activity, aur bar ki length ∝ planned time duration. Team ko visually dikhata hai kaun sa task kab start/end hota hai, kya parallel hai, kya dependent.
Gantt chart padhne ke rules (assignment Q8 ke liye):
- Do bars same time pe start → parallel/concurrent tasks.
- Bar B tabhi start jab bar A khatam → dependency (A must finish before B).
- Overlapping bars → dono simultaneously chal rahe hain.
Risk Management
Risk kya hai? Ek anticipated unfavourable event jo project ke dauraan ho sakta hai. Anticipated — kyunki past experience se hum predict kar sakte hain. Unfavourable — kyunki ye project ko delay/derail kar sakta hai. Software intangible hota hai, isliye risks identify karna aur mushkil (ghar banate waqt construction dikhta hai, code ka progress "dikhta" nahi).
3 types of risks (assignment me 5 questions isi se! 🎯)
| Type | Kya hota hai | Examples | Mitigation |
|---|---|---|---|
| Technical risk | Project ke technical aspects se related; team ki insufficient knowledge about the product se hota hai. Kisi bhi phase me ho sakta hai. | Wrong function/UI ban gaya (ambiguous requirements ki wajah se); external component up-to-mark nahi. | Clients se communicate karo, prototype bana ke feedback lo; external components ke liye benchmarking + regular inspection. |
| Project risk | Non-technical problems: budget, schedule, personnel, resources, customer-related. | Budget exceed ho gaya; schedule slip; team me domain knowledge ki kami; log chhod ke chale gaye (personnel shortfall). | Milestones + regular meetings; relevant experience wale developers company ke andar/bahar se hire karo; backup plans. |
| Business risk | Product ke business aspects ko harm — market me problem. | Product complete hone tak market me competitive nahi raha; gold plating (unnecessary features jo client ne maange hi nahi). | Market explore karo similar products ke liye, gaps address karo; gold plating ke liye clients se poochho + cost-benefit analysis. |
• Problem code/tech/product-knowledge se hai → Technical risk
• Problem budget/schedule/people/domain-knowledge se hai → Project risk
• Problem market/competition/business value se hai → Business risk
Note: "developers ke paas domain knowledge nahi" = personnel/staffing issue = Project risk (technical nahi — technical risk product ki technical knowledge ke baare me hai).
Risk Assessment — Risk Table
PM team se worst-case scenarios poochh ke ek risk table banata hai:
- Har risk ko Probability (P): 0–100%
- Impact (I): negligible(1), marginal(2), critical(3), catastrophic(4)
Table ko descending order me sort karo → sabse upar wale (highest P×I) risks ko pehle deal karo. Saare risks handle nahi kar sakte, most important pe focus karo.
Lecture example: Schedule slippage (60%×3=1.8), Lack of e-commerce experience (60%×3=1.8), Personnel shortfall (40%×3=1.2), DB scaling (20%×2=0.4).
Project Management in Agile — Scrum
Agile me team size roughly 4–9 people. Development organize karne ka ek popular framework: Scrum. Iska heart hai Sprint — ek short time-boxed period (typically 1–2 weeks) jisme team fixed amount of work complete karti hai. Complex project chhote pieces me break hota hai.
3 Scrum roles
- Development Team: Actual kaam karne wale — sirf coders nahi! Designers, developers, testers — jo bhi sprint ka kaam complete karne ke liye chahiye.
- Product Owner: Client ↔ dev team interface. Sabse important kaam: sab inputs leke sprint ke work ko prioritize karna, taaki client ko max value mile.
- Scrum Master: Ensure karta hai ki scrum ki saari activities sahi chal rahi hain; PO ko value define karne me, team ko deliver karne me, aur org ko scrum samajhne me help karta hai.
Scrum activities (sequence yaad rakho)
- Sprint Planning: PO + Scrum Master + Dev team. Do questions: "Is sprint me kya kaam ho sakta hai?" aur "Kaise hoga?". Time-boxed: ~2 hours per week of iteration. Yahin product backlog ke items prioritize hote hain.
- Daily Scrum / Standup: Daily meeting. Har member 3 questions ka answer deta hai: kal kya kiya? aaj kya kar raha hoon? kya blockers hain?
- Sprint Review: Sprint khatam hone ke baad — team demonstrate karti hai jo complete hua (to-do/in-progress → done).
- Sprint Retrospective: Evaluation — team dynamics, processes, tools kaise rahe; kya achha gaya, kya nahi; improvement plan next sprints ke liye.
Product Backlog, Points & Velocity
Product Backlog: User stories/requirements se derived prioritized list of work. Prioritization sprint planning meeting me hoti hai (PO + devs consensus se decide karte hain, e.g. "is sprint me 1a aur 2a karenge").
Points: Har user story ko difficulty ke hisaab se points milte hain.
Velocity: Ek sprint me team kitne points complete kar paati hai.
Example: Sprint 1 me "Add catalog" (2 pts) + "Add inventory item" (2 pts) complete → velocity = 4. Ab next sprint me team confidently 4-point ka kaam utha sakti hai. Stories/points per iteration count karke average nikalo → poore project ka time/effort/cost estimate.
Scheduling: Plan & Document vs Agile
| Plan & Document | Agile |
|---|---|
| Project start me hi schedule; tasks me breakdown; Gantt charts + milestones. | User stories + points; velocity se iterations schedule hote hain; progress = kitni stories deliver hui per iteration. |
Pivotal Tracker (Tool Tutorial)
Agile ideas ko practice me laane wala project management tool — user stories aur velocity track karta hai. Key concepts:
- Current iteration / Backlog: Jo stories abhi chal rahi hain ya current iteration ke liye prioritized hain (product backlog jaisa).
- Icebox: ❄️ "Dumping place" — ideas/stories jo abhi prioritize nahi hui (e.g. future ka "customer feedback" feature).
- Iteration length set kar sakte ho (e.g. 2 weeks) aur team members add kar sakte ho.
- Story create karo: type (feature), priority, points assign karo (e.g. Add catalogue item = 2 points).
- Epics: Related user stories ka collection/group (e.g. "Catalogue management" epic, "Inventory management" epic).
- Velocity set karo (e.g. 4) → stories members ko assign karo → Start → finish hone pe product owner accept karta hai → story Done.
- Analytics bhi milta hai — poore project ka clear picture, team sync me rehti hai.
Graded Assignment — 14 Questions Solved
Har question pe click karke answer + explanation dekho. Concept ka reference notes ke sections me diya hai. 👇
Q1Project requires 240 person-months. Kaunse statements true hain? (MSQ)
B: 10 × 24 months (2 yrs) = 240 ✅ · C: 120 × 2 = 240 ✅ · D: 24 × 120 months = 2880 ❌.
Ref: Section 2 → person-month ka funda.
Q2S1: Estimation based on experience of similar projects. S2: Estimation based on mathematical models. Correct option?
Q3Experts + coordinator, SRS + form, anonymous submission, summary published, process repeated. Kaunsi technique?
Q4Smartwatch software (hardware-coupled), 50,000 LOC, EAF = 1.62. Final estimated effort?
1. Hardware se strongly coupled → Embedded project → a=3.6, b=1.20.
2. Size = 50,000 LOC = 50 KLOC.
3. Initial = 3.6 × 501.20 ≈ 3.6 × 109.3 ≈ 393.5 PM (option A yahi trap hai!).
4. Final = 393.5 × 1.62 ≈ 637.5 ≈ 638 PM. ✅
Ref: Section 2B → COCOMO steps (initial → EAF → final).
Q5Given WBS me "Task Manager" (root) kya hai?
Q6WBS me "Task planner" (leaf node) kya hai?
Q7WBS me "Design" (middle node) kya hai?
Q8Gantt chart observations — correct statements select karo (MSQ)
Q9E-shopping app develop ho rahi hai; developers ke paas sufficient domain knowledge nahi. Risk type?
Q10(Same scenario) Is risk ko mitigate kaise karein?
Q11Project ne estimated budget exceed kar diya. Risk type?
Q12Text editor develop hua, but market me competitive nahi hai. Risk type?
Q13(Same scenario) Is business risk ko mitigate kaise karein?
Q14Risk table diya hai (P & I). Kaunsa risk PM ko sabse pehle deal karna chahiye?
| Risk | P | I | P × I |
|---|---|---|---|
| Personal shortfall | 40% | 2 | 0.80 🥇 |
| Insufficient knowledge of product | 20% | 3 | 0.60 |
| Schedule slippage | 30% | 2 | 0.60 |
| Vulnerability in external components | 10% | 3 | 0.30 |