A computer software is designed with the help of computer programs and related data, that provide the instructions telling a computer what to do and how to do it. A software is a set of programs, procedures, algorithms and their documentation. There are mainly 6 major types of software present and are given below:

Programming Software:
This is the most common type of software and this software consists of tools such as text editors, compilers and interpreters that help the programmer in writing the computer programs, which are sets of logical instructions that make a computer system perform certain tasks.

Application Software:
This software enables the end users to accomplish certain specific tasks. Business software, educational software, databases are some forms of application software.

System Software:
System software is a collection of operating systems, servers, device drivers, windowing systems and utilities, which help in running the computer hardware. System software helps an application programmer to get rid of difficulties of hardware, memory and other internal complexities of a computer.

Utility Software:
Utility software is used to manage the computer hardware and application software and performs small tasks. Some of the examples of utility software are systems utilities, disk defragmenters and virus scanners.

Inventory Management Software:
This software is generally used in the organizations to track the materials on the basis of quality and quantity. Inventory software helps in organizing inventory and optimizing the flow of goods in the organization.

Data Backup and Recovery Software:
Backup and recovery software are used to retrieve the backed up data, as they preserve the original organization of files. This software often supports users regarding what is to be backed up and when.