# Defining Automation

Automation is the ability for one application or tool to manipulate programmatically objects exposed by another application. Using Automation, you can also create tools that access and manipulate objects. Such tools can include embedded macro languages, programming tools, object browsers, and compilers. Like compound documents, Automation is based on COM, but applications can implement Automation independently of compound documents or other OLE technologies.