SPECTRE - Questions and Answers
SPECTRE can answer a number of questions that are rarely addressed, because:
- We don’t have time for all that.
- We don’t have a budget for all that.
- We make our best guess and hope it works out.
- Bottom line: we’ve got a schedule to meet don’t talk to me about estimates.
- OK OK, that’s fine in theory but it’s not the way we do things round here.
- I trust my people to bring home the bacon.
- The force is with me
- I have a degree in concrete technology
- Who cares?
However, the importance of a question is not diminished by inability to answer, or even by blank refusal to acknowledge that a question exists.
In that spirit, let us continue.
Those questions which have occurred to me are given below together with my answers. Maybe you can think of some more. Key points are in red.
1. How much time should realistically be allowed for this task?
Run a description of the task through SPECTRE, defining the proposed assignee as ‘average’. The description doesn’t have to be complete in every detail (is it ever?) and the answer will give you an acceptable indication of the effort required.
Just pause here and reflect, if you will, on the implications of being able to estimate tasks, realistically and consistently, every time.
This answer to Question 1 impinges on all the following.
2. What level of skill and experience will it require?
If the effort required according to SPECTRE seems excessive, try again but this time describe the assignee as above average in terms of grade and experience. If you’re still not happy, repeat the process while ‘promoting’ your assignee to progressively higher levels.
If you do reach an acceptable answer by this process, you now have an indication of the calibre of assignee you will require. You can now take steps to ensure that the right person will be available when needed.
If, having elevated your assignee to ‘guru’ level, you still don’t have an answer you can accept, then you need to ask Question 3.
3. Am I trying to put too much functionality into a single task?
SPECTRE characterises a task in several ways, the most significant being the estimate of effort required. Other pointers are: the amount of functionality in the task, the degree of complexity, and the extent to which the assignee’s knowledge and experience are adequate for the task. If these indicators do not, collectively, imply a problem, then the answer to Question 3 is No.
However, if assigning a hypothetical expert to the task doesn’t solve the problem, or if such a person won’t be available, then you know you should consider splitting the task or reducing its functionality. SPECTRE has given you maximum notice; use it.
4. How can I convince my staff that these estimates are fair and attainable?
In terms of morale and motivation across your project team, this is the big one.
SPECTRE’s User Guidelines will have shown how to get the best out of the product. If you went through the tuning exercise described therein, show your staff the results.
Explain that the estimates are politically neutral and don’t reflect anybody’s arbitrary whim, baseless hunch, ill-considered edict, or divination through goat entrails.
Talk them through the estimation process. Better yet, show them.
Be prepared to negotiate on definitions of complexity, knowledge and experience (the Help Text will be a powerful ally in this regard) and encourage them to buy into the process.
Point out that “the way we’ve always done it” isn’t exactly renowned for producing good results and that panic-motivated overtime is not the way to a healthy social life or system. Last-minute mayhem equals lasting mediocrity, as witnessed by the high degree of maintenance that current operational systems continue to demand. Are staff really happy trying to straighten spaghetti? Wouldn’t they rather spend more time developing new systems?
5. How can I convince my client?
You may be working for a software house and undertaking a project for a commercial client, or you’re working in-house and are accountable to your own employer. Either way, this is question is significant at both the professional and personal level.
The answer is:
- you can produce attainable estimates for individual tasks
- you can do this systematically and with confidence
- staff will be assigned tasks that are appropriate to them as individuals
- you will be able to identify any special requirements for expert personnel well in advance
- you won’t be wasting scarce and expensive expertise where it’s not needed
If you’re operating on a time-and-materials basis, your approach to costs will therefore be optimal. Make sure you tell the bean-counters.
If the project is fixed-price, you’ll be minimizing the risk of slippage.
In either case, staff will be functioning within their comfort zone and will not be pressed to cut corners when developing or testing their creations. This happy state of affairs will be conducive to a high-quality, robust and reliable end-product, and, above all, a satisfied client.
6. How can I convince my managment?
Much of what has been said above can be used to allay management misgivings. Remember, they’re used to projects careering down the slippery slope from schedule to deadline to ultimatum to autopsy. From beta-test to beat a retreat? Argue that it doesn’t have to be that way.
In addition, if this is the first time a disciplined approach to task estimation has been used, you can point out that normally the word “risk” isn't mentioned until the project gets into difficulties. You, on the other hand, are able to anticipate risk and therefore forestall it.
7. How can I convince myself?
If you can’t answer this question by now, you’ve missed something. Maybe you’re too busy mopping up puddles to mend the roof. Please start again at the top.
Those were some of the questions which can be answered, and problems that can be addressed, by SPECTRE’s ability to provide attainable and consistent task estimates.
Having the confidence to identify and confront these issues early on will greatly reduce the potential for embarrassment later.
The arguments for using the SPECTRE method can be epitomised by two favourite quotes, both from Fred Brooks Jr (father of the IBM/System 360) who states memorably that “Adding manpower to a late software project makes it later.” In answer to his own question: “How does a project get to be a year late?” his telling response is, simply, “One day at a time.”