Software Classification

Application Software

Application Software is where the term ‘App’ comes from. It is any piece of software that allows us to actually ‘use’ the computer. For example, it may be a word processor, web browser, spreadsheet software or even just a game. Application software relates to the user rather than the hardware.

Examples of application software include:

  1. __Microsoft Office __(Word, Excel, Powerpoint, Outlook etc.)
  2. Web Browsers (Google Chrome, Internet Explorer, Firefox etc.)
  3. Photo-editing tools (Adobe Photoshop etc.)
  4. Video-editing tools (Windows Movie Maker, iMovie, Adobe Premier, Final Cut etc.)
  5. __Organisational Tools __(Calendar, Mail etc.)

Types of Software

Software is the reason computers are useful to us. They are the programs that allow us to do something useful with our computer.

The main types of software are:

  1. Application Software
  2. System Software (including Operating System and Utility Software)

Application software is computer software designed to help the user to perform specific tasks. Whereas system software is computer software designed to operate the computer hardware and to provide a platform for running application software.

Hardware and Software

There are two things that make up a computer system - the physical parts of the machine (the hardware) and the programs that make them run (the software). Without either of these, the device would simply not be a computer.

The most important piece of hardware in a computer is the CPU (Central Processing Unit) which acts as the brain of the computer. The other core pieces of a computer are the power supply, motherboard (which sends signals around the computer) and the computer case. Technically, all other parts of a computer are referred to as peripheral devices - that is devices that can be connected to a computer but is not part of the core architecture.

In reality though, we actually need lots of pieces of hardware to make a computer run. For example, our desktop computer would be pretty useless without RAM, ROM and secondary storage. The software on our computer is how we can communicate with all of the devices.

System Software

System software is software designed to operate the computer hardware and to provide a platform for running application software. There are two types of system software:

  1. Operating System Software – Manages the computer hardware and software
  2. Utility Software - Tools designed to help the user manage the computer system.

Operating Systems

The Operating System (OS) is the main piece of software on a computer, and is what allows the computer to ‘run’. The OS has lots of different functions, but in general, it provides the interface between the user and the hardware.

Software Classification, figure 1

In particular, the OS handles management of the:

  1. processor(s)
  2. memory
  3. I/O (Input and Output) devices
  4. applications
  5. security.

To help you remember the function of an Operating System, remember MUMPS:

  1. M - Multi-tasking
  2. __U __- User Interface between the Hardware and the Software
  3. M - Memory Management
  4. __P __- Peripheral Management
  5. S - Security

Multi-tasking (Processor Management)

Processor cores are only able to process 1 piece of information at a time. However, when we are using a computer, we expect them to run lots of different things as once. This is managed by the OS, which controls the order that tasks are sent to the CPU so that they can be processed in such a way that it appears the computer is multi-tasking.

User Interface (Application Management)

The OS makes use of libraries with standard code included in them to manage common tasks, such as how to display a window message. Application software is then designed to work with these libraries through the OS to make use of the already written code. The OS provides a link between the Application Software and the Hardware, and provides a way for the user to interact with the whole computer system easily.

Managing Memory

There are different types of memory in computers - main memory and secondary storage. The OS is responsible for managing how both of these are used to store data.

For example, when using RAM, the OS assigns each running application its own memory space, which means that the applications don’t clash with one another.

When managing secondary storage, the OS formats the disk which creates blocks of memory. It then keeps track of where data and applications are stored in these blocks so that it can retrieve it in the future.

Peripheral Management

Peripherals are all devices which are connected to the main computer. Pieces of system software known as drivers are used by the OS to communicate and manage these peripheral devices. Without these drivers, the OS wouldn’t know how to tell the peripherals what to do, and we as users would be unable to do certain tasks like printing a document.

Security Management

The OS is also responsible for managing the system security, including the use of user accounts to restrict access on the system. Through these accounts, they can make sure that only particular users with the correct permissions can perform tasks such as installing software, accessing files or even viewing parts of the hardware.

Utility Software

Utility software is a type of system software that helps to manage the other pieces of software and computer hardware. They are separate programs designed to make the computer run more efficiently, and can either be bought separately, or come built into the Operating System.

There are lots of examples of utility programs, and they include:

  1. Anti-malware - designed to prevent the computer becoming infected with malware, and identify pieces of malware which are already infecting the computer.
  2. Firewall - software (or sometimes hardware) designed to block unauthorised data travelling along network connections.
  3. Disk Defragmenter__ __- rearranges blocks in memory to make data retrieval more efficient.
  4. Data Compression__ __- reduces the size of files by either removing unwanted data (lossy compression) or using other techniques to reduce the file size on disk.
  5. Data Encryption - scrambles data stored on disk so that it is unreadable without the key
  6. System Clean-up - removes unwanted files or applications from the computer. This could include old update files or unused applications depending on the features the program has.
  7. Software update - ensures automatic or timed updates to pieces of software. This is particularly important for the Operating System, where updates could be critical to the running of the computer or security.
  8. File back-up - ability to automatically back-up files on the computer, either using cloud storage or another form of secondary storage.

For each of the pieces of software below, state whether it is ‘application’, ‘utility’ or ‘OS’ software:

Google Chrome
System Clean-Up
AVG anti-virus