Software Project Staffing Flashcards

1
Q

Staffind for bug fixing

A
  • Many bugs need to be fixed
  • Productivity of developers might vary up to 1:20
  • Ad hoc assignment likely is ineffective and inefficient
  • Instead: Using optimized assignment as a basis for decision-making
  • Empirical evaluation comparing baseline (manual) plan with optimized plans.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Staffing Assumptions

A
  1. Each developer fixes exactly one bug at a time.
  2. Each bug is fixed by exactly one developer.
  3. Once assigned to a bug, each developer is working continuously on this bug.
  4. The productivity of a developer is inverse proportional to the effort requried to fix a bug (where the time is known)
  5. The duration for fixing a bug is defined between closing and opening date as defined from the manual assignment divided by the ration in expertise btween the new versus manual assignment.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Staffing for minimum duration

A
  • Given:
    • List of features and their respective tasks
    • List of dependencies between tasks
    • Effort estimation for all the tasks of all the features
    • Pool of developers available
    • Skill (productivity) profile of developers
    • Availability intervals of developers
  • Problem: Find a task schedule and an assignment of developers to tasks and a such that:
    • All tasks of all features are performed
    • All the dependencies between tasks need to be fulfilled
    • The total duration (make-span) is minimized.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Productivity Assumptions

A
  1. A developer having (average) productivity level 1 would need workload(q) days to perform task q.
  2. A developer of productivity level prod(d,q) would need workload(q)/prod(d,q) days to perform the task.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Staffing for Maximum Value

A
  • Given:
    • List of features and their respective tasks
    • List of dependencies between tasks
    • Effort estimation of all the features
    • Pool of developers available
    • Availaility intervals of developers.
  • Problem: Find a task schedule and an assignment of developers to tasks such that
    • All release due dates are fulfilled
    • All the dependencies between tasks need to be fulfilled
    • The total value of th release is maximized.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly