You all have valid points about the issues you see, and have experienced. I guess my two cents would speak to project organization, and role definition.
System Manager/Customer: Their job is to understand what problems or opportunities they want an application or blown out system to address/fix. The groundwork is primarily laid out by the customer utilizing the talents of a business analyst during a survey/discovery phase. They are the customer, therefore they're responsible for participating in the project as much as any other group, from requirements delivery, to testing, etc.
Project Manager: They're not necessarily a manager. They're job is to serve as an interface to the customer. Get an idea of what it is the customer wants, the timeline for delivery, facilitate Joint Meetings with the customer and the technical team, track resources, and costs associated with the project, determine milestones within a project, project critical path, etc. The role of a project manager is the role of a coordinator/accountant. The project manager should serve as the communication focal between the customer, the technical team, and the management that both sides respond too. A project manager does not have to be a developer, nor should they be making any technical or design decisions of any kind within a project. That's not they're role, because keeping everyone on the same page, monitoring the product development life cycle and calling attention to scheduling and resources issues, and tracking overall project cost should keep them more than busy enough. Project manager's should also be sharp enough to recognize the requireds in a project . . . make sure agreements are made and signed on, as well as indentify product support issues, and generally understand the overall software product development life cycle, and then the support and maintenance life cycle that comes after deployment.
System Architect/Technical Lead: Their job is to run the development team, schedule all technical activities and administer the work, and provide the overall vision of the product based on requirements that came from the customer. The schedule of activities along with the estimates that have been derived by the system analysts, and developers then goes to the project manager who puts the information into the schedule and works with the the tech lead to mitigate resource constraint risks, and other cost related issues.
Think of a project team in terms of three arms of the project. System Management/Customer, Project Management, and Technical. The roles of couse can shift, but this is a sound view, and will give you a guy idea of who's supposed to be doing what. Another view is that the customer and the development team are two roads that intersect at the project management intersection.
I really don't think a project manager should have to know a thing about development as long as all three of the project arms are there. For crying out loud . . . project management is newer as a discipline than software development. Project Management came from the construction industry as a means by which the overall cost of a construction project could be lowered, by closely tracking deliverables and alerting management and the customer when deadlines weren't being met on milestones.
You all have valid points about the issues you see, and have experienced. I guess my two cents would speak to project organization, and role definition.
System Manager/Customer: Their job is to understand what problems or opportunities they want an application or blown out system to address/fix. The groundwork is primarily laid out by the customer utilizing the talents of a business analyst during a survey/discovery phase. They are the customer, therefore they're responsible for participating in the project as much as any other group, from requirements delivery, to testing, etc.
Project Manager: They're not necessarily a manager. They're job is to serve as an interface to the customer. Get an idea of what it is the customer wants, the timeline for delivery, facilitate Joint Meetings with the customer and the technical team, track resources, and costs associated with the project, determine milestones within a project, project critical path, etc. The role of a project manager is the role of a coordinator/accountant. The project manager should serve as the communication focal between the customer, the technical team, and the management that both sides respond too. A project manager does not have to be a developer, nor should they be making any technical or design decisions of any kind within a project. That's not they're role, because keeping everyone on the same page, monitoring the product development life cycle and calling attention to scheduling and resources issues, and tracking overall project cost should keep them more than busy enough. Project manager's should also be sharp enough to recognize the requireds in a project . . . make sure agreements are made and signed on, as well as indentify product support issues, and generally understand the overall software product development life cycle, and then the support and maintenance life cycle that comes after deployment.
System Architect/Technical Lead: Their job is to run the development team, schedule all technical activities and administer the work, and provide the overall vision of the product based on requirements that came from the customer. The schedule of activities along with the estimates that have been derived by the system analysts, and developers then goes to the project manager who puts the information into the schedule and works with the the tech lead to mitigate resource constraint risks, and other cost related issues.
Think of a project team in terms of three arms of the project. System Management/Customer, Project Management, and Technical. The roles of couse can shift, but this is a sound view, and will give you a guy idea of who's supposed to be doing what. Another view is that the customer and the development team are two roads that intersect at the project management intersection.
I really don't think a project manager should have to know a thing about development as long as all three of the project arms are there. For crying out loud . . . project management is newer as a discipline than software development. Project Management came from the construction industry as a means by which the overall cost of a construction project could be lowered, by closely tracking deliverables and alerting management and the customer when deadlines weren't being met on milestones.
By the way, I'm a developer.