Do You Need a Project to Develop SW?

Do You Need a Project to Develop SW?

Let’s look at projects through the correlation between the project “resourcing” and a team building curve:

Projects

People working in the project are usually called a project team. They are depicted as “resources” in the start of the project. If the project is relatively big, then a group of e.g. 30 members is hardly a team. We rather split the whole group to the smaller teams – frequently to the design team, development team, testing team…

For people (a team) working together, to achieve a high level of performance, it takes certain time. That time is the project time when people are supposed to create value. As it can be seen from the first figure on the left, the high performance level is achieved towards the end of the project (green area). The orange area bellow the expected level of performance line (red dashed line) generates a certain technical debt (delay), that is eventually (hopefully) compensated in the performing phase late in the project.

When the project is finished a “deresourcing” is done, i.e. people are dispersed over the next projects. They are submitted to pass the similar curve again together with the new project members.

In order to avoid the performance drop, the following setup can be proposed:

TeamPerformance

The core of operations is the long-living team(s) that works on the prioritized features. Having the phases of the team creation “in the past” as shown on the figure, the team starts working on every new feature from the performing level, ready to create value. There is no waste of time to ‘resource’ a feature. When ready, the team would pull the next feature from the prioritized feature backlog and start with it. In addition, the team is capable of releasing the product after each of the features being created. For a difference to the batch&queue project approach, smaller features and quick releases make our product sooner and more competitive on the market.

Applying this, gradually we started less to use words like ‘late’, ‘delay’, ‘catch up’, ‘change requests’… Each of the teams has its velocity, estimates and with the support of the leadership, process, practices and tools try to add the highest value with as lees effort and time as possible and with the highest quality.

You need a project to develop SW?

OK!

 

 

 

I Am a Project Manager – Do I Still Have a Job?

Project Manager is a Heavy Job

We had a manager who had the strong push and the idea to bridge the gap between the project management and the line management[1]. The constant clash of focus and shift of responsibility (blame) existed. The idea was to lead the whole organization as a project. The roles are temporary – rotating and evolving as the current moment requests. Managers were supposed to be flexible and were asked to express their personal plans.
Well, everybody survived!

Agile transition brings changes to all roles in the organization. In a number of cases it “renames” project managers to team leaders or in a case of Scrum deployment to Scrum Masters. Some of them adopted a new way of thinking and put the team and motivation of individuals in focus. They leveraged the experience accumulated from before supported with the new knowledge and principles. Their influence in the organization is stunningly big. Features they do with the teams they facilitate are simply smooth. They realized how to empower people and yet reach a high level of transparency to tackle all the changes of inputs as well as to solve impediments on the way. They are becoming new agile leaders as we seek for.

Other industries may differ, but in the software industry with the continuous integration, short iterations, frequent releases etc., nowadays leading methodologies do not require a “project setup” and consequently a typical role of the project manager as before. We need them in different role and acting. We need them as agile coaches, team facilitators, resolver of impediments; the nurses of the healthy teams. On the road getting there, we should treat them with a high respect!

Good discussion and further references from the Think Different blog – the FowchainSensei, Bob Marshall


[1] Line management – a typical term in big organizations for the persons “owning” the resources. Sometimes resources are called ‘people’…and vice versa :-(  …more