Project Survival Test
Will your software project survive? Put your project management skills to the test and take a project you are working on and scring it using the questions below.
Steve McConnell has a basic test he recommends you score each project against. Give the project 3 points for each “yes” answer. Give the project partial credit if you feel that is most accurate—for example, give it 2 points for “probably” and 1 point for “kind of, but not really.” If the project is in the early stages, answer the questions based on the project plans. If the project is well underway, answer the questions based on what has actually happened on the project. The section following the test explains how to interpret the score.
- Does the project have a clear, unambiguous vision statement or mission statement?
- Do all team members believe the vision is realistic?
- Does the project have a business case that details the business benefit and how the benefit will be measured?
- Does the project have a user interface prototype that realistically and vividly demonstrates the functionality that the actual system will have?
- Does the project have a detailed, written specification of what the software is supposed to do?
- Did the project team interview people who will actually use the software (end users) early in the project and continue to involve them throughout the project?
- Does the project have a detailed, written Software Development Plan?
- Does the project’s task list include creation of an installation program, conversion of data from previous versions of the system, integration with third-party software, meetings with the customer, and other “minor” tasks?
- Were the schedule and budget estimates officially updated at the end of the most recently completed phase?
- Does the project have detailed, written architecture and design documents?
- Does the project have a detailed, written Quality Assurance Plan that requires design and code reviews in addition to system testing?
- Does the project have a detailed Staged Delivery Plan for the software, which describes the stages in which the software will be implemented and delivered?
- Does the project’s plan include time for holidays, vacation days, sick days, and ongoing training, and are resources allocated at less than 100 percent?
- Was the project plan, including the schedule, approved by the development team, the quality assurance team, and the technical writing team—in other words, the people responsible for doing the work?
- Has a single key executive who has decision-making authority been made responsible for the project, and does the project have that person’s active support?
- Does the project manager’s workload allow him or her to devote an adequate amount of time to the project?
- Does the project have well-defined, detailed milestones (“binary milestones”) that are considered to be either 100 percent done or 100 percent not done?
- Can a project stakeholder easily find out which of these binary milestones have been completed?
- Does the project have a feedback channel by which project members can anonymously report problems to their own managers and upper managers?
- Does the project have a written plan for controlling changes to the software’s specification?
- Does the project have a Change Control Board that has final authority to accept or reject proposed changes?
- Are planning materials and status information for the project—including effort and schedule estimates, task assignments, and progress compared to the plan thus far—available to every team member?
- Is all source code placed under automated revision control?
- Does the project environment include the basic tools needed to complete the project, including defect tracking software, source code control, and project management software?
- Does the project plan articulate a list of current risks to the project? Has the list been updated recently?
- Does the project have a project risk officer who is responsible for identifying emerging risks to the project?
- If the project uses subcontractors, does it have a plan for managing each subcontract organization and a single person in charge of each one? (Give the project full score if it doesn’t use subcontractors.)
- Does the project team have all the technical expertise needed to complete the project?
- Does the project team have expertise with the business environment in which the software will operate?
- Does the project have a technical leader capable of leading the project successfully?
- Are there enough people to do all the work required?
- Does everyone work well together?
- Is each person committed to the project?
- Preliminary score. Add up the points next to each answer.
- Size multiplier. Write in 1.5 if the project team has 3 or fewer full-time– equivalent people including developers, quality assurance personnel, and first-level management. Write in 1.25 if it has 4 to 6 full-time–equivalent people. Otherwise, write in 1.0.
- Final score. Multiply the preliminary score by the size multiplier.
This is a difficult test for most projects; many will score less than 50 points. The table below explains how to interpret the score.
|90+ Outstanding||A project with this score is virtually guaranteed to succeed in all respects, meeting its schedule, budget, quality, and other targets. This type of project is usually called “self-actualized.”|
|80–89 Excellent||A project at this level is performing much better than average. Such a project has a high probability of delivering its software close to its schedule, budget, and quality targets.|
|60–79 Good||A score in this range represents a better-than-average level of software development effectiveness. Such a project stands a fighting chance of meeting either its schedule or its budget target, but it probably won’t meet both.|
|40–59 Fair||This score is typical. A project with this score will likely experience high stress and shaky team dynamics, and the software will ultimately be delivered with less functionality than desired at greater cost and with a longer schedule.|
|A project with this score has significant weaknesses in the major areas of requirements, planning, project control, risk management, and personnel. The primary concern of a project in this category should be whether it will finish at all.|
You should buy his book.