We employ scrum to the development of all our web site projects (static website as well as dynamic web sites) Scrum is an iterative, incremental framework for project management and software development. Simply put, Scrum is an agile framework for completing complex projects. As opposed to a full process or methodology like the waterfall software process model, it is a framework. So instead of providing complete, detailed descriptions of how everything is to be done on the project, much is left up to the team. This is done because the team will know best how to solve its problem.
How does Scrum work ?
The key features of the Scrum framework are as follows:
- The desired outcomes/features of the project are organized into a dynamic list called a product backlog.
- Teams
work
in
cycles
called
sprints,
iterations
that
typically
range
from
two
to
four
weeks
in
duration.
- At the
beginning
of each
sprint,
teams
perform
sprint
planning,
where
they
choose
items
to
work
on
during
the
sprint, called
a
sprint
backlog
.
o A
sprint
backlog
is
a
negotiated
set
of
items
from
the
product
backlog
that
a
team
commits
to
complete
during the timebox
of
a
sprint.
o Items
in
the
sprint
backlog
are
broken
into
detailed
tasks
for
the team
members
to
complete.
o The team
works
collaboratively
to
complete
the
items
in
the
sprint
backlog,
meeting
each
day
(daily
scrum)
to
share
struggles
and
progress
and
update
the
sprint
backlog
and
burndown
chart
accordingly.
- At
the
end
of
each
sprint,
the
team
delivers
a
potentially
shippable
increment
of
work,
presented during
a
sprint
review.
o Potentially shippable
means
that
the
increment/deliverable
could
be
released
to
a
customer.
o The
product
owner
makes
the
decision
about
when
to
actually
release
any
functionality
or
deliverable.
o The
team
takes
the
time
at
the
end
of
every
sprint
to
identify
ways
to
improve
both
the
end
product
and
the
process
in
future
sprints.
This
ceremony
is known
as
the
sprint
retrospective.
- The cycle
repeats
until
enough
items
in the
product
backlog
have
been
completed,
the
budget
is
depleted,
or
a
deadline
arrives.
Which of these milestones marks the end of the work is entirely specific to the project. No matter which impetus stops work, Scrum ensures that the most valuable work has been completed when the project ends. What are the advantages and disadvantages of Scrum?
Scrum Advantages
Scrum Disadvantages
What
real life
projects
are
actually
using
Scrum
?
Scrum
has
been
used
to
produce
financial
products,
Internet
products,
and
medical
products
by
ADM
and
other companies.
More on Scrum
Agile software development is based on the concept of framework in the field of software engineering that helps catalyze the process of system development life cycle. It allows a team of engineers to work harmoniously on the specific features of the software that can be accomplished in a short time frame.
SCRUM involves the implementation of agile software development within a time constraint period where the team is supposed to synergies their skills and expertise to fulfill the requirements of the project within a period of 30 days or more. One of the recognized advantages of SCRUM is that it avoids the team players from digressing from the development of the project. It also helps manage resources and time in the most efficient way, hence optimizing performance and product development. SCRUM projects consist of imperative features that are not considered complete until they have undergone the iterative process of development lifecycle, that is, code analysis, code design, code implementation, software and feature testing and documentation of the feature.
A team working on a SCRUM project comprises of analyst, designers/programmers, software testers and technical documentation specialist. The role of the team is integral to the project as it not only requires team skills but also requires individual team members to be self starters and capable of managing themselves. Without a single team member’s adequate contribution it is impossible to propel the project to its stage of completion. Later in this page we will see how scrum can applied for the design and development of static and dynamic web sites.
Some of the eminent advantages of SCRUM include improved time efficiency and reduced costs. SRCUM implementation allows one to pace out the coding and testing of the project, making it easy for the team to fix errors. Good communication is the key to a successful SCRUM project and hence the exchange of constant feedback among the team members facilitates the completion of the project while making it easier to dynamically cope up with the changes of the project. Essentially SCRUM allows the delivery of the product in a timely manner. Other than that, agile SCRUM is very compatible with other technologies and programming languages. These are the main resons we focus on scrum in the development effort static web sites as well as the development of complex application and ecommerce applications.
On the contrary, it can also cause loop holes in the project if there is no definite end date for the delivery of the project. SCRUM can also hinder the development of the project especially if the tasks are not well defined or are inaccurate causing the project cost to go high. The implementation of SCRUM is beneficial for small scale projects and can adversely affect projects that need to be implemented on a large scale. Moreover a single team member leaving the team can cause the whole project as well as the team to suffer. Last but not the least, quantification and implementation of the project quality management is hard. We build our methodology around your dates and needs and ensure that you web site delivered on time, within budget and with a acceptable quality levels.
A report on Scrum:
Section 1: Abstract:
The focus of agile software development has always been on methods and practices. Agile software development stresses on rapid iterations, small and frequent releases, and evolving requirements facilitated by direct user involvement in the development process. Scrum is an iterative, incremental methodology for project management often used to implement agile software development. This report describes how Scrum is used for management of software development projects and software maintenance teams to improve their processes. The focus of this report is on describing the case studies about introducing, implementing, and using Scrum in different software development companies across the globe on differents types of project (like building a customized web application). The findings indicate that sudden implementation of Scrum is a difficult process because it involves large changes in organizational culture and work practices that may be difficult to adapt to but certainly proves to be an optimal way to introduce an agile method into an organization.
Section 2: Introduction:
Scrum is a team-based process/approach for managing and controlling development work which results in incremental development of the product and thus maximizes productivity. Scrum provides a framework to visualize scope, amalgamate mundane and repetitive development tasks, and enforce process. It can be applied equally well instead of traditional development processes to support all the development activities within an enterprise to increase speed and flexibility. Scrum is an empirical process based framework in which complex products can be developed as it reduces complexity and time to build software with gamut of requirement variability. It is transparent and adaptive planning process.
The main roles in Scrum are:
Section 3: Example 1:
One of the companies among several which follow scrum methodology is Motorola:
The section below describes how Motorola adopts scrum process during software development cycle.
Section 3.1: Project:Multimedia Messaging System application (Features such as postcard, My Favorites, OTA)
Section 4: Example 2:
Another example of a company which follows scrum methodology is IBM:
Software group of IBM comprises of approximately 120 members per software product, with team members spread across different geographical locations, overlapping as well as non overlapping timelines, having different skill sets required for the project. In order to achieve effective communication and efficiency between such cross site teams (teams working at different locations), IBM uses Distributed Scrums:
Section 4.1: Project: IBM Web Sphere- Portal V6.0 project
Conclusion:
As a team we have analyzed and found that majority of the companies implement Scrum on a large scale but profound evaluation and more reflective view of Scrum is needed before implementing Scrum because it involves large changes in organizational culture and work practices that may be difficult to adapt to and thus this change might be formidable. Finally, we as a team do believe that Scrum implementation is an optimal way to introduce an agile method into an organization to adapt to the rapid changing requirements. It gives the opportunity to self-organized teams to:
We believe that Scrum places emphasis on people and individual competence and provides an edge to the organization by the increasing productivity and efficiency as the team members gain a more structured work style; in addition, working for less time and having better control of the work they carry out in a Sprint. In short, we believe that Scrum methodology is one of the better agile methodologies for larger projects, geographical distribution, and legacy systems.