Software Project Management in Today's Business World

As a practicing project manager I felt that I could provide some good tools, useful information and cool links related to this field. This page is for project managers and the purpose is to share information on software development project management topics. My scope on this page is to provide general, as well as, specific project information and software to assist anyone who is working to establish consistent software project leadership.

Moreover, I hope to provide some assistance in building professionalism. The current literature still says even with all the training going on and attention to managing projects there is still a rather large error or failure rate in software projects. If your career path is in project management you have a legacy problem and even more reason to read and apply the things that work. My favorite book on this stuff is by Harold Kerzner and is Project Management A Systems Approach to Planning, Scheduling and Controlling. I had the good fortune to attend PMI certification training with Dr Kerzner as the instructor.

This article is on project management body of knowledge (PMBOK).

Before anything else remember that responsibility without sponsorship makes you an immediate target for project time, scope and resource adjustment problems. Responsibility without authority is pretty much like having great vanity. It means almost nothing when tough choices are required. It is quite a lot like Solomon's thinking on vanity being "like striving after the wind".

First of all my focus is on the principles developed by Software Engineering Institute (SEI) and shared by project managers world-wide within the context of the Capability Maturity Model (CMM).

As a starting point it is important to discuss what is called the project management body of knowledge (PMBOK). The PMBOK was developed to provide c onsistent definition to the phases of a project and to delineate what should be considered as important within the context of each part of project management guidance.

The knowledge areas and project management processes are contained in nine main focus areas.

Project Integration Management - development of project plan, project plan execution and change control.
Project Scope Management - initiation, scope planning, scope definition, scope verification and scope change control.
Project Time Management - activity definition, activity sequencing, activity duration estimation, schedule development and schedule control.
Project Cost Management - resource planning, cost estimating, cost budgeting and cost control.
Project Quality Management - quality planning, quality assurance, and quality control.
Project Human Resource Management - organizational planning, staff acquisition and team development.
Project Communications Management - communications planning, information distribution, performance reporting and administrative closure.
Project Risk Management - risk identification, risk qualification, risk response development and risk response control.
Project Procurement Management - procurement planning, solicitation planning, solicitation, source selection, contract administration and contract close-out.

As you can see from these focus areas there is a strong emphasis on the use and meaning of the word "control". A LOT of activity and paperwork can be developed in these management areas, but the main point is that there must be corrective action as required. The authority and responsibility resides with the project manager.

There are many skills and attributes that a project manager needs to draw upon to be effective. The project manager has to be:

Leader - as a manager the primary concern is consistently provide key results that are expected by the "stakeholders". Leading is also required and involves establishing the vision, strategies needed to "realize" the vision, and, in fact, establishing the direction. The leader must motivate, inspire and communicate among the various people overcoming the political, bureaucratic and people barriers. It is important to remember that leadership must be demonstrated at all levels within the project such as by individuals responsible for technical issues and by team members.

Communicating - exchanging information is the key. Make sure that clear, concise and complete information is given to the receiver. Make sure that the receiver has obtained the information in its entirety and that it is clearly understood. Communications is a broad subject area but suffice to say that, whether oral or written, communications is critical to the project. It does not matter whether the communications are formal, whether the communications are going up, down or vertical. What does matter is that the effort will be far exceeded by the results. One area to remember is that if you tell everyone at once you have a better chance of getting your concerns or information disseminated correctly rather than reliance on word of mouth by members of the team telling others. Every time a different person relays information the slant, intent, body language, inflection all have a chance to infer something different.

Negotiating - conferring with people to come to consensus or agreement. Negotiating infers that there may be a need for a mediator, arbitrator or facilitator. It depends on the circumstance, the importance, the level, and, more likely, the issues. Issues like cost, scope, objectives, contract terms and conditions, resources can all require negotiating skills. Problem solving - defining (problem definition) and deciding (decision making based on analysis, solution viability or dictates from stakeholders).

Influencing the organization - the ability to use power and politics to get things done. This requires the ability to understand the mechanics or the organization regarding how to constructively use political ability.

Project management processes can be organized into five groupings of one or more processes each as follows:

Initiating processes - this includes recognizing that a project or phase should begin and making a commitment to do it. Planning processes - this means developing and maintaining a "workable" plan to accomplish what the project was undertaken to accomplish.

Executing processes - coordinating people and any other resources to "execute" or carry out the plan.

Controlling processes - making sure that the project objectives are met by measuring and monitoring progress. Furthermore, it means taking appropriate corrective actions when necessary.

Closing processes - bringing the project to an orderly conclusion with formal acceptance of the phase or the project. Everyone connected with managing projects has had the additional core challenge of developing metrics that are "added value" in performance capability and delivery of completed projects that meet the expectations of stakeholders. Collecting metrics does not mean just tabulating figures. It means developing information that helps now and then helps even more in future efforts.

There are many, many methods. The charge is to determine what works best for your organization. There are volumes of information on what to collect and how to use the measures effectively. The main point is to not just collect data. Collect information!

My next article will discuss the project triangle and the level of technical solution - time, resources and technology solutions. Following that I will be sharing information on Six Sigma as developed by Motorola that can drastically change the quality of your products and/or services by instilling a business process culture that does affect the organization and provide positive returns. In fact the principles are based on statistical analysis that revolves around the concept of standard deviation.

I would now like to offer some suggestions, by way of experience, and then offer some links to places I have found of great value to me.

Cost Expert is a fairly inexpensive software package that provides for what-if, reporting, combining types of estimates such as function points, top down, bottom up, GUI. Moreover, you can use it with Microsoft Project. I have enjoyed the functionality and reporting capabilities. The software will help generate good plans, resource requirements and risk factors. Cost Expert is particularly good for project managers working without a formalized project-central organizational approach.

I have also been a big fan of Microsoft Project software ever since Project 4. The new version still provides a database schema and the VBA capability to expand the functionality continues to make the product a good choice for those not interested in spending much more money for project software.

There is a fairly simple wizard that is good to start with in counting function points. It is called the SEER Function Point Wizard and it is fpwiz.

There is a PDF file on DoD initiatives regarding software measurement that is Software Measures for DOD Systems.

MMB&T makes available version 1.1 of the SoftEST which was developed by MCR Federal Inc. on behalf of the Air Force Cost Analysis Agency.

SoftEST Cost Model (V1.1) (1 MB - Zipped file)

DEVELOP YOUR MICROSOFT PROJECT AND PROJECT MANAGEMENT SKILLS Getting the most out of Microsoft Project requires using the product features correctly and using the right features to meet your project management needs.

Microsoft describes resources you will find helpful in developing your skills with Microsoft Project and applying them to the broader field of project management.

Read about it at: Microsoft Project Assistance

Microsoft