The Waterfall model is the earliest Software Development Lifecycle approach that was used for software development, long before the Agile approach was embraced.
As the Waterfall Model illustrates the software development process in a linear sequential flow, it means that any phase in the development process begins only if the previous phase is complete. In this model, the phases do not overlap.
This way of working is quite different from the Agile one, as the main philosophy of Agile is centered around the idea of iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams. In Agile, the software development phases overlap, as each iteration progresses.
Given this, one might think why not always use Agile, given that value is delivered faster.
There are certain types of projects which could be more successful using the Waterfall model or, why not, by combining Waterfall with Agile, to give us what?s most suitable for a specific project.
Some situations where the use of the Waterfall model is most appropriate are:
The organization is more traditional and prefers a linear process
The requirements are very well documented, clear, and unlikely to change
The technology is understood and is not dynamic, for example on a project consisting of building a website, there are already multiple coding languages that can be used and the project team can choose the appropriate one from the beginning
The project has ample resources, with the required expertise available to support the product
Although we are starting to see mass adoption of various Agile methodologies in all enterprises, even more, traditional ones, like public institutions and federal agencies, there are still many organizations that are slow to make the change. It is also very common for an organization to transition into more of a hybrid approach that combines aspects of both Agile and Waterfall.?
Waterfall is not the fastest way to work. Deliverable results will only show at the end of the development cycle, so it could take months or even years before the customer sees the final product, as well as proving hard to keep the development team engaged, given that the release process is not incremental. As Agile shortens the delivery time and makes it easy to gather feedback in the early stages, one successful recipe would be to use Waterfall with a spice of Agile.?
Let?s think of an example of a technical project, consisting of developing software. In this example let?s use a website for a public institution.
Some of the main reasons for using a combination of Waterfall and Agile models are:
In a public institution, the adoption of the Agile culture might prove problematic, as this kind of organization is heavily relying on defining the scope upfront and on a thorough paper-based approval process. Thus, using the Waterfall model, with some elements from Agile will prove to be more efficient.
It shortens design, analysis, and planning, but lets the organization define project frames including budget and time of delivery, compliance with standards, and enhancement collaboration.
The blending of waterfall and agile should occur at the beginning of the project, as both the customer and the team will start with this mindset from the beginning, not jeopardizing engagement. For example, in the Waterfall model all requirements must be defined and approved, and in the Agile – Scrum way, a product backlog must be prepared. A key success factor to blend these in a technical project is to define the customer journey upfront. In this way, the entire team can participate in this phase and engage with the customer from the start. Let?s say we agree with the customer to deliver a batch of requirements every 3 weeks. In a Waterfall world, we would have said that the requirements and design phases will be completed after delivering all batches. And we could do all this by adding spice from Agile, as iterations (batches) were used to deliver the requirements, keeping an Agile mindset inside the team.
Another way of combining Waterfall with Agile could be to do the planning, design, and requirements definition with Waterfall, but development and test in short sprints using Agile (Scrum). In this approach, the development team gets to keep working Agile, using iterations, and does not have to wait for the entire project to end in order to see the result of their work. This approach proves to increase the team output, as well as keep the customer involved, by providing feedback at the end of each development & testing iteration.
Most importantly, let?s not forget that customers want to see their products yesterday. In today’s competitive world, time to market is a key factor for success. Basically, our customers want the speed of agile, combined with the predictability of a thorough and traditional project schedule from Waterfall, that eases their anxiety in launching new products and services to an increasingly demanding customer base.?
Creative projects (e.g., video production, marketing campaigns, web design, etc.) are characterized by a predetermined budget, strict timeline, and a diverse group of people in the team. Many things happen simultaneously, and requirements changes may occur often and almost arbitrarily. This causes uncertainty about the project timeline and the resources needed (people and money).
There are always questions and doubts about managing creative projects, especially if you’re not making the decisions and leading the processes. More clarity comes when the production pace is adaptive, and the closest methodology that can suit that is Agile.
So what’s all the fuss about creative projects?
The main challenges in the management of creative projects include:
Changes can happen almost every day. There are client changes in the requirements, technology, changes in the environment. So what can you do?
Best Ways to approach Creative projects
First, you need a good (if not great) project manager to keep the balls in the air, and second, your process needs to be tight. These two crucial pieces go in tandem.
Let’s walk through the essential phases (this may look different depending on your processes):
Initiation, project charter (defining requirements, budget, and timeline).
Planning identify deliverables, milestones, tasks (possibly in Kanban / Scrum). Carefully plan the activities and the budget spending.
Execution team members perform the tasks, produce the outcomes and mark them as completed.
Submission (signoff) of deliverable
Different team members may be (director, 3D animators, web designers, etc.), and the project manager should onboard them all. The success in these projects largely depends on how information is transferred between the team members. You should encourage all team members to interact and provide honest feedback.
Other responsibilities of a creative project manager include:
Defining the phases and work breakdown structure (WBS)
Communication with clients and informing them regularly
Helping the team to avoid blockers
Creating the progress reports for the stakeholders
How can Agile practices help in Creative projects?
The companies that operate in the creative industry usually make their decisions influenced by the rising competition. Being agile or not in this will and can affect ROI.
Therefore creatives and their projects can benefit from the agile methodology.
Try this on the next project as a starter:
If you do the above accepting changes in requirements is more manageable, even at a late stage of development or production, since you’re delivering in iterations. Agile processes enable successful adaptation to changed requirements, which benefits your customers.
Bottom line Creative projects are feasible
They are even more profitable with a great project manager. Just because projects happen to be creative, it doesn’t mean there is no place for a clear project structure or methodology.