Estimation & Schedule - KU-SKE17/Software-Process GitHub Wiki

Effort Estimation

in model assumptions

  • Individuals work at 75 percent efficiency rate. (= ทำงานได้จริงๆ ประมาณ 75%)
  • Unplanned interruptions account for 33 percent of clock time. (= พักประมาณ 1/3 ของเวลาทำงาน)

Three-Point Technique

Estimation = (Optimistic + 4(Most likely) + Pessimistic) / 6
SD = (Pessimistic - Optimistic) / 6

note.

  • SD -> Standard Deviation
  • Optimistic -> shortest expected
  • Most likely -> usually experience
  • Pessimistic -> longest expected (everything go wrong)

Fibonacci

  • Estimation usually use Fibonac ci sequence (0, 1, 1, 3, 5, 8, ...)
  • It is powerful to inherit estimating uncertainty [Theory]

Planning Poker Game

use in SCRUM Estimation, to:

  1. avoid one-sided view (swarm intelligence)
  2. let people talk their mind
  • Timing
    • 1 round ≈ 1 mim
    • 1 user story ≈ 5 mins
  • Card Deck
    • Original
      • Fibonacci Sequence
      • popular: 0, 1, 2, 3, 5, 8, 13
      • other: 21, 34, 55, 89, ...
    • Modern
      • Modified Fibonacci Sequence + Unsure(?) + Need a break
      • popular: 0, 1⁄2, 1, 2, 3, 5, 8, 13
      • other: 20, 40, 100, ?, Break, Split, Not Ready for this sprint
    • T-shirts
      • popular: S, M, L, XL,
      • other: XXS, XS, XXL, XXXL
    • Powers of 2
      • popular: 0, 1, 2, 4, 8, 16
      • other: 32, 64
    • 5 Fingers
      • popular: 1, 2, 3, 4, 5
  • Rule
    1. เลือก Moderator 1 คน (ไม่เล่น)
    2. แจก card ให้ estimators แต่ละคน
    3. Product owner อธิบาย User Story / Task
    4. estimators เลือก card [ปิดไว้ก่อน]
    5. เปิด card พร้อมกัน
    6. คุยกัน [Outliers (Max/Min) discuss differences]
    7. Re-estimate จนกว่าจะได้ใกล้ๆกัน

Critical Path Method(CPM)

tools can calculate it!

  • PERT Chart

    • Diagram of activities and dependencies
    • PDM (Precedence Diagraming Method)
    • has two types
  • PERT vs Gantt Chart

    • PERT is appropriate for manager
    • Gantt is appropriate for 'the team'

Activity on Arrow (AoA)

  • ใช้ "->" บอกว่าต้องทำอะไรก่อน แล้วค่อยทำอะไรอีก

Activity on Node (AoN)

  • Node: has multi shape

    ES: Earliest Start Earliest Finish :EF
    ID SLACK: time can delay Expected Duration :E
    LS: Latest Start Latest Finish :LF
  • Dependencies: img here!

  • Path: How fast we can do this project?

    • The Forward Pass (Early Schedule)
      • ES + duration - 1 = EF
    • Backward Pass (Late Schedule)
      • LF - duration + 1 = LS
    • Slack Time
      • SLACK = LF - EF
      • if SLACK = 0, it called Critical Path

Resource Schedule Plan

Schedule Compression

  • Focus your attention on Critical Path
  • To make it faster!
  • Step
    1. choose 2 nodes
    2. change from FS->SS (Finish-to-Start to Start-to-Start)
    3. re-check critical path, add more critical mark
    4. loop until satisfy
  • Techniques:
    • replace team member
    • add resources (from non-critical or other projects)

Finalize Resource & Schedule

  • ex. AoN to team calendar: not Gantt Chart