InterviewSolution
This section includes InterviewSolutions, each offering curated multiple-choice questions to sharpen your knowledge and support exam preparation. Choose a topic below to get started.
| 1. |
What are the essential engineering practices when scaling Scrum across multiple product development teams? |
|
Answer» Scaling Scrum involves using multiple Scrum Teams to produce increments of a ‘large’ product; this will involve more people with the potential communication PROBLEMS. Of the Agile Technical practices LISTED in the answer to the previous question, the following are essential technical practices when scaling Scrum:
The practice of TDD is the only way to ensure that a full suite of tests can be run to test the whole codebase.
|
|
| 2. |
How do you manage risks in Scrum projects? |
|
Answer» Managing risks in the PROJECT is the most important activity because risks can make or break your project. In risk management, you first need to:
This will help you create a list of risks, their probability, impact on your project and what are the actions needed to remove or reduce the risk. This is known as one of the following strategy:
Now once your risk response strategy is finalized then you need to PERFORM the expected monetary value analysis where you will multiply the risk score [impact * probability] and the project budget to get the EMV. That is the amount of money you stand to lose if this risk gets realized and share this data with your senior management for actionizing. Using these data POINTS and strategies, you should continuously monitor your risks and get to the success point. ☺ |
|
| 3. |
How would you prepare to kick-off transitioning to Scrum? How would you create the first Scrum team? |
|
Answer» The first transition is to constitute the team based on the project needs and skills NEEDED. This needs to be supported with thorough interview process where the technical, behavioral and attitude should be analyzed if they will be the right fit for the team. This should be FOLLOWED with workshops and training and dummy projects to drive the Agile principles and Scrum values into the individuals. In parallel, there should be team building activities that CREATE the bonding and take the team through Forming – Storming – Norming – Performing stages; so that when the sprint ACTUALLY starts, the team is already in performing stage and hence, saving precious TIME of team development. |
|
| 4. |
How do you introduce Scrum to senior executives of your company? |
|
Answer» The intention behind this question is to check the candidate's viewpoint about how he will introduce and spread Scrum across the organization. Like all living beings, any organization will show inertia initially to change and will be resistive. To overcome this BEHAVIOR and win the executive support for your endeavor, start with showing the proposed benefits that will come by moving to Agile way of doing things. It is important for them and you to understand that this change will not come by doing Agile projects ALONE; it needs to be supported by apt CHANGES in the organization structure, process improvements, cultural change and most importantly, executive sign in. Start by organizing SERIES of workshops for them where they will get to work as a scrum team on dummy projects:
Use case studies to walk them through VARIOUS companies in the world made the successful transition and the benefits they got out of that. It is an on-going process to get their buy in first, followed by training, education, enlightenment and finally the implementation. |
|
| 5. |
What do you recommend a newly formed Scrum team works on first? |
|
Answer» A newly formed SCRUM team should first work on the high value items that fit within the time BOXED sprint. So this requires ESTIMATION to be in place for those high value items. The sprint should be planned in such a way that team GETS enough time to attend discussions, daily scrum call, engage in product discovery process and work on tasks also. So ideally, you should be estimating for 5 hours of tasks per day per person. And remaining time for other activities. Time invested in product discovery during this time will help smoothen the future sprints and hence PROVIDE sustainable development. |
|
| 6. |
What’s the 2 pizza theory? |
|
Answer» According to the 2 Pizza THEORY, the team size and the meetings duration should be equal to the time required to finish 2 large pizzas. This ensures you do not overshoot the time LIMITS and MAKE it chaotic. |
|
| 7. |
What is the biggest challenge you faced in your project while handling the Scrum team members? |
|
Answer» While handling the Scrum team, the challenges are VARIED depending on the scenario and situation. The most challenging aspect included:
Use any of these points to elaborate on your challenges during the interview. |
|
| 8. |
Share your experience as a Scrum Master/Product Owner/Agile team member and what were your primary responsibilities? |
|
Answer» The Interviewer wants to know about your experiences with Scrum master or with any other Scrum roles. You can start with the most memorable experience of all. For example, if you want to talk about Scrum master experience then highlight your answer with the following points:
If you want to talk about your ROLE as a team member then include following points in your answer:
If you are planning to talk about your role as a PRODUCT owner, then your answer should include the following:
|
|
| 9. |
What is the role of Sashimi in Scrum methodology? |
|
Answer» The concept of Sashimi means delivering the software in thin slices instead of making it a full PRODUCT. As scrum follows the software development in iterative and incremental sashimi is one way of doing it. Using this technique, all the requirements such as analysis, designing, CODING, testing and documentation that are used in the constitution of a product are checked. How does that work:
Same is depicted in the diagram below. |
|
| 10. |
Share some examples from your current or previous projects where you increased the chances of delivering a high value product and how you did it? |
|
Answer» Few things you could mention based on your experience in addition to the things mentioned below.
|
|
| 11. |
What kind of situations lead to Scrum team giving false or higher or safe estimates rather than giving most realistic estimates? |
|
Answer» Reasons could be:
The Product Owner and Scrum Master should ANALYZE the issue and discuss with each team member individually or in RETROSPECTIVE meetings. Make them understand the Scrum process and encourage them to again trust their process and their own estimates.
There are scenarios where a team doesn’t have any clarity on user stories, as a result of which they add more estimates to the user story during the sprint planning meeting. The Product Owner and the team should own the responsibility of getting the clarity of user stories. The team should ask as many QUESTIONS as they can to start work on the user stories.
Sometimes the team is working on current sprint but there is unplanned work which might come as the same team is working on the same. Ideally, it should not be but have seen this practically.
User stories have some technical debt example technology not defined, database storage etc. during implementation which tools to be used. In these conditions team sometimes estimate higher. The solution could be these could be treated as part of Definition of Ready state or take them as a spike user story.
When a team moves from the waterfall model to the scrum process, they MAY estimate it higher as they are new to the process. Training on Agile estimation techniques will be helpful.
Sometimes the team may estimate higher thinking that to do one PARTICULAR task there is a dependency on other team or some vendors. Example-Purchase of hardware or License to some tool which is used for development etc. |
|
| 12. |
Your Scrum Team regularly estimates user stories at the upper end of the possible range. You believe they are playing safe, creating buffers for rainy days. How do you address this? |
|
Answer» There are multiple estimation techniques such as Planning poker, AFFINITY, wideband DELPHI, expert judgement, PERT Weighted average that help in arriving at the reasonable and correct estimates. PLEASE use these techniques in a workshop and work with the Scrum master as well to MAKE sure these ACTIVITIES are done in true essence. |
|
| 13. |
You are pushing for an important user story to be selected for the next sprint. Unfortunately, the final designs are missing — but the designers promise to deliver no more than two days in to the sprint. The Scrum Master, however, rejects the story because the ‘Definition of Ready’ has not been achieved. What can you do? |
|
Answer» Technically speaking, SCRUM master is correct and this user STORY is not a candidate for the current sprint. So your first response should be to see if you can move this story to the next spring and work with the designer to not delay from next time onwards. But SUPPOSE, the final designs will be easy to understand and will be in line with the scope of work agreed with the team then you can discuss with team and Scrum master to complete the remaining tasks with in the story in first 2 days by that time, designs will be ready and they can continue. So finally, It boils down to being Agile, adapting with the given situation while making sure that Agile PRINCIPLES are not diluted and team is not pressured into doing something they did not sign up for. Even, the final DECISION will lie with the Scrum team and not with the Product owner. |
|
| 14. |
How do you ensure the Scrum Team will be working on the most valuable user stories? |
|
Answer» Business stakeholders and OTHERS as relevant must be invited to the Sprint Planning meeting to get the necessary clarity on business value. Business value should be identified as a part of the Product roadmap planning exercise that HAPPENS ideally even before the project is taken up for execution. It is the responsibility of the Product owner to update the business value of the user stories in the required table or the fields. Then high value stories should be discussed and planned over releases and sprints. The estimation from SCRUM team helps in spreading those high value items over a reasonable period of TIME and if needed, they can be broken down into smaller pieces and HENCE deliver sustainable value to the customer over a period of time. During execution, the information radiators and daily scrum serve as an indicator on whether the team is progressing as per commitment and in the right direction. |
|
| 15. |
How do you organize a Scrum team’s collaboration with stakeholders — and improve it over time? |
|
Answer» PRODUCT Owner should arrange for a regular meeting between stakeholders and the team. The Team can ask the questions related to the requirements and get them clarified. These could be related to UI format or any technical risks. Sometimes when the stakeholders and product owners have DIFFICULTY in deciding the priority of the user stories but during discussion session with a team which consists of different skill set will be able to decide based on technical debt or some other hardware issues, which stories can be of high priority and can be delivered in the next sprint. User story mapping WORKSHOP is very important and should be arranged with the help of the Product Owner and Scrum Master. Sprint REVIEWS and demos, release demos, and user interviews are also good venues for improving collaboration between the Scrum team and stakeholders. Communication and transparency are the KEYS to achieve collaboration. Wireframes, personas also can be used for better collaboration |
|
| 16. |
At what stage do you involve the Scrum team in the product discovery process and what are its benefits? |
Answer»
|
|
| 17. |
Do you think Scrum adequately addresses the product discovery process? |
|
Answer» Yes; Scrum or any other Agile METHODOLOGY are DESIGNED to address the PRODUCT discover PROCESS. There is no DOUBT about this. |
|
| 18. |
What is Product Discovery process? |
|
Answer» Product discovery means, identifying what are the points, features and functionalities that are GOING to be useful to the customer, generate revenue and be realistic in terms of delivery. This requires the plans to be continuously updated and modified KEEPING in line with the latest feedback from end users. So this iterative process is known as Product discovery. Product discovery process can be explained in the following manner:
This way, product discovery remains an ongoing process during the project duration. |
|
| 19. |
Would it bother you if your Scrum Master suggests a course of action concerning product development? Alternatively, Can a Scrum master pitch in regarding Product Development ideas and suggestions? |
|
Answer» A Product owner’s primary responsibility is to make sure that the incremental delivery provides continuous and sustainable value to the customer and a Scrum master’s primary job is to make sure that Scrum TEAM adheres to Agile principle and Value on a daily basis. There can be times when Scrum team or a Scrum Master want to provide ideas/suggestions with respect to product development. In such cases, the discussions should be done in a professional and PEACEFUL manner to evaluate if the suggestions are actually going to help everyone [including team, PO, Scrum master and Customer]. The discussion can be based on Earned value management concepts, Scrum VALUES or Agile PRINCIPLES to correct the direction project is taking or make required improvements. So, the short answer is, suggestions and ideas should not bother ANYONE and they should be done in a peaceful, professional manner. |
|
| 20. |
How is an acceptance criterion different from the Definition of Done? |
||||||||||||
Answer»
|
|||||||||||||
| 21. |
What is an acceptance criteria? |
|
Answer» Acceptance criteria are sets of statements with clear pass and fail result that specify both functional and nonfunctional REQUIREMENTS of the user story. It acts as a guiding force for the developer to know on what basis their delivery would be evaluated for completion and correctness. Acceptance criteria is a set of expectations end user has from a CERTAIN feature or a user story. It is the responsibility of Product owner to create the acceptance criteria after talking to the customer. For example: As a teacher, I want to generate the assessment report so that I can evaluate the STUDENT performance. Acceptance criteria could be:
|
|
| 22. |
What makes Scrum “Agile”? |
|
Answer» The Scrum framework is defined in The Scrum Guide; maintained and published by Scrum.org. To get an answer to this question you must first ask the question ’What is Agile?’. The definition of Agile is owned by the Agile Alliance that was formed in February 2001, at Snowbird, Utah. The first Agile Alliance publication was the Manifesto for Agile Software Development closely followed by the 12 Principles Behind the Agile Manifesto. So, to answer the question, the Agile Manifesto and Principles are listed below with the explanation of how the Scrum Framework implements them.
“We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more”© 2001, the Agile Manifesto authors. These are the 4 Agile Values and any product development framework that purports to be ‘Agile’ must embody these Values in the specifics of the framework. It is worth noting here that although the Agile Manifesto specifically talks about ‘software development’, the Agile Values and Principles can be used to develop non-software products. Agile Manifesto explanation and how Scrum embodies the Agile Values 1. Individuals and Interactions: There must be advice about how the people involved interact and communicate: Scrum defines the roles for product development and specifies the necessary individual and group interactions. Although Scrum does define a product development ‘process’, it is tool agnostic. 2. Working software: The product development team’s focus must be on producing working increments of the proposed product and not in documenting what has or needs to be done: The Scrum framework proposes a minimalist list of required ‘documentation’. 3. Customer Collaboration: The best results for product development come when all those involved work together as one ‘team’ to solve problems whether they be business or technical people and whether they are internal or external to the product development organisation: Scrum defines a Scrum Team that includes business and technical people. 4. Responding to change: The major drawback to ‘waterfall’ processes is that they recommend obtaining all detailed requirements before development starts and create the development plan; ‘contracts’ are set in place and organisations think that they have a high degree of functional, time and cost predictability. However, as we all know, the development team discover hitherto unforeseen problems and the business change their minds. To cope with this situation, ‘waterfall’ processes introduced ‘Change Procedures’ which became bureaucratic and time wasting. Scrum uses a high-level ‘requirements list, the Product Backlog, ordered by business value the content and ordering of which is the responsibility of the Product Owner. FURTHERMORE, the Scrum framework has frequent, short events that include consideration of recommended and requested changes to the Product Backlog.
|
|
| 23. |
What techniques can I use to effect change in an organisation to help Scrum Teams be more productive? |
|
Answer» Scrum Team productivity is difficult, if not impossible, to measure for a single Team and definitely impossible when comparing productivity of different Teams. The metric that Scrum Teams usually use to help them plan Sprints is the Development Team velocity; some ‘managers’ believe that Team productivity is DIRECTLY linked to Team velocity; the higher the velocity, the higher the productivity. Nothing can be further from the truth! Velocity is Team, product and time specific and should only be used to aid Sprint planning. The value that a Development Team is delivering per Sprint cannot be used as a measure of productivity either; by its very nature, a Team will deliver higher value at the start of the product development because they will be working on higher value User Stories. Increasing Scrum Team productivity can only come from ensuring that the fundamental ‘rules’ and ‘values’ of Agile and Scrum are being followed. The following are the main areas of organisational change that will help improve Scrum Team productivity:
AND
The need for senior management Agile awareness and involvement in product development is that Scrum Teams are not isolated ‘islands’ in the organisation, they have to interact with other parts of the organisation that may resist changes to their work practices for the Scrum Teams to be productive. The motivation for these other organisation parts to adapt must come from senior management. As an example, an Agile Team was formed to implement a new process to get connecting passengers from one aircraft to another, especially if the inbound flight was delayed. The new process involved the development of a new IT system and the team planned to release increments of the new software monthly. However, when it came to the first release, the team discovered that there was an organisational process that required 2 months before ‘desktop ready’ software could be made ‘live’. The problem was resolved eventually by allowing the team to have a ‘fast-track’ release process but the resolution TOOK a month of discussions with the management of 3 other divisions within the organisation. When an Agile/Scrum transition starts, it is important to discover all the stakeholders, at whatever level in the organisation, that can influence the early team’s productivity and ensure that they understand the possible implications to them and their subordinates of the Agile transition. Mark Levison suggests one way of coping with the necessary senior management ‘education’ in his blog, Taking Organizational Improvement with Scrum Seriously; he proposes a ‘Change Management’ Scrum Team to develop the organisational change product. Keep Teams Together – The ‘traditional’ approach to product development is to create a project, assign the right people when they are needed throughout the project; there is never one coherent team; ie ‘BRING people to projects’. The Team members in Agile have all the skills needed to complete a product development; the Team size is generally constant for the whole product development. If we take Tuckman’s group DYNAMIC model, all groups of people go through ‘forming’, ‘storming’ and ‘norming’ ‘phases’ before the group becomes ‘performing’; it can take a significant amount of time before the ‘performing’ stage is reached. It therefore follows, that once a Team has reached the ‘performing’ stage, we should keep the Team together after the product development is finished; the ability to work well together as a team is more important than any individual skills. Keeping teams together can be characterised as ‘bring projects to teams’.Allow the team to determine their Sprint capacity – Some Product Owners (PO) ‘cajole’ some Development Teams to take on more work in a Sprint than the Team members think is possible. This has 2 possible effects on individual team members:
Most of this extra work can be categorised as ‘fire-fighting’; there are 2 approaches to resolving this ‘problem’:
Finally, there is a good article by Łukasz Krzyżek about the Scrum Master as a Change Agent for the organisation. |
|
| 24. |
What formats can be used to scale Scrum Events? |
|
Answer» When scaling Scrum, many of the Scrum Events/Ceremonies need to be run with all programme Teams and, sometimes, all product stakeholders present. This obviously requires a larger than normal space but the format used is important as well to maximise the VALUE of the ‘workshops’; for example, for a Sprint Review where several Teams are ‘show-casing’ what they have produced, it would be boring for the stakeholders just to sit through multiple presentations and demonstrations especially if there are features being reviewed that they have no immediate interest in. Scaled Scrum Events/Ceremonies are best run if everyone is co-located or can travel to the Event. This is not always possible or economical for organisations that have programme Development Teams and stakeholders scattered around the world.
The overall Programme Scrum Event process is SIMILAR for both non-co-located and co-located Events:
For non-co-located Teams and stakeholders, use should be made of tele-conferencing and video-conferencing technology. Scheduling of combined and ‘break-out’ sessions can be difficult if the Teams and stakeholders are in widely different time zones; what would normally be a half-day Event may have to become a full day or even a day and a half.
For a co-located programme and stakeholders, it is essential that the ‘main room’ is big enough to hold all participants and is equipped with white BOARDS and flip charts. If the room is really large, then a big screen and PA system may be required The ‘break-out’ sessions may be held in the same room; some or all may be held in readily accessible smaller rooms.
The detail of how the ‘big-room’ Events may be run and facilitated vary but the 2 most common are Open Space and World Cafe. The following are how the ‘standard’ Overall Programme Scrum Event Process may be CONFIGURED for specific Events:
For one-Team Scrum we would only plan a Sprint at the beginning of a Sprint wherever we are in the Release cycle but for a programme, the stakeholders will need to have some idea what will be in the Release and the Teams need to produce outline Sprint Plans so that dependencies between Teams may be discovered, minimized and planned for. Before the joint planning session, the Programme Manager will have worked with the relevant stakeholders to set a Release Goal and select potential features for the Release ordered by business value. At the start the start of the Event the Programme Manager may allocate potential Release features to Teams or the Teams can volunteer for them. The Teams, aided by relevant stakeholders, will go into concurrent ‘break-out’ sessions to decompose the features into User Stories and estimate the total effort required for each feature; this activity should be timeboxed to reduce the risk of the Teams going into too much detail. The Teams will come together to see each other’s list of User Stories, to identify dependencies and distribute User Stories so that the effort is spread evenly between Teams. The Teams then go back into ‘break-outs’ and produce an outline Sprint plan for each Sprint in the Release. Finally, everybody comes together to produce/update the Release Plan Board with the outline Team Sprint Plans to ensure that the highest value User Stories will be developed first and that inter-Team dependencies have been catered for.
Some Programme Teams hold their individual Sprint Planning in the same space but separately and then ‘compare notes’ toward the end of the session to ensure that dependencies have been identified and catered for.
Some co-located Programme Scrum Teams hold the daily Scrums at the same time and in the same space but separately, then each team summarises any highlights to the other Teams. Other organisations hold their Team daily Scrums as ‘normal’ and the Scrum Masters have their own ‘daily Scrum of Scrums’ at a convenient time.
A programme Sprint Review involves all Teams and all relevant stakeholders so the large space is needed for a co-located programme. The workshop starts with the Programme Manager SUMMARISING what has gone on in the Sprint then the stakeholders attend as many Team demonstrations and hands-on trying of functionality as ‘break-outs’, held either in the same space or readily accessible ‘break-out’ rooms. There are usually white boards and/or flip-charts available for stakeholders to make notes about things that they would like to be discussed toward the end of the Review when everybody comes together again. The final ‘all-together’ session also includes the Programme Manager asking the stakeholders if there are any features/User Stories that need to be added to the Product Backlog; if there is anything that needs to be deleted from the Product Backlog and if the current ordering is still viable. For non-co-located Teams and Stakeholders, the individual ‘break-outs’ can be run as concurrent timeboxed ‘webinars’ at scheduled times throughout the Review session; each Team running several ‘webinars’ to allow as many stakeholders the chance to ‘login’.
Although each Programme Scrum Team may hold their own Sprint Retrospective, it is important that a Programme Sprint Retrospective is held. A Programme Sprint Retrospective follows the Overall Programme Scrum Event Process described above; the opening session is used to identify the good and bad things about how the programme is running and choosing the most important issues that need to be addressed. Each ‘break-out’ session focuses on one area of issues and any members for any Team attempt to find the root cause of the issue and devise resolution plans. There may be an interim coming together to discuss progress so far and maybe add to or subtract from the list of issues to be discussed in a second ‘break-out’ session. During the final coming together, the results of the ‘break-out’ sessions are discussed and plans are devised to resolve the most important issues. |
|
| 25. |
How can inter-team dependencies be handled when Scaling Scrum? |
|
Answer» When a product is being developed by multiple Scrum Teams it is recommended that there be 1 Product Backlog (PB) for that all the Teams draw from to produce their own Sprint Backlogs. It is probable that 1 Team may be dependent on an output from another Team before they can develop a particular Product Backlog Item (PBI); for example:
“As a customer I need to pay for my goods/services So that the company will send them to me”
Clearly, Team B has a dependency on Team A such that Team B cannot start their part of the payment functionality until Team A has completed their part. When Scaling Scrum, the aim of Release Planning is to minimise the inter-team dependencies; it is improbable that all inter-team dependencies can be eliminated. The following are some of the ways that inter-team dependencies could be handled:
MMF is the group of features that make up the MVP. The Release Plan may be developed using the following steps:
For the payment example above, you may end up with a Release Plan Board and proposed Team Sprint plans that looks something like: Possible Release and Sprints Plans You can see that all Release MMF are planned to be finished by the end of Sprint 2 leaving Sprint 3 to cater for any overruns.
With the advent of Component-Based Development (CBD), some organised their development teams into Component Teams and Product Teams who ‘glued’ together the necessary components. If this continued into an Agile environment, then each ‘product’ development team would be dependent on separate component teams and the required coordination would be an onerous task. In an Agile environment it is recommended to have ‘Feature Teams’; 1 Team should be responsible for the end-to-end development of all of a Feature’s User Stories. This does not preclude the reuse of components; part of the organisation’s Design Strategy would require that a separate (possibly non-Agile) Component Management Team (CMT) REVIEWS the output of the Development Teams to see if there is any functionality that could be componentised; the CMT are responsible for componentising the functionality and maintaining a Component Library. Before writing any code, the Development Team search the Component Library for any components that would be useful. Component Teams Feature Teams
Scrum of Scrum meetings are conducted at regular intervals, probably at least once per week, to track dependencies among scrum teams.
Dependency threads or tags may be used for visualization of dependencies among features and/or teams.
As part of Agile programme management, “independent” dependency teams may be used to track inter-team dependencies, blockers, external dependencies and ensure they are taken to closure. |
|
| 26. |
When might Scaling Scrum not be a good idea? |
|
Answer» The senior management of some (if not many) large organisations, having accepted the IDEAS behind Agile and knowing that the one-team Scrum framework is inadequate for their organisation, try to go straight from a TRADITIONAL organisation to a ‘Scaled Scrum’ organisation. Those that have tried this have hit severe cultural problems and perceive that ‘Agile does not do what it says on the tin’. Implementing the cultural changes required for single-Team Scrum is difficult enough; the problems with trying to implement the cultural changes required for ‘Scaled Scrum” are exponentially more difficult. The following is advice about when not to scale Scrum:
When beginning the agile journey, it’s critical that you start small and master the basics. Introducing a large enterprise framework with multiple dependencies presents a steep change curve and typically requires extensive investment. In the early stages, you will reap greater benefits if you focus on developing the core agile principles and Scrum Values Work on developing a good backlog, meeting commitments, reaching a standard velocity, and achieving high-quality output. Additionally, starting small creates excitement, focuses on quick wins and learning more nimbly.
You may have reached the stage where you have multiple Scrum teams, that are working well in a Scrum environment and have started introducing larger epics that could benefit from being split across multiple teams. This may seem like a natural point in the journey where you may start to ask whether you are ready to scale. Before taking that leap, it is strongly recommended to optimise your current Scrum teams and Agile processes; really concentrate on strengthening your base in order to maximize throughput and ROI—instead of trying to build the product-development processes that you will need for Scrum at scale. If you are at this point in your Agile journey, take a LOOK at implementing test-driven development, continuous integration and deployment (not included in the Scrum Guide) and meeting commitments on a regular cadence.
Scaling Scrum has become incredibly popular in many industries; SAFe is a buzzword in the agile community; companies that are truly ready for enterprise frameworks are getting major rewards from them but that by itself is not a sufficiently good reason to move to an enterprise framework. The transition from team-level Scrum processes to an enterprise framework requires a significant investment in change management. The move should be well thought-out and cautiously approached. If you have specific problems that scaling can solve, lay them out with an advisor and see if the journey is worth the investment. When you’re ready, know that enterprise frameworks are tried and true TOOLS that have delivered tremendous benefits for many organizations but you have to be at the right point in your journey to take advantage of these tools. |
|
| 27. |
What are the techniques to analyse impediments in depth? |
|
Answer» It is often tempting to see the immediate symptoms of a problem and FIX things so that these symptoms disappear only to see different symptoms appear later for a related problem. To successfully solve problems, we must get to the root cause of the problem; so-called Root Cause Analysis (RCA). The following are popular techniques used to carry out RCA:
Brainstorming the RCA relies on SEVERAL people producing their thoughts and feeding off other people’s thoughts in order to converge on the probable root cause of the problem. It is a relatively unstructured technique for RCA and it can be difficult to see the root cause amongst a great deal of data.
The 5-Whys technique is possibly the simplest RCA technique; it is a little like an annoying 5-year old asking question after question to the answers you give them. Essentially, the RCA workshop facilitator keeps asking “why” until an apparent problem root cause is discovered. Generally, a minimum of 5 ‘Why?’ questions are asked, although sometimes more or less may be needed. For example:
This example could be extended to discover why the vehicle had not been maintained properly; the root cause could be that the need for regular servicing was unknown; the questions go on until the group agree that a fixable cause has been found.
Flowcharting can help discover problems about a process in a graphical manner; a group of people affected by the problem will chart the supposed ‘As-Is’ process to see where the problem has arisen:
A Fishbone or Ishikawa Diagram is most useful when the “5 Whys” technique is considered to be too basic. In a Fishbone Diagram, the various causes are grouped into categories, with arrows in the image indicating how the causes flow toward the problem; categories used in the diagram are not pre-defined but common categories include equipment, processes or methods, measurements, materials, environment and people. This TYPE of RCA seeks to understand the possible causes by asking questions such as “what actually happened,” “when,” “where,” “why,” “how,” and “so what” until a possible cause is identified and the consequences and significance is investigated further for each category; for example:
An Affinity Diagram is a tool that gathers LARGE amounts of language data (ideas, opinions, issues) and organizes them into groupings based on their natural relationships. The Affinity process is often used to group ideas generated by Brainstorming. See Affinity Diagram for more information |
|
| 28. |
What are the typical organizational impediments that Scrum Teams face and how can they be addressed? |
|
Answer» There are many opinions as to what the ‘typical’ impediments that Scrum Teams face are; the following list is not exhaustive but covers the impediments that Scrum Teams may probably face:
Also, when DEVELOPMENT Team Members, new to Scrum, are under ‘pressure’, it is natural for them to revert to old work practices because they know them and having to think about and use the new work practices takes more time and increases the pressure. Solution: During the early stages of an Agile Transformation, the role of a Scrum Master as the Risks and Issues Manager, is key. During the daily Scrum, he/she must listen to what the Development Team members have been working on and what they plan to be working on; note any item that does not seem to be adding to achievement of the Sprint Goal and discuss with the relevant developer after the Scrum has finished. If the item is a ‘hang-over’ from the old ways of working, the Scrum Master must identify the person who asked for the item and engage them in a ‘Scrum Mentoring’ session to explain why their request is inappropriate. Similarly, the Scrum Master should question any developer that does not seem to be following the Agile and Scrum practices; for example, the developer may be building the user interface for a User Story from his/her own knowledge, because it is quicker, without collaborating with a relevant business person to get the correct information.
In ORGANISATIONS that are used to using Matrix Management for resource allocation, it is usual for one person to be working on MULTIPLE product developments or other work. This causes the individual to become distracted from the necessary work for any one of their assignments which results in reduced quality of their work and more time overall to complete the work. Solution: Scrum requires that the Development Team is made up of all the skills necessary for the development and that the relevant resources are dedicated to the product development. The Scrum Master must work with the matrix managers to assign resources to one product development at a time for the long-term and not assign people based on short-term expediency. There may be occasions when a particular Development Team member is considered to be the only person who can solve a problem outside of their immediate product development responsibilities; as long as this is to be a short-term (1 to 3 days) commitment, it is allowable but their reduced development capacity must be reflected in the Team’s expected velocity. If this situation is a common occurrence, it is a significant impediment to the Team’s progress and the Scrum Master must escalate the impediment to the Product Owner.
The team member skills are different for each ‘phase’ of the waterfall development process, whereas with Scrum we require all necessary skills to be available at all times throughout the development: Solution: As in Distractions above, the Scrum Master must work with the organisation resource allocators to ensure that Scrum Development Teams are composed of members with all the necessary skills for the development all of the time.
We expect Scrum Development Teams to be self-organising, cross-functional and work in a collaborative manner; traditional HR systems are an impediment to this goal. Solution: The Scrum Master must work with the HR department to make them more Agile. There is a good article from the Agile Alliance, Practicing Agility in Human Resources, to help with this HR coaching.
The ‘mechanics’ of Scrum are relatively easy to implement but it is implementing the Agile values from the Agile Manifesto, the Agile Principles and the Scrum values from the Scrum Guide that make Scrum work; these values are principles are the hardest part of Scrum to implement because they require an organisational culture change. Many organisations implement the Scrum ‘mechanics’ and ignore the values and principles and then wonder why this ‘Agile thing’ is not working. Solution: It is not possible to change an organisations whole culture overnight! It is recommended that the Scrum Master, during the early stages of an organisational transformation, focus their ‘culture changing’ efforts on the stakeholders directly involved with a single product development. Some may be sceptical so the Scrum Master may have to spend a significant amount of mentoring time with them. Even though the Scrum Master may explain the implications of Scrum to sceptical stakeholders (and developers in some cases), some people do not believe until they see the results. Be prepared to answer all the sceptical people’s questions but do not let them introduce non-Agile practices.
In ‘traditional’ organisations where there are many meetings, many required meeting attendees get bored and turn up late because they know that the early Agenda items probably have nothing to do with them. Solution:
When more than two people are required to discuss a topic or make decisions, hold a facilitated workshop. Although some say that a facilitated workshop should have an Agenda, the word ‘Agenda’ still indicates to some that a facilitated workshop is just another name for a meeting. Instead, have clear workshop objectives which are tightly focused around a single topic so that all workshop invitees are motivated to attend on time. For those people who still consistently turn up late, the Scrum Master must individually mentor the person as to why it is important for them to be on time:
Solution: The Scrum Master, as the Risks and Issues manager, must work with the affected developer to RESOLVE the problem and if the resolution is not successful, he/she must escalate the problem to the Product Owner (PO) who may have to use their seniority and company politics to resolve the problem themselves. Remember that the PO is solely responsible for ensuring the best business value emanates from the product development; blocked work reduces business value.
Solution: The process for dealing with Supplier Issues will probably be different between ‘internal’ and ‘external’ suppliers.
In both cases, if resolution is not possible and given that there is Programme Management in place, the Scrum Master should escalate the problem to the PO and facilitate the problem resolution with the Programme Management. |
|
| 29. |
How can I explain Scrum to a business stakeholder? |
|
Answer» For many years, business stakeholders have seen or been involved with building products using the so-called ‘waterfall’ model; business stakeholders are intensely involved at the beginning of the development to specify the detailed requirements and do not get involved again until just before deployment to do User Acceptance Testing (UAT). People get USED to a way of working even if they experience problems with it; it is human nature to ‘get on with it’ and/or develop personal ways of mitigating the problems that they experience. Many business stakeholders are sceptical about ‘wholesale’ changes to the way that they are being asked to work especially as, superficially, their involvement with the product development is significantly increased. Also, many senior business managers are risk averse and require predictability from the product development process. The reasons why the waterfall development model evolved are beyond the scope of this question; to explain Agile to a business stakeholder, you need to know the major elements of the waterfall model that can cause ‘problems’ for the business:
Each business stakeholder will have had frustrations based on one or more of potential waterfall problems; before trying to explain the whole of Agile, it is recommended to start by discovering which areas of the waterfall development process is causing the frustrations and explaining the aspects of Agile that will HELP overcome them. One model of product development to base your explanations around is ‘The Iron Triangle’ Waterfall sets out to define all the detailed requirements and plan how they will be implemented; the resulting ‘contract’ assumes that features, time and cost are all fixed. However, as already said, it can take a long time to capture the detailed requirements and plan their implementation; however, things never go ACCORDING to plan (requirement changes, staff changes) and so, when trying to implement a ‘fixed’ requirements list, the result will probably be time and cost overruns. An Agile product development approach turns the ‘iron triangle’ upside-down: You can see from Figure 4 that with an Agile product development process:
The requirements variability is based on ‘high-level’ requirements and needs some rules to give the business some confidence; the main rule is the Minimum Viable Product (MVP). One of the major advantages of an Agile product development process over a waterfall one is that the product is delivered incrementally allowing some return on investment before the product is ‘completed’. Incremental delivery can also help with experimentation when the product details are unclear; parts of the potential final product can be deployed early to get ‘customer’ feedback that will help produce a better product. One of the important factors when explaining Agile to a business stakeholder is to make SURE that they understand the major differences in output that they can expect compared with waterfall and the differences expected of them:
Another approach to answering this question can be found at How to Explain Agile to Your Stakeholders. |
|
| 30. |
Which techniques can be used during a Backlog Refinement session to create Sprint ready Product Backlog Items? |
|
Answer» The Product Owner (PO) is responsible for all of the Product Backlog Items (PBI):
The Development Team are responsible for estimating the size and complexity of each PBI; this will be done initially just before development work begins. During the development Sprint Planning, the Team must select the NEXT highest value PBI to be attempted during the Sprint. However, as time goes on, the PO and Development Team need to apply any lessons learned from development so far to ensure that the candidate PBI are sufficiently well described and sized (but see Scrum.org Myth 14); this ‘confirmation’ is done during Backlog Refinement during which the following questions are answered:
All of these criteria and others to suit a specific situation can be documented as a ‘Definition of Ready’ checklist. There are a series of blogs that make interesting background reading: Product Backlog Refinement explained. See also Grooming the Product Backlog Techniques
Also known as Specification by Example (SbE)
Although using BDD requires a toolset that might not be available, you can use the structured language to create PBI Acceptance Criteria:
An example: |
|
| 31. |
What may be the benefits of having the Product Owner included in Retrospectives? |
|
Answer» The Sprint Retrospective is a key ceremony for ‘Inspect and Adapt’ to aid Continuous Improvement. Many organisations have only the Development Team, facilitated by the Scrum Master, to reflect on their past process performance and make PLANS to improve it. However, The Product OWNER (PO) is also a member of the Scrum Team and there are advantages to having the PO included in the participants of the Retrospective:
If the Development Team have ‘a problem’ with the PO, it is tempting for them not to invite the PO to Retrospectives but this ‘problem’ is an issue and as a Scrum Master it is part of your responsibility to help resolve issues; the Retrospective is the best mechanism to discuss and resolve problems between the Development Team and the PO. |
|
| 32. |
How can the Product Owner and Development Team move from the Product Vision to the Product Backlog? |
|
Answer» It is not advisable to go straight from the Product Vision to collecting requirements for the Product Backlog. The Product Owner (PO) is solely responsible for the value produced by a Product Development and to have some understanding of this value the Product Objectives, Benefits and an initial Business Case should be investigated to check that, in all probability, the product will produce value for the company; it is no good having a great product if no one will buy it and/or it will take 5 years to recoup the development costs. To help the Product Owner and Development Team move from the Product Vision to the Product Backlog, as a Scrum Master, you can arrange a series of facilitated workshops to DETERMINE the Product Objectives, Business Case and Backlog. Product Objectives The Product Objectives are a list of things that enable the meeting of the Product Vision. It should not be a long list; between 5 and 10 is usual; Objectives are not requirements. Some examples:
Although a Product Vision may state some development attributes that can be measured, most do not; it is the Objectives that should be measurable. Some people use S.M.A.R.T Objectives. The Objectives list may also be ordered by business value and may define what is to be included in a Minimum Viable Product (MVP). Benefits From the Objectives list, we can now make an ESTIMATE of the expected benefits that we expect the product to give to the ‘customer’ (internal and/or external) and the company; each Objective may contribute to more than one category of Benefit; for example, an Objective of “Reduce report creation time by a minimum of 50%” may have the following Benefits:
Although we have USED percentage values in the examples above, it is recommended that actual monetary values are used.
Now that we have the expected Benefits from developing the product, we must now estimate how much it might cost to develop. At this point, the Development Team may not have been chosen:
To help the PO create an initial Business Case, as the Scrum Master, arrange a facilitated workshop to include the PO, relevant stakeholders and senior ‘technical’ personnel to investigate the PROBABLE costs of:
From these investigations, the workshop participants must decide as to which option will give, potentially, the best value. The costs of the potential solution option must be compared with the expected benefits to make a cost-benefit decision as to whether the proposed product development is worthwhile. See the APM website and other websites for more detailed information and ideas.
Once the Business Case has been approved, the PO can turn his/her attention to creating the Product Backlog. As the Scrum Master, organise a facilitated workshop to include the PO, relevant stakeholders and the Delivery Team to discover the Product Backlog Items (PBI), usually User Stories, that will fulfil the Product Objectives. These PBI will be estimated by the Development Team and the results fed back into the Business Case to ensure that the cost-benefit analysis still indicates a viable development. |
|
| 33. |
How can I help the Product Owner create the Product Vision with the Development Team? |
|
Answer» Definition: Firstly, we must define what the Product Vision is. Just as any Vision, the Product Vision should be a short statement of what the product is for. Here are some characteristics of a good Product Vision:
Roman Pichler, the acknowledged father of Visions, says that Product Visions should be:
Additionally, make it:
Examples Before investigating how to help the Product Owner create the Product Vision with the Development Team, let us look at a couple of examples: Tesla:
Whilst this Vision ‘breaks’ the one sentence guideline, it does fit Roman Pilcher’s advice. Ikea:
This is a short and broad Vision for the company that will drive the products that the company produces ie will a proposed product help ‘create a better everyday life for the many people’.
So how does the Product Owner, who is responsible for the Product Vision, go about creating the Product Vision? Firstly, the creation of a Product Vision is best DONE collaboratively; as a Scrum Master, arrange a facilitated workshop with the Product Owner, relevant stakeholders and the Development Team to ‘brainstorm’ ideas; you may facilitate the workshop yourself (see Creating A Shared Vision That Works). There are 2 widely USED ‘models’ to use to help create a Product Vision:
The idea behind the Elevator Pitch is to put together a statement about something to ‘pitch’ to the CEO when riding in an elevator; we are not going to do this; it is the elements of an Elevator Pitch that we need to explore for the product so that we can come to a suitable form of words for the Product Vision. There are different lists of Elevator Pitch elements; for now, we will look at the following list from Roman Pichler:
By ‘brainstorming’ the above elements, the workshop participants get a better understanding of the product and can converge onto a suitable Product Vision.
In a facilitated workshop, the participants imagine the product to be a ‘shrink-wrapped’ physical box CONTAINING the product; or it may be that the product is to be ‘shrink-wrapped’. The elements of the box are:
There is a good description of how to run a Design the Box workshop at Design the Box. Again, as with the Elevator Pitch, the workshop participants get a better understanding of the product and can converge onto a suitable Product Vision |
|
| 34. |
What are the ‘Agile’ technical practices? |
|
Answer» The ‘Agile Technical Practices’ or ‘Agile Programming Practices’ all come from work carried out or developed from other ideas by eXtreme Programming practitioners; They are not part of Scrum or any other Agile framework but have been adopted by many, if not most, Agile programmers as a ‘toolkit’ of ‘BEST practice’ for producing minimal, ‘clean’ and maintainable code. The list of practices, with explanations, is as follows:
There will be many artefacts that are best displayed on a wall and it is best to keep them in one place.Also, the Team members can obtain ‘osmotic communication’ just by being in the same area as OTHERS having conversations.
Because nothing is considered ‘finished’ the first time through (it may meet the Definition of Done for the current SPRINT but may have to be modified for other functionality in a later Sprint), other programmers need access to all the code in order to update it when necessary; if they do not have access, they may write redundant code.
Contrary to some beliefs, this practice does not double the cost of development because the resulting code will be virtually bug-free thus reducing rework time considerably
The practice does require the use of an Integrated Development Environment (IDE) that supports TDD or access to a TDD framework that supports the programming language being used.
Integration system builds should be done as often as PRACTICABLE to catch errors early and make them easier to find and fix. Some organisations do a full build of source code that has been checked-in to the source code repository every 2 hours; some organisations do a full build each time code is checked-in to the source code repository. This practice does require the use of automated system build systems. |
|
| 35. |
What is the ‘Definition of Done’ and how do I help to create one? |
|
Answer» The ‘Definition of Done’ (DoD) is a checklist of all the activities that must be completed for a Product Backlog Item (PBI) before it can be considered ‘Done’ and is fit for review by the WIDER stakeholder community and potentially released to the live environment; the DoD is a key artefact for Product Development quality control. The DoD is assembled and agreed by the Product Owner (PO) and the Development Team members. Potential Problems with initial DoD There is a possibility that the Team develop a minimalist DoD and submit it to the PO for approval; some PO will give it a cursory glance and approve it. In such situations, as a Scrum Master, you should remind the PO that he/she is solely responsible for the value to be accrued from the Product Development and that he/she needs to understand each DoD element in case any have been forgotten or any are unnecessary; the best way to achieve this is for you to facilitate a DoD workshop with the PO and Development Team members. Another problem with minimalist DoD is that they assume that small but significant steps in the development process will be done because ‘they are obvious’; they may be obvious in the ‘cold light of day’ but not so obvious in the ‘heat of development’; as a Scrum Master, you should encourage the rest of the Scrum Team to include more detail in the DoD than seems necessary; items can ALWAYS be taken out if they are felt to be redundant. DoD Examples The DoD for software development may include items such as:
The DoD for a PBI is usually peer-reviewed by another Team member that has not had significant input to the PBI development. Given that Scrum is not just for software development, a DoD for a non-software product development, such as running an event, may look something like this for the PBI of ‘As the Invitations Coordinator, I need to send invitations to the event, so that we maximise attendance’:
Once all the DoD items have passed their checks, the Invitations Coordinator is authorised to send out the invitations. |
|
| 36. |
What is a multi-staged model for team formation and development? |
||||||||||||||
|
Answer» All multi-staged models for team formation recognise different stages that a group of people go through from the start, getting together, to becoming a high-performing team. There are several published models from those that involve rigorous mathematical steps to analyse team NEEDS and individual attributes, such as that proposed in TWO Multi-Objective Stochastic
Models for Project Team Formation Under Uncertainty in Time Requirements, to the more simple and well-known Tuckman Model. Tuckman’s model, first published in 1965, initially only had the first 4 stages in the table; he added the 5th and 6th stages in 1975. At first the group of people are reliant on a ‘leader’ and as the group emerges as a team, they become less reliant on a ‘leader’ and become self-organising |
|||||||||||||||
| 37. |
What is an ‘homogenous team’ and what are the pitfalls of having one? |
|
Answer» A homogenous TEAM is one where the members are all similar in background, gender, age and culture; we are not talking about similar skill-sets but general life experience. Homogenous teams have been shown to suffer from the following drawbacks:
|
|
| 38. |
Which methods can I apply to help a team improve its performance? |
|
Answer» There are several ways to help a Team improve its performance but they can be categorised as follows: Ensuring the Team has COMMON goals and purpose: The performance of a Team that is ‘pulling in different directions’ will never be optimal; all Team members must know the product development and objectives and FULLY buy-in to them; no ‘ifs’ or ‘buts’ Ensuring the Team understands and embraces Shared Accountability: We all understand self-accountability; you do something wrong and you pay the price. Team Accountability or Shared Accountability is taking responsibility for others ie Team members must be aware of the work that others are doing and be prepared to challenge their work for the GOOD of the Team Having a Working Agreement: A Team Working Agreement states the ‘rules’ that the Team will follow to produce a valuable product; is something that the Team members discuss and agree; nobody ‘issues’ a Team Working Agreement to the Team. The Agreement can contain ANYTHING that the Team would feel useful to enhance collaboration ie:
|
|
| 39. |
What are the key attributes of an effective Agile Team? |
|
Answer» There are many lists of the key attributes of effective Agile Teams produced; the following list distils and collates the common themes of most of them:
Effective Agile Teams set their own Working Agreement, Ground Rules, whereby the members know and buy-into the Team working practices into which are usually elements to do with all the following attributes.
In a successful agile team, the team members work together on features; UI designers, developers and testers work together to ensure that they, as a team, have finished a story. All Team members are aware of their own and colleagues’ strengths and weaknesses so he/she knows who to go to for improvement advice for themselves and who else he/she can help to improve. As the successful agile team collaborates to finish features, they avoid the problem of having many features started but none getting finished at the end of the Sprint.
Obtaining feedback at regular, short intervals is a major contributor to the success of an Agile team; they use 1 to 3-week Sprints so they can produce potentially shippable increments of a product to obtain feedback form the WIDER stakeholder community. During the Sprints, if it is not possible to work with end-users directly, successful teams will seek feedback at every stage of the development of each Product Backlog Item (PBI).
As in all product development, conditions are not always favourable in an Agile environment:
However, the Team must GET the work done; Agile team members must be adaptable to any kind of situation (be it the ideal or the worst situation). Agile team members must be willing to work outside their specialisations. This does not mean that they are expected to work in areas that they know nothing about; they can help other Team members under their supervision; the simplest form of this is for anybody to run test scripts if they are becoming a bottleneck.
Good intra-Team communications is one of the major characteristics of a successful Agile team; Team members:
Successful Agile teams members are fully ‘bought-in’ the Product Vision and Objectives and are fully committed to ACHIEVING the best value for the business within time and cost CONSTRAINTS. They try to find ways to share their knowledge, learn various new things and enhance their own skills. Also, all Team members must be able to see where Team members’ workloads stand at all times; if someone is overloaded, members must be willing to help the over-burdened person so as to smooth workflow across the team; this would normally happen during the daily Scrum. |
|
| 40. |
What are the differences between a ‘working group’ and a ‘team’? |
||||||||||||||||
|
Answer» Generally:
The following table compares how attributes differ between working groups and teams:
Table 1 - Differences between Work Groups and Teams |
|||||||||||||||||
| 41. |
How can a self-organising team approach challenges that they discover during a Retrospective? |
|
Answer» Even good self-organising teams can face challenges with RETROSPECTIVES in how they are run and addressing issues that they discover. The following are some of the most commonly experienced challenges with their suggested solutions:
Solutions: The Team must devise a plan to attempt to resolve ‘external’ problems probably involving the Scrum Master as the Risks and Issues Manager Although there may be parts of their process that are working ‘OK’, the Team should devise experiments to innovatively change some parts and review the changes at the next Retrospective
Solution: The Retrospective facilitator should change the format of the Retrospectives by using ‘games’ to elicit required information from the group; see Fun Retrospectives and Agile Retrospectives Ideas: Games For Your Next Retrospective for more ideas than a Retrospective facilitator could possibly use All Talk, No Action: During early transformation Retrospectives, the Team are likely to come up with many impediments; the list may seem daunting and the thought of discussing them all is de-motivating. Also, although the impediments may be discussed and understood by all, there is no plan to resolve any of them Solution: Timebox the DISCOVERY of impediments. The Team members will, hopefully, only come up with their most important impediments Treat the Impediments or Blocks List like a Product Backlog Before discussing any impediment, get the Team to order them in terms of Team importance Discuss only the top 2 or 3 impediments and produce plans to try to resolve them Every 2 or 3 days during the next Sprint, get the Team to state how the plans are going The first item for the next Retrospective should be to discuss the result of the plans; removing the impediment if it has been RESOLVED or putting it back onto the Impediments List for consideration with the rest of the un-resolved and un-discussed impediments. |
|
| 42. |
What are the challenges facing self-organising teams and how can I help reduce the impact of these challenges? |
|
Answer» There are many challenges facing self-organising teams which can be grouped into the following categories: Organisational inertia. In organisations that have been around for some time, the way that things are done have become habits; many supervisor and management personnel are reluctant to change from fear of their job changing significantly or disappearing altogether Individual Team members’ inertia. Individual Team members may have fears about:
A Scrum Master must be aware of these potential challenges to self-organisation, look for signs of them and help both the organisation and Teams to overcome them. Below are 3 typical challenges faced by teams and the possible help that a Scrum Master can give:
However, the time to address the UNDERLYING problem to do with estimating is during the Sprint Retrospective when the estimates for each Sprint Plan PBI should be compared to ‘actuals’ to see if there was any common reason for the estimates being inaccurate or if there were one or two ‘one-off’ estimating mistakes. If there was a common or systemic reason for inadequate estimates, the Team must re-estimate the Product Backlog in the light of the new evidence; if the errors were due to ‘one-off’ inaccuracies, the Team should re-estimate similar User Stories in the Product Backlog. Emphasise with the Team that nobody is expecting ‘perfection’ straight away; the importance is that they take time to learn from their experience and apply that learning going forward.
The programmers aim is for ‘clean’ and simple code but the temptation is to produce something that works now without considering future maintenance needs. The fact that the resulting code may not be ‘clean’ and simple is known as Technical Debt.
There are 3 suggested solutions that a Scrum Master can encourage the Team to adopt to address potential Technical Debt problems:
Do not let the Team wait until the end of the Sprint to do the code reviews, have them do it once the programmer believes that he/she has finished. In this way, there is the shortest time between ‘finished’ and any refactoring that may be needed.
With TDD, no line of production code is written before a test has been written to test it, the test is run and is expected to fail. Only enough production code is written to pass the test. See Test-Driven Development. Practicing TDD does require an Integrated Development Environment that supports it and to be successful, all programmers must have the discipline to use it. Initially, some programmers may be reluctant to use it because of the perceived extra work; however, when they see that the maintenance effort is reduced by more than the extra initial work, they come to accept the practice. Team Member Leaves: Each Team member has a list of responsibilities and capabilities including their own specialisation, DoD checking and contributing to work outside of their specialisation. The Scrum Master should keep a list of all these responsibilities and capabilities so that when a Team member leaves the Team for some reason, the REMAINING members can distribute the leavers responsibilities and capabilities amongst themselves. If it is not possible for any of the remaining Team members to take on any required responsibility or a required capability is not available, the Scrum Master must raise this as an issue with the Product Owner and management; a Team member training may be the resolution to the issue or an additional Team member may be introduced to the Team. In the latter case, the Scrum Master should monitor how the ‘new’ Team are managing their self-organisation. |
|
| 43. |
Which ‘Coaching Techniques’ can I use to help the team be more self-organising? |
|
Answer» Self-organising teams is one of the keys to Agile success but experienced developers who are used to working in a ‘command and control’ environment may find it difficult to adopt this Agile practice; they are used to being told what to do and sometime how to do it. Instead of asking the Project Manager (PM) what to next, a developer needs to look at the Team Board and choose what to do next; instead of asking the PM how to do something, he/she should consult their peers on the development team; if no one knows, that is an impediment and the Team should discuss how to resolve the issue. The Scrum Master, as the Risks and Issues Manager, can help the team decide how to resolve the problem but should not be expected to solve it for them. The main coaching techniques that a Scrum Master can use to help the team become more self-organising are
Powerful Questions are open questions ie they cannot have a yes or no answer; they usually start with ‘who’, ‘why’, ‘what’, ‘when’, ‘how’ or ‘where’; they may also start with statements such as ‘Tell me about …’. Reflecting a statement back to an individual can help prompt further exploration; for example, “You said you were worried about the quality of the product so far … tell me more”. For more information about Powerful Questions, SEE Coaching with NLP.
To foster the intrinsic motivation, we need to examine the following aspects of individuals and the Team:
Giving individuals and teams more control of what to do, when and how to do it, motivates them more. Also, if individual Team members identify with their team (their tribe) the team becomes more autonomous and self-directing.
As a Scrum Master you should discover what the Team members know now and ask them to have a go at something small but significant in Scrum and give them the space and time to experiment on their own to work out how to do it. Most people want to do better; by helping individuals and Teams toward Mastery leads to greater Team self-organisation.
Whenever possible, involve the Team in the early stages of product development; let them hear the discussions about forming the Product Vision and Objectives; let them have an input to the Product Backlog ordering. For more about Autonomy, Mastery and Purpose see Drive by David Pink and Intrinsic Motivation by Richard Ryan and EDWARD Deci
Pay Attention Give the speaker your undivided attention and show that you are hearing the message; your non-verbal communication, body language, can help the speaker feel comfortable.
Use your own body language and gestures to show that you are engaged.
Your own assumptions, judgments, and beliefs can ‘distort’ what you hear. As a LISTENER, your role is to understand what is being said; this may that you have to ask questions to clarify what is being said.
|
|
| 44. |
What is the ‘Coaching Stance’ and how does it impact any coaching situation? |
|
Answer» The coaching stance is what the Agile Coaching Institute (ACI) refers to as “the heart” of their Agile Coach Competency Framework. The coaching stance is supposed to be the place you start from and return to. The coaching stance elements highlighted are:
|
|
| 45. |
What are facilitative listening techniques? |
|
Answer» with many facilitation tools, facilitative listening is perhaps most useful when there is a chance that conflict may arise. Facilitative listening is sometimes known as ‘active listening’ and is ultimately about making sure that all group participants are properly listening to each other. The following are techniques to help with facilitative listening:
It may be that the listener does not totally understand the statements being made by someone:
Both of these are examples of paraphrasing. Part of your responsibility as a facilitator is to be aware of the listeners ‘body language’ and if you believe that one or more are not fully understanding what is being said, you could ask:
Workshops are set up for participants to express themselves but more than just space for expression is needed. If a participant speaks without a sense of being heard, they are likely to either ramp up their expression or else shut down neither of which is desirable for collaborative decision making. Mirroring requires that the speaker can feel that they have been listened to. Mirroring may take a variety of forms:
Mirroring may HAPPEN in the moment of a session or in after/between sessions as part of a longer, iterative process. The effectiveness of Mirroring may be enhanced by checking with those reflected to see if the Mirroring was accurate. Not all the Mirroring needs to be done by one central facilitator. A facilitator can also invite others to participate in Mirroring, whether in the whole group or in pairs or small groups. Mirroring summarizes the state of current knowledge. Once what is now known is acknowledged, that naturally opens space for new ideas and creativity to emerge, whether for one participant in a meeting or for a group as a whole.
Participants in a decision-making workshop need to be focused especially when listening. Therefore, they need a space where they will be comfortable and without distractions. As a facilitator, ensure that the workshop space:
This technique to aid facilitative listening is called ‘Taking Stack’ and its purpose is to facilitate discussion and decision making in which all participants have equal say in a conversation. Otherwise, in a structure-less setting, an individual or a small group of people could easily dominate and shut out other participants. For this method, one group participant needs to fill the role of the Stack Keeper whose responsibility is to structure and order the dialogue of the decision-making process. “The Stack” is the order of participants who are speaking. If a participant raises their hand to say something, the Stack Keeper puts them on “Stack”; their name is put at the bottom of stack list. When the person at the top of Stack has finished speaking, the Stack Keeper crosses their names off and announces who the next two participants on the stack are. Thus, the Stack Keeper is the person responsible for identifying who speaks and when. The Stack Keeper must constantly be paying attention and looking around the room to see who wants to SPEAK. There are other hand gestures to indicate a request for more immediate contribution when someone else is speaking:
The Stack Keeper allows this participant to state their response before the conversation GOES on. Correct Usage: “You asked who volunteered to take over your shift? That was me.” OR “Actually, the store spent $100 dollars yesterday, not $1,000.”
Any participant may make the hand gesture in the picture to indicate that they want to ask a “clarifying question.” The Stack Keeper allows them to ask their question before stack goes on. Correct Usage: “Wait, what were our expenses last week?”
The Stack Keeper allows them to speak before the next person at the top of the stack. They must then say how they think the discussion has gotten off topic or is not following procedure.
|
|
| 46. |
How can a group of people reach a final decision during Scrum project implementation? |
|
Answer» Making decisions in a group has its ADVANTAGES and disadvantages; the main advantage is that there will be more information and data available by which to make the decision; the main disadvantage is that it can take a significant amount of time. Let us consider first a jury for a trial. The decision that they must make is ‘black and white’ or binary; is the defendant guilty or not guilty? A jury session usually starts with a vote amongst the jurors, guilty or not guilty. There follows a discussion between people on either side why they have the opinion that they have. By this means, each juror hears opinions about pieces of evidence that they may have forgotten or dismissed and the relative importance of different pieces of evidence. After a set time, another vote is taken to see in which direction the overall opinion is ‘going’. It depends on whether a majority or unanimous verdict is required; if majority, once the requisite number of people all vote the same way, the decision is made; if unanimous, there is a danger that the longer the discussions go on, those in the minority will vote with the rest just to ‘get it over with’. There is another decision that a jury can make, they cannot agree to the set majority or unanimous parameters and inform the judge. But not all decisions are ‘black and white’, most represent a range of options that must be chosen from. The following are the major recognized ways in which groups of people can come to a decision:
Let us see all the voting processes in detail that may be used:
The problem with this voting method is that the winning option may only be supported by a minority of the participants; it is unlikely that those in the majority will actively support the decision.
This method is a structured communication technique for groups, originally developed for collaborative forecasting. It INVOLVES ‘experts’ answering a series of questionnaires and after each questionnaire is completed, a facilitator presents anonymized results and the reasons for those results. The idea is that each expert modifies their opinion based on the reasons and it is expected that the range of opinions becomes smaller and converges with the ‘best’ decision. You can possibly see that Consensus decision making is a less structured version of Delphi; all workshop participants are experts in their own field, but their opinions are not anonymized.
Using this method, participants are asked to place ‘sticky dots’ or use maker pens to indicate for which option they vote for. The may be given one vote or a range, identified by colors, such as ‘I want this one’ (green), ‘I would be OK with this one’ (orange) and ‘I do not want this one’ (red). There are different ways of using the results:
|
|
| 47. |
What are ‘divergent’ and ‘convergent’ thinking? |
|
Answer» When problem-solving and idea creation is needed, for example when constructing the Product Backlog from a product Vision, Objectives and EXPECTED Benefits, there are 2 strategies that are usually used, divergent and convergent thinking. Divergent Thinking In a ‘problem solving’ workshop, the participants are asked for any ideas individually; writing on ‘sticky notes’ is a good idea. The results are analyzed to SEE if there is any overlap and the participants agree on a single list of potential solutions. Brainstorming and free writing are two processes that involve divergent thinking. During the analysis of the potential solutions unexpected combinations may be made, information may be changed into unanticipated forms, connections among remote ASSOCIATES may be identified. In divergent thinking, a single question returns multiple answers and though the answers vary considerably depending on the workshop participants, all answers are of equal value; each proposed solution may not have existed before and therefore may be novel, unusual or surprising. Eight elements of divergent thinking:
Divergent thinking has been detected in people with personality characteristics such as curiosity, nonconformity, persistence, and readiness to take risks. An extreme example of divergent thinking was when Twitter DEVELOPED an online service that did not have any obvious practical application. The company deployed a basic application to find out how people used it and, based on the findings, refined the application. Though launching something and finding out what the market for it is only after the launch doesn’t have to be a bullet-proof strategy (in most cases it is not), this worked for Twitter. Convergent Thinking The term “convergent thinking” was ‘created by Joy Paul Guilford. He came up with the term as an opposite term to “divergent thinking”. Convergent thinking needs speed, logic, and accuracy and relies on identifying the known, reapplying techniques and amassing stored information. A vital part of convergent thinking is that it produces one best answer; you either have a right answer or a wrong one. An example of where convergent thinking would be used is when the problem is:
This would require listing all the criteria that the ‘buying’ company need from an outsourcing company and examining each to see which has the best ‘off-the-shelf’ fit or maybe which is open to NEGOTIATE to meet all the required criteria. Summary
|
|
| 48. |
Why are the Scrum Pillars of Transparency, Inspection and Adaptation so important? |
|
Answer» The empirical process control theory ASSERTS that knowledge comes from experience and making decisions based on what is known IE at defined points within an overall control process, teams must inspect what has happened and, from that experience, adapt the process to what will happen. The Scrum framework is founded on empirical process control theory so the included ‘Transparency, Inspect and Adapt’ processes are indispensable.
Scrum relies on transparency. Decisions to optimize value and control risk are made based on the perceived state of the artifacts. If the transparency of artifacts is incomplete, these decisions can be flawed, the value may diminish and risk may increase.
Scrum users must frequently inspect Scrum artifacts and progress toward a Sprint Goal to detect undesirable VARIANCES. Their inspection should not be so frequent that inspection gets in the way of the work.
If an inspector determines that one or more aspects of a process deviate outside acceptable limits and that the resulting product will be unacceptable, the process or the material being processed must be adjusted. An adjustment must be made as SOON as possible to minimize further deviation. Transparency and Inspection are important in the Daily Scrums and Sprint Reviews. Although Adaptation is mainly considered during the Sprint Retrospective, it should be considered at any time during the Sprint if the current process is significantly detrimental to the best value being ACHIEVED. |
|
| 49. |
How does the Inspect and Adapt process work during a Sprint? |
|
Answer» The INSPECT and Adapt process is important throughout the Sprint but especially during the ceremonies:
The results of these Inspections should lead the team in considering the Adaption of the process that they followed |
|
| 50. |
Where did Scrum come from? |
|
Answer» The development of the Scrum framework is not linear; different people did independent studies and experiments and gradually the ideas and concepts coalesced into what we know today as Scrum. Probably the first publication that compared product development to the game of rugby, moving the scrum down the field, was the white paper “The New New Product Development Game” by Hirotaka Takeuchi and Ikujiro Nonaka, published in the Harvard Business Review in January 1986. In this whitepaper, the authors RESEARCHED the product development methods of prominent and successful companies and concluded that, in the main, success relied upon:
They called such processes ‘Holistic Methods’ as opposed to the waterfall ‘sequential’ processes. Some sources ATTRIBUTE the ‘invention’ of Scrum to Jeff Sutherland, John Scumniotales and Jeff McKenna in 1993 when they implemented Scrum at the Easel Corporation. Independently, Ken Schwaber, as a software product development manager in the 1980s and early 1990s, recognised patterns of failure in many product development initiatives that used ‘waterfall’ approaches. Ken tells the story that he approached a process engineering company, described the software development environment and ‘waterfall’ process; he was told that a ‘DEFINED process’ such as ‘waterfall’ was very unlikely to succeed consistently in a software development environment; what is needed is an ‘empirical process’ that allows process CHANGE from feedback from short experiments. You would need to ask Jeff or Ken how these 2 first came together to ‘compare notes’ but they collaborated to produce the first public presentation of Scrum at OOPSLA 1995. There have been many other people involved with the development of the Scrum framework; people such as Jim Coplien and Mike Beedle. Ken Schwaber and Mike Beedle published the first Scrum BOOK, ‘Agile Software Development with Scrum’, in 2001. |
|