In a Scrum project, it is the Scrum Team members who are responsible for delivering the desired product or service and not the Scrum. Hence, we should be careful in forming the Scrum Teams.
“The Scrum Team is sometimes referred to as Development Team since they are responsible for developing the product, service or other results. It consists of a group of individuals who the user stories in the Sprint Backlog to create deliverables for the project”. – SBOK 2013 Edition.
The essential characteristics of a Scrum Team for delivering the desired project results are described below:
Self-Organized: The scrum team members are motivated individuals who do not wait for their superiors to assign the tasks. They take the responsibility, share the risk, take decision, and work collectively towards a common goal.
Empowered: The Scrum Team or the development team is supplied with the required resources to deliver the desired products or services along with the authority to take the decisions. If the team has only the responsibility but no authority to take decisions, the continuous/iterative development is difficult.
Collaboration: Project management is a shared value creation process with teams working and interacting together to deliver greatest value. The scrum team should share the knowledge, ideas, risk and responsibilities, and work in harmony with the team members to deliver desired results.
Shared Goal: The individuals within the team should work collectively towards a common goal. The team goal should superimpose their individual goals like growth, appraisal, and money.
Optimum Size: A small Scrum team may not have the required skill to develop the product or service and a large Scrum team may spoil the work as the collaboration within the team will be difficult. As defined in the SBOK, the optimum size of the Scrum team should be six to ten. This will ensure that, the Scrum team is large enough to possess necessary skills to deliver the project and small enough to collaborate.
Diverse Skills: The Scrum Team should collectively possess the necessary skills to deliver the project deliverables. During scrum team formation the team members should be selected keeping in mind the skills required to deliver the project deliverables.
Collocated: It is advised to form a Scrum team with the members collocated. This ensures collaboration and coordination within the team members.
The Scrum Book of Knowledge defines Scrum as an adaptive, iterative, fast and flexible methodology designed to quickly deliver significant value during a project. Scrum ensures transparency in communication and creates an environment of collective accountability and continuous progress. Interestingly, applying Scrum successfully in a project also requires the human resource management practices of the organization where it is being implemented, to be in sync with Scrum.
In Scrum, there are two types of roles:
Core Roles: They are involved in creating the product of the project, are committed to the project, and ultimately are responsible for the success of the project.
Non-core Roles: They are non-compulsory team members, who have an interest in the project, may interface with the team, but may not be responsible for the overall success of the project. The non-core roles should also be taken into account in any Scrum project.
Typically, most organizations find it hard to discard Taylor’s scientific management theory. But to make Scrum teams work successfully, the HR has to give the cross-functional team a sense of responsibility and the control. After all, Scrum teams are expected to be self-motivated. They collaborate extensively to build products according to User Stories (users’ requirements), may a time negotiating with the Product Owner who is ultimately responsible for the Scrum team’s business decisions. Whilst executing a typical sprint, team members develop a sense of co-ownership as they set shared goals and learn how to manage each other in order to achieve them. But self-organizations of Scrum teams may be questioned when the team members are effected by performance appraisals, trying to impress managers, incentive schemes. This serves as a roadblock to Scrum’s core reasons of success: product-requirement alignment, feedback, self-motivation and morale. Along with the Scrum Master, it is also the HR’s job to help the Scrum team members to achieve their aims.
Another area where the HR’s role is important is during the appointment of the Scrum Master. The Scrum Master is the servant leader of the Scrum Team. He moderates and facilitates their interactions. He is responsible for solving their problems and ensuring the Scrum Team has a productive environment to work in. He guards the Scrum team from external influences and enforces Scrum processes. He also acts as the Scrum Team’s coach and motivator. Hence, it is important to find the right candidate for the job. One of the most common mistakes an HR makes when helping select the Scrum Master is that he ends up assuming that a manager is the default choice for the Scrum Master. Managers usually work in a boss-subordinate leadership style rather than being a servant leader. So when a manager is appointed as a Scrum Master for a team that includes his subordinates, they continue to regard the Scrum Master as a manager rather than managing the Scrum Team between themselves.
The Product Owner, on the other hand, requires a certain level of authority associated with his role. As Product Owners, the managers tend to get better results for each sprint out of their subordinates.
Effective Scrum requires longstanding, cross-functional teams. Progressive HR policies will allow Scrum teams to handpick their own members within these restrictions.
Coding and testing stages are not isolated ones but well integrated ones in Agile development. The development toward every user story commences through written business-interfacing experiments that enables the team the ‘what part’ regarding coding and also the juncture when the tasks are being completed with.
Professionals in the field of testing, analysis and development interface with stakeholders from the business side for extracting instances of preferred and unwanted manners for every single user story and aspect, and then transforming them into tests which are executable. This is known as Acceptance Test-Driven Development (ATDD) or Specification by Example. The team which is responsible for development will then work in partnership with their customers to choose the specific user story aligning customer expectations apropos the delivery part. User stories will be corroborated upon cracking the different functional, automated functional and manual probing tests.
Time is an important element which should be made inclusive for the whole activities related with testing toward user story estimates. This can include automated testing and manual probing testing. Inexperienced Scrum teams frequently and habitually over promise or goes overboard with their commitment part in terms of extra work planning compared to what they could feasibly do. Testing then gets hard-pressed in the end in the absence of features, due to this undesirable characteristic of the team simply because of the arrival of sprint on the last day. The result – mass demise of user stories hauled from one iteration to the subsequent one without the testing professionals being able to conduct their tests.
Focusing on completing each story at a specified time is a good way to handle this problem.
Necessary role inclusion for comprehending the various customer requirements and delivering good quality oriented software is a benefit that Agile teams possess inherently. Agile teams find the much needed opportunity through their varied experiences and assortment of abilities which help them in traversing different approaches toward supporting business participants in outlining their requirements. They are able to do it through tangible examples provided to the stakeholders and then interpreting the same into experiments certifying the ‘done part’ aimed at every user story along with their features.
Customers are pleased with the outcome pertaining to as an effort of the team – interacting and coordinating with the business teams, taking out the much needed time to plan for evidencing the aspects are done with as per requirements outlined. Newer Agile teams must pool in time to search for different means to comprehend the requisites of customers so that they can interpret those requisites into well conducted experiments which will outline software development. That will bring in maturity in terms of experience and doing things in a speedy manner efficiently and effectively.
Planning poker is combination of analogy, expert opinion, and disaggregation in a fun way so that it will result quick and reliable estimates. All the team members are included in planning poker. On any agile project, you will have typically ten team members or less. If it does, the team can be split in twos. Then estimation is done independently by each team. The PO participates in planning poker but he or she doesn’t estimate.
At the beginning, each team member is handed deck of cards. All the cards are marked with a valid estimation number. Each member will be given a deck that reads a number series. The most popular of these estimation numbers are Fibonacci numbers. (1,2,3,5 ,8,13,2, 34,55 and so on). The cards are prepared before the planning poker meeting.
Then a moderator describes each of the user stories or theme that team is planning to estimate. Though generally the product owner acts as a Moderator, anyone can be a moderator. No special privilege or role is associated with the moderator. The product owner will answer all questions that the team members have.
The goal of estimation is to be somewhere on the left of the actual effort line. Important thing to remember is that this process is not about deriving an estimate that will resist all future inspection.
After all the queries are resolved, each team member selects a card that represents their estimation. Each estimator has to make a selection before Cards can be visible to everyone. Cards are kept private until everyone has estimated. Then the cards are turned over at the same time.
Then, all cards are instantaneously spun over and displayed so that all estimators can see each estimate. Chances are that these estimates will differ significantly. In that case, the high and low estimators will explain their estimates. The focus of this process is not to attack these estimators but to learn on what basis these estimations were assigned.
After this discussion, each team member will re-estimate by selecting a card. The earlier mentioned process will be followed again. Chances are that the estimates will meet by the subsequent round. Continue to repeat the process until all the estimators converge on a single estimate that can be used for the story. Very rarely it takes more than three rounds. Continue this process until estimates are moving closer together and they everyone converges on a single estimate.
Organizations applying the Scrum framework encourage an open environment and dialogue among employees. Conflicts among Scrum Team members are generally resolved independently, with little or no involvement from management or others outside the Scrum Team.
It is usually best for team members to face problems directly with a cooperative attitude and an open dialogue to work through any disagreements to reach consensus. This approach is called Win-Win. Organizations implementing Scrum should promote an environment where employees feel comfortable to openly discuss and confront problems or issues and work through them to reach Win-Win outcomes.
Some team members may at times feel that their contributions are not being recognized or valued by others, or that they are not being treated equally. This may lead them to withdraw from contributing effectively to the project and agree to whatever they are being told to do, even if they are in disagreement. This approach is called Lose-Win. This situation may happen if there are members in the team (including managers) who use an authoritative or directive style of issuing orders and/or do not treat all team members equally. This approach is not a desired conflict management technique for Scrum projects, since active contribution of every member of the team is mandatory for successful completion of each Sprint. The Scrum Master should encourage the involvement of any team members who appear to be withdrawing from conflict situations. For example, it is important for all team members to speak and contribute at each Daily Standup Meeting so that any issues or impediments can be made known and managed effectively.
In conflict situations, team members may attempt to bargain or search for solutions that bring only a partial degree or temporary measure of satisfaction to the parties in a dispute. This situation could happen in Scrum Teams where team members try to negotiate for suboptimal solutions to a problem. This approach typically involves some “give and take” to satisfy every team member—instead of trying to solve the actual problem. This generally results in an overall Lose-Lose outcome for the individuals involved and consequently the project. The Scrum Team should be careful to ensure that team members do not get into a Lose-Lose mentality. Scrum Daily Standup and other Scrum meetings are conducted to ensure that actual problems get solved through mutual discussions.
At times, a Scrum Master or another influential team member may believe he or she is a de facto leader or manager and try to exert their viewpoint at the expense of the viewpoints of others. This conflict management technique is often characterized by competitiveness and typically results in a Win-Lose outcome. This approach is not recommended when working on Scrum projects, because Scrum Teams are by nature self-organized and empowered, with no one person having true authority over another team member. Although the Scrum Team may include persons with different levels of experience and expertise, every member is treated equally and no person has the authority to be the primary decision maker.
Conflict management techniques are used by team members to manage any conflicts that arise during a Scrum project. Sources of conflict evolve primarily due to schedules, priorities, resources, reporting hierarchy, technical issues, procedures, personality, and costs.
Scaling Scrum for the Enterprise is usually applicable to the following:
- Portfolios, programs, and/or projects in any industry
- Products, services, or any other results to be delivered to stakeholders
- Projects of any size or complexity
The term “product” may refer to a product, service, or other deliverable. Scrum can be applied effectively to any project in any industry—from small projects or teams with as few as six team members to large, complex projects with up to several hundred team members.
For Scaling Scrum for Enterprise, the following processes need to be followed:
Create Program or Portfolio Components—In this process, the Program or Portfolio Product Owner and key stakeholders identify common components and resources required for the program or portfolio. The Minimum Done Criteria are defined and all stakeholders are identified.
Review and Update Scrum Guidance Body—In this process, the Scrum Guidance Body recommendations are regularly reviewed by the members of the Scrum Guidance Body and are updated when and if necessary. In this process, changes in the membership of the Scrum Guidance Body are also handled.
Create and Groom Program or Portfolio Backlog—In this process, the Program or Portfolio Backlog is created, updated, and maintained. Recommendations for improvements of the Scrum Guidance Body Recommendations may be made and implementation deadlines may be adjusted based on changed requirements and/or progress of the projects in the program or portfolio.
Coordinate Program or Portfolio Components—In this process, components of the program or portfolio are coordinated. Dependencies between projects are addressed, common impediments are discussed, and best practices are shared. Sometimes, recommendations for improvements of the Scrum Guidance Body are made.
Retrospect Program or Portfolio Releases—In this process, the Program or Portfolio Product Owner and key stakeholders get together to retrospect a program or portfolio Release and internalize the lessons learned. Often, these lessons learned lead to agreed actionable improvements to be implemented in future. releases. Sometimes, improvements to the Scrum Guidance Body may be recommended.