COMPUTER SOFTWARE

What is Computer software? 

Software is a set of instructions that control computer hardware operations. Basically it direct the computer how to perform tasks. Also called Programs.

  • Software: drives hardware to perform certain functions. Without software the computer is useless. 
  • The software consists of the programs and associated data (information) stored in the computer. 
A program is a set of instructions that the computer follows to manipulate data. Without programs, a computer is just a lot of high-tech hardware that doesn‘t do anything
History of software
The term software was not used until the late 1950s. During this time, although different types of programming software were being created, they were typically not commercially available. Consequently, users -- mostly scientists and large enterprises -- often had to write their own software.

The following is a brief timeline of the history of software:

  • June 21, 1948. Tom Kilburn, a computer scientist, writes the world's first piece of software for the Manchester Baby computer at the University of Manchester in England.
  • Early 1950s. General Motors creates the first OS, for the IBM 701 Electronic Data Processing Machine. It is called General Motors Operating System, or GM OS.
  • 1958. Statistician John Tukey coins the word software in an article about computer programming.
  • Late 1960s. Floppy disks are introduced and are used in the 1980s and 1990s to distribute software.
  • Nov. 3, 1971. AT&T releases the first edition of the Unix OS.
  • 1977. Apple releases the Apple II and consumer software takes off.
  • 1979. VisiCorp releases VisiCalc for the Apple II, the first spreadsheet software for personal computers.
  • 1981. Microsoft releases MS-DOS, the OS on which many of the early IBM computers ran. IBM begins selling software, and commercial software becomes available to the average consumer.
  • 1980s. Hard drives become standard on PCs, and manufacturers start bundling software in computers.
  • 1983. The free software movement is launched with Richard Stallman's GNU (GNU is not Unix) Linux project to create a Unix-like OS with source code that can be freely copied, modified and distributed.
  • 1984. Mac OS is released to run Apple's Macintosh line.
  • Mid-1980s. Key software applications, including AutoDesk AutoCAD, Microsoft Word and Microsoft Excel, are released.
  • 1985. Microsoft Windows 1.0 is released.
  • 1989. CD-ROMs become standard and hold much more data than floppy disks. Large software programs can be distributed quickly, easily and relatively inexpensively.
  • 1991. The Linux kernel, the basis for the open source Linux OS, is released.
  • 1997. DVDs are introduced and able to hold more data than CDs, making it possible to put bundles of programs, such as the Microsoft Office Suite, onto one disk.
  • 1999. Salesforce.com uses cloud computing to pioneer software delivery over the internet.
  • 2000. The term software as a service (SaaS) comes into vogue.
  • 2007. IPhone is launched and mobile applications begin to take hold.
  • 2010 to the present. DVDs are becoming obsolete as users buy and download software from the internet and the cloud. Vendors move to subscription-based models and SaaS has become common

Types of Computer Software
Software can be divided into two groups:
  1. System Software 
    1. Operating System
    2.  Utility Programs
    3. Language translator
  2. Application Software
    1. Word processor e.g. Ms Word
    2. Spreadsheet e.g. Ms Excel
System software. 
System software is a type of computer program that is designed to run a computer's hardware and application programs. If we think of the computer system as a layered model, the system software is the interface between the hardware and user applications. The operating system is the best-known example of system software. The OS manages all the other programs in a computer.

System software is used to manage the computer itself. It runs in the background, maintaining the computer's basic functions so users can run higher-level application software to perform certain tasks. Essentially, system software provides a platform for application software to be run on top of.

Important features of system software

Computer manufacturers usually develop the system software as an integral part of the computer. The primary responsibility of this software is to create an interface between the computer hardware they manufacture and the end user.

System software generally includes the following features:

  • High speed. System software must be as efficient as possible to provide an effective platform for higher-level software in the computer system.
  • Hard to manipulate. It often requires the use of a programming language, which is more difficult to use than a more intuitive user interface (UI).
  • Written in a low-level computer language. System software must be written in a computer language the central processing unit (CPU) and other computer hardware can read.
  • Close to the system. It connects directly to the hardware that enables the computer to run.
  • Versatile. System software must communicate with both the specialized hardware it runs on and the higher-level application software that is usually hardware-agnostic and often has no direct connection to the hardware it runs on. System software also must support other programs that depend on it as they evolve and change.

Types of system software

System software manages the computer's basic functions, including the disk operating system, file management utility software and operating systems.


Utility Software
Another interesting software is a utility software. If you want proper and smooth functioning in your computing system? Then , Utility software is what you need. It assists the Operating System to manage, organize, maintain, and optimie the functioning of the computer system.

Some of the notable examples of utility software are anti virus software, compression tools, file management tools, disk management tools, etc. 
Types of utility software include:
  • Compression Tools
  • Disk Defragmenter
  • Disk Management Tools
  • Antivirus
  • File Management System
  • Disk Cleanup Tool
  • Backup Utility

Operating systems
The computer's OS is a well-known example of system software. Widely used operating systems include Microsoft Windows, macOS and Linux. Unlike other system software types, the average computer user regularly interacts with the computer OS through its graphical UI (GUI) and, with some operating systems, a less complex command-line interface (CLI).

Because a GUI is a program that sits on top of the OS, it may be referred to as application software, not system software. In other words, the GUI is application software that makes it possible for the user to manipulate parts of the OS.

Important tasks performed by the operating system
The main responsibility of the operating system is to manage a computer's software and hardware resources. It is the computer's main control program. The OS controls and maintains a record of all other programs on the computer, including both application and system software. The OS creates an environment that all other computer programs run within and provides service to those other applications.

Operating systems perform tasks. Five of the most important ones are the following:

  1. File management and process scheduling. The OS allocates resources and prioritizes which programs should receive the resources and in what order. For example, a digital audio workstation application may require a certain level of processing power when being used. The OS decides how much power the application gets from the CPU and manages the effects of that allocation on other applications. If a more critical process is happening elsewhere on the computer, the OS might sacrifice some of the power the digital audio workstation has requested, for example, to ensure the other process can be completed.
  2. Processor and memory management. The OS allocates the computer's memory to a process when needed and deallocates it when the process is finished.
  3. Error detection. The OS detects, tracks and debugs errors in the computer's other programs.
  4. Security. The OS uses passwords to protect the computer's programs and data from unauthorized access.
  5. Control and management. The OS uses compilers, assemblers and interpreters to control and manage other programs on the computer. These language processers are pieces of system software that translate the high-level languages -- Java, Python and C++ -- that many computer programs are written in into low-level machine code instructions, which is essentially a series of 1s and 0s that the computer's CPU can read.
Driver software
Also known as device drivers, this software is often considered a type of system software. Device drivers control the devices and peripherals connected to a computer, enabling them to perform their specific tasks. Every device that is connected to a computer needs at least one device driver to function. Examples include software that comes with any nonstandard hardware, including special game controllers, as well as the software that enables standard hardware, such as USB storage devices, keyboards, headphones and printers.

Middleware
The term middleware describes software that mediates between application and system software or between two different kinds of application software. For example, middleware enables Microsoft Windows to talk to Excel and Word. It is also used to send a remote work request from an application in a computer that has one kind of OS, to an application in a computer with a different OS. It also enables newer applications to work with legacy ones.

Programming software
Computer programmers use programming software to write code. Programming software and programming tools enable developers to develop, write, test and debug other software programs. Examples of programming software include assemblers, compilers, debuggers and interpreters

Application software. 

An application, also referred to as an application program or application software, is a computer software package that performs a specific function directly for an end user or, in some cases, for another application. An application can be self-contained or a group of programs. The program is a set of operations that runs the application for the user.

Application examples
Some types of applications include:
  • Word processors
  • Database programs
  • Spreadsheet Software
  • Web browsers
  • Deployment tools
  • Image editors
  • Communication platforms
Applications use the computer's operating system (OS) and other supporting programs, typically system software, to function. An application requests services from and communicates with other technologies via an application programming interface (API)

1. Web Browsers
Web browsers or simply browsers are application software used to access and view websites through accessing the internet/ the World Wide Web.

It retrieves the necessary content from a web server and then shows the page on the user's device upon user requests. The most popular web browsers are Google Chrome, Internet Explorer (now Microsoft Edge), Firefox, MS Edge, Safari, etc.

2. Word Processing Software
Word processing application software helps users to input, edit, format, and output text content.

This type of software program processes words with pages and paragraphs and formats and enhances the text. It also enriches the ‘wording’ experience by helping users with easy access to thesaurus, synonyms, and antonyms.

It helps in embellishing letters with art features such as font styles, colors, and styles. Leading examples of application software belonging to the word processing category are: Google Docs, Microsoft Word Docs, Open Office Writer, Word Perfect, Wordpad, Notepad, AppleWorks, etc.

3. Spreadsheet Software
Spreadsheet application software helps in organizing, storing, and analyzing data in columns and rows to facilitate calculations effortlessly and efficiently.

These rows and columns can be operated through formulas to execute crucial mathematical functions. This is a digital simulation of traditional physical (paper) worksheets. Examples of application software in the Spreadsheet category are Microsoft Excel, Google Sheets, and Apple Numbers.

4. Database Software
Database application software, also known as a DBMS (Database Management System), is a collection of data associated with any application.

This helps in organizing data by creating and managing a database by storing, modifying, extracting, and searching for information within a database.

When we run an application, it accesses the data from the database and stores it after modifications. Examples of database application software are MS Access, Oracle, MySQL, Microsoft SQL Server, PostgreSQL, MongoDB, IBM Db2, etc




Previous Post Next Post