Agile versus Waterfall

        main-qimg-58816439e3c075a5b8bebbba6131cf5b-c

Figure 1. How Projects Really Work

In this post, we would like to discuss how we envision our development process philosophy and which approach we plan to use. As can be seen in Fig.1, the vision of a project is not always the same (completely different) to its final release. Thus, it is very important to choose the appropriate development strategy and stick to it during the project’s lifecycle to deliver the best solutions.

Different approaches

In the case of web development process, there are generally two approaches: waterfall and agile. What are the main differences between them?

  • Waterfall process is when each part of the project is done sequentially by a team member and passed along the assembly line after the part is finished.
  • Agile process is a simultaneous working approach when each member of a team contributes to the project in the same time frame.

In short, here is a simple explanation of both:

 Video 1. Workflows: Agile vs. Waterfall

After considering the pros and cons of given approaches, we chose the agile model for the following reasons:

  • Short iterations (time frames) of development work mean fast delivery and constant up-to-date with current issues. Our product is for young and innovative people and we need fast solutions for emerging problems, and small increments of work provide convenient development pace for our product.
  • Our small team has representatives from all stakeholders, so conducting Scrum meetings would be an efficient collaborative process where interests from each side are not neglected.
  • Feedback is prompt and corresponds with each iteration directly.

Q. How does it work on a daily basis?

A. Scrum Power!

Video 2. Short explanation how Scrums work

We will be using the Scrum Agile methodology as it has proved to be effective and applicable to various project types.

Basically, each of our sprints (a specialized term for iterations) will consist of several steps:

  1. A product owner  –> creates –> a to-do list with noted priorities which is a product backlog.
  2. The team –>takes–> a small piece of that to-do list from the top, and discusses implementation.
  3. Our sprints –>last–> 3 to 4 weeks to complete that piece.
  4. Meanwhile, the team—> has –> daily scrum meetings to discuss and assess the progress of work to be done.
  5. The ScrumMaster —>is–> the master brain behind those organised scrum meetings. They keep the team aligned and focused on the goals.
  6. Each sprint —>ends —> with a deliverable product, thus showing an achieved goal to a stakeholder.
  7. A sprint review and retrospective —> complete the cycle of each sprint and maximise the feedback effect in order to improve a next sprint delivery.
  8. A new chunk of backlog is taken into work and the iteration cycle starts from Step 1.

 

In our vision, Scrum is a flexible and efficient web project management framework which enables the team to react more quickly and respond more accurately to the arising issues. Scrum’s holistic nature minimizes marginal risks and allows our App product to adapt to changes just in the right time.