Tuesday, March 21, 2006

The Importance of Solid Project Management

First off, i am listening to the latest ColdFusion Podcast, about project management here. And I enjoy hearing about how developers battle/deal with clients about managing the projects.

Honestly it all starts with preparation, if you don't have a solid project management process and system, that can handle almost every situation...

And when you skip the process, you'll only be causing your own problems.

I stick by the process I helped to create at Rockler, it's simple and solid, but adapt it towards your own needs.

Then make sure everyone is on board for it, if not, it's just gonna self-destruct.

1. Project Request - Whether you are working with a boss, client or another department, the crust of all failures of projects start with the request. This has to be as fully detailed as possible.

It pays to define your specs as to what information you want from them. Because if they want to save time and energy and stress, the more information they provide the more accurate a picture of the project you'll have.

2. Project Plan - Now you take that request and figure out how to display what your idea of how to execute the plan out. You can not jump to any conclusions, you do not assume anything.

3. Project Review - This is the process of reviewing the plans to make sure that the requester agrees and approves of exactly the full details of your project plan, if not, then go over step by step, what needs to be changed in your project plan, until it matches 100% what they need and want. If they sign off on the project, then no changes can be allowed. This is their time to add features, or change look and feel etc. Here you can do the prototyping, wireframing etc. Whatever it takes to show the flow of the application. Also this is the time you develop a functional testing checklist, so how will you know if each step of the application is a success or not a success. The more work you work with clients to do this, the more accurate your project will do.

4. Project Coding/Developing - Now you start to actual taking the plan, and step by step execute your plan, no variations allowed. And the more you document any variations.

5. Testing - Use a test server, to test the applications, without making it available to public, use your functional testing checklist...

6. Deployment - Make sure you have a plan for this especially when you have different database, coding, graphics, files etc. More complexity demands solid planning and scheduling...

Now no system is perfect, and all of them get refined to the style of your project management...

But it all depends on how many project errors you have....

Use your project horror stories to improve yourself, learn from your mistakes...