I am working in a start-up where we have a team that consists of 2 developers, 2 testers, and 1 tech lead, that's me. Database design, UI design, and the workflow are decided and managed by our project manager. Additionally, we have two managing directors, but they don't interfere in the technical perspectives. Our project manager is managing the projects as well as he is one of the directors of the company. He is holding some shares too.
I am the tech lead, and we are all working in a very big project which has more than 50 Forms and 100 reports. We are a start up, I participate in developing too. As a Tech. Lead, basically I have to work on some tougher parts of the project. And sometimes I have to review the others code too.
Our problem is that our project manager is not getting satisfied easily with his project design.
He is feeling unsatisfied about his new update after being made by us. Meaning he needs more, not meant that he is unsatisfied with our performance. I guess that he is not making a satisfactory plan before initiating an update in our bigger project.
Whenever I get a chance to speak with him, I tried to explain the danger. But he is simply saying "I am also an ordinary human being. My plans may go wrong sometimes. In order to point/correct mistakes we have appointed you as a Tech. Lead." See, how could I do the assigned tasks with high perfection if I try to point out that mistakes in control flow of the entire project daily?
Is this a common behavior with all PMs? If not then tell me how to handle when he is making this kind of continuous unplanned updates?
In the middle of the development, or even after completing the testing, he is insisting that we change the entire UI/Workflow.
Adding/removing database fields without forecasting the ill effects.
Adding/removing features into the forms and reports by removing the existing ones.
Assigning new work, which is not in the schedule, due to new modifications in the forms, Basically, he don't have a work schedule.
All of the above changes are made by him by referring to some other products which are very similar to ours.
Basically a normal software development lifecycle will be like this: (A) Analysis -> (DS) Design -> (DV) Development -> (T) Testing -> (R) Release
But we are working as follows: A -> DS -> DV -> DS -> T -> DS -> T -> DV ......... Infinity --> R
This leads to the loss of quality in our project. At the same time, our project is in the danger of getting out of the control. So due to this, once in a meeting we said this to the project manager:
"Software development and building a house are same. We cannot remove the pillars in the middle of the construction."
But he did not do anything towards our statement. He is continuing his job in the same way. I don't know if this kind of culture is common in all level of software companies. But this kind of behavior is making us more frustrated and making our employees' efforts useless.
Can anybody tell me how to convince him respectfully? If it is a common behavior, then tell us how to overcome this kind of situation?