What are the characteristics of a great project manager? I think the below characteristics are what I would assign to a great project manager:
1. You have to be a good communicator. 90% of a project manager’s job is communication, so you have to be able to clearly communicate to a large project group that is very diverse (geographically and speaking with business stakeholders or technical team members).
2. A project manager has to be detailed oriented. You are juggling 100 different details of the project in your mind at any given time. If you are not on top of all these details something will fall through the cracks and come back to haunt you later.
3. You have to be a problem solver. Generally team members will come to you will issues they need to have resolved. You have to be able to creatively generate solutions in order to help the team move forward.
4. You have to be proactive at all times. The project manager is a driver and has to lead the team at all times. Complacency will only lead to your undoing.
5. Finally you need to be a critical thinker. Listen to the issue, think about how to fix it, and then act upon implementing the solution.
Read Full Post »
What is the best way to get a customer involved in your software project? Customer involvement is crucial if you are going to deliver a product that the customer will use. The customer is the only one who can explain to you their need and value of the delivery.
The first step is to have the project team (Business Analyst & Development Team Lead) have an extensive discussion with the client to understand the current software package. This is important for a few reasons:
1. To learn how the customer uses the current software package
2. To learn the limitations of the current package
3. To understand what the customer needs or would like the software to do
This is an important first step that can lead to further conversations between the technical team (Business Analyst & Development Team Lead) and the customer to define the scope of the project.
Once the scope is defined the technical team then can work with the customer to prioritize the order of delivery for new functionality. Now that the development team has their priorities (and the Business Analyst has finished defining the requirements) the coding can begin.
I have always felt it was useful to have customer buy in of new functionality before it is implemented. You can do this by showing the customer the prototype and then letting them get hands on with the prototype. This will help the team gain invaluable feedback on their work. There is nothing worse than developing something you think/hope the customer will need or use. This will only lead to rewrites, which leads to running behind schedule, which leads to a frustrated development team and customer. By soliciting customer feedback from a prototype (something the customer can touch and see and nothing as esoteric as gathering requirements) this will not only help the development team stay on track (and hopefully give them even more insight on the customer needs) but it will also build good will with the customer. The customer can become an advocate and build excitement for the new product. I couldn’t image being a customer and only receiving feedback from the development team at payment milestones, and then receiving a deliverable which doesn’t meet their needs.
Just before release of new functionality the customer can also be beneficial in testing. By having a few members’ of the clients staff involved in UAT (User Acceptance Testing) they can help find bugs or define any functionality which is not working optimally.
Just like every other component of a Project Manager’s job communication (in this case with the customer) is invaluable to delivering successful projects.
Read Full Post »