Computer-Aided Design (CAD) software are some of the most popular and widely used engineering tools in the market. Most of these CAD software are developed to address broader disciplines like Mechanical Engineering, Civil Engineering, Electronics etc. In the last decade, most of these CAD tools have started offering general tools for specific design goals like ex. Sheet Metal Design, Mold Design, etc. While offering more general tools, there is no way to know what each individual user may find useful to accomplish very specific tasks .
This gap has been understood by the CAD tool developers and that’s one major reason they built the capability of customization into their programs. With customization is possible to create new commands and ways of human-machine interaction that ease repetitive or complex tasks . Thus, CAD customization turned out to be one of the most powerful features of CAD.
Researchers have recognized the need for mass customization and have identified four distinct approaches that are depicted in the diagram below :
Customization of an existing CAD is perhaps the fastest and most economical way of accomplishing the specific needs of an organization. CAD customization involves developing tools or add-on for CAD software. While most customization appears to be simple for the end-user, it takes a lot of effort to implement the expected behaviour and make it look simple.
Classification based on complexity:
The classical way of categorizing any tasks hold good for CAD as well. CAD customization can be categorized into two types:
Classification based on usage:
CAD customization is a process of achieving a certain set of task automation for improving productivity and quality with eliminating unwanted errors for enabling more time to the designer to focus on addressing real challenges in the design domain and reduce lead time.
CAD Automation applications are developed using API programming as add-ons over commercially available CAD platforms (like CATIA, Inventor, SolidWorks, SolidEdge, etc). Mundane tasks that require rule-based decision making are considered as ideal for automation. These custom applications intelligently extract data, apply rules, make decisions and perform operations automatically thus improving the quality and reducing cost.
We can categorize automation broadly into two types:
Though in literature we can find multiple other categories like creating feature catalogue, developing template designs, etc. At a broad level, they can again be classified into the above two categories.
CAD companies have devoted big budgets and time to enhance customization capabilities of their programs so this feature should be seriously considered as a productivity tool for designers and engineers.
Organizations who are interested in exploiting the benefit of CAD customization struggle identifying the area of need. The lack of clear idea of the needs by the design engineer makes requirement gathering more difficult. In these scenarios, organization engage an analyst who has a better understanding of the overall CAD product and design lifecycle to point out the repetitive, inefficient and complex task in the everyday work of the end-user. Also, the initial prototype is used as the first version of the system and its continued improvement leads to the final system .
The capabilities of programming into a CAD environment links the advantage of a commercially used CAD software about reliability, graphical capabilities and pre-implemented procedures with newly developed custom modules to solve specific design need and improve productivity .
 Idelsohn, Sergio; Oate, E; Dvorkin, Eduardo; Scheer, Sergio; Bogado, Wilson; – “A Systematic Approach To CAD Systems Customization” (1970).
 James H. Gilmore; B. Joseph Pine II; – “The Four Faces of Mass Customization”, Harvard Business Review, Feb 1997
 Gattamelata, Davide; Pezzuti, Eugenio; Valentini, Pier Paolo; – “Using Application Programming Interface to Integrate Reverse Engineering Methodologies into SolidWorks”