Software: System, Operating System and Application Software’s!

The work performed by a computer system depends, to a large extent, on the software resources available in an enterprise. If com­puter hardware is the physical being or body of IT infrastructure, software is its brain, heart and soul. It is, therefore, essential to plan the acquisition, use and maintenance of the software required to achieve the information goals of the enterprise.

Business Enterprise

It identifies the software needs, procurement options and the role of manager in this process. It also evaluates the option of outsourcing application development services and raises the con­tentious issues involved in the process of planning for application development.

Software needs can be defined in terms of functions of the soft­ware. It performs three basic functions in relation to IT infrastruc­ture:

i. It manages the IT resources in an enterprise;

ii. It offers tools for utilisation of IT infrastructure;

iii. It acts as an interface between the information and the users.

These categories are, however, suggestive and not exclusive. Accordingly, software needs can be defined under three broad categories:

i. System software,

ii. Application software,

iii. Interaction/query software.

(a) System software:

This class of software manages the hardware resources such as primary and secondary memory, display devices, printers, communication links and other peripherals in the IT in­frastructure. The management of resources includes the operation, control and extension of the capabilities of each resource. The sys­tem software may have a variety of components, such as operating system and translation programs.

(i) Operating system:

Operating system (OS), as an integrated set of programs, acts as an intermediary between the user and computer hardware. The user is, generally, unconcerned about the technical details of the hardware and need not be aware of the whole process of giving instructions to hardware.

OS controls the input/output operations, performs the system scheduling tasks, takes care of system interruptions and monitors system status, giving appropriate messages to different hardware and users.

The overall control of a computer system is under the supervision and control of an OS component called the Supervisor or kernel. The supervisor program, generally, resides in the primary memory.

The other OS programs such as utility and library programs are gen­erally stored on a mass storage device attached to the computer system. They are called by the supervisor as and when required for the current job.

The popular operating systems products include MS-DOS, UNIX, Windows 95, OS/2, Mac OS, etc.

(ii) Translation software:

Translation software translates the pro­grams written in programming languages such as COBOL, FOR­TRAN, PASCAL and C++ into machine recognizable instructions (also called object or machine language programs). The source pro­grams once debugged and translated become executable on compu­ter hardware, of course, under the control of OS. The translation software is also called compilers.

System software is computer system specific and it is likely that a given system software may run only on a specified type of compu­ter system.

(b) Application software:

Application software is the collection of programs that actually process data to generate information under various applications. This category of software offers tools for satis­fying the users’ need for information. For each application, there has to be software performing various data processing activities required for the job.

(c) Interaction/query software:

The interaction/query software is relatively a new class of software that serves as a language of inter­action between users and programmers on the one hand and the stock of information stored on computer system on the other. With the help of such tools even the users are able to develop limited applications for their use without much of technical expertise.

It is possible because such software offers limited programming facili­ties that make the application development easier for common type of programming situations. This software is also called end user languages, fourth generation languages (4GLs), dialogue/query lan­guages or very high level languages.

There exists an array of software components under each of these software categories and the details about these components are given at different locations in the book. The various categories of software are represented in Fig 7.1.


It may be noted that communication with the computer system hardware is possible through the system software. However, the system software performs only housekeeping jobs and thus, the process of information generation can be initiated and completed only when specific application software is available. Many a time, the user is looking for certain facts from the data bank of the enter­prise. Such a need is satisfied by the interactive/query software.

The interactive software may also directly interact with the operat­ing system. In most of the cases, the user interacts either with ap­plication software, with or without the intermediation of query soft­ware, or with the system software.