David Hayden is the owner of CAD/CAM for the Home and Small Shop.
Computer Aided Manufacturing (CAM) software can be a powerful tool for most shops. Still many shops may never need a CAM system. For example, a small shop that does mostly simple turning, milling, and drilling may have all the power they need in the machine's CNC control. In this case, buying CAM software may be a waste of money.
Shops that frequently make complex parts requiring complicated calculations to complete the NC program could benefit from CAM software. Another compelling reason to buy a CAM system is to bring in more business. Often customers require CAM capability.
Once you decide to buy CAM software, your work really begins. There are dozens of very good CAM systems. Most of them can do all the basic NC programming. And, there are vast differences in capabilities, features, costs, learning curves, training expenses, customer support, etc.
As a CAM Systems Administrator, one of my duties is to stay on top of trends in the CAD/CAM Industry. Over the years, I have learned a lot about selecting and maintaining CAD/CAM software, and integrating old technologies with new. Following are the guidelines I use and/or recommend to upper management regarding CAM system selection.
The size and future direction of your shop should have a strong influence over your selection of CAM software. If you are a small job shop with limited resources and you need CAM capability, your choices will be based on cost vs features.
If your shop must interface with engineering departments, customer CAD systems and so on, your decision will be far more complex.
Depending on your situation, you should review and answer some or all of the following questions:
* Is the CAM system going to be of strategic importance to the company?
* What is our goal for having a CAM system?
* What is the budget for purchasing the software?
* How much money can our company afford to budget annually for maintaining the software and hardware?
* What are our competitors using?
* What are our customer expectations with regards to our NC / CAM programming capabilities?
* What CAD programs are our customers using?
* What are our machine capabilities / requirements? Turning, milling, 5 or more axis positioning, 3 or more axis simultaneous movement?
* What is the local labor pool from which we can draw programmers?
* Is our NC / CAM programming done by dedicated programmers or by machinists, operators, supervisors, methods engineers, etc.?
* Do we need an MIS or IT staff to support the software and hardware?
* Will CAM software ownership enhance our shop's market position?
* How large is the local user base for our CAM software?
* How large / stable is the software vendor's company?
* To what extent will our company suffer if the software developers go out of business?
* What features must we have in a CAM package?
* What features do we want to have but could get along without?
* What is the software vendor's reputation for customer support?
* Is there local training and support for the software? Or, will employees have to travel to get training?
Seems like a lot of questions doesn’t it? You may not need to answer all of them or you may have many more. Either way, CAM software selection should be well thought out.
Too often, in my experience, the selection of a CAM system is driven entirely by retail price. Likewise I have seen the decision made exclusively by the programmer or programming group without regard for corporate goals, interdepartmental requirements, marketing opportunities or subcontracting situations.
Selecting by Price
For many shops, price may be the primary driver. To effectively make this decision, you must consider a few things.
Obviously, the retail price is a consideration. The price of CAM software can range from hundreds to tens-of-thousands of dollars. But that is only part of the story.
There are two bottom line numbers you should look for. First is the total acquisition or start up price. To determine this number you need to know:
* The software purchase price. This can vary greatly based on the features or modules you need. Most CAM software has modules for turning, milling, multi-axis machining, etc. This pricing scheme allows the vendors to tailor appropriate cost / feature solutions for their customers.
* The total training cost required to get the programmer productive. Different packages have different degrees of complexity. Some have very long learning curves that require weeks of extensive training.
* The cost of the hardware required to best use the software. Many CAM systems require high end computers. In some cases, the hardware requirements can be in the tens-of-thousands of dollars.
* The installation cost if you do not have the IT / MIS staff to handle the software installation. If your shop does not have an MIS department or person to install and administer the CAM software, what are those services going to cost?
* The cost of annual maintenance for the first year. Software developers are constantly improving their products and cleaning up bugs that were inadvertently programmed into the system. Having an annual maintenance contract will help you keep your software up to date.
* The cost of any support contracts. The first year is typically the toughest. Until your programmers become experienced, they may need a lot of support. Often, to get the extensive support you need, you will require a support contract.
* The cost of any travel required to attend training. If the software is not locally supported or the vendor or local trade schools do not have courses for the software, you will have travel expenses associated with training your programming staff.
* If deemed necessary, the cost of back up staff to handle programming requirements while the programmer(s) get trained on the software. More often than not, I see companies ignore this expense. The fact is that, when your programmers are learning new software, their productivity drops dramatically. If they are barely keeping up as it is, you will have additional salary expenses as a result of your software purchase. You may be paying lots of overtime for weeks or months, or you may have to hire contractors to help keep up with programming load.
* You also need to consider the salary requirements to keep or hire good CAM programmers. CNC programmers with CAM experience are in higher demand. So you may have to pay existing programmers higher wages to keep them once they know the software. It may also cost more to lure good programmers away from their current jobs. Don’t expect a lot of loyalty. Many shop managers / owners expect an employee to stick around if they train them but do not raise their salary to accordingly. The sirens of greater income can quickly lure the most faithful away. You may want to consider employment contracts that obligate the employee to work for a specific time in exchange for training. If they leave by their own volition prior to the end of the contract, then they will be responsible for a prorated portion of the training expense.
In summary, if you budget for sticker price only, you are quickly going to find out you have undercapitalized your move to a new CAM system.
The second bottom line number to consider is the Total Cost of Ownership (TCO). This number is an extension of total acquisition price. While the total acquisition price is a one time expense, TCO is ongoing. To calculate TCO you must determine the following:
* What are the annual maintenance fees. Your company may reap significant benefits from improvements in the software. These improvements and bug fixes are generally released quarterly, semi-annually, or intermittently as available. It is not always necessary that you subscribe to the maintenance agreements. If the software is good and does everything you need in its current form you may want to forego the annual maintenance expense. Keep in mind annual maintenance contracts keep your software current at a reduced annual expense. If you chose not to subscribe to the annual maintenance and a few years later you decide you need/want to upgrade to the latest revision, you will most likely pay full retail price as if you never owned the software.
* You should budget salary increases for your programmers, unless you want to keep hiring and training new programmers . As they gain experience, their value in the job market may increase as well.
* You may want to consider budgeting for annual training expense. CAM software packages are packed full of features and utilities. Most programmers learn to use but a few of these that simplify their immediate programming tasks. Chances are good they have developed less efficient habits that can be improved by additional training and exposure to undiscovered utilities.
* You may want to consider budgeting for memberships in user groups. Along with this goes the expense of sending them to group events where they can swap ideas and learn new techniques.
* You definitely need to budget for hardware upgrades and replacement. Current PC hardware has a useful life of 3-5 years but planning to replace them every two years would be more realistic. Faster computers can greatly improve productivity if software is pushing hardware to its performance limits. If not, you may not want to replace the hardware until it wears out or projects a low-tech image to your customers.
Selection by Programmer Preference
Programmer preference is a very important consideration when selecting a CAM solution. The programmers need to produce results with the software you purchase, so their needs and preferences should be considered. Additionally, the more “buy in” they have for the chosen software, the more energy they will put into its success.
There are other factors you must consider and weigh against programmer preferences. First and foremost, you must know the strategic direction of the company. If your company is investing in software to attract new business or improve interdepartmental efficiency, you may want programmer preference to take a back seat to higher goals.
You must consider your company’s approach to NC programming. Does the company plan on having a dedicated NC programming department? If so, what is the range of software possibilities?
Does your company plan to use multi-tasking people who program, write route sheets, operate machines, supervise, etc.? If so, you might limit your software choice to one based on ease of use and shorter learning curve.
Does your company envision high degrees of automation where data is passed to the CAM system and within minutes an NC program is produced? If so, your company need a high-end software with extended macro or feature recognition capabilities.
What sorts of part data will your programmers have to use? Many companies have volumes of information in various forms. For example a company may have a library full of manual drawings plus CAD files generated by several different CAD packages. And, there is always the need to adapt to the customer’s preferred drawing format. If you have a wide variety of drawing inputs, your company may need software with strong CAD abilities for programming parts from paper drawings. Naturally, your software should also have the ability to import IGES and DXF files.
Will your programmers be expected to program parts developed with Solid Modeling software such as ProEngineer, Solid Works, Solid Edge, etc.? If so your software should be able to recognize and use the native files created by Solid Modeling software. If that is not possible your software should at least be able to to import ACIS, ParaSolid or STeP file types.
There is one thing you must consider consideration when choosing software based on programmer preference. It is likely that programmers will be drawn to software that most enhances their career.
I was part of large CAD/CAM software selection team that included engineers, draftsmen and programmers. During a full day presentation by a major software developer, the attitude in the morning was that the software was nice but very difficult to use and learn. At lunch, the vendor took some of the programmers out for lunch and discussed the high salaries programmers of that software could get. In the afternoon, the same people who were unimpressed with the software became its most vocal supporters. Just a little food for thought.
Selection by Brand Name or Vendor
You can choose from many first class CAM software developers including but not limited to DP Esprit, Catia, Unigraphics, SurfCAM, MasterCAM, NCL, Varimatrix and Virtual Gibbs. All of these companies have very powerful software products. One thing you need to consider is the stability of the company.
Several years ago there was a very solid CAM software called SmartCAM. To this day they have a loyal user base and thousands of seats around the country.
Somewhere around 1995, Point Control, the company that developed the software, sold SmartCAM to CAMAX. CAMAX, a much larger company, promised the acquisition would increase their market base. They also suggested they were going continue developing the software. Unfortunately SmartCAM was only a small part of their revenue stream. Instead of further development, CAMAX ultimately reduced the software development.
About a year later, Structural Dynamics Research (SDRC) acquired CAMAX. In 1998 or 1999 SDRC dropped development and support of the software altogether.
SDRC was a very large company by competitive standards. During this time, Ford Motor Company was looking to invest millions of dollars in CAD/CAM/PLM software to drive their business into the future. They wanted to invest in a large, stable company that would be around for years to come. So, after a great deal of research, they ultimately purchased software from SDRC.
Ford did not invest in SDRC because of SmartCAM which was already dead. They were purchasing SDRC’s CAD/CAM systems and their popular Product Life Cycle Management software. Ford expected that SDRC, being a very large company, with good software products would be around for a while. The ink was barely dry on the Ford deal when EDS, acquired SDRC.
The fact that SmartCAM, CAMAX, and SDRC no longer exist, just shows there is no such thing as a secure investment.
I recently learned the SmartCAM source code was purchased by a small company intending continue developing it.
Still, there are very good software products that are developed by closely held (private) corporations. One thing you must consider with respect to privately held corporations is whether the company is ripe for a acquisition by a larger company. There are potential problems regarding survivorship. If something happens to the company founder, will the company survive and the software remain viable.
Current statistics indicate roughly 70% of closely held companies do not survive past the death of the founders. An astounding 92% do not survive past the death of the second generation.
On the other hand, as fast as software companies enter and leave the market place, it may all be an exercise in futility since no one can predict the future.
So, pick software that fits your immediate situation AND brings you years of benefit, even if the company goes out of business. After all, hundreds or thousands of companies still rely on SmartCAM to this very day.
Developing Selection Criteria
Before you or your team should look at software, make a list of criteria the software must satisfy to be considered. Put your criteria into two groups.
The first group is the REQUIRED criteria. When researching the software possibilities, immediately eliminate any system that does not satisfy all of your required criteria. Obviously, if you can use software that does not meet some required criteria, then the criteria is really highly desirable, not required.
Put your highly desirable criteria on a second list. Use this list as a tie breaker when comparing competitive offerings.
Beyond the criteria, you evaluate how well the software meets the criteria. For example suppose you have a criteria that the Total Acquisition Cost (TAC) must be $10,000 or less. If the TAC of two, nearly identical products, are priced at $9,500 and $6,200 then clearly the less expensive software has an advantage.
For expedience, group all criteria and potential vendors together on a matrix. By each criteria place a value rating system that shows how well each vendor’s software satisfies your specific criteria. (see sample criteria matrix below)
Make the second phase of your software selection process a potential problem analysis. Evaluate all the negative things that could happen as a result of picking a particular CAM system.
Reserve this process for the finalists. This helps you measure the impact of worst case scenarios. This matrix will involve identifying potential problems, severity of the problem, the likelihood the problem will occur, the key indicator that the problem is eminent, and necessary actions to mitigate negative effects.
Isn’t there some old saying that starts out “The best laid plans of mice and men...?” Well, selecting and implementing Computer Aided Manufacturing software is no different. You will have setbacks and problems, so just plan on it.
Remember, it is not what happens that matters so much as what you do about it.
Fig. 1 - Sample Criteria Matrix
R
| Software
| V
| S
| Brand W
| S
| Brand X
Value
| S
| Brand Y
Value
| S
| Brand Z
Value
|
Must have lathe module | 5 | 2 | 10 | 4 | 20 | 3 | 15 | 1 | 5 | |
Must be easy to use | 5 | 5 | 25 | 2 | 10 | 1 | 5 | 3 | 15 | |
Must support Parasolid | 5 | 5 | 25 | 5 | 25 | 5 | 25 | 0 | 0 | |
D
| TAC must be less than $15,000 | 5 | 1 | 5 | 4 | 20 | 4 | 20 | ||
Want Local Training | 5 | 0 | 0 | 0 | 0 | 3 | 15 | |||
Want ability to run on PC w/ Windows XP | 2 | 5 | 10 | 5 | 10 | 5 | 10 | |||
Want Feature Recognition | 4 | 5 | 20 | 10 | 4 | 16 | ||||
Want custom Post-processor capability | 3 | 5 | 15 | 0 | 0 | 4 | 12 | |||
Totals | 1 | 110 | 95 | 118 | 0 |
In the Sample Criteria Matrix example above, notice how Brand Y (green) has the highest score. The more thoroughly you test the software, the more reliable your score will be.
Notice that Brand Z has no total score because it failed the “required” test for total acquisition cost. Once a product fails a required test, there is no point evaluating it further. You can save a lot of time by evaluating all required criteria first.
Notice the values columns In this example, the criteria are rated for importance on a scale of 1-5. All of the required items have an importance rating of 5.
The highly desirable criteria, or wants do not need an importance rating of 5. So in this example, you can see local training is more important than the software’s feature recognition capability.
Brand W scored the highest for feature recognition but still had a total score lower than Brand Y because local training is more important.
The score for each brand is calculated by multiplying the Value column by your quantified subjective score as to how well the product will meet that particular criteria.
For example, Brand W above has a lathe module, but not a very good one. So it’s score for lathe module is 5 (the value) x 2 (a low score for the lathe module) = 10 Brand X obviously must have a better lathe module.
You can use a similar matrix for any significant purchase whether it is a new machine tool for the plant or a computer for home. I know of one woman that very successfully used a similar matrix concept for choosing her spouse!
When the same software is available from several sources, develop matrices for each vendor.
Fig. 2 - Potential Problem Analysis for Brand W
Potential Problem | Severity | Probability | Score
| Indicator | Response / Corrective Action |
Vendor could go out of business | 7 | 2 | 14 | Trade or financial journals indicate trouble | Hunker down, join user groups, seek legal remedies, develop internal training and support, hire / contract experts |
Funding for implementation could dry up | 5 | 6 | 30 | Projected low business cycle or change in business priorities | Re-evaluate goals, negotiate project objectives, prioritize remaining objectives, determine future funding requirements and possibilities |
Fig. 3 - Potential Problem Analysis for Brand Y
Potential Problem | Severity | Probability | Score
| Indicator | Response / Corrective Action |
Vendor could go out of business | 3 | 5 | 15 | Trade or financial journals indicate trouble | Less severe, large local user base, software well established, needs little support, leverage internal and external support systems |
Funding for implementation could dry up | 5 | 6 | 30 | Projected low business cycle or change in business priorities | Less likely, lower cost software. Re-evaluate goals, negotiate project objectives, prioritize remaining objectives, determine future funding requirements and possibilities |
The Potential Problem Analysis (PPA) Matrices shown above was only developed for the top two choices. You may want to do the analysis for all the CAM systems that make the final cut.
Notice how Brand Y had a lower (better) PPA score. This low score combined with the high scoring criteria seems to indicate Brand Y would be a pretty good choice.
Brand Y got a lot of points because a) it was less expensive determined by the higher score on the Criteria Matrix, b) its software is more commonly used locally.
The lower price means it is probably less susceptible to budget cuts or at least the effects would not be as devastating. The larger user base means there are a lot more local resources to draw upon in the event of employee turnover or even vendor failure.
Is the matrix development a foolproof way to select a CAM software package? Of course not. But it does give you a tool you can use to eliminate obvious misfits. Developing the matrices also forces you to evaluate what is important and what can go wrong. This will help prevent buyers remorse or the unenviable task of having to confess to upper management that your selection was poorly made.
While the matrices help you make your decision, you still need to trust your judgment. Often, during software demonstrations, you can get a feel for product support and vendor integrity.
Here is a very important reason to develop your matrices. If your company is like many others, software selection might be delegated to lower level managers and users. Obviously, when the decision gets made, all but one company gets left out.
Do not be surprised if one or more of the losing software companies have their district managers contact your upper management regarding your decision. They will show the fluff and how their product is a much better investment. If you have not done your homework and can not show the logic you used to arrive at your decision, then you will have a lot of explaining to do.
Without good documentation, your boss may succumb to pressure and overturn your decision. You could find yourself saddled with inappropriate software that does not meet your needs . . . Not to mention the damage to your reputation as a decision maker.
Don’t discount your intuition. You may choose a lower scoring vendor based on gut feel. That’s ok. Just note that your decision was based on gut feel. In hindsight you may be glad you trusted your intuition or you may wish chose the high scoring vendor.
If things "go south," you may have to justify your choice but you will have fully documented why the vendor was chosen and how your intuition came into play.
Some Thoughts on Software Demonstrations
When vendors demonstrate their software they usually have a couple of things going for them. First, they have a demo person who is very adept at showing off the whiz bang features. Second they will typically have a canned presentation of a seemingly difficult part to program. It all looks great. After all, that is what it is designed to do.
Since you really need to know how the software will perform in your environment, you need to control the demonstration. To do this you must insist that the demonstrator programs one of your typical parts using methods you are likely to use.
For example, if you program from paper drawings, the demonstration should focus on manual entry and tool path creation. If you use IGES or other file formats, the demonstrator should be given one of your typical files to work with.
I like to play a game of stump-the-demo-guy. This is where I insist the demonstrator address programming issues we face everyday. If the expert has a devil of time solving the problem, I can generally assume it will be harder for us to overcome the problem.
Sometimes the simplest things will trip up the demonstration and expose weakness in the software. During one demonstration, our team asked the expert to use the software to drive the tool down and make a small witness mark on the part. This was common for us because our CNC lathe can put very light, accurate scribe lines on the part, which greatly reduced assembly time.
After an hour or so, the expert confessed he could not make the software do this simple task. Our scheduled 8 hour demonstration was over in one hour.
Ask for References
No matter how well the software and vendor score on your matrices it is wise to ask for and check references. You will be amazed how things change when you talk to people who work with the software on a daily basis. You may find the vendor with the slickest presentation has the worst reputation for service or company integrity.
The references you receive will help you validate and refine your intuition. Bear in mind that vendors are not going to give you references to dissatisfied customers. To find attend user groups or log on to an Internet users group.
All companies will have some dissatisfied customers. Listen for patterns of dissatisfaction that might indicate a pervasive problem.
Finally, vendors can arrange on-site visits where your management and programmers can talk to people actually using the software. These meetings can be very enlightening. Users tend to speak their minds. Within any given company you will likely find both strong supporters and nay-sayers. Your goal is to determine which group more closely represents the environment at your company.
David Hayden is the owner of CAD/CAM for the Home and Small Shop.