What is a ROM and Why do I need One?
Project managers—whether they work for a software development company, a manufacturing company, or an engineering design firm—are faced with the common challenge of estimating project scope in terms of cost, effort, schedule, and risk. But before a project begins, your company must decide whether the project is even feasible based on your company’s budget. Or perhaps you want to gain some new business and you need to submit a proposal to develop some new widget.
Almost always, the project manager begins by determining a rough order of magnitude (ROM) estimate, which is just what the name sounds like. This estimate gives a “ballpark,” or order of magnitude, for the project. In other words, this high level estimate lets you know whether the project is going to take $50,000 or $5,000,000. Whether it will take six weeks, six months, or six years.
According to A Guide to the Project Management Body of Knowledge (PMBOK® Guide), a ROM estimate typically varies from −25% to +75%. For technology projects during business case analysis ROM estimates often -50 to + 50% of actual costs: generally on the low side. Depending on how the ROM was developed, the ballpark number may be enough to decide that the project is feasible and to proceed with that bid proposal – or not! A ROM estimate with an associated probability can provide sufficient information. Then, to gain a better understanding of the project costs, schedule, effort, and risk a more detailed estimate should be prepared. For example:
- How much will the project cost per phase, per month, overall? What are the material costs?
- What components/modules/parts/tasks are the key cost and schedule drivers?
- What are the cost and schedule impacts of design alternatives or changes in overall scope?
- What level of effort and how many personnel resources and of what type(s) will be needed?
- How long will the project take? Can it be finished soon enough for the market?
- What is the probability that the project will be completed on time and within budget?
SEER Tools Help with ROM and Detailed Estimates
SEER is an interoperable suite of products that lets you capture and input anything you know about a project and simulates what you do not yet know—giving you the range of probable outcomes, including a most likely estimate.
Regardless of whether you have a software project to develop a new mobile app with just 50 functions, a design project to develop and test a new avionics system for the latest jet, or a manufacturing project to determine the most cost-efficient way to manufacture that new widget, there is a SEER solution that helps you understand everything you need to know before committing:
- SEER for Software — Provides a systematic approach for estimating the cost, schedule, effort, defects, and risk of software development and maintenance projects.
- SEER for Information Technology — Provides total cost of ownership for IT projects, including infrastructure, services, operations, and on-going support.
- SEER for Hardware — Provides total cost of ownership for the development of hardware and electronic components, systems, and integrated product assemblies from concept through design, test, production, operations, support, and retirement.
- SEER for Manufacturing — Estimates detailed manufacturing and assembly costs for a wide variety of manufacturing processes. Identifies the cost drivers, risks, and ranges for production.
SEER provides the most comprehensive coverage of project domains. Furthermore, SEER solutions are interoperable, so users may combine the results from one solution into another solution to perform the best analysis possible.
Because the SEER models are parametric-based with a large number of knowledge bases, you can use the built-in intelligence to derive initial parameter settings based on industry experience, even if many of the parameters are not defined yet for the project. The following figure shows the knowledge base categories and example selections for SEER for Software.
SEER lets you build ROM estimates with as little or as much detailed information as you have available—again, capturing the information you know about a project’s parameters and simulating what you do not know. But in every case, the estimate is created in a repeatable, credible, traceable, defensible manner. When upper management or your customer asks how you derived the estimate, you have the traceability to show how and why the estimate came about.
ROM to Detailed Estimate—An Example
Specifically, let’s say you’ve got a project to develop a sales toolkit and you are using the SEER for Software model to estimate the project.
Note: While this example is specific to a software project and shows the SEER for Software model, the same concepts apply across the suite of SEER models and any of the project domains that SEER covers, from manufacturing to IT.
Initially, you might only know that this should be a toolkit for sales staff, and the toolkit should contain a client database, a central repository, and some sort of product demonstration package.
Flexible Work Breakdown Structure
SEER supports a flexible functional work breakdown structure that lets you move from a first-order ROM estimate to a detailed budget estimate.
Suppose that in addition to the initial information (in which you only knew the three basic requirements of needing a database, repository, and a product demonstration package), you now have more specific requirements:
- Client database must contain a contact manager, custom reporting capabilities, and a client interface.
- Central repository must contain two types of databases, the ability to be replicated, and location set up.
- Product demonstration package must contain a multimedia viewer, a browser, and a product index.
Given those requirements, you can add elements to the work breakdown structure to give more clarity and gain a more detailed estimate.
With the SEER for Software solution, each element can have:
- Different parameter settings
- Different sizing
- Different development method
- Different quality standards
- Unique staff loading/profile
Furthermore, you can record and retain alternative solutions in the work breakdown structure, allowing you to make tradeoff analyses.
Built-in Risk and Uncertainty Analysis
SEER tools use probabilistic models with built-in risk and uncertainty analysis. This means that given the likely risk and uncertainty of the project, you input parameter values and SEER will return a probability estimate of how likely you are to achieve your project goals.
Parameters are entered as input values of:
For example, how experienced will the programmers be for this project? If this is really unknown, you might say the worst case is going to be a programmer with a minimum amount of experience; the likely scenario is a mixed level of experience; and best case, the “A” team with 10 years of experience.
Or, what will the size be for one of the software modules? SEER for Software lets you express software size in a number of ways, for example:
- Number and type of functions
- Number of lines of code
- Function points
- Use cases
- Story points
You might estimate that a single component might a least value (best-case scenario) of 2500 lines of code, a likely scenario as big as 5000 lines, or a most value (worst-case scenario) is 15,000 lines of code.
The SEER tool, for example, SEER for Software in this case, will use the input values and return the probabilistic outcome, taking into account the uncertainties that you’ve entered. For example, you only have a 20% chance of doing the work you’ve described in 4 months and an 80% probability that it will actually take 9 months.
This probabilistic analysis lets you do tradeoffs in the model with parameters for which you actually have influence or a good understanding. What if the project was shifted to the “jelled” development team, what if some of the work is outsourced, what if functionality is reduced and postponed to a future release… and so on. SEER lets you change the what-if scenarios to give you the confidence level you need that the project can be completed under budget and on schedule.
Integration with Microsoft Project or P6
After you have generated an estimate in SEER, whether that is a ROM estimate or a detailed estimate, you can transform the estimate into a detailed, task-oriented project plan in Microsoft Project or P6. This lets you:
- Create custom life cycle templates that build best practices directly into your project plans
- Customize labor categories to reflect the way that your organization assigns tasks (for example, to departments or labor categories) to accurately plan staff allocation for a project
Project managers need repeatable, reliable tools to help develop ROM estimates. SEER provides the ideal software to create such estimates because of the breadth of knowledge that the tools incorporate with the parametric analysis and probabilistic analysis of outcomes. Furthermore, SEER provides the ideal way to transition from a simple ROM estimate, to a detailed estimate, to a project plan that lets you manage the project from start to finish.
Contact us to learn more about how one of the SEER tools can help your organization take the guess work out of estimating, planning, and controlling projects.