SPECTRE Task Estimator
 

Background and Scope – the SPECTRE approach

“It is very difficult to make a vigorous, plausible, and job-risking defense of an estimate that is derived by no quantitative method, supported by little data, and certified chiefly by the hunches of managers” (Fred Brooks Jr, The Mythical Man Month).

“Everything’s a rabbit if you’ve only got a shotgun” (David M Victor).

The IT industry’s estimation problems are notorious and endemic. A major element is that of unrealistic prediction at task level. Formal methods, insofar as these exist, generally consist of little more than systematised guesswork. The estimator can easily find himself at a loss when faced with questions such as:

"How much time should be allowed for this task?"
"What level of skill and experience will it require?"
"Am I trying to put too much functionality into a single task?"
"How can I convince my staff that these estimates are fair and attainable?"
"How can I convince my client?"
"How can I convince my management?"
"How can I convince myself?"

Origins of SPECTRE Task Estimator

SPECTRE Task Estimator represents a new approach that offers proven accuracy, consistency and reliability. It has been built on author David Victor’s very extensive involvement in application software development for clients including Coutts Bank, EDS, Chase Manhattan Bank, HBOS and IBM. His experience, gained over nearly 40 years in IT, has convinced him that there is a compelling need for a product of this nature. The SPECTRE method is a synthesis of findings from various sources (including IBM and Software Productivity Research) as well as the author’s own research. He admits sole responsibility for the design, help-text and ancillary features and gratefully acknowledges the assistance of IBM in providing test data for the prototype version which confirmed the validity of the method. Historical Note (PDF)

What SPECTRE Task Estimator does

It generates a number of indicators for a proposed task of which the critical one is Development Effort expressed in days.

Account is taken of:

Other indicators include:

User Guidelines are provided which explain how to tailor usage of SPECTRE Task Estimator to the user’s own methods and practices.

The user-friendly interface, consisting of a series of straightforward questionnaire-style panels, is designed to encourage iteration and experimentation so that the estimating process soon becomes familiar. The estimate is visible at all times and immediately reflects any changes.

Comprehensive Help Text provides clear guidelines to assist the user with quantifying such nebulous concepts as the relative complexity of a function, and relevance of the assignee’s knowledge and degree of technical expertise to the task he has been given.

Fully commented estimates draw attention to unusual features of the task, such as abnormally high complexity, excessive functionality and unsuitability of the task for the proposed assignee.

Supporting features are:

SPECTRE Task Estimator is assignee-sensitive, language-specific and receptive to the user’s methods and practices; it acknowledges and evaluates all of the task’s features and functionality, takes full account of complex or difficult processing requirements and allows for code re-use. It is easy and quick to use, with estimates typically being generated in a few minutes.

This Summary lists the features of SPECTRE Task Estimator. The full version of Estimating for Software Tasks – the SPECTRE Approach should be consulted for a complete description of the product, its method, background and raison-d’etre. Full Version (PDF)

Input/Output Operations

  • read from a file
  • write to a file
  • delete from a file
  • update a file
  • select from a table
  • insert into a table
  • delete from a table
  • update a table
  • interface with another program
  • generate a report
  • generate a display

Processing Logic

  • Data restructuring
  • Conditions
  • Linkages with other programs
  • Data retrieval
  • Calculations
  • Sorting
  • Data presentation
  • Testing considerations
  • Performance considerations
  • Relative complexity of all the above

Development Effort

  • Assignee’s grade
  • Assignee’s experience
  • Assignee’s knowledge in relevant areas
  •  Additional percentage overheads for QA and Acceptance Test involvement
  • Knowledge required in relevant areas
  • Percentage of design and code that could be adapted from existing sources
  • Programming language to be used

Results - Section 1

This section gives the actual estimate and consists of the following:

Results - Section 2

This section shows a number of additional items which may be of value or interest:

SPECTRE Task Estimator evaluates all the above in terms of size, range or scope as appropriate, and appends comments - in particular, any factor considered to be significantly outside ‘normal’ expectation is highlighted.

Help Text clarifies all the items shown.

Results can be printed using the formatted print feature supplied and the full estimate can be saved to SPECTRE Task Estimator’s database for reference and re-calculation if any of the specification’s parameters change.

The database allows for estimates to be summed by Project/System and also by individual Developer.

It can also provide an itemised list of all currently allocated tasks for a Project/System and a similar list of all currently allocated tasks for an individual Developer. These lists have a print facility and can be exported on request to a Comma-Separated Variables file or spreadsheet.

SPECTRE Task Estimator is at its most effective when applied to a task specification that is complete and confirmed. Nevertheless, it can be used to advantage throughout the whole process of developing the task specification; for example, to give an early feel for notional best, average and worst cases. If a task threatens to exceed reasonable limits of size, complexity or effort, or looks as if it will require very specific skills, then the earlier these possible exposures are flagged and resolved, the better.

© David M Victor 2006

 

Home | Background and Scope | Author | Demo | The SPECTRE Package | Order | Order Demo | Links | Contact Us | Articles | Closing Arguments