Group 27

Technical Debt,Roles:Product Owner,Scrum Master,Development Team,Scrum Team Structures,Managers

WHAT IS TECHNICAL DEBT?

Technical debts are requirements that are ignored, not completed, or have a coffee priority and importance. It also includes the value of rework that's incurred within the requirements as a results of omissions or oversights, or as a results of prioritizing the customer's convenience over a long-term, reliable solution.

Technical debt is advantageous within the short term, but it's going to lead to significant costs within the long term. When the event team does and tries to tackle the challenge of the day, technical debt is made. The technical team may introduce the rework with a changed definition of done, or the event team may explore an alternate solution that was implemented a year ago.


Technical Debt and Scrum

  • The product owner's first responsibility is to encourage the event team to feature value.

  • The product owner fulfills the aforementioned responsibility by maintaining the merchandise backlog and introducing backlog items with the support of the scrum master.

  • The technological team doesn't compromise on quality.

  • Done is defined by the engineering or development team.

  • Before each sprint begins, the merchandise owner spends time planning with the scrum team.

  • During the scrum planning meeting, the merchandise owner ensures that the merchandise backlog items and sprint backlog are discussed.

  • By acting on the sprint backlogs, the event team ensures that the sprint targets are met.

  • The development team adds product backlog items to the sprint backlog.

  • If the event team improves the definition of done, then previous sprints will be reworked.

  • Dealing with the technical debt by the event team

  • The scrum team is created attentive to the current technical debt and reminded on a daily basis. The visualization of technical debt within the codebase could be a topic that's frequently explored.

  • Use numerous tools to trace technical debt, like code average, rule violations, cyclomatic complexity, and SQALE-rating, to call some. At the very least, keep track of the bugs.

  • Every sprint, identify and proper technical debt, and devote 20% of the event team's time to demonstrations and bug fixes.

  • Ensure that technical debt is taken into account all told product backlog activities, furthermore because of the sprint backlog.

  • The definition of done has been changed to encompass technical debt in reasonable amounts.

  • Create a regular process for managing research that will end in a short-lived technical debt so the project will be learned.


Reasons for Technical Debt during a Scrum

The following are the explanations for technical debts:

Almost all software development initiatives, additionally as every organisation, accumulate technical debt. the rationale for this can be that without technical debt, software development will take longer, and it'd be unable to finish projects with all of the low-level items and features that the customer has asked within the budget and timetable. When a development team must forego some tasks like generating succinct documentation, writing clean and faultless code, improving security to the best level feasible, and building clean data sources, for instance, technical debt emerges.

The technical debt must be paid off at some point. However, there must be a balance; having an excessive amount of technical code may be a major issue. When the project leader focuses an excessive amount of on time and price, technical debt develops.

For example, an organization is given the task of developing a replacement application. With standard resources, it could take up to six months. the merchandise management team, on the opposite hand, has three months to ship it. As a result, the event team must shorten the simplest UI/UX design and build a straightforward and simple UI/UX design. Also, components like error handling, automated tests, and scaling up vertically instead of horizontally can be decrease.

How to Maintain a Minimal Amount of Technical Debt

  • The following methods is accustomed reduce technical debt:

  • Developers must accept accountability.

  • Every stage of the sprint requires planning.

  • Technical debt issues are included within the product backlog.

  • Utilize metrics to work out and quantify technical debt.

  • Ensure that the technical debt within the product backlog is visible.

  • Maintain a way of equilibrium in your short-term objectives.

  • If you're engaged on a project with technical debt, take care you have got long-term goals in mind.

  • Make all stakeholders alert to the technical debt.

  • Strive for perfection all of the time, and ensure the technical debt is dropped at the eye of the shoppers.

  • Ensure that the technical debt is approved and specified by the purchasers.

WHAT IS PRODUCT OWNER?

The term of agile product owner, also known as a scrum product owner. The product owner is one of the leaders in the agile project management system.

If we see in agile project management the product is the leader-member who contributes to developing a product in the entire development process. on the other hand, they have multiple capacities, including business strategist, product designer, market analyst, client liaison, and project manager. In a short, agile product owners are critical members as well as valuable member of any scrum team.


In another word, the product owner is like a person who researches the specific needs of the client.

example: what type of interface the client wants or what feature the client expects from the team.

Role of Product Owner

In many aspects of product development, the scrum product owner takes the lead. They'll need to draw on their extensive industry expertise to strategize and explain their vision to stakeholders at some point. On another day, they'll have to roll up their developer sleeves to assist the team in meeting their sprint goals.

7 Key Roles and Responsiblities

1.Defining the vision

The agile product owner is a member of the product development team who defines goals and creates a vision for development projects by using their high-level viewpoint.

Product owners are in charge of interacting with all stakeholders, including customers, business managers, and the development team, to ensure that the goals are clear and the vision is aligned with the company's goals.

Because agile product development is flexible and often fast-paced, having a product owner with a higher perspective helps that the team maintains a consistent vision. A project's success depends on everyone being on the same page.

By defining a product roadmap, a product owner may assist the team in maintaining that goal. The product roadmap is a high-level, strategic visual description of the product offering's vision and direction across time. It serves as both a strategic guide for stakeholders and a strategy for implementation.

2. Managing the product backlog

Managing the product backlog is one of the most critical roles of a scrum product owner. This is the project to-do list for the development team.

The product owner's job is to compile a list of backlog items and prioritise them based on the company's overall strategy and goals. In addition, the product owner will need to map out project dependencies in order to determine the proper development sequence.

The product backlog, on the other hand, isn't a static to-do list. It's a living document that should be updated on a regular basis as the project's requirements change.

Because the product backlog will vary regularly, the product owner must make the list accessible to all stakeholders (especially developers) in order to achieve optimal performance and project outcomes.

3. Prioritizing needs

The product owner's other important function is to prioritize needs. In other words, they must balance the triangle of scope, budget, and time, balancing priorities based on stakeholders' needs and objectives.

For example, if the product in development must be launched within six months, the project's scope is limited. As the project progresses, the product owner must assess which areas are flexible and which are not in order to determine how and when each iteration and product part will be developed.

4. Overseeing development stages

The product owner should devote a significant amount of time to overseeing the actual creation of the product once the vision, strategy, and product priorities have been established. They play an important role in all aspects of the event, including planning, refining, review, and sprint.

The agile product owner collaborates with stakeholders during the planning stages to identify and organise the steps needed for the next iteration. After that, they'll meet with their team to fine-tune the process, identify areas for improvement, and provide support for the sprint.

5. Anticipating client needs

To more successfully manage the development process, the successful scrum product owner will be an expert at knowing and anticipating the client's demands.

Their extensive market knowledge and communication abilities enable them to anticipate and respond to problems or requests.

Customer journey planning allows you to stay one step ahead of your customers. These images help to build a common understanding of the client experience. You'll save time and effort, allowing you to focus all of your efforts on reading your consumers' minds and wowing them.

6. Acting as primary liaison

The product owner serves as the main point of contact for stakeholders and teams. As a result, they must be skilled communicators who ensure that all significant choices and strategies have stakeholder buy-in, as well as clear instructions and deliverables for development.

7. Evaluating product progress at each iteration

Each stage of the development process, as well as the final result, is the responsibility of the product owner. They are in charge of examining and analysing the progress of the product at each iteration. The product owner evaluates the team's performance and determines whether they need to go back to the drawing board or go to the next level.

Many hats are worn by agile product owners. As a result, they require tools and solutions that can quickly adapt to their shifting roles.

Visuals can help your scrum team at every stage of the development process, from laying out the user journey to mocking up product designs to mapping product dependencies and sharing your work with stakeholders.

WHAT DOES SCRUM MASTER DO?

Scrum is an agile framework for functioning on complicated projects, most typically software. The agile project management style employs short development cycles, called sprints, to confirm that a product or service is continuously improved. There are numerous agile frameworks available, with Scrum being a well-liked choice for fast-paced projects. The approach is extremely collaborative and requires efficient processes, and therefore the process' outcomes are smitten by the scrum master's skill.

Scrum master employment is also found in a very type of industries and for a spread of firms throughout the globe. Agile approaches may have started in IT companies, but scrum master jobs may be found in a very style of industries and for a spread of companies.

Tasks and responsibilities of a Scrum Master

A scrum master's job is to champion a project, teams, and team members through agile project management. Because scrum masters can operate in a variety of environments, your tasks and responsibilities will likely vary. Depending on your position, you may be called upon to serve as a facilitator, coach, or project manager. Your responsibilities will vary from day to day, but they may include:

  • Daily stand-up meetings, reviews, demos, and other project-related meetings are all led by you.

  • Assisting team members with their responsibilities

  • Scrum principles and best practises are being taught to the team.

  • promoting open dialogue and conflict resolution

  • Identify and resolve issues before they become a problem.

  • In a project management tracking application, updating activities

SCRUM DEVELOPMENT TEAM

The Development Team could be a critical component of a bigger Scrum team. it's made of professionals who, at the tip of every Sprint, deliver a potentially releasable Increment of "Done" product. A "Done" increment is required at the Sprint Review. This Increment is typically created by members of the event Team.

The organisation has well-structured Development Teams that are enabled to manage their own work successfully. This creates a novel synergy that maximises the event Team's overall efficiency.

What's the ideal size of Scrum Development team?

The ideal team size, according to Scrum, is between 3 and 9 members (3 and 9 inclusive). The Scrum Master and Product Owners are not included unless they are also working on the sprint backlog (which is pretty rare)

So, what's the reasoning behind this range? It's a piece of cake! A team of less than three people isn't going to be cross-functional. They might not have all of the necessary skills to complete the sprint work.

Communication problems arise when a team has more than nine members. Day-to-day coordination becomes inefficient as a result. In most cases, Scrum teams like to have a team size of 5-7 persons.

Characteristics of the Development Team

We have a firm knowledge of the development team's responsibilities. Let's talk about the qualities that the development team should have in order to perform these responsibilities.

  • Self-organizing

The development team's ability to self-organize is one of their most important features. This means that no one instructs them on how to accomplish the sprint goal. They put their heads together and figure it out. This leadership direction is not provided by the Scrum Master or any other stakeholder. Nobody tells the development team how many tasks they have to complete in a sprint. They make their own decisions during the sprint planning meeting. Of course, the Scrum Master is present to guarantee that the proper procedure is followed (Story points, capacity consideration, etc.)

  • Cross-Functional

Scrum development teams must be cross-functional. They should have all of the talents needed to fulfill the sprint goal as a group. They shouldn't require assistance from anyone outside of the Scrum team to do their sprint work. It gives development teams more control over their work without having to rely on others (which is primarily the essence of the Scrum framework).

  • Without Title

Have you heard of the Leader without a title? The Scrum team is no exception. Except for the Scrum Master and Product Owner, every member of the team is a member of the development team. No other titles are offered, regardless of the work, they conduct within Sprint.

  • No Sub Teams

Within the development team, Scrum does not create any sub-teams. There is no such thing as a testing team, a development team, a user interface team, or an architecture team. The teams will continue to work on it, but there will be no division based on that. It is for this reason that the development team is always multi-talented.

  • T Shaped Skills

T Shaped Skills are always present in an ideal development team. It signifies they have in-depth understanding of at least one expertise (such as Java, UI development, testing, and so on) (Experts). Aside from that, there will be a few additional abilities in which they will have a broad understanding (they can contribute, but they are not experts). It enables the development team to be self-sufficient while also avoiding bottlenecks.

  • Team Accountability

All of the development team members share a musketeer mindset: "All for one, and one for all." They share responsibility for achieving the sprint goal as a group, and they win or lose as a unit. Having individuals with T-shaped skills reinforces this accountability even more because the development team is not reliant on just one person to complete a task.

  • High bandwidth and Transparent Communication

Members of the development team must communicate with one another as well as with the Scrum Master and Product Owner. Because a Scrum team's location is usually central, members should identify the quickest and most efficient communication methods (High Bandwidth). It simply implies that if you can walk over to another team member and finish a chat in 5 minutes, don't waste time composing emails and back and forth about it.

Communication should be transparent in addition to being efficient. It involves accurately reporting status in the daily scrum meeting so that there is no uncertainty. Furthermore, any faults and suggestions should be highlighted without any information being hidden.

  • Focused and Committed

You won't be able to meet the sprint target unless everyone in the team is engaged and motivated to complete it. When the sprint objective and backlog are finalized during sprint planning, each team member commits to it, and the team takes collective responsibility for achieving the goal.

  • Sustainable pace

One of Scrum's most important concepts is that the team must work at a sustainable pace. It means that instead of being set an impossible objective by managers and the entire team laboring to reach the targets, they take the work that they can complete in a sprint. It aids in the creation of high-quality products while also keeping the team atmosphere light-hearted and stress-free.

What are the responsibilities of the event team?

The Development Team is primarily accountable for the following-

1] Perform Sprint Execution

During sprint execution, members of the event team design, build, integrate, and test product backlog items into increments of doubtless shippable functionality. they are doing this through self-organizing and deciding the way to plan, manage, carry out, and discuss the task together. the event team spends a big amount of your time doing sprints.

2] Inspect and Adapt

Every member of the event team must participate within the daily Scrum. During this point, the team evaluates their progress toward the sprint target as a full and adapts the plan for this day's work. If certain team members fail to attend the daily standup, the team may miss important details of the broader picture and disappoint of the sprint target

3] Groom the merchandise Backlog

The development team must spend enough time in each sprint preparing for the following sprint. an oversized a part of the trouble should be focused on grooming the merchandise backlog. This comprises establishing and revising product backlog items, estimating, and prioritising them. the event team should devote up to 10% of its overall capacity to assisting the merchandise owner with all of those tasks throughout each sprint.

4] Plan the Sprint

The development team takes part in sprint planning, which occurs at the beginning of every sprint. the event team, in consultation with the merchandise owner, helps set the target for the subsequent sprint. The Scrum Master makes this possible. Following the definition of the goal, the team selects a high-priority subset of the merchandise backlog items to construct so as to fulfill the goal.

The amount of your time it takes to plan a sprint is said to the scale of the sprint. For a two-week sprint, sprint planning takes roughly half each day. Race planning could take up to a full day for a four-week sprint. Iterative planning is additionally utilized in this process. Unlike typical project planning methodologies, the team doesn't begin its development endeavor with a posh and unsure strategy. Rather, at the beginning of every sprint, it creates a sequence of granular, more certain, and more comprehensive plans.

5] Inspect and Adapt the merchandise and Process

The development team conducts two inspect-and-adapt activities at the tip of every sprint: sprint review and sprint retrospective. the event team, product owner, Scrum Master, stakeholders, sponsors, customers, and members of other teams who have an interest all participate within the sprint review. they are going over the features that have recently been completed within the current sprint and discuss a way to move forward efficiently. The Scrum team inspects and modifies its Scrum process and technical practices at the sprint retrospective to boost how it uses Scrum to deliver the simplest business value.

Essential qualities of Scrum Development Team

  1. Pair programming

A programmer's first and most important task in a development team is to collaborate with another coder at the same workstation. The code is written by one programmer (the driver), and the code is reviewed by the other programmer (the navigator).

  1. Understanding of TDD, BDD

Every member of the development team should be well-versed in advanced techniques for using automated unit tests to drive design software and eliminate team dependencies.

  1. Self-motivation

The most important driver of efficiency is self-motivation, which is common in successful development teams. Within the team, there is no senior-junior hierarchy. Each member of the team should work independently.

  1. Team player

Scrum is built on the concept of teamwork as a summation of individual efforts. These groups produce greater results when they operate together rather than when they work alone. Everyone on the team should aim to be more of a team player rather than an individual contributor.

WHERE IS THE MANAGER ROLE IN SCRUM?

https://www.scrum.org/resources/blog/where-manager-role-scrum

The Product Owner, Development Team, and Scrum Master are the three roles defined by the Scrum Framework. Stakeholders are mentioned in the Scrum Guide, although managers, executives, and leaders are not mentioned. Because the job is unclear, this produces a lot of tension between teams and supervisors. Scrum dogmatists argue that there should be no managers, or that scrum doesn't have any. These managers, on the other hand, perceive Scrum Teams as failing to consider the business's best interests, focusing solely on product and delivery while ignoring other critical business operations.

Managers fashion scrum teams

Managers fashion teams in Scrum companies.

  • Boundaries are set by managers. Managers define the products or projects that teams will work on in Scrum.

  • Managers set a clear aspirational objective. Scrum teams have a purpose and direction thanks to the goals specified by managers.

  • Teams are formed by managers. Members of each cross-functional agile team are often chosen by managers.

  • Managers alter the composition of their teams. Managers also have the responsibility to modify the composition of a team if they believe it will improve the team's overall health and performance, as well as the organization's overall performance.

  • Teams are empowered by their managers. Managers empower teams to self-organize, trusting them to complete the tasks assigned to them and assisting team members in learning to trust one another.

Managers nurture scrum team

Managers must nurture Scrum teams after they have been formed. They accomplish this by engaging employees, emphasizing competence development, offering functional-area leadership, and ensuring team integrity.

  • People are energized by managers. Managers should always be looking for new ways to inspire employees on Scrum teams to want to produce good work.

  • Competence is developed by managers. Managers in Scrum organizations take an active part in coaching and aiding their direct reports in achieving their career goals by offering frequent, relevant performance feedback.

  • Managers are in charge of functional areas. Managers provide thought leadership in their areas by coaching direct reports across different Scrum teams in a consistent, clear manner. They set area-specific standards and promote projects unique to their functional area.

  • Maintain the integrity of the team. Managers should seek to keep teams together proactively as long as the economics justify it.

Managers as capability builders

Middle management's job is to look at the big picture and help the company develop its potential to create exceptional goods. He should assist the team and Scrum Master in removing roadblocks and improving the process. He should instruct the team on how to improve and resolve issues. He should go see what is truly going on at work and how he can best assist the team in improving their performance.

Senior management's function hasn't changed much, as they're still involved in making strategic decisions about the company and its goods. Senior management's responsibility, however, also includes educating people—his subordinates—how to teach people. He must also assist his subordinates in problem-solving and increasing their development.

Another way to think about it is that value flows 'horizontally' across the organization—directly to the team without the intervention of managers—while capability is built vertically.