I happened upon this software package while wandering the back corners of Software Development '97 in San Francisco. You know — those little booths stuck off in the further reaches of Moscone Center, where you may find anything from a corporate recruiter to someone selling stun guns. This particular booth was typically nondescript, sporting the ubiquitous cloth-covered table, small sign with company name, some brochures, and a lady playing with software on the computer display. Something about the booth caught my eye — I don't remember just what, and I asked her what their product was. She said they were a Delphi consulting house, and they were showing a software cost estimating package.
Because of my recent interest in Borland's C++ Builder, the mention of Delphi caught my attention in a positive way it could not have in past years. Because of my long-term interest in managing development, the mention of cost estimation caught my attention easily. The combination was irresistible.
Those of you who have read my previous columns know that I'm interested in software engineering and managing the development process. Along the way I came upon a delightfully terrifying (OK, I like splatter movies too) book by Capers Jones called Assessment and Control of Software Risks — sort of a diagnostic manual for development problems. One of the repeated recommendations in ACSR is the use of automated estimation software. I've always wondered where we were supposed to get the software — most of the recommended packages run only on UNIX boxes and cost exorbitant amounts of money.
Maybe this is where. Cost Xpert is the first such tool I've seen targeted for the PC market — both in target OS (Windows 95) and price point ($995 — still not cheap but a far cry from $50,000).
The hardest thing to do in estimating software cost is estimating the size of the project. Cost Xpert accepts information about program size (or volume, as they prefer to call it) in six different ways: SLOC or Source Lines Of Code — a common but maligned measure of program volume which is just what it sounds like — lines of code; Function Points — a measure developed by Albrecht at IBM, commonly used for MIS-style programs involving lots of input and output but generally considered a poor fit for calculation intensive code; GUI Metrics — a measure of interface complexity involving dialog boxes, reports, tables, menu items, and windows; Object Metrics — an OO metric involving the number of objects required, reports, and tables; Bottom Up — a heuristic measurement following conventional bottom up design in which tasks are enumerated and estimated; and Top Down — a heuristic measurement in which total effort is estimated and a standard breakdown is used to evaluate how much effort will be spent in each development phase. Multiple volume estimates can be entered and compared, then filtered in the output reports.
You can provide Cost Xpert's with a variety of additional information, including the experience of the team with the language, the target machine, and the problem domain in order to refine the estimate. It also allows experimentation with various constraints on the development process — like trading time for cost, altering review and beta testing times, allowing for overlap of tasks, and so forth.
Much of Cost Xpert's estimation model is customizable by the user, allowing stepwise refinement of the model used by any given organization or team. Without actually comparing Cost Xpert's figures with some actual ones I can't say for certain that the output is accurate, but my test projects make sense, and I would not hesitate to use Cost Xpert as an adjunct to my own estimation. For any size of organization, a product like this one makes sense. Cost Xpert is available from Marotz in a 30-day evaluation version to allow you to "try before you buy". I suggest you do.
Evan Robinson is the former Director of Games Engineering at Rocket Science Games, Inc. Before becoming a manager he was a consultant, programmer, technical director, and game developer. He is now eking out a tenuous living writing review columns and going on job interviews. You can email him to offer him a consulting opportunity or a job, or just to talk (well, OK, type) about books, software, development, or the meaning of life.
Copyright © Evan Robinson. All Rights Reserved.