When working with long running software projects. The initial stakeholders and developers often leaves before the project is complete, if it ever becomes completed.

As a result, the inital decisions made when starting the project can be forgotten. The experiences that lead to the project being initiated in the first place no longer exists in the team working on the project.

In some cases it can be good to have rotation of the people working with a project, but in in other cases it can be problematic.

Each software product has a problem domain related to it. If the developers on the project change too fast the knowledge of the problem domain can being to wash-out amongst the project members. The more washed out the knowledge becomes the more likely it becomes, that the development effort reiterates mistakes already done in the past. The worst case scenario ending in project failure.

It is important to stress that the reasons why a project is started in the first place should be communicated to new team members. If the problem domain and the reasons for the project is to known by the developers, chances of developing successful software are greatly reduced.