10 Ways to Improve Software Project Planning
While details may change or become clearing during the development process, having a good plan of action never hurts. These tips can help elaboration occur even quicker.
Join the DZone community and get the full member experience.Join For Free
It also recognizes that over time the details will become clearer as more questions are answered, ambiguity is removed, and decisions are made. Something that helps get to the end of progressive elaboration is a solid process for project planning. The following 10 items should be considered during this process so elaboration can occur even quicker.
10 Ways to Improve Software Project Planning
1. The Objectives of Your Project
It’s important at the start of the project planning process that you clearly understand why this project exists and what it is intended to accomplish. Why is this so important? It will help guide decisions that will need to be made through the entire project planning process. For example, let’s say the purpose of a project your company is looking to implement is to streamline a process that takes too long. If you have a clear understanding of the purpose of this project from the beginning you can then keep your eyes open for opportunities that will streamline the process even more.
2. The Intended Results of the Project
Part of the project planning process needs to be a consideration of the intended results. The best way to monitor this is through tangible metrics that can be tracked over time. For example, a 25% reduction in rework or a 20% decrease in the amount of time it takes to get work out the door are both metrics that are easy to monitor to see if the project is meeting its intended results.
3. Project Constraints
This part of the project planning process identifies the environment in which the project will take place…and the potential associated limitations. There are a number of different constraints that must be taken into consideration. Three of the most common are technological, resource, and physical constraints. Technological constraints may be the inability of one company’s system to integrate into another company’s system. Resource constraints contemplate the fact that there may not be enough resources available which could ultimately extend the project timeline. Physical constraints address the physical limitations such as limited office space or not having a location to house the necessary servers for the project.
4. Project Assumptions
Assumptions are tricky business. What you may feel is an assumption on your part may be the last possible thing somebody else would even think of. This has disastrous effects on a project when you “assumed” something would be complete at a certain time by another department or were under the belief that something was already complete. It’s very important during the project planning process to identify these assumptions and list them out for all to see. This allows everyone to nod their head in agreement and say they see the world the same way as you, or, more importantly, to raise their hand and say your assumption is not correct. There is no better time than the beginning of a project to have wrong assumptions clarified and get everyone on the same page.
5. Required Project Work
This is when you start digging into some of the details of what will be required for the project to be complete. It’s next to impossible early on in the project planning process to identify all the possible work that will need to be complete to meet the project’s objectives. What you can do at this point is put together a rough outline of what you know must be done. You can leave placeholders for some of the unknowns that you will fill in later. This is where the concept of progressive elaboration comes into play. You start with what you know. Then, as the project planning process continues you are able to add more detail to the work that must be accomplished.
6. Roles and Responsibilities
This is the “who’s who” of the project. Think about it as the first time a group of new people comes together for a meeting. This is the opportunity for everyone to go around the room and introduce themselves, give a little bit of their background, and then tell more about what they do. That’s what you need to do in the project planning process. Compile a roster of who is responsible for the different aspects of the project. Include the project manager, technical lead, executive sponsor, and other key personnel and decision makers for the project.
7. Project Schedule
This project schedule can be as detailed as it can be at this point of the project planning process. You can concentrate on high-level phases, rough dates for key deliverables to be completed, and other major milestones. A word of caution, however - be careful that everyone knows that these are “draft dates” that are apt to change. Everyone wants to know when a project will be done and the first date that is thrown out there is what sticks in everyone’s mind. People do need dates for their own planning purposes, and you should be in a position to provide them with rough dates as a starting point. But, they do need to understand that as more facts become known about the project the dates may shift. If they are stakeholders that are depending on the success of the project, you can give them the professional courtesy of letting them know of any changes once you know.
8. Risk and Uncertainty Mitigation
Do you remember the constraints that were mentioned in item #3 above? These are important to keep track of and make sure everyone understands what these can mean for your project. A critical part of the project planning process is to make sure these constraints do not creep up on you and turn into risks that convert into issues that result in a failed project! You need to start identifying how you will manage any risk that is introduced to the project and how you will deal with the fact that there are some things that are just not known.
9. Project Communications
One thing you don’t want to leave to chance when it comes to your project is how the facts will be communicated. The grapevine is alive and well in most companies and if you choose to ignore, or worse yet, count on the grapevine to deliver accurate messages about your project, you will be sorely disappointed. Part of the project planning process is to start thinking about how accurate, timely, and relevant information about your project will be distributed to all those who need to know.
10. Project Quality
Last but not least, you need to think about the quality aspects of the project you are managing. Put a plan in place for what is acceptable quality limits, what happens if those limits are not met, and how the end result can be constantly improved.
Published at DZone with permission of Rohit Sharma. See the original article here.
Opinions expressed by DZone contributors are their own.