An application or development tool that can use objects supplied by another application, or which exposes its own objects for use by another application. Formerly these were known as "OLE Automation servers" and "OLE Automation controllers."