software programs that use a built-in or learned knowledge base to carry out specific, repetitive, and predictable tasks for an individual user, business process, or software application.
programs that work in the background without direct human intervention to carry out specific, repetitive, and predictable tasks for user, business process, or software application (eg shopping bots)
software systems that learn how users work and provide assistance in their daily tasks; eg. software update, intelligence