Project Lifecycle Definition
The term project lifecycle models how a project is planned, controlled, and monitored from its inception to its completion.
Over the years, a number of different models have been developed, beginning with the oldest and simplest being the Waterfall Model. However, as software has become larger and more complex, this method of development has been found to be counter-productive, especially when large teams are involved. More iterative approaches have been developed such as Rapid Application Development, Rational Unified Process, and Scrum.
The level of formality and complexity of the lifecycle for each project is constrained by any number of factors, including budgetary constraints, project team experience, project size, and project complexity.
Some experienced and highly respected project leaders and programmers consider rigid application of lifecycle plans to be a theory that does not work well in practice. Linus Torvalds, the very highly regarded project leader of the Linux kernel, made the following statement on the Linux kernel mailing list:
"No major software project that has been successful in a general marketplace (as opposed to niches) has ever gone through those nice lifecycles they tell you about in CompSci classes."
While there is a lot of truth to what Linus Torvalds, many of the problems have to do with choosing the
wrong methodology, applying the methodology incorrectly, or following a methodology too rigidly.
I've also put together a short online course that describes project management fundamentals if you're interested in learning more about this profession.