enable people, workgroups, and entire enterprises to solve problems and perform specific tasks.
programs developed to carry out specific tasks or solve particular problems.
software that has been developed to solve a particular problem, perform useful work on general tasks or provide information. they are not included/necessary for a device.