Chapter 9 - Agile Requirements
Definition of Done (DoD)
code tested done
Minimum business increment (MBI)
when product and functions are understood bits of value are sooner
agile games
1. remember the future 2. Prune the product tree 3. Bank for the Buck ie monopoly money 4. Speedboat - sailboat prioritization of risk mgmt 5. Buy a Feature - visualation are together project team and stkholder high payout w low cost 6. Wire Frames - low fidelity throw away ie prototype 7. Personas - grounded in reality does not replace requirements - empathize with user
Product Backlog
A prioritized list of user stories, showing both short- and long-term goals of a software development team.
User Story
A small, concise statement of functionality or quality needed to deliver value to a specific stakeholder. suing story point acceptance criteria not known at the beginning
You are managing an ecommerce-enabled website for a retailing giant. Both the project team and the client organization are happy with the clarity of the original functional and non-functional requirements set out in the contract's SOW. You have recommended the Agile project management approach to the client and they are happy with any management approach as long as they receive a working product. You and your team have a tough decision to make regarding sprint durations. A sprint duration of two weeks would add a lot of pressure on the team as complex requirements will be tough to build in a single sprint. A sprint duration of six weeks would make the project less Agile but the project might get finished early as the customer won't get to see many prototypes. What sprint size should be selected? A sprint size needs to be determined that maximizes customer value and satisfaction. Incorrect response: Two weeks should be selected since Agile Manifesto mandates frequent delivery of working software. Incorrect response: Six weeks should be selected since the project would get finished early and satisfy the customer. Incorrect response: Four weeks should be selected as that is the average of two numbers.
A sprint size needs to be determined that maximizes customer value and satisfaction. The highest priority is to satisfy the customer through early and continuous delivery of valuable software. A sprint size needs to be determined that maximizes customer value and satisfaction. More information would be required to determine the best duration. [Agile Practice Guide, 1st edition, Page 9]
Project life cycles can be shown on a continuum ranging from predictive cycles on one end, to Agile cycles on the other end, with more iterative or incremental cycles in the middle. Another approach is to visualize the continuum with a two-dimensional chart with the frequency of delivery on the Y-axis and degree of change on the X-axis. What project life cycle should be proposed for the quadrant with a high degree of change and high frequency of delivery? Agile Incorrect response: Predictive Incorrect response: Incremental Incorrect response: Iterative
Agile The Agile approach is recommended for projects that require a high degree of change and high frequency of project deliveries. [Agile Practice Guide, 1st edition, Page 19]
A software vendor has recently hired you to manage some of its key projects. During your orientation at the organization you were told that the organization has recently adopted Agile practices for project management. A chart was then shown to you where Agile and Kanban were shown as subset of Lean. What is your view on this? Your response: Agile and Kanban are subsets of Lean because they are named instances of Lean thinking. Incorrect response: The chart is wrong because Agile is a subset of Lean while Kanban is not. Incorrect response: The chart is wrong because Kanban is a subset of Lean while Agile is not. Incorrect response: The chart is wrong because Agile, Kanban and Lean are three different approaches to project management.
Agile and Kanban are subsets of Lean because they are named instances of Lean thinking. Agile and Kanban are subsets of Lean because they are named instances of Lean thinking that share Lean concepts such as "focus on value", "small batch sizes", and "elimination of waste". [Agile Practice Guide, 1st edition, Page 11] Knowledge Area / Topic Area: Project Framework Domain: Process
During an iteration demonstration, the product owner and the developer are having a conflict: a completed feature is not being accepted by the product owner. How could this problem have been avoided? Establishing a quality control process. Keeping the product owner out of the demonstration. Agreement on definition of done for each story at the start of the sprint. Establishing working agreements.
Agreement on definition of done for each story at the start of the sprint. You cannot keep the product owner out of the demonstration. The product owner "owns" the product and has the authority to accept or reject the features. The problem could have been avoided if the definition of done for this feature would have been agreed upon at the start of the iteration. [Agile Practice Guide, 1st edition, Page 151]
You are considering adopting an Agile project management approach in your construction business. You are not sure how to do this as a number of Agile techniques are more suitable to software development. For this initiative, what is the first thing the organization needs to adopt? An Agile mindset. Incorrect response: 12 Agile Principles. Incorrect response: Agile Manifesto. Incorrect response: Agile Methods.
An Agile mindset. Although Agile Manifesto, methods and techniques originated in the software industry, these have since spread to many other industries. Agile is a mindset defined by values, guided by principles, and manifested through many different practices. As the first step, any organization wishing to embark on an Agile journey, needs to adopt an Agile mindset. [Agile Practice Guide, 1st edition, Page 10]
You have been hired by an organization to introduce Agile to its project management office. During one of your initial presentations to the team you have been asked a tough question: Is Agile an approach, a method, a practice, a technique, or a framework? What should be your response? Any or all of these terms could apply depending on the situation. Incorrect response: Agile is an approach and not a framework, it contains methods and techniques. Incorrect response: Agile is a framework that contains methods and techniques. Incorrect response: Agile is neither an approach nor a framework, however it contains some methods and techniques.
Any or all of these terms could apply depending on the situation. Agile can be viewed as an approach, a method, a practice, a technique, or a framework depending on the context of use. [Agile Practice Guide, 1st edition, Page 11]
You have recently been asked to design and build a "complex" project that is supposed to somehow reduce the production costs by 20% or more. Together with the product owner, you developed a product roadmap using user story mapping, and impact mapping techniques. Now you want to assign business values to each user story. How should you proceed? Randomly assign business values to the user stories so that you get a fine mix of user stories. Ask the product owner to email you the business values for each user story. Ask the team to estimate the business value for each user story. Bring the product owner and the team together again and determine the business value.
Bring the product owner and the team together again and determine the business value. The product owner should assign the business value. However, it is better that this is done in collaboration with (and presence of) the team. [Agile Practice Guide, 1st edition, Page 58]
You have been assigned a new project. The project involves disruptive technologies. The project scope is not clear which has introduced a lot of risk into the project. You have requested to use Agile to manage this project. Why? Your response: Agile techniques and approaches effectively manage disruptive technologies, scope changes and project risk. Incorrect response: Agile techniques and approaches effectively manage project risk. Incorrect response: Agile techniques and approaches effectively manage scope changes. Incorrect response: Agile techniques and approaches effectively manage disruptive technologies.
CORRECT RESPONSEREASON Agile techniques and approaches effectively manage disruptive technologies, scope changes and project risk. Agile techniques and approaches effectively manage disruptive technologies, scope changes and project risk. [Agile Practice Guide, 1st edition, Page 2]
The product owner has requested some major changes that will have a significant impact on the project and require reprioritizing the remaining backlog items. What should you do? Complete the current iteration, reprioritize the backlog and adapt the new plan for the next iteration. Incorrect response: Cancel the current sprint and immediately call a retrospective. Incorrect response: Complete the started stories but do not bring any more "Ready" stories into "WIP". Incorrect response: Terminate the current sprint and reprioritize the entire project.
Complete the current iteration, reprioritize the backlog and adapt the new plan for the next iteration. Agile teams typically don't adjust their long term plan during a sprint unless all of the items being developed are dropped from the backlog. It is recommended to complete the current sprint and then re-plan and adjust accordingly. [Agile Practice Guide, 1st edition, Page 25]
You are leading a complex Agile project. During the project kick-off meeting, the team is considering the frequency of delivery. Based on the project conditions, you and the team believe that the delivery frequency can be planned from a couple of weeks to a couple of months. What frequency should you select? Couple of weeks; this is shortest possible timescale. Incorrect response: This cannot be determined based on the information provided. Incorrect response: Couple of months; this will allow the least distraction. Incorrect response: One month; this will be the expected average.
Couple of weeks; this is shortest possible timescale. According to the Agile principles, the shortest possible delivery timescale should be selected. [Agile Practice Guide, 1st edition, Page 9]
You have recently been assigned as the project manager to a new service design project. This project resulted from the new corporate strategy your company has adopted. However, the organization is not sure how the new requested service would work in practice. What should you do? Create a proof of concept. Incorrect response: Develop a product backlog. Incorrect response: Conduct a root cause analysis. Incorrect response: Determine the conditions of satisfactions.
Create a proof of concept. If the business is unsure of how the new business service might work in practice, create a proof of concept with evaluation criteria to explore desired outcomes. [Agile Practice Guide, 1st edition, Page 22]
Your firm, a tunnel construction company, has recently won a contract to construct a network of underground tunnels for a new metro project in the city. The project site contains a network of interconnected geysers and hot springs. These network paths cannot be accurately mapped due to the complexity of the terrain and available technology. Which of the following is the best approach to be used on this project? Deliver the project in increments, one line at a time and adjust the designs as new information becomes available. Incorrect response: Start all lines at the same time and be prepared to tackle probable flooding of the lines. Incorrect response: Do a detailed design before commencing project work and keep the costs under budget. Incorrect response: Given the complexities, the project needs to be abandoned.
Deliver the project in increments, one line at a time and adjust the designs as new information becomes available. According to the scenario, since the network of geysers and hot springs cannot be accurately mapped, freezing the design upfront is not recommended. Delivering the project in small increments can manage this risk. This might require design changes as new information becomes available. [Agile Practice Guide, 1st edition, Page 16]
You and your Agile team are developing a new workflow management system for your organization. According to the ICT Systems & Tools Development Policy, you are required to produce detailed software documentation. What should you do? Develop the required documentation as part of the project. Incorrect response: Educate the higher management on why you will not be developing detailed documentation on this project. Incorrect response: Reject the policy as it is against the Agile Manifesto. Incorrect response: Use traditional project management practices to manage this project.
Develop the required documentation as part of the project. Although according to the Agile Manifesto working software is valued over comprehensive documentation, this doesn't mean that Agile teams do not produce detailed documentation. If documentation is required of the project, the team must develop it. [Agile Practice Guide, 1st edition, Page 8]
Your organization has been awarded a contract to develop and implement a new resource management system for a client based in Asia. Your development team is distributed across Europe. You are also planned to relocate the implementation team to the client location. What would be your biggest challenge in such a setup? Your response: Efficient and effective communication. Incorrect response: Monitoring project progress. Incorrect response: Documenting sprint retrospectives. Incorrect response: Controlling project costs.
Efficient and effective communication. The most efficient and effective method of communication is face-to-face conversation. When a project has a virtual team, the biggest challenge is ensuring efficient and effective communications. None of the other choices are more significant than this. [Agile Practice Guide, 1st edition, Page 9]
You are leading a massive knowledge work project. Some team members have complained they have to work overtime in order to complete some of the assigned work. What should you do to resolve this issue? Establish a Kanban board and set WIP limits Incorrect response: Launch a root cause analysis Incorrect response: Call a team retrospective Incorrect response: Establish working agreements
Establish a Kanban board and set WIP limits The problem is hand is unmanageable WIP. The solution is to limit the WIP based on team capacity. A Kanban board can be really helpful in setting this up. A Kanban board provides a means to visualize the flow of work, make impediments easily visible, and allow flow to be managed by adjusting the work in process limits. [Agile Practice Guide, 1st edition, Page 31]
You have called in key stakeholders for a brainstorming session. The main agenda item is to identify suitable project life cycles for a number of new initiatives launched by the organization. Two of the stakeholders are proposing exclusive use of predictive and Agile life cycles respectively. What should be your response? Exclusive use of a life cycle on all projects is not recommended. Incorrect response: A blended life cycle needs to be designed which can then be exclusively used on all projects. Incorrect response: Exclusive use of Agile life cycle is recommended as this is new way to manage projects. Incorrect response: Exclusive use of Predictive life cycle is recommended as this is a tried and tested method.
Exclusive use of a life cycle on all projects is not recommended. No life cycle can be perfect for all projects. Instead, each project finds a spot on the continuum that provides an optimum balance of characteristics of its context. [Agile Practice Guide, 1st edition, Page 19]
A project team is currently building a warehouse management system. Due to the complexity of the project and ambiguous requirements, the team decided to adopt an Agile management approach. If a higher rate of management process improvement is required by the project team, which of the following can help achieve this objective? Frequent retrospection and selecting improvements. Incorrect response: Adopting XP for the development phase. Incorrect response: Using a Kanban board to enable visual management. Incorrect response: Deferring the development until all requirements have been collected.
Frequent retrospection and selecting improvements. Deferring the development until the design is complete is a waterfall approach. Using a Kanban board can help managing the work but frequent retrospectives can really facilitate process improvement by allowing the team to brainstorm on what went well and what went wrong. [Agile Practice Guide, 1st edition, Page 32]
You are currently managing a complex project that requires a lot of knowledge work. You want some sort of visual management system that can help you visualize the flow of work, make impediments easily visible, and allow flow to be managed by adjusting the work-in-process limits. Which of the following tools can help you in this regard? Kanban board Incorrect response: Sprint retrospective Incorrect response: 5S Incorrect response: Product backlog
Kanban board A Kanban board provides a means to visualize the flow of work, make impediments easily visible, and allow flow to be managed by adjusting the work-in-process limits. [Agile Practice Guide, 1st edition, Page 31]
You have been invited by your colleague to attend one of the project standup meetings. You notice that the team has got a big chart on a wall, divided into sections such as "Ready", "In Development", "Being Tested", and "Completed". What tool are they using? Kanban board Incorrect response: Burndown chart Incorrect response: Activity matrix Incorrect response: War room
Kanban board This is an example of Kanban board. A Kanban board provides a means to visualize the flow of work, make impediments easily visible, and allow flow to be managed by adjusting the work in process limits. [Agile Practice Guide, 1st edition, Page 31]
You are responsible for deploying a new supply chain management system for a client organization. You need to analyze the client organization's current processes and procedures, design future-state processes in consultation with the subject matter experts at the client organization, and customize the supply chain system to suit these processes. According to the contract, all prototypes presented to the client must accompany user instruction sets. Your team is objecting to this documentation requirements and insist in developing a user manual only at the very end of the project. What should you do? Your response: Let the team know that producing the user instruction set with the released prototype is a contractual requirement. Incorrect response: Negotiate with the team and convince them to develop comprehensive documentation before releasing any prototypes. Incorrect response: Accept the team's demand; Agile Manifesto values working software over comprehensive documentation. Incorrect response: Negotiate with the client organization and convince them to drop the documentation requirement.
Let the team know that producing the user instruction set with the released prototype is a contractual requirement. Although according to the Agile Manifesto a working software is preferred over comprehensive documentation, that doesn't not mean Agile approaches do not allow documentation. It is the project manager's duty to conform to all contractual requirements and that needs to be communicated to the team. [Agile Practice Guide, 1st edition, Page 8]
You and your team are executing the first Agile project in the organization. This is a special project for the organization as Agile is being piloted for the first time. You are nearing the end of the first iteration on the project and not all of the assigned user stories are complete. Can the team extend the iteration duration by a couple of days in order to complete all assigned stories in the iteration plan? No; the iterations are time-boxed. Incorrect response: Yes; but requires the approval of the product owner. Incorrect response: Yes; but the extension cannot be more than 2 days. Incorrect response: Yes; but requires the approval of the Scrum Master.
No; the iterations are time-boxed. Iteration durations are time-boxed and cannot be extended. All incomplete stories need to be returned to the product backlog where they will get re-prioritized along with the other stories in the backlog. [Agile Practice Guide, 1st edition, Page 25]
You have asked a publisher to print some Agile principles on posters. When the posters were delivered, you found out that some of them had incorrect Agile principles printed on them. Which of the following posters has an incorrect Agile principle printed on it? Plan conservatively and deliver aggressively". Incorrect response: "Working software is the primary measure of progress". Incorrect response: "Focus on technical excellence". Incorrect response: "Continuous delivery of valuable software".
Plan conservatively and deliver aggressively". "Plan conservatively and deliver aggressively" is not a valid Agile principle. The rest of the choices are all valid Agile principles. [Agile Practice Guide, 1st edition, Page 9]
You are responsible for designing a new lessons learned management system for an organization. As a part of the project, you need to consult with a number of senior stakeholders and assess their needs and requirements. You then have to facilitate consensus on the system features, workflows, processes and procedures. Once the system is developed, it has to be rolled out across the organization and all employees have to be trained in effective use of the system. You have chosen to use a hybrid project life cycle. Which of the following life cycles should be adopted for the user training phase of the project? Predictive Incorrect response: Iterative Incorrect response: Incremental Incorrect response: Agile
Predictive Once the system is successfully designed and built, user training may be an extensive task but this can well be planned in advance. Predictive life cycle should be the most structured approach for this phase of the project. [Agile Practice Guide, 1st edition, Page 26]
In projects with adaptive life cycles using Scrum for its project management guidance, the overall scope of the project will be decomposed into a set of requirements and work to be performed, sometime referred to as: Assumptions backlog Product backlog Feature list Project attributes
Product backlog In projects with adaptive life cycles, the overall scope of the project will be decomposed into a set of requirements and work to be performed, sometime referred to as a product backlog. [PMBOK® Guide 6th edition, Page 131]
Two of the senior subject matter experts have different opinions on the use of management tools on a project. The use of Kanban and Agile approaches are being proposed by these experts. In case you decide to use both of the approaches on your project, which of the following can be a valid justification for such a decision? Project teams sometime blend various methods to achieve project objectives. Incorrect response: Management approaches are irrelevant as long as majority of the stakeholders are happy. Incorrect response: Kanban is a part of the Agile Manifesto; the debate was irrelevant. Incorrect response: Senior subject matter experts cannot be turned down.
Project teams sometime blend various methods to achieve project objectives. Although Kanban and Agile approaches can slightly differ, both focus on delivering value, respect for people, minimizing waste, adapting to change, and continuous improvement. Project teams sometime blend various methods to achieve project objectives. [Agile Practice Guide, 1st edition, Page 12]
The project sponsor took over the leadership of your Agile project while you were away on a holiday. In your absence, the sponsor asked for a detailed project schedule and the team developed a detailed task-level, resource loaded Gantt chart. What should be your next step now? Revoke the detailed schedule and explain your reasons to the sponsor. Incorrect response: Create feeding buffers and pad the schedule. Incorrect response: Continue tracking the project against the recently developed schedule. Incorrect response: Retain the schedule but drop the resource assignments.
Revoke the detailed schedule and explain your reasons to the sponsor. Agile projects are not plan driven and do not follow detailed plans as this compromises the team agility in responding to changes. You need to revoke the detailed schedule and explain the reason to the project sponsor. [Agile Practice Guide, 1st edition, Page 17]
An Agile team is currently working on automating some of the key production processes. The project has been consistently producing great deliverables until recently when defects have started to appear. Following are some of the Agile approaches to defect management EXCEPT: Collective product ownership Pervasive testing Robust definition of user story Pair work
Robust definition of user story Robust definition of user story is least likely to help in this situation; rather a robust definition of "done" would be more useful. The rest of choices are all other valid strategies. [Agile Practice Guide, 1st edition, Page 58]
You are an Agile process analyst and are assigned to work for Anu who is leading a complex Student Services Design project for a university. Anu insists that the team create highly detailed project plans before commencing the work. What should you do? Your response: Show Anu how you have had success in the past using Agile approaches and why they are better. Incorrect response: Brush up your resume and start applying for external jobs. Incorrect response: Put your foot down and don't compromise on Agile values and principles. Incorrect response: Escalate the issue to the project sponsor.
Show Anu how you have had success in the past using Agile approaches and why they are better. The best thing to be done at this stage is help the project manager understand and realize the benefits of Agile approaches and why these are better than traditional approaches if there is a significant degree of change associated with the project work. [Agile Practice Guide, 1st edition, Page 7]
Chris will be conducting an introduction to Agile workshop in the next few days. On one of the slides, he put a number of areas that Agile teams highly value. The list included customer collaboration, working software, responding to change and attention to detail. What mistake did Chris make? Showed "Attention to detail" as a value instead of showing "Individuals and Interactions". Incorrect response: Showed "Working software" as a value instead of showing "Individuals and Interactions". Incorrect response: Showed "Responding to change" as a value instead of showing "Change management". Incorrect response: Showed "Customer collaboration" as a value instead of showing "Contract negotiation".
Showed "Attention to detail" as a value instead of showing "Individuals and Interactions". "Attention to detail" is not a value of the Agile Manifesto. Chris has incorrectly showed "Attention to detail" as a value instead of showing "Individuals and Interactions". [Agile Practice Guide, 1st edition, Page 8]
Jane is responsible for migrating critical applications used in the organization over to a cloud platform. The non-critical applications that are currently integrated with these critical applications will be moved to the cloud once the current migration project is successful. Which of the following is the best approach for Jane given the high uncertainties associated with the project? Tackle the project via small increments of work. Incorrect response: Tackle the project via strict waterfall approach. Incorrect response: Break the interconnections and migrate one application at a time. Incorrect response: Migrate the critical and non-critical applications at the same time.
Tackle the project via small increments of work. Migrating the non-critical applications is not in the scope. Breaking the interconnections might render the critical applications inoperative. Waterfall approach is not recommended in this scenario as the project has high uncertainties. Tackling the project via small increments of work sounds like the most reasonable approach among the given options. [Agile Practice Guide, 1st edition, Page 13]
You are helping a software development team transition from traditional to Agile approaches. You tell the team that the single most important attribute of any product or feature is: The value customers associate with that product or feature. Incorrect response: The ideal days estimated to develop the minimum viable product or feature. Incorrect response: The time required to deliver the product or feature. Incorrect response: The velocity at which the team takes on the development of that product or feature.
The value customers associate with that product or feature. A successful project, product or feature is the one that delivers value to the customer. Customers usually do not care how teams develop products, however they do care if the product delivers value to them or not. [Agile Practice Guide, 1st edition, Page 4]
Many environments with emerging requirements find that there is often a gap between the real business requirements and the business requirements that were originally stated. How do Agile methods identify the right business requirements? Through Kanban boards and throughput Through prototypes and feedback Through user story size limits Through work breakdown structure management
Through prototypes and feedback Agile methods purposefully build and review prototypes and release versions in order to refine business requirements. [Agile Practice Guide, 1st edition, Page 91]
You have recently been hired by a major airport operator to head its project management office. The PMO has been following a waterfall-based project management approach consistently across all projects. You want to pilot Agile approaches on a couple of new projects and see how these approaches can benefit the organization. However, the team members are not experienced in the use of Agile approaches. What should you do first? Your response: Train the team members in the fundamentals of the Agile Mindset and principles. Incorrect response: Train the team members in effectively using the XP approach. Incorrect response: Train the team members in effectively using the Scrum methodology. Incorrect response: Train the team members in effectively using the Kanban approach.
Train the team members in the fundamentals of the Agile Mindset and principles. Consider starting by training team members in the fundamentals of the Agile Mindset and principles. If the team decides to use a specific approach such as Scrum or Kanban, provide a workshop on that approach so that team members can learn how to use it. [Agile Practice Guide, 1st edition, Page 32]
When introducing Agile methods to an organization that has historically managed all its project using predictive life cycles, which of the following approaches is more likely to succeed? Trying the new techniques on a less risky pilot project. Incorrect response: Trying the new techniques on high-value projects. Incorrect response: Trying the new techniques on completed projects. Incorrect response: Trying the new techniques on ongoing projects.
Trying the new techniques on a less risky pilot project. Trying the new techniques on a less risky project with a medium to low degree of uncertainty is advisable. The lower the risk, more the chances of success. You need some quick wins to help smooth transition to the new approaches. [Agile Practice Guide, 1st edition, Page 30]
Story Points
Unit of estimation measuring complexity and size.
- Given-When-Then
User story
You are responsible for designing and a new handheld gadget followed by a mass rollout to the market. The project has been requested as a result of your organization's blue ocean strategy, and if successful, will create a market for its own. However there is a high degree of uncertainty around the requirements which can only be uncovered through prototyping. Which of the following approaches is most likely to succeed? Your response: Using a hybrid model; Agile approaches for the design phase followed by a predictive approach for the rollout. Incorrect response: Using a hybrid model; predictive approach for the design phase followed by an Agile approach for the rollout. Incorrect response: Using an Agile approach for both design and rollout. Incorrect response: Using a predictive approach for both design and rollout.
Using a hybrid model; Agile approaches for the design phase followed by a predictive approach for the rollout. Since the product requirements are not known upfront and can only be discovered through a series of prototyping iterations, an Agile approach is suitable for the design phase. Once the product is developed, the mass rollout can be manage using a predictive life cycle. [Agile Practice Guide, 1st edition, Page 26]
Iteration Backlog
Work needed to be performed in a given iteration (contrast to product backlog)
Agile Requirements
charter, product vision Kickoff list of requirements prioritized
Agile prioritation
focus on customer valued prioritization the team works on things that yield the greatest return for the customer -Scrum = product backlog -FDD = feature list - DSDM = prioritized requirements list
INVEST
independent Negotiable Valuable Estimatable Small - size matters Testable