Software

This week, we talked about an essential part of computers: software.

Hierarchy of Software

Software is mainly divided into two main types: system software and application software (further details about these two types of software will be discussed below). There are four main kinds of system software (library is not mentioned in picture): operating systems, library programs, utility programs and programming language translators. Application software is divided into three main kinds of software (third type is not mentioned in picture): general-purpose application software, special-purpose application software and bespoke application software.

hierarchy

System Software

System software is software designed to function as a platform for running other types of software. It is an essential kind of software. As stated above: there are four main types of system software: operating systems, library programs, utility programs and programming language translators.

Operating systems provide a platform for your computer as a whole. Without operating systems, you can’t do operate any other software on your computer. Common examples of operating systems include Windows, Mac OS and Linux.

windows screenshot
Example of Windows OS

Library programs are a collection of resources that can be used to create other software. Examples of resources that libraries may include are prewritten code and configuration data. Libraries are extremely useful and essential for creating new software. Games often use libraries for character templates and game design in order to speed up the process of game development.

Utility software is software designed to support computer infrastructure. This concept may sound a little fuzzy, but it’s basically software that helps maintain the performance of other software. Examples include antivirus software and screensavers.

antivirus
examples of different antivirus software

Programming language translators as their name implies,  translate code into different programming languages. There are three main types of translators: assemblers, compilers and interpreters. Assemblers are special. They translate low-level assembly code into language that the computer can understand and perform. Compilers and interpreters are both used for the same reason, but they achieve their goals in different ways.

Video

To understand the difference between compilers and interpreters, we watched an in-class video. The video used animations and the analogy of being stranded on an alien planet to describe the difference. In the video, you are trying to get help from an alien mechanic to fix your car, and you need a translator. Interpreters translate code one by one, and after translating the code, they immediately pass the info on, allowing the computer to act instantly. While it can be a bit slow because the computer has to wait between different commands, it also allows for you to correct mistakes in the code on the fly. Compilers translate everything in one go, and then pass on all the translated language to the computer to perform. Although the computer has to wait at first, it will operate extremely quickly once it receives the code. However, if there are mistakes, then the computer will perform the mistakes in the code. If you pass on incorrect instructions to the mechanic, your car might explode.

Application Software

Application software is software that is used in the form of programs and applications on the computer.

The three main types of application software are all very important to the computer infrastructure that we have today.

General-purpose application software is simply software that can be used for a wide multitude of functions. Examples include word processors (such as Microsoft Word) and spreadsheets (such as Microsoft Excel).

word screenshot
Microsoft Word, a word processor

Special-purpose application software is software that has a very specific use and function. Although their use is specific, special-purpose application software is still widely used in our everyday lives. For example, web browsers and calculators are both special-purpose application software.

data browser
Edge, a type of web browser

The final type, bespoke application software, is basically custom software. You lay out how you want the software to work and what its uses are, and then a software company will create the software for you according to your requirements. Due to this, the use of bespoke software varies widely depending on the request of the client, ranging from air traffic control software, BBC TV licensing service to software solving London congestion and creating charging schemes for certain services.

Presentation

There is a lot to learn about software. Mr. Pete decided to let use delve deeper into application software by dividing us into groups and then having us research different topics and do a presentation on them. We were assigned web browsers and word processors. Overall, we did pretty well on our presentation. Every person did their part and we learned a lot about web browsers and word processors and how they work. Interestingly enough, although web browsers these days can accomplish a lot of things such as playing videos and games, they are only able to accomplish this with the aid of plug-ins. The web browser itself is incapable of anything else other than going on websites. This is why the web browser is classified as a specific application software.

zoho

Conclusion

We really did learn quite a lot about software this week. We learned about how it is sorted into different kinds and what those different kinds of software are. Also, we viewed a great video in class that provided an in-depth yet simple explanation on the difference between interpreters and compilers. Finally, we created a presentation with our groups, promoting cooperation, presentation skills and of course, our knowledge of software (in our case, web browsers and word processors). Learning about software was extremely helpful because we use software to do all sorts of things these days, and over time, people will only develop more and better software, so it’s good for us to understand something so invaluable to modern society.

 

 

Leave a comment