Planning Object Oriented Projects

"Manage the process, don't let the process manage you." Khoa Nguyen, CEO VideoServer, Private Communication (1990)

chapter marks a departure from the previous two in that we turn from the conceptual to the pragmatic. From now on, I will focus on the practical, day-to-day activities and issues of managing your project. It all begins with the Software Development Plan (SDP), which documents exactly how you intend to manage your program. It includes your:

Program deliverables, including all of the code, documentation, reports, and training you expect to deliver.

Choice of development lifecycle, including whatever tailoring of the cycle you plan. Document how you will apply the model to your particular development. For example, there may be special activities to support scoping and testing activities. This can include any special system testing.

Program staff organization, consisting of staff size and program roles, team structure and the allocation of responsibilities.

Required resources, including, but not limited to, equipment, software tools, and libraries.

Schedule, including planned dates for the delivery of code and documentation, and the major program milestones.

Work breakdown structure, comprising the tasks required to meet the schedule.

Program time-phased budget, which permits the tracking of progress and estimation of the final program costs.

Risk planning, identifying risks you expect and how to address them.

This chapter details not only how to organize a software development plan, but also how to determine its contents.


The concepts discussed to this point can be applied to every software development project, not only object-oriented ones.

The industry has come to recognize the importance of SDPs. For example, the Software Engineering Institute (SEI), an organization that defines and measures software development, uses the Capability Maturity Model (CMM) to assess a software organization's ability to manage software development. It considers the consistent preparation of SDPs by all of the organization projects one of its primary requirements. The federal government requires SDPs as a part of its process for awarding government contracts; in fact, there are some standard military SDP formats. Other government entities and nongovernment clients also often require an SDP as part of an organization's bid. For these reasons, unfortunately, SDPs are often written just to pass a CMM evaluation or to meet a proposal requirement. In my view, this is wrong. You should write the SDP because it is the right thing to do. It should not be treated as an item to check off some list.

The SDP document itself is not as important as the act of preparing it. The preparation gives you the opportunity and forum in which to think through all of the issues listed. As the project manager, the SDP is your document, so prepare it with that in mind. It should describe your understanding of what needs to be done and how you intend to go about it. In effect, it defines the project. Use the SDP to communicate your intentions to your management and customer. If they accept the document, you can be assured that they concur with your approach to the program's management. Thus, preparing the SDP is the first step in taking charge of your project.

It is often said that you can't fight reality. So while preparing the SDP, address the reality of your project: the actual schedule and budget. Too many development plans rely on divine intervention and not solid management. If you have been handed an impossible schedule and budget, don't try to step up to do the impossible. Instead, prepare a plan and look for an opportunity to negotiate a reasonable schedule and budget. Without such a plan, you have no basis for negotiating a compromise or for convincing management that the task is impossible. Face it: You cannot build, for example, a manned simulator in three months, no matter how much it is needed. It is your job then to impose the discipline and focus that your management may be lacking.

Project Management Made Easy

Project Management Made Easy

What you need to know about… Project Management Made Easy! Project management consists of more than just a large building project and can encompass small projects as well. No matter what the size of your project, you need to have some sort of project management. How you manage your project has everything to do with its outcome.

Get My Free Ebook

Post a comment