SC2006 Tutorial 5 Slideshow
SC2006 Tutorial 5 Slideshow
Question 1: What are the considerations crucial to deciding whether to adopt Agile/Scrum
development in a project?
Tutorial 1
Question 1: What are the considerations crucial to deciding whether to adopt Agile/Scrum
development in a project?
Ans:
• Team Experience & capability
o Matured developers that can take multiple roles in the Development Team (cross
functional) or other valid justifications
o Agile Development should be built on motivated individuals. Having the right people is
essential for agile projects since it depend on the individuals’ capability.
• Customer involvement & commitment
o Customers can provide continuous feedback to the developer team which help them to
deliver frequent releases of working software to customers.
Tutorial 1
Question 1: What are the considerations crucial to deciding whether to adopt Agile/Scrum
development in a project?
Ans: (cont’d)
• Requirement definition*
o Constantly changing or other valid justifications
• Change
o Frequent fluctuation of change or other valid justifications
• Organizational Culture
o Having a dynamic culture to respond to frequent changes during the agile development
lifecycle
o An organizational mindset shift on developing a project with frequent engagement and
interaction from customers.
Tutorial 1
Question 1: What are the considerations crucial to deciding whether to adopt Agile/Scrum
development in a project?
Ans: (cont’d)
• Documentation
o More flexibility to streamline minimum documentation or other valid justifications
Question 2: Discuss the different ways of estimating Velocity in Scrum.
Question 2: Discuss the different ways of estimating Velocity in Scrum.
Ans:
Three ways to estimate velocity:
Use a Proxy Project
o Take a similar recent project to estimate the size of items in Product Backlog and
the velocity.
Best Case / Worst Case
o Simulate the number of sprints required based on best and worst case scenario to
derive the estimated velocity.
Simulate three sprints (capacity-based sprint planning)
o Simulate 2-3 sprints to understand the realistic capacity of the team so as to derive
the estimated velocity.
Question 3: What are the characteristics of a good product backlog?
Question 3: What are the characteristics of a good product backlog?
Ans:
Detailed appropriately
o Not all items in a PB will be at the same level of detail at the same time.
o PB items that we plan to work on soon should be at the top of the backlog, small in
size and very detail so that they can be work on in the near sprint. BPIs that will be
worked on later can be larger and less detail.
Emergent
o The product backlog is never complete or frozen. Instead, it is continuously
updated based on a stream of economically valuable information that is constantly
arriving.
Estimated
o Each PBI has a size estimate corresponding to the effort required to develop the
item. Product owner uses these estimates as one of several inputs to help
determine a PBI’s priority (and therefore position) in the PB.
Question 3: What are the characteristics of a good product backlog?
Ans: (cont’d)
Prioritized
o Useful to prioritize the near-term items that are destined for the next few Sprints.
Question 4: What does the INVEST mnemonic of Agile software development stand for?
Question 4: What does the INVEST mnemonic of Agile software development stand for?
Ans:
Question 5: Under Scrum methodology, a Product Increment is a piece of software that is both
complete and potentially shippable. Why is it important to have a working software delivered at
the end of each Sprint?
Question 5: Under Scrum methodology, a Product Increment is a piece of software that is both
complete and potentially shippable. Why is it important to have a working software delivered at
the end of each Sprint?
Ans:
Possible benefits:
Working software encourages feedback
A team can collect more and better feedback if it shows (or better, gives) a functioning
though partial product (i.e.: system) to users than producing a documentation about the
product will do. This working software is to be demonstrated to the stakeholders at the end
of each Sprint during the Sprint Review Meeting.
Question 5: Under Scrum methodology, a Product Increment is a piece of software that is both
complete and potentially shippable. Why is it important to have a working software delivered at
the end of each Sprint?
Ans: (cont’d)
Possible benefits:
Working software helps a team to gauge its progress
One of the risks of a project is not knowing how much work remains to be done. When too
much of a system is in an unfinished state, it is very difficult to know how much effort will be
required to bring the system to a shippable state. By emphasizing working software in each
Sprint, Scrum Team avoid this problem.
Working software allows the product to release early if desired
In today’s competitive and rapidly changing world, the option to release early (even if
delivering fewer features) can be very valuable for customers.
Question 6: The total size (in points) of a list of product backlog items is 64. The Scrum Team
consists of Product Owner, Scrum Master and six members in the Development Team. The cost of
each member in the Scrum Team for each Sprint is $2K. Eight Sprints is determined to be needed to
complete the project. Calculate the velocity and cost of this project.
Question 6: The total size (in points) of a list of product backlog items is 64. The Scrum Team
consists of Product Owner, Scrum Master and six members in the Development Team. The cost of
each member in the Scrum Team for each Sprint is $2K. Eight Sprints is determined to be needed to
complete the project. Calculate the velocity and cost of this project.
Ans:
Velocity = 64 / 8 = 8
Cost per sprint = (1 + 1 + 6) x $2K = $16K
Cost of project = $16K x 8 = $128K