The purpose of a project manager
Like in any software development project, the project manager fulfills a number of important roles. There is a role concerning finances (the project needs to stay in budget), there is a role concerning delivery (the project needs to deliver what was promised) and there is a role concerning HRM (the project needs to have the resources it needs).
There are many ways to go about as a project manager. The project manager needs to be like a juggler keeping all balls in the air, making sure all roles are fulfilled in the best way possible. There is however one important role that a project manager might forget: being a mentor to the team members.
All too often the various roles of a project manager have conflicting purposes and consequences. If the project needs to be delivered in time, more resources are needed or lesser user stories need to be delivered. It's like the popular saying, you can only have 2 out of 3 things. You cannot have a good, cheap and fast delivered product. Pick 2 out of 3.
Dilemma's like that make some project managers scared and stick to the old rules of the waterfall era. Some project managers are holding back changes because he/she can only have 2 out of 3. 'Let's not change our architecture, otherwise we will not deliver in time'. Or, 'let's not add the resources we need, otherwise we will go over budget'. I (somewhat) understand these types of choices, from the perspective that a project manager might have.
What I do not understand however, is a project manager stopping innovation and research in a project, because of above possible consequences. Especially in an Agile project the team must constantly improve, revise, learn, adapt, teach and get taught. There needs to be an open environment where free speech is the greatest of goods. Each and every team member needs to be able to speak their mind about possible problems they encounter or foresee. And, if this problem is real, it needs to be addressed.
It is the role of the project manager to create a culture within the team so it feels free to self steer and improve its performance. Without this attitude it will be very hard to successfully complete an Agile project. What's the point ofbeing Agile if you do not give your team the freedom to speak up and change their work or attitude?
It is also the responsibility of a professional team member to speak up and not relent if you see something that in your opinion is not correct. Start an argument and don't be afraid of other team members. Don't give up until you have convinced the others about your point of view, or until you are convinced of theirs. If now is not the time to start this argument, start it tomorrow, but do start it. Do not give up; you will only hurt the project, the team and yourself.
It is the responsibility of the project manager and of each and every team member to enable this free speech in an Agile project. If you cannot achieve that, you would be that beautiful butterfly, trapped inside, looking out the window for all those lovely flowers. Break the window and fly towards your goal. It will set you free!