0% found this document useful (0 votes)
41 views

Agile Notes

Agile is a methodology for project management that emphasizes collaboration, flexibility and delivering working software frequently. It involves short development cycles called sprints where requirements and solutions can evolve through iteration and feedback. Scrum is a common Agile framework that uses artifacts like product and sprint backlogs and ceremonies like daily standups and sprints to help teams work in an Agile way.

Uploaded by

elieaoun1980
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
41 views

Agile Notes

Agile is a methodology for project management that emphasizes collaboration, flexibility and delivering working software frequently. It involves short development cycles called sprints where requirements and solutions can evolve through iteration and feedback. Scrum is a common Agile framework that uses artifacts like product and sprint backlogs and ceremonies like daily standups and sprints to help teams work in an Agile way.

Uploaded by

elieaoun1980
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 10

What is Agile

Agile is a family of product development methodologies, in which customer


requirements and solutions evolve through repeated cycles of Plan, Collaborate, and
Delivery.

Agile Manifesto
1.Individuals and interactions over processes and tools
2.Working software over comprehensive documentation
It doesn't mean that you should not create documentation; it means you should create
documentation that provides value and at the same time does not hinder the team's progress
3.Customer collaboration over contract negotiation
4. Responding to change over following a plan
It is recommended to plan upfront.
Always be responsive to change and refine the plan to bring the project back on track, instead of
putting all the efforts to sticking to the original plan

Agile does not involve:


• a big design and requirement gathering upfront
• predictions on project completion
• ‘death march’ projects, where project teams make up the difference for poor estimates with
unpaid overtime
• the use of tools that force behaviors, such as, task management tools
• top-down management and control
• ‘heavy’ documentation, particularly Status Reports, Software Architecture Diagrams, Software
Requirements Specifications, and Test Plans

Benefits of Agile
• Emphasis on collaboration, team empowerment, and frequent demonstrations of progress
• Lightweight, relying on whiteboards, index cards, and facilitation techniques

1
• Very appealing to developers with its development focus
• Faster time-to-market and high priority features driving the development life cycle
• Focus on Pull instead of Push
• Simple to understand
• Contemporary and meets the dynamic needs of the customer

Agile evolved in the late 1990s, in response to the burdens of heavy documentation and frequent
requirements change.
• The Agile Manifesto was signed in 2001, by 17 software developers, which captured the values
and principles of the Agile movement.
• Agile Manifesto highlights 12 principles.
• As a lightweight project management approach, Agile avoids big design, heavy documentation,
and top-down management or control.
• Agile emphasizes collaboration, team empowerment, and frequent demonstrations of progress,
by focusing on Pull vs. Push.
Servant leadership positions the leader as the enabler.
A servant leader:
 helps the team
 removes obstacles that the team is faced
 gives them the required tools and skills to protects them from unnecessary disturbances.
Servant leadership is valuable for all projects, regardless of methodology. However, it is
necessary in Agile.
The reasons are as follows:
• Agile believes in self-managing teams, which need no help with task management, but
need help in forming, building, and nurturing.
• Agile leaders adapt their behavior to meet the needs of the team, and are willing to go to
the distance in trying to help the team achieve its goals.
• Values that would be cherished in such a team include trust, empathy, collaboration,
and ethical use of power.
2
Domain 1: Agile Methodologies
Scrum Methodologies
Features that make Scrum popular are as follows:
• It offers simplicity and proven results
• It encompasses other Agile engineering techniques
• It emphasizes small teams and team empowerment
• It welcomes changes to requirements
• It allows working from a single source of prioritized work items
• It includes daily status meetings
• It offers team commitment to a potentially shippable increment during a ‘Sprint’
What is a user story?
A user story is a small unit of work in an Agile workflow. • It is a short, written explanation of a
particular user’s need and how it can be fulfilled. There is no room for jargon in a user story. It is
written in easily accessible language to provide a clear picture of what the user requires.
Every user story involves a short-form request that is completed in one Agile iteration or sprint,
which normally lasts about one or two weeks.
Sprint
• The first and most elemental unit of the Scrum process is a sprint, otherwise known as iteration
or timebox.
After the end of each sprint, the team will have a sprint retrospective and review
Sprint Planning
• the Scrum team will host a planning event.
• During this stage, the team will discuss the scope of work they are planning to complete in the
upcoming period. Moreover, they will choose items from the product backlog that they intend to
complete during one sprint. After that, they will go over the work essential for completing the
backlog items. Then, they will agree on the goal and create an outline of the forecast for the end
of the sprint.
Daily Scrum
• The team will hold daily meetings during the sprint. For these daily events or stand-ups, there
are several guidelines that teams should follow. For example, each daily Scrum should start at
the same time, at the same place. While anyone can attend the event, only members of the

3
development team should contribute. Daily Scrums should begin promptly, even if some of the
team members are not present. Also, the meetings are limited to fifteen minutes.
It is common practice for each team member to answer three main questions. That is, explain
what they did the day before, what their plans are for the present day, and if they see any
impediments that can stop them from reaching the goal.
Sprint Review
• There are two main events at the end of each sprint:
Review
Retrospective.

Scrum Artifacts
Two so-called Scrum artifacts are essential for the proper implementation of the framework:
 Product backlog
 Sprint backlog.
The product backlog is, in essence, a breakdown of everything that needs to be completed.
• The product owner is responsible for everything regarding product backlogging, including
content, ordering, and availability. Based on factors such as risk, dependencies, business value,
date, size, and others, the product owner will prioritize product backlog items or PBIs.
Moreover, the product backlog also contains business value and development effort assessment.
Sprint backlog focuses on work during a single sprint
the list of the upcoming tasks is designed by a Scrum team based on priority. The team will pick
as much work as they need to feel the entire sprint
• Naturally, the development team will consider previous sprints so that they can accurately
determine the amount of work for the upcoming period.
• It is also possible for the development team to separate product backlogs into tasks.
• One of the policies of this method is never to assign tasks to teams or team members. Instead,
team members will sign-up for tasks based on their skills, availability, and task priority.
• The entire spring backlog is the property of the development team, and all estimates are
provided by it. Teams will often create a Scrum task board where they will mark work as “in
progress,” “to do,” or “done.”
• Once they have committed to the sprint backlog, they cannot add more tasks or change it in
any way — only the development team can.

4
Scrum Core Values
Both the Scrum team and all the individuals that make it possess five core values. • Courage —
Each team member understands that they possess the courage to overcome any obstacle, conflict,
or challenge, and do the right thing.
• Focus — Every individual in the team will focus on the sprint backlog and team goals, as well
as do their part to ensure maximum efficiency. They will do no additional work outside the
backlog.
• Commitment — Members of the team will personally commit to achieving team goals, and
they will do their best each sprint.
• Respect — Scrum team members respect each other, and they see their teammates as
competent, capable, and reliable. They will all work with good intent.
• Openness — Both team members and stakeholders are transparent about work and challenges
they might face M
Benefits of Scrum Methodology
Scrum is currently the most used and trusted framework of reference in the software industry.
Below are some of the known benefits of Scrum: • Easily Scalable: Scrum processes are iterative
and are handled within specific work periods, which makes it easier for the team to focus on
definite functionalities for each period. This not only has the benefit of achieving better
deliverables in line with the needs of the user, but also gives the ability to the teams to scale the
modules in terms of functionality, design, scope and characteristics in an orderly, transparent and
simple manner. • Compliance of expectations: The client establishes their expectations indicating
the value that each requirement/ history of the project brings, the team estimates them and with
this information the Product Owner establishes its priority. On a regular basis, in the sprint
demos, the Product Owner verifies that the requirements have been met and transmits feedback
to the team.
Flexible to changes: Quick reaction to changes in requirements generated by customer needs or
market developments. The methodology is designed to adapt to the changing requirements that
complex projects entail. • Time to Market reduction: The client can start using the most
important functionalities of the project before the product is completely ready. • Higher software
quality: The working method and the need to obtain a functional version after each iteration,
helps to obtain a higher quality software. • Timely Prediction: Using this methodology, we know
the average speed of the team by sprint (story points), with which, consequently, it is possible to
estimate when a certain functionality that is still in the backlog will be available. • Reduction of
risks: The fact of carrying out the most valuable functionalities in the first place and of knowing
the speed with which the team advances in the project, allows to clear risks effectively in
advance.

5
The Advantages of the Scrum Methodology
With this sprint-focused model, the workflow focuses on communication and management. • For
the duration of a sprint, the team can dissect their goals step-by-step. Moreover, the incremental
delivery can shorten the time to market and can result in higher revenue. • Since each sprint is
reviewed before proceeding to the next, it means that the team will conduct testing throughout
the whole process. The team can change its focus, improve, and adapt along the way. • With
Scrum, the team does the work simultaneously instead of sequentially. The development team
works “on the go,” and everything is perfectly clear before the project even starts. • Furthermore,
each task is prioritized by importance, which means that the finished ones can have a significant
impact on the return of the investment. • Because there is no team leader, the developers can feel
more in touch with the project, and feel more responsible and invested.
The Disadvantages of Scrum Methodology
The most apparent problem is that the Scrum Master might have a difficult time organizing
everything and making sure that every piece of the puzzle is in line. • As a result, the project can
often lack definition and structure. • While frequent changes are welcome, they can sometimes
prove to be too challenging to follow, and the whole process can become rather intense. • Daily
meetings require resources, and the whole process requires each and every individual to maintain
a high level of dedication, maturity, and communication. • Lack of expertise can also be a
problem since the team requires both commitment and a high level of experience. • A Scrum
Master without sufficient skills can ruin the entire project. • Without clear and understandable
goals and tasks, the project can lead to deal-breaking inaccuracies.

Agile Methodologies- Kanban


What is Kanban
“push” process (products are pushed into market) to a “pull” process (products are created based
on market demand)
Kanban board is continuously filled with new tasks as your team completes old ones.
The 4 Core principles of Kanban
Start with what we do now
Agree to pursue incremental, evolutionary change
Respect the current process, roles, and responsibilities
Encourage acts of leadership at all levels

6
The 6 Best Practices of Kanban
1. Visualize work
2. Limit work in progress
3. Manage flow
4. Make process policies explicit
5. Implement feedback loops
6. Improve collaboratively, evolve experimentally
The benefits of Kanban
• Kanban is a great, flexible tool that can help teams balance work with team capacity.
When done right, Kanban can:
• As a form of visual project management, Kanban can help you bring tasks to life and gain clear
insight into your team’s workflows.
• Increase clarity, especially for remote teams. If your team is working remotely, it can be
difficult to gain visibility into what everyone is working on. By centralizing work and reducing
the amount of work in flight at any given time, Kanban boards can help you and your team gain
instant insight into who’s working on what.
• Encourage flexibility. Because the Kanban framework is built on a process of continuous
improvement, teams that implement Kanban can become more flexible and dynamic over time.
If you follow the four core principles and the six key practices, your team can become more agile
and open to change.
The downsides of Kanban
Kanban isn’t the right framework for every team. Some downsides of Kanban include:
• It’s not as common among non-engineering teams. Like Scrum, Agile, and other lean
methodologies, Kanban isn’t as well known among non-engineering teams. Kanban can be an
effective tool for all sorts of teams. But if you’re planning to introduce a Kanban process to a
non-engineering team, consider moving one workstream into Kanban at a time to help your team
with the adoption process.
• It can quickly become overwhelming. Because each task card takes up so much visual space,
your Kanban board can quickly get cluttered and overwhelming if you have too many things in
flight at once.
What is the difference between Kanban and Scrum?
Scrum is compatible with Kanban but it is a different framework:
• Scrum helps teams get more work done faster. The method organizes work into “sprints”—two
week working sessions with daily meetings and a set amount of work to be completed during the
cycle time.

7
• Kanban helps teams improve processes by visualizing their work in real-time.
What is the difference between Kanban and Agile?
Agile is a project management model designed to help teams flexibly respond to change.
The Agile philosophy believes in adaptive planning, evolutionary development, early delivery,
and continuous improvement.
Kanban processes are shorter and fit sprint boundaries.

Agile Methodologies- Lean


One of the most critical principles of lean manufacturing is the elimination of waste.
Continuous Improvement (commonly referred to by the Japanese word kaizen) is arguably the
most critical principle of lean manufacturing.
Respect For People
Levelized Production
Just In Time Production
Built In Quality: Throughout all areas of the product, from design to shipping, quality is built
into the process.
Lean Manufacturing System – Lean Management

The 5 Lean Principles of implementation


1. Defining Value: By focusing on value-added activities and eliminating non-value-added
activities, organizations can optimize their resources and enhance customer satisfaction.
2. Mapping the Value Stream
3. Creating Flow
4. Using a Pull System: The pull system is a cornerstone of lean thinking. Instead of
pushing work based on predictions, a pull system works based on what customers
actually want. By embracing a pull system, organizations can minimize overproduction,
reduce inventory levels, and achieve a more demand-driven and responsive operation.
5. Pursuing Perfection

8
ScrumBan
Scrumban is a hybrid Agile methodology that combines principles and practices from Scrum and
Kanban.
In Scrumban, teams typically use a Scrum-like process with a Kanban board to visualize work
and limit work in progress (WIP).

Key elements of Scrumban include:


• Kanban board
• Work in progress (WIP) limits
• Scrum events: Scrumban retains some Scrum events, such as daily stand-ups, sprint planning,
and sprint reviews. However, these events may be more flexible and less structured compared to
traditional Scrum.
• Continuous improvement
Features unique to Scrumban
There is no team hierarchy in Scrumban. This means that every person on the development team
has the same opportunity as others to make decisions and choices.
• This also means that there is no clear leader for the group—rather, the team is entirely self-
managed.
• Scrumban projects don’t necessarily need to have a deadline.
• Sprints are often worked in two-week increments, so team members can just focus on those
specific sprint tasks until it’s time to review and reiterate.
• This makes Scrumban a good choice for very long-term projects, or projects with an ambiguous
goal.
The Scrumban process
1. Create the Scrumban board
2. Establish the work-in-progress limits
3. Work with the team to prioritize tasks
4. Hold daily stand-up meetings
Pros of using Scrumban
It Can help save time: the Scrumban method is a good way to start tracking the work that's being
done.
- It can prevent performing duplicative work or spending time on tasks that don't satisfy the goal
of a specific sprint.

9
- It is Great for long-term or large-scale projects: Because Scrumban is an iterative Agile method
- It allows for small changes over large increments of time. This makes it a great framework to
use for long-term projects, because project needs will change as time goes on. As needs change,
Scrumban helps iterate and improve the processes to keep up with those changes.
- Individual team members have more independence: If the team is looking to have more
autonomy, the Scrumban methodology might be a good place to start. The Scrumban method
gives the team members the opportunity to make decisions and prioritize work as they see fit,
rather than just completing work that’s assigned by a Scrum master or product owner.
Cons of using Scrumban
Lack of management can cause confusion: While the independence and autonomy can be
motivating for one team, the lack of oversight can cause confusion and disorganization in
another.
- Scrumban is a relatively new methodology: Since Scrumban is a newer methodology, there
aren’t as many established processes. One Scrumban team's process may look vastly different
from another team's process, and part of that reason is because there's no standardized framework
like with Scrum or lean project management.
- Project managers have less control: especially for product manager or project manager who is
very hands on, this methodology may not work as well.
- In Scrumban, there are no specific roles on the development team. This means that everyone
has the same agency to choose what they feel is the right decision for the sprint.

10

You might also like