Tooling is a term used within architectural design for processes that include making your own tool for whichever quest of inquiry or problem solving you are embarking on. I think part of a designers job should be to develop some sort of tool for the task at hand. This part of the site focuses on the development of these tools digitally, into scripts and plug-ins. A plug-in consists of a set of software components that adds specific capabilities to a larger software application. The program is compiled into machine code before it is used in any application. In computer programming, a script is a program or sequence of instructions that is interpreted or carried out by another program rather than by the computer processor (as a compiled program is).
What is essentially the difference ? When making your own tool, you are focusing on a final product that will extend your capabilities. You would naturally want this tool to be able to tackle several specific operations perhaps, without having to manually make adjustments to every single parameter at all times. With a plug-in you can get the interaction and parametric capabilities that you need for such a final product. The clear cut border between script and plug-in has been blurred more lately, and new terms have emerged. Extension is one of these. Have a look a the definition, but remember that when it comes to "tooling", the tool would take on the type that you made it into.
If you are basing your work on existing software, reverse engineering is essential, and you will certainly be in need of Uml - Tools. Unified Modeling Language (UML) is a standardized general-purpose modeling language in the field of software engineering. The standard is managed, and was created by, the Object Management Group. UML includes a set of graphic notation techniques to create visual models of software-intensive systems. This site focuses on this as a starting point, for analyzing, understanding and redeveloping.