Project Lifecycle Types

TL;DR

Each project is unique because it has to cope with different risks. This is why we have various project life cycles. Read another post from the project management series. The post is based on a remarkable book written by Johanna Rothman, Manage It!

When a tester states that is using agile methodology, I test this fact by asking the question of what your other options were? The usual answer is that they do not use Waterfall because it is obsolete.

There are four types of project lifecycles:

  • serial
  • iterative
  • incremental
  • iterative/incremental

Remember. Agile is an iterative/incremental project lifecycle.

Serial

The most famous example of a serial project lifecycle is the Waterfall methodology. Phase-Gate is another one. We could have successfully serial project if following preconditions are satisfied:

  • stable requirements
  • stable team
  • stable architecture

Stable means that they could still fluctuate, but with very small amplitudes. The first priority is feature set, then low defects, and in the end, we have time to release. The reason that time to release is last is straightforward, it is tough to predict in advance. So in a waterfall, time to release could slip.

Iterative

In the iterative lifecycle, we try to cope with the problem of unstable architecture. We try not to predict far in future product architecture so we create several prototypes in interactions, where we do analysis, design, and coding. The priority list is the same as for serial, feature set, low defects, time to release. Examples of iterative lifecycles are spiral and evolving prototyping methodologies.

Incremental

Incremental examples are designed to schedule and staged delivery. We try to cope with schedule risk. In the beginning, we have some requirements, and we do an analysis to set the Architecture. We pull a feature a do a full cycle, design, code, integration, and test. In the next feature implementation, we use feedback from the previous one. When we are done with all features, we do final integration and test. The schedule is the first priority, the second is low defects, and the last one is the feature set.

Agile

Aka iterative/incremental life cycle. Examples are Scrum and Xtreme Programming (XP). We cope with schedule and architecture risks. In agile, we do not know what the final product is. In timeboxed iterations, we do incremental features. At the end of the timebox, in cooperation with a sponsor, we define requirements for the next timebox. Our priority list is time to schedule, feature set, low defects.

Remember

There are four project lifecycle types, and each type helps us to mitigate specific project risks. Agile is not the silver bullet.

Originally published at https://blog.tentamen.eu on May 17, 2020.

--

--

--

Founder of Tentamen, software testing agency.

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Add Pandas and NumPy Python to AWS Lambda Layers (Python 3.7 | 3.8)

Certbot under Ubuntu 18 with certbot-dns-route53 auto-renewal

Install Windows/386 2.11 in VMware

SRE / DevOps / Kubernetes Weekly Collection#65(Week 17, 2021)

Session Based Testing Is About Limits — Tentamen Software Testing Blog

Connecting to Aws RDS database with IAM authentication in NHibernate with C# .net

Dlithe first day experience

Heroku postgres Integration with Force.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Karlo Smid

Karlo Smid

Founder of Tentamen, software testing agency.

More from Medium

Bring Back QA to Product teams!

3 Amigos in Software Company.

How to set goals for Software Quality

Let’s Practice ‘Mobile Application’ Test Case