Understanding the fundamentals of scrum in agile and waterfall model

Understanding the fundamentals of scrum in agile – scrum vs. waterfall

No comments

 2,166 total views,  12 views today

These days working in agile scrum is a trend in software projects. I have been working as a scrum master, so in this article, I will try to present and share my knowledge on understanding the fundamentals of the scrum in agile from my personal experience. First of all, let us not get confused about agile and scrum. The scrum is one of the frameworks in agile – it is a subset of Agile. So, if someone asks you – are you working in agile, the ideal answer would be “I am working on agile scrum”, then the question asker will think you are a good agile scrum practitioner. By the way – the other framework of agile is “Kanban”.

What will you learn from this tutorial?

  • The traditional model is available in Software Development Lifecycle.
  • Various phases in the software development life cycle (SDLC)
  • Challenges in the Waterfall model
  • What is the agile scrum methodology?
  • What are the benefits of the agile scrum model in the project?
  • What are the 12 principles of agile?
  • What are the different roles in agile scrum methodology?
  • What are the various events (ceremonies) are followed in the Scrum project?
  • What are the various artifacts are followed in the Scrum project?

Traditional model available in the Software Development Life Cycle (SDLC)

When it comes to discussing the traditional model – the name of the waterfall model comes first, however, there are many other models available in the traditional category like the spiral model and the V-model, etc. To elaborate on the concept of the traditional model, if we take the example of the waterfall model – we can say it is a document-oriented model or approach, it takes a lot of time to finalize the requirement with the client and everything is documented – and based on the documentation, various teams involved in this, start working on their respective modules.

Various phases in the Software Development Life Cycle (SDLC)

Typically the software development life cycle (SDLC) phases are as below:

  • User requirements definition
  • System requirement definition
  • Analysis
  • System Design,
  • System Development
  • Testing,
  • Maintenance.
Software development life cycle (SDLC) process in waterfall model
Software development life cycle (SDLC) process in the waterfall model

In the traditional model, all projects go thru the above lifecycle and we do see some challenges in this model, here are those:

Challenges in the Waterfall model

  • Quality is not good
  • Not clear visibility to the client
  • Risks are more
  • Team blindly follow plans
  • Difficult to track the project – is in which stage?
  • Business/ End-user not clear about what they want
Challenges in SDLC waterfall model
Challenges in SDLC waterfall model

Quality is not good

The developer team is forced to cut the testing time – so the quality is compromised and the project will suffer in the long run.

Not clear visibility to the client

The client would not really know where they stand until they reach the end if they are using the waterfall development method. So there are lots of risks in terms of the right delivery involved here, what was promised/documented, and what is being delivered.

Risks are more

Neither clients nor developers are completely sure whether they are going to deliver or receive everything on time until the end. There are risks with this methodology because the testing team will only be added at the end of the project until then neither the tester nor architecture can test the project until the development team is done.

Team blindly follow plans

The project is finalized, and the plan is done to execute the project, development just blindly follows the plan without checking back and forth whether they are in the right direction or not.

Difficult to track the project – is in which stage?

Since the project/product that you are trying to develop will not be released until the very end, in this case, we cannot say or justify whether we are planning stage or in the developing stage. Due to the poor visibility, we need to spend more time on a stage than what we have expected.

Business/ End-user not clear about what they want

Most of the time the end-users mind is constantly changing and most of the person from the business or client-side has a vague idea of their software requirements – for an example, what they needed six months back maybe now it is not relevant for them anymore or they have changed their mind now – in this case, the particular requirement gets useless. In the waterfall model, there is no flexibility where business revisits their requirement after finalizing.

What is the agile scrum methodology?

Agile Scrum methodology is a project management system/process that relies on incremental development where all challenges faced in the above waterfall model could be addressed. In scrum, the project runs based on the iteration and sprint. Each iteration consists of two to four-week sprints, where each sprint’s goal is to deliver high priority features first and come out with a potentially deliverable product.

Understanding the agile scrum methodology
Understanding the agile scrum methodology

While we talk about agile scrum – both are actually, agile is a larger picture and scrum is a subset of agile.

  • Agile is a set of values, principles, guidelines, disciplines that describe a group’s and team’s day-to-day interactions and activities.
  • The scrum methodology follows the values, principles, guidelines, disciplines of agile.

In short, the Scrum model refers to a framework that makes for effective collaborations among teams/ team members that are working on a complex project. To understand the concept of scrum we can say that scrum is a collection of meetings, roles, and tools that work together to help various teams to better structure and manage their workload in a well-organized way.

Note:

  • Though the scrum framework generally is used in software development projects however, it could be used in any type of project where a set of people works together to achieve a common goal.

What are the benefits of the agile scrum model in the project?

Organizations have adopted scrum – we can get the below benefits out of this framework or below are the advantages being adopted in agile scrum methodology:

  • Team empowerment which makes team member happy.
  • Productivity is high
  • Better quality products
  • Improved stakeholder, end-user, business satisfaction
  • Team-oriented work generates better teamwork.
  • Flexibility and adaptability
  • Creativity and innovation – developers are free to apply their own ideas, innovations to solve the problem.
  • Lower costs – compared to the water model it costs less.
  • Employee satisfaction – each team member in scrum is equally important and their voices are heard which makes them happy to work in the team.
  • The customer is highly satisfied with this model – as they will get their product or build as they had thought on time – and they are being kept updated about the progress of the work which makes them really happy.

What are the 12 principles of agile?

As per the “scrum.org” below are the 12 principles have been defined in the agile manifesto:

  1. Our highest priority is to satisfy the customer
    through early and continuous delivery
    of valuable software.
  2. Welcome changing requirements, even late in
    development. Agile processes harness change for
    the customer’s competitive advantage.
  3. Deliver working software frequently, from a
    a couple of weeks to a couple of months, with a
    preference to the shorter timescale.
  4. Business people and developers must work
    together daily throughout the project.
  5. Build projects around motivated individuals.
    Give them the environment and support they need,
    and trust them to get the job done.
  6. The most efficient and effective method of
    conveying information to and within a development
    the team is face-to-face conversation.
  7. Working software is the primary measure of progress.
  8. Agile processes promote sustainable development.
    The sponsors, developers, and users should be able
    to maintain a constant pace indefinitely.
  9. Continuous attention to technical excellence
    and good design enhances agility.
  10. Simplicity–the art of maximizing the amount
    of work not done–is essential.
  11. The best architectures, requirements, and designs
    emerge from self-organizing teams.
  12. At regular intervals, the team reflects on how
    to become more effective then tunes and adjusts
    its behavior accordingly.

What are the different roles in agile scrum methodology?

Below are the three core roles in the scrum project:

  • Product Owner
  • Scrum Master
  • Scrum Team

What are the various events (ceremonies) are followed in the Scrum project?

Below are the lists of events (ceremonies) meetings are followed in the scrum project:

  • Sprint planning
  • Daily Standup
  • Sprint Grooming
  • Sprint Review
  • Sprint Retrospective

What are the various artifacts are followed in the Scrum project?

Below are the lists of artifacts are followed or maintained in the scrum project:

  • Product Backlog
  • Sprint Backlog
  • Increment

In the upcoming article, I will describe in detail the roles, events (ceremonies), artifacts that are followed in the scrum project.

Summary: What we had here?

Thus in this article, we have learned the below with respect to understanding the agile scrum over the waterfall model:

  • The traditional model is available in Software Development Lifecycle.
  • Various phases in the software development life cycle (SDLC)
  • Challenges in the Waterfall model
  • What is the agile scrum methodology?
  • What are the benefits of the agile scrum model in the project?
  • What are the 12 principles of agile?
  • What are the different roles in agile scrum methodology?
  • What are the various events (ceremonies) are followed in the Scrum project?
  • What are the various artifacts are followed in the Scrum project?

 

See Also:

You may also like the below scrum articles:

Hope you have enjoyed reading this article and helped you. If you like to appreciate our efforts, please do share this with your friends and colleagues. 🙂