Computer Software
Computer Software
All computers work under special instructions called software. Software is a set of
instructions that help in running and managing computer resources enabling the
computer to operate effectively. The computer software makes the computer to
work i.e. it helps in running the computer hardware. It instructs the computer on
what to do and hoe to do it. There are two categories of computer software.
1. System software.
2. Application software.
SYSTEMS SOFTWARE
This is a set of instructions or programs developed and installed in the computer
system designed to manage and control the computer resources hence enhancing
the functional capabilities of the computer system. It is used within the computer for
organising internal functions of the system. System software are developed by the
manufacturers of computer hardware
Systems software can be divided into three:-
Operating system
Utility programs
Translation programs
a) OPERATING SYSTEM
This is an integrated collection of programmes that manage the operations of the
C.P.U, other peripheral and hardware. Operating system therefore manages the
computer resources to enhance the optimum utilisation and efficiency of the
computer.
Job scheduling- This is the process of lining up jobs particularly where such jobs
have to pass through several devices, for example several jobs awaiting printing.
The operating system performs job scheduling thus ensuring that the CPU time is
not dedicated to one job only; the CPU idle time is therefore reduced to a great
extent. The jobs may be lined up in order of priority, order of complexity etc.
Peripheral devices/ input- output control- It monitors the flow of data between the
input/output devices and the CPU. Peripheral devices are the physical elements of
the computer system which are connected to the system to enhance its usage. By
regulating the speed imbalance between the peripheral devices and the CPU, the
operating system facilitates optimum utilization of the CPU time.
Logging and accounting. The system accounts for who logged in i.e., who gained
access to the computer at a given time. It keeps the records of the jobs created,
indicating which jobs were created when and by who.
Enhancing systems security- The operating system allows the users to use
passwords through which they can be recognized as legitimate users. This ensures
that data stored in the computer at a given time is not subjected to any sort of
deliberate or accidental corruption.
Interface between the users and the computer system- It enables the users to access
the computer system to issue the instructions for the processing tasks to be
performed. The form of ‘conversion is therefore established between the operating
system and the operator, usually through console in multi-user system. Console is
when the keyboard is used together with the visual display unit.
TRANSLATION PROGRAMS
These are programs that convert the source code instructions (instructions written in
2nd, 3rd, 4th and 5th generation languages) into machine code i.e. O’S and I’S.
There are 3 types of translation programs:
i) Assemblers: These are translators which transform programs written in
2nd generation into machine codes.
ii) Compilers: These are translators which transform programs written in
high level languages into machine codes several statements at a time.
iii) Interpreters: These are translators which transform programs written in
high level language into machine code one statement at a time.
APPLICATION SOFTWARE
Application software is a set of instructions used to accomplish specific tasks other
than just running the computer system; they are designed to help the users solve
specific problems. Application software can be bought off- shelf or can be developed
in-house depending on the needs of organisation. An advantage of acquiring a suite
of programs rather than individual programs is that it will be cheaper. A suite is a
set of applications put together. Application software are normally designed to
solve particular problems and they can be categorised into two;-
i) Off shelf packages
ii) Tailor-made/in-house/bespoke packages.
1. Graphics
It allows users to display numerical data in a variety of forms such as bar graphs
and file charts.
2. Consolidation.
This feature allows the users to merge several worksheets and give a summery sheet
while keeping the original sheet intact.
3. Functions.
Spreadsheets offer various functions include summation average, subtraction and
any other function used in mathematical and statistical analysis.
4. Formatting
This allows the users to improve on the appearance of the spreadsheet e.g. changing
colour, style e.t.c
5. Windows- A spreadsheet provides the users with several working areas
thus allowing for multitasking.
b)
Desktop publishing (graphic packages)
These are application packages that allow users to carry out some amount of text
manipulation and also carry out design work. They are enhanced word processors.
Organizations commonly use desk-top publishing for designing reports, adverts,
press releases, business cards, publications and business logos.
Sources of software
Application
Software
Proprietary Off-the-shelf
/tailormade
In – house Contract
customized customization
When choosing a software package for a given application the following factors
should be considered:
User friendliness- The software should not be complex; it should be easy to
learn and use. User friendliness of a package can be enhanced through the
provision for help facilities such as screen formatting facilities
Cost- There are normally costs associated with acquiring software. Such costs
should not outweigh the benefits that would accrue from its use. The software
should be cost effective
Compatibility- a software is said to be compatible if it can fit into the existing
technology. It should not be obsolete.
Flexibility- The software should have allowances for the users’ changing needs;
it should meet not only the current user requirements but also the future
requirements.
Vendor support- Is there maintenance support from the manufacturer?
Portability- The software should be capable of running in on different computer
families
User requirements- Before buying a particular package, its current users should
be interviewed to find out whether the package is likely to be successful or not
depending on their requirements
Documentation- they should be accompanied by descriptions or narrations
which highlight how to use and maintain them (user guides)
Reliability- The software should be capable of running with minimal failure
rates
Security- They should not be easily defrauded