A Computer is a programmable machine, that can receive input, store, and manipulates data to provide a useful output. It is consists of hardware and software. The mechanical parts of the computer are called hardware. For example input device, storage device, etc. Whereas programmable parts of the computer is called Software. For example MS- Word, MS-Excel, Windows, Mac, Unix, etc.
To make a computer their involve two types of industries. The field of electrical engineering and computer system engineering. They primarily focus on the design and manufacturing of computer hardware. While software engineering and computer science focus on computer software. The area of the software industry is huge. The software industry is growing day by day.
Also Read: 13 Different Types of Developer Explained
What is Computer Software?
The set of a program that can do some specific tasks is called software or you can say the programmable part of a computer is called software. Computer Software is written in a computer programming language.
Types of Software
- System Software
- Application Software
Besides these two main groups of software, there is another type of software called Middle-Ware Software.
1. System Software

Mainly our operating system is called system software. System Software is designed to operate the computer’s hardware and to provide and maintain the platform for running applications.
It directs the hardware to perform specific tasks. The most popular System Software are Windows, Mac, Unix, Ubuntu. More then 80 percent of computer runs on Windows Operating System (OS).
2.Application Software

Application software is designed to help the user to perform one or more related specific tasks. Depending on the work for which it was designed.
An application can manipulate text, numbers, graphics, or a combination of these elements. Examples of application software MS-Word, MS-Excel, Adobe Photoshop, etc. Also, the Application software runs System Software.
3. Middle-ware Software:
The middle-ware software is a set of services that allows multiple processes running on one or more machines to interact. Most often used to support and simplify complex distributed applications.
It can also allow data contained in one database to be accessed through another middleware is sometimes called plumbing because it connects two applications and passes data between them. For example web servers, application servers, clouds computing, etc.