Skip to content

Latest commit

 

History

History
269 lines (188 loc) · 17.7 KB

Agile.md

File metadata and controls

269 lines (188 loc) · 17.7 KB

Agile Methodologies

What is sprint in scrum?
A sprint is a fixed-length iteration, typically lasting one to four weeks, in which a Scrum team works to complete a set of predefined tasks and deliver a potentially shippable increment of product. Sprints are the fundamental building blocks of Scrum, providing a structured and iterative approach to software development.


What is user stories?
In software development, a user story is a concise description of a software feature from the perspective of the user. It captures the user's goal and need, and provides a basis for discussion and collaboration between stakeholders. User stories are often written in a simple, natural language format, making them easy to understand for both technical and non-technical audiences.

As a [User Role], I want to [Action] so that [Benefit].

What is an agile iteration?
In agile software development, an iteration is a fixed-length timebox, typically one to four weeks long, during which a team works to complete a set of predefined tasks and deliver a potentially shippable increment of product. Iterations are the fundamental building blocks of agile methodologies, providing a structured and iterative approach to software development.


Name roles in scrum?
Scrum is an agile framework that utilizes three distinct roles to effectively manage and deliver projects:

  1. Product Owner (PO): The product owner is responsible for defining and prioritizing the product vision and ensuring that the team delivers the desired value to the customer. They act as the voice of the customer, gathering and refining product requirements, and communicating the product's direction to the team.

  2. Scrum Master (SM): The scrum master facilitates the Scrum process and ensures that the team adheres to agile principles and practices. They remove impediments that hinder the team's progress, coach the team in self-organization and continuous improvement, and help resolve conflicts.

  3. Development Team (DT): The development team is responsible for transforming product requirements into working software. They consist of skilled software developers, testers, and other relevant contributors who collaborate to deliver the product increment within each sprint.

These three roles work together to create a self-organizing and high-performing team that delivers value iteratively and incrementally. The product owner provides direction, the scrum master guides the process, and the development team executes the work. This collaborative approach allows the team to adapt to changing requirements, deliver high-quality software, and meet the needs of the customer.


What is an epic, user stories and task?
In Scrum, an epic, user story, and task are three key elements that help define and organize the work of a development team. They represent different levels of detail and granularity, providing a structured approach to managing the product backlog and delivering value incrementally.

Epic:

An epic is a large, complex body of work that cannot be completed in a single sprint. It represents a significant piece of functionality or a major goal that the team aims to achieve. Epics are typically broken down into smaller, more manageable user stories.

User Story:

A user story is a concise description of a software feature from the perspective of the user. It captures the user's goal, need, and the value they expect from the feature. User stories are written in a simple, natural language format, making them easy to understand for both technical and non-technical audiences.

Task:

A task is a specific, actionable item that contributes to the completion of a user story. It represents a small, well-defined piece of work that can be completed by a single team member within a sprint. Tasks are often estimated in terms of effort or time required.

The relationship between epics, user stories, and tasks can be illustrated as follows:

EpicUser StoriesTasks


What is scrum?

Scrum is a popular agile framework used for managing and delivering software projects. It emphasizes iterative and incremental development, enabling teams to adapt to changing requirements and deliver working software frequently.


Explain what is refactoring?

In software development, refactoring is the process of improving the internal structure of existing code without changing its external behavior. It is an essential practice for maintaining code quality, enhancing readability, and simplifying maintenance. Refactoring is often performed to make code more understandable, easier to modify, and less prone to errors.


Mention what should a burn-down chart highlight?
A burn-down chart is a valuable tool for visualizing and tracking the progress of a project or sprint in Scrum. It should highlight the following key elements:

  1. Remaining Work: The burn-down chart should clearly show the amount of work remaining to be completed at each point in time. This helps the team understand how much work is left and whether they are on track to complete the sprint goals.

  2. Ideal Burn Rate: The chart should display an ideal burn rate line, which represents the expected rate at which the team should complete the work. This line serves as a reference point for assessing the team's actual progress.

  3. Actual Burn Rate: The actual burn rate line represents the team's actual progress in completing the work. Deviations from the ideal burn rate indicate whether the team is ahead of, behind, or on track.

  4. Sprint Duration: The burn-down chart should clearly indicate the duration of the sprint, allowing the team to track their progress within the allotted time frame.

  5. Sprint Goals: The chart should be linked to the sprint goals or deliverables, providing context for the work being tracked.

  6. Team Velocity: The burn-down chart can help establish the team's velocity, which is the average amount of work they can complete in a given time period. This information can be used to forecast future sprints and make adjustments as needed.

  7. Impediments and Risks: The burn-down chart can be used to identify potential impediments or risks that may affect the team's progress. Sudden changes in the burn rate can be a sign of underlying issues that need to be addressed.


Name some types of meetings or ceremonies in scrum?
Scrum utilizes a set of meetings or ceremonies to structure the development process and promote collaboration among team members. These events provide opportunities for planning, inspecting progress, and adapting to changing requirements. Here are the five main Scrum ceremonies:

  1. Sprint Planning: This meeting is held at the beginning of each sprint to select and plan the work to be completed during the sprint. The product owner presents the product backlog, and the team selects a subset of items to commit to completing.

  2. Daily Scrum: Also known as a daily stand-up, this brief meeting is held every day of the sprint to discuss progress, identify impediments, and plan for the next day. Each team member answers three questions:

  • What did I accomplish yesterday?
  • What will I accomplish today?
  • Are there any impediments to my progress?
  1. Sprint Review: This meeting is held at the end of each sprint to demonstrate the completed sprint increment to stakeholders and gather feedback. The team showcases the work they have done, and stakeholders provide feedback and suggestions for future iterations.

  2. Sprint Retrospective: This meeting is held immediately after the sprint review to reflect on the sprint, identify areas for improvement, and commit to actions for the next sprint. The team discusses what went well, what could be improved, and how they can make the next sprint even more successful.

  3. Product Backlog Refinement: This meeting is held regularly, usually once or twice a week, to refine the product backlog and ensure that it is up-to-date, prioritized, and ready for sprint planning. The product owner presents new backlog items, and the team discusses them, estimates them, and prioritizes them.


Explain the differences between a product backlog and a sprint backlog?

  • Product Backlog: The product backlog is a prioritized list of features, requirements, and other work items that represent the desired functionality of the product. It serves as a single source of truth for what needs to be built to achieve the product's overall goals and vision. The product owner is responsible for maintaining the product backlog, ensuring that it is up-to-date, prioritized, and refined regularly.
  • Sprint Backlog: The sprint backlog is a subset of the product backlog selected for a specific sprint. It represents the specific work that the team commits to completing during the sprint. The sprint backlog is created during sprint planning, where the team selects items from the product backlog, estimates their effort, and breaks them down into actionable tasks.

If a timebox plan needs to be reprioritized, who should re-prioritize it?
The reprioritization of a timebox plan should typically involve a collaborative effort between the product owner and the development team in Scrum. The product owner, as the voice of the customer and responsible for product vision, provides insights into the evolving needs and priorities. The development team, with their expertise in technical feasibility and effort estimation, contributes their understanding of the work involved and the team's capacity.


Teams may encounter the need for "technical" user stories. Who decides the priority of these?

The tech lead or architect can work with the product owner to determine priority based on upcoming roadmap needs and dependencies. The key is communication between the PO and tech team leads to ensure technical needs are visible and prioritized appropriately to enable user-facing features.

What is the Scrum Master's role during the daily stand-up?

Stand outside the circle of developers and listen for impediments. Overall, the Scrum Master facilitates the daily stand-up to keep it short, productive, and worthwhile for the team. Their leadership enables inspection and adaptation of the sprint execution.

Which factor should not be considered during Sprint Planning?

The number of stories in the product backlog. In the other word, any factors that distract from the core goals of Sprint Planning around committing to the team's sprint backlog are best excluded from the Planning process. The team focuses on what they can accomplish in the sprint.

A team member has been showing signs of great personal distress: crying at work, snapping at colleagues, having heated phone conversations. As Team Facilitator, what should you do?

Advise the PO as soon as possible. My goal is addressing the situation compassionately while maintaining team cohesion. I would aim to get the individual appropriate help so they can cope with personal challenges and remain a contributing team member.

Which statement describes the flow of work in the Scaled Agile Framework?

  • It is a "push" system.
  • It is "push" at the top and "pull" at the bottom.
  • It is a "pull" system.
  • It is neither "push" nor "pull."

What is the Product Owner's role in deciding the priority of work in the sprint backlog?

None—the developers should prioritize the work in the sprint backlog. The Product Owner heavily influences sprint backlog priority, but does not dictate it. They collaborate with the team to align on the highest value scope to deliver.

The Scaled Agile Framework advocates that, if you measure only one thing, what should you measure?

The cost of delay. SAFe's single recommended metric is to measure planned vs actual business value delivery at PI boundaries. This provides insight into the organization's Agile program predictability.

Why should you apply Weighted Shortest Job First?

To determine the economic sequencing of the backlog. WSJF allows Product Managers and EPIC owners to optimally sequence initiatives based on the right balance of value and execution effort. This drives predictability, efficiency, and customer-focused delivery.

You have classified the features in your backlog according to risk and value. Which features should the development team work on first?

  • low-value and high-risk
  • high-value and high-risk
  • high-value and low-risk
  • low-value and low-risk

In the Scaled Agile Framework, what is the role of Enablers?

They help extend the Architectural Runway. Enablers ensure teams have the platforms, tools, knowledge, and support needed to deliver value predictably and sustainably within the SAFe system.

Which outcome is not expected of a Sprint Review?

  • The team demonstrates its completed work.
  • The team reflects on how to improve its performance.
  • Items in the backlog may be re-prioritized.
  • Stakeholders ask questions about the completed and upcoming backlog items.

What is not a technique used for splitting user stories?

  • split by line-of-business
  • split compound user stories
  • split by alternative paths
  • split by interface

Who decides what the team will work on?

A self-organizing team. The Development Team decides on the work as they are the ones completing it. But there is heavy collaboration with the Product Owner to pick the highest priority items for the team to deliver.

Which choice is not a Scrum value?

  • focus
  • integrity
  • courage
  • commitment

What should happen if the Product Owner does not accept a story by the end of the iteration?

The story should be shown to stakeholders for their feedback. The goal is to have a "done" increment at the end of every sprint. The team and Product Owner should collaborate to get the story to an acceptable state, learning from the experience for future improvements.

Which statement is not true about the product backlog?

  • It is a list of work items that are behind schedule.
  • The items are maintained in priority order.
  • Anyone on the team can propose an item for it.
  • It includes all of the work to be done.

A project has some major risks that the team wants to mitigate. What is the best way to monitor how well this effort is going?

  • risk-based spike
  • risk-adjusted backlog
  • risk velocity chart
  • risk burndown graph

The VP of Engineering wants to start giving out a "Team Member of the Sprint" award to recognize a top performer in each group. What advice should you give this VP?

  • This is unhelpful unless there has been recent employee feedback indicating that people feel underappreciated.
  • This is a good idea as long as a different person is recognized in each sprint.
  • This is a good idea because awards can motivate people to do their best.
  • This is unhelpful because it can destroy the team unity essential to achieving high performance.

What is a difference between a team's task board and a Kanban?

A Kanban has an explicit rule to limit WIP. a task board is sprint-specific for day-to-day task tracking, while a Kanban provides a bigger picture view of process work-in-progress and flow. A team could use both simultaneously.

The team complains that "things have been falling through the cracks lately." What should you do?

Conduct a workshop to identify all the things that need to be done and see who can help with each. The goal is to uncover the specific gaps causing problems and implement just enough process improvements to close those holes. Too much procedure can worse problems, so we want to target the areas that will make the most impact first.

In Large-Scale Scrum, what is the recommended ratio of Scrum Masters to teams?

One Scrum Master can support one to three teams. LeSS recommends a gradual ratio of Scrum Masters to teams, with 1:1 being the maximum and 1:3 or less being preferred for larger LeSS adoptions.

In the Cynefin framework, where are "best practices" most appropriate?

  • in the Complex regime
  • in the Complicated regime
  • in the Chaotic regime
  • in the Obvious regime

A manager informs you that a developer from another team is between assignments, and she wants to place the developer on your team for a few sprints. What should you do?

Explain to the manager that this will be disruptive to the team and ask that another assignment be found.

The Product Owner complains to you that the team is not working hard enough and they need to increase their velocity by at least 50%. Which action should you not take?

Share the feedback from the PO and challenge the team to increase their velocity.

What is the name of the practice in which a cross-functional team collaborates intensively to develop a new product idea?

  • Hackathon
  • Scrum at Scale
  • Innovation and Planning
  • Magnum Focus

The team's manager wants to attend the Sprint Retrospective. What should you do?

Propose a different forum for the manager to meet with the team.

Who is responsible for a Scrum team's performance?

  • the team
  • the Scrum Master
  • the Product Owner
  • the Engineering Manager

Which statement concerning small, frequent releases of software is true?

  • The chance for rollback is high.
  • It typically requires a high degree of automation.
  • The administrative costs are high.
  • Backward compatibility may be jeopardized.

What is the activity of clarifying and expanding user stories called?

  • story point estimating
  • Definition of Done
  • user story expansion
  • backlog refinement

Which strategy is preferred for development teams?

  • Optimize for most work done.
  • Maximize output and maximize outcome.
  • Maximize outcome while minimizing output.
  • Optimize for resource utilization.