0% found this document useful (0 votes)
23 views

LECTURE 4

Uploaded by

Kapalu Chiseso
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views

LECTURE 4

Uploaded by

Kapalu Chiseso
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 90

ICT LECTURE 4

COMPUTER SOFTWARE
PREPARED BY MRS CHINYAMA
OBJECTIVES
• By the end of this lecture, you should be able to:
• Define what a computer software is.
• Define and differentiate the two types of software.
• Explain what an operating system is and its functions.
• Define utility programs and the programing languages.
INTRODUCTION TO COMPUTER
SOFTWARE
• The usefulness of computer hardware depends on available.
• Software is the detailed instructions that control the operation of a
computer system.
• It can be defined as a set of instructions that tell the hardware how to work.
• Software is a collection of programs that control the working of the
computer hardware.
• A program is a set of instruction arranged in a logical way that a computer can
run
• Hardware is tangible whereas software is intangible, i.e. it cannot be touched
FUNCTIONS OF SOFTWARE

• Manage the computer resources of the organizations.


• Provide tools for people to take advantage of these resources.
• Act as an intermediary between organizations and stored data and
information.
CLASSIFICATION OF COMPUTER
SOFTWARE
CLASSIFICATION OF COMPUTER
SOFTWARE
• Computer software is mainly based on purpose the software serves. This can
be broadly classified into two categories i.e. Systems and Application
software
• System software refers to programs that control the operations of a
computer and its devices.
• System software also serves as the interface between the user, the application
software and hardware. There are three categories of systems software.
CLASSIFICATION OF COMPUTER
SOFTWARE
• Two categories of system software are;
a) Operating system,
b) Utility programs
WHAT IS AN OPERATING SYSTEM?

• An Operating System (OS) is an interface between a computer user and


computer hardware.
• An operating system (OS) is a set of programs containing instructions that
co-ordinate all the activities among computer hardware devices.
• The operating system so much relies on the device driver to communicate
with each hardware device.
• NB. A device driver is a small program that tells the OS how to
communicate with the device.
THE OPERATING SYSTEM

• Without an operating system, a


computer is useless.
THE OPERATING SYSTEM'S JOB

• Your computer's operating system (OS) manages all of the software and
hardware on the computer. Most of the time, there are several different
computer programs running at the same time, and they all need to access
your computer's central processing unit (CPU), memory, and storage.
• The operating system coordinates all of this to make sure each program gets
what it needs.
OBJECTIVES OF OPERATING SYSTEM

• Operating system is system software that controls and coordinates the use of
hardware among the different application software and users. OS
intermediates between the user of computer and the computer hardware.
The user gives a command and the OS translates the command into a form
that the machine can understand and execute. OS has two main objectives—
1. To make the computer system convenient and easy to use, for the user, and
2. To use the computer hardware in an efficient way, by handling the details of
the operations of the hardware.
OBJECTIVES OF OPERATING SYSTEM

• OS hides the working of the hardware from the user and makes it convenient for
the user to use the machine. The application program used by the user requires the
use of the hardware during processing. Some examples are—display of application’s
user interface, loading a program into memory, using I/O devices, allocating CPU
to different processes during execution, and store or load data from hard disk.
When using the machine, the user gives the command to perform the required
actions to the OS and the OS handles all the operational steps. The user is not
bothered about how these actions will be performed. This is the job of OS. OS
provides an interface to the application programs to interact with the hardware. The
user need not get into the details of this interaction.
OBJECTIVES OF OPERATING SYSTEM

• At the other end, the different resources of computer hardware have to be


managed and controlled. This includes managing the communication
between different devices, controlling the sequence and execution of
processes, allocating space on hard disk, providing error handling procedures
etc. OS supervises and manages the hardware of the computer.
• Some of the commonly used operating systems are Microsoft Disk
Operating System (MS-DOS), Windows 7, Windows XP, Linux, UNIX, and
Mac OS X Snow Leopard.
TYPES OF OS

• Single user,
• Multiuser,
• Multitasking,
• Multiprocessing,
• Real time, and
• Embedded.
SINGLE USER AND SINGLE TASK OS

• single user and single task OS is for use by a single user for a standalone
single computer for performing a single task. Operating system for Personal
Computers (PC) are single-user OS. For example, if the user is editing a
document, then a document cannot be printed on the printer simultaneously.
Single user OS are simple operating system designed to manage one task at a
time. MS-DOS is an example of single user OS.
SINGLE USER AND MULTITASKING OS

• Allows execution of more than one task or process concurrently. For this,
the processor time is divided amongst different tasks. This division of time is
also called time sharing. The processor switches rapidly between processes.
For example, the user can listen to music on the computer while writing an
article using word processor software. The user can switch between the
applications and also transfer data between them. Windows 95 and all later
versions of Windows are examples of multitasking OS.
MULTIUSER OS AND
MULTIPROCESSING OS
• multiuser OS Is used in computer networks that allow same data and applications
to be accessed by multiple users at the same time. The users can also communicate
with each other. Linux, UNIX, and Windows are examples of multiuser OS.
• Multiprocessing OS have two or more processors for a single running process.
Processing takes place in parallel and is also called parallel processing. Each
processor works on different parts of the same task, or, on two or more different
tasks. Since execution takes place in parallel, they are used for high speed execution,
and to increase the power of computer. Linux, UNIX and Windows are examples
of multiprocessing OS.
REAL TIME OS AND EMBEDDED OS

• Real Time OS are designed to respond to an event within a predetermined


time. These operating systems are used to control processes. Processing is
done within a time constraint. OS monitors the events that affect the
execution of process and respond accordingly. They are used to respond to
queries in areas like medical imaging system, industrial control systems etc.
• Embedded OS is embedded in a device in the ROM. They are specific to a
device and are less resource intensive. They are used in appliances like
microwaves, washing machines, traffic control systems etc.
FACTORS TO CONSIDER WHEN
CHOOSING AN OPERATING
• Hardware specifications of the computer
• Processor type and memory of the computer
• Ease of installation and use of the OS
• The cost of the OS against the budget
• The network and data security provided by OS
• Number of processors and users supported by the OS
• Available documentations
FUNCTIONS OF THE OPERATNG
SYSTEM
• Memory Management • Control over system performance
• Processor Management • user interface or command
• Device Management interpreter

• File Management • Error detecting aids


• Security • Coordination between other
software and users
MEMORY MANAGEMENT

• Memory management refers to management of Primary Memory or Main


Memory
• Main memory is a large array of words or bytes where each word or byte has
its own address.
• Main memory provides a fast storage that can be accessed directly by the
CPU. For a program to be executed, it must in the main memory.
MEMORY MANAGEMENT

An Operating System does the following activities for memory management:


• Keeps tracks of primary memory, i.e., what part of it are in use by whom, what part
are not in use.
• In multiprogramming, the OS decides which process will get memory when and
how much.
• Allocates the memory when a process requests it to do so.
• De-allocates the memory when a process no longer needs it or has been terminated.
PROCESSOR MANAGEMEN
• In multiprogramming environment, the OS decides which process gets the
processor when and for how much time. This function is called process
scheduling. An Operating System does the following activities for processor
management:
• Keeps tracks of processor and status of process. The program responsible for
this task is known as traffic controller.
• Allocates the processor (CPU) to a process.
• De-allocates processor when a process is no longer required.
DEVICE MANAGEMENT

An Operating System manages device communication via their respective


drivers. It does the following activities for device management.
• Keeps tracks of all devices. Program responsible for this task is known as the
I/O controller.
• Decides which process gets the device when and for how much time.
• Allocates the device in the efficient way.
• De-allocates devices.
FILE MANAGEMENT

A file system is normally organized into directories for easy navigation and usage.
These directories may contain files and other directions
An Operating System does the following activities for file management:
• Keeps track of information, location, uses, status etc. The collective facilities are
often known as file system.
• Decides who gets the resources.
• Allocates the resources.
• De-allocates the resources.
PROTECTION AND SECURITY

• Security mechanism prevents unauthorized access to the computer. Security concerns


include—security of software, security of data stored in the computer, and security of
physical resources of the computer.
• In a personal computer, security can be ensured using—(1) user accounts—individual
accounts for each user, (2) user authentication— using password protection, (3) access
rights—define rights for access of different kind of information for different people,
(4) data encryption—store data in computer in encrypted form, and (5) data backup—
storing data on a peripheral device other than the hard disk. In a networked
environment, only trusted computers should be able to share data. Some of the
common security threats occur due to hacking, viruses etc.
USER INTERFACE OR COMMAND
INTERPRETER
• Operating system provides an interface between the computer user and the
computer hardware. The user interface is a set of commands or a graphical user
interface via which the user interacts with the applications and the hardware.
• The primary goal of operating system is to make the computer convenient for use
by its user. It should allow users to easily access and communicate with the
applications and the hardware.
• The users can interact with the computer by using mainly two kinds of interfaces—
(1) Command Line Interface (CLI), and (2) Graphical User Interface (GUI).
COMMAND LINE INTERPRETER
• CLI requires the user to interact with operating system in the form of text keyed in
from the keyboard. In this, the user has to learn and remember the different
commands required for copying, deleting, opening a file or folder etc.
• Advantages a CLI
• Takes little memory space
• Does not require very fast processors.
• Operations are fast since command are entered using the keyboard.
• Many commands can be sent together as a batch file for repetitive tasks.
COMMAND LINE INTERPRETER
• Disadvantages of CLI
• Commands have to be learnt and memorized.
• It is not user friendly
• The interface may vary from one application to the other.
GRAPHICAL USER INTERFACE
• GUI use graphics to display the various commands. The interface consists of icons,
menus, windows, and pointers. The user need not learn the commands, instead, the
user can give instructions by moving the pointer on the screen using a mouse and
pressing the mouse button.
• Advantages of a GUI
• It is user friendly
• No need to type or memorize any command language
• The interface is similar for any application.
GRAPHICAL USER INTERFACE
• Disadvantages of a GUI
• Requires more memory
• Requires very fast processors.
• It is difficult to automate functions for expert users.
• Occupies more disk space to hold the files for all the different applications
BASIC COMPONENTS OF A GUI
• Pointer: A symbol that appears on the display screen and that you move to
select objects and commands.
• Pointing device: A device, such as a mouse or trackball, that enables you to
select objects on the display scree.
• Icons: Small pictures that represent commands, files, or windows. By
moving the pointer to the icon and pressing a mouse button, you can execute
a command or convert the icon into a window.
BASIC COMPONENTS OF A GUI

• Desktop: The area on the display screen where icons are grouped is often
referred to as the desktop because the icons are intended to represent real
objects on a real desktop.
• Menus: Most graphical user interfaces let you execute commands by
selecting a choice from a menu
Exercise 1

1. What is meant by the term computer software?


2. State the two categories of computer software
3. .Differentiate between systems software and application software giving an
example of each
4. What is an operating system as used in computer software?
5. Explain five functions of the operating system
6. Outline four devices controlled by the CPU
EXERCISE
7. .Explain how the operating system;
• Schedules processor jobs
• Manages memory
• Allocates resources
8. Mention any four categories of operating system
EXAMPLES OF OPERATING SYSTEMS

• Operating systems usually come pre-loaded on any computer you buy. Most
people use the operating system that comes with their computer, but it's possible
to upgrade or even change operating systems
• The three most common operating systems for personal computers are
Microsoft Windows, mac OS, and Linux.
• Modern operating systems use a graphical user interface, or GUI (pronounced
gooey). A GUI lets you use your mouse to click icons, buttons, and menus, and
everything is clearly displayed on the screen using a combination of graphics and
text.
MICROSOFT WINDOWS

• Microsoft created the Windows operating system in the mid-1980s. There


have been many different versions of Windows, but the most recent ones are
Windows 11, Windows 10 (released in 2015), Windows 8 (2012), Windows
7 (2009), and Windows Vista (2007). Windows comes pre-loaded on most
new PCs, which helps to make it the most popular operating system in the
world.
• Windows family of OS is GUI-based operating system. Since GUI interfaces
are easy to use and are user-friendly, these have become very popular.
MS-DOS

• MS-DOS was the first widely-installed operating system for PCs in 1980s.
• MS-DOS is easy to load and install. It neither requires much memory for the
operating system, nor a very powerful computer to run on.
• MS-DOS is a 16-bit OS, meaning thereby that it can send or receive 16 bits of data
at a time and can process 16 bits of data. It is not able to take the advantage of 32-
bit processors
• It is a single-user and single-tasking operating system for the PC. Only one user can
use it and only one task can be executed, at a given point of time. Also, it does not
have a built-in support for networking.
Linux OS

• Linux was developed by Linus Torvalds in 1992. Linux is copyright under the
GNU Public License. Linux is a “free” operating system that is easily
available. Since Linux follows the open development model, it is being
constantly upgraded by programmers across the globe
• Linux is a reliable and secure OS, and is available almost for free. So, Linux is
fast becoming very popular and powerful OS.
• Linux OS is easily available, such as Redhat Linux ver. 9, and, Debian’s—
Ubuntu, Kubuntu, and Edubuntu.
Mac OS

• Mac OS (previously called OS X) is a line of operating systems created by


Apple. It comes preloaded on all Macintosh computers, or Macs. Some of
the specific versions include Mojave (released in 2018), High Sierra (2017),
and Sierra (2016).
• According to Stat Counter Global Stats, mac OS users account for less than
10% of global operating systems—much lower than the percentage of
Windows users (more than 80%). One reason for this is that Apple
computers tend to be more expensive. However, many people do prefer the
look and feel of mac OS over Windows
UTILITY PROGRAMS
• Utility programs are special programs are used to enhance performance of
the computer system.
• They help to manage, maintain and control computer resources. These
programs include: File viewers, File compression utility, backup
utilities, antivirus, etc.
• Debuggers: helps to find out the error in computer program and fix it.
• Uninstall utility: It enables the user to remove an application program and
its associated attributes from the system.
COMMON UTILITY PROGRAMS

• Personal computers come loaded with utility programs designed to help


resolve issues and maintain optimum performance.
• These utilities are easily accessed through “Advanced Settings."
FUNCIONS OF UTILITY PROGRAMS

• Scan and fix computer viruses.


• Help in file back up.
• Compress files of disks.
• Partition disks into individual logical drives.
• Perform tasks on files (move files, delete files, etc)
• Diagnose computer problems.
UTILITY PROGRAMS (DATA BACK UP)

• Backing up data is the process of creating copies of your data and keeping
them in a separate and secure place.
• Back up software
• This is a software designed to duplicate important data in the event of a hard
drive failure, user error, disaster or accident. Backup software help to back up
your data automatically.
REASONS FOR BACKING UP DATA

• In case your laptop or personal computer gets lost or stolen


• In case of hard disk failure. Hard disks do break down from time to time.
The hard disk is where data is stored permanently on the computer system.
• We back up data due to virus attacks. Without backup files, you may never
see that information again.
• Electrical power failures
WAYS TO ENSURE EFFICIENT BACK UP
OF DATA
• Making regular backups
• Backing up work on removable storage (secondary) media
• Keeping backup media in a different location from that of the computer
• Setting up of automatic backup intervals
UTILITY PROGRAMS (HARDWARE
DIAGNOSTICS AND DISK PARTITIONS)
• Hardware diagnostics: Under the Device Manager you can see hardware
that is working improperly, because it will have a warning icon next to it.
Right-click that device and choose to troubleshoot. This will bring up the
device troubleshooting utility that will often try to update the driver or fix an
existing driver.
• Disk partitions Divides an individual drive into multiple logical drives.
UTILITY PROGRAMS (SYSTEM
RESTORE)
• System Restore" resets the computer to an earlier setup. For example, let's
say a computer begins functioning poorly after a new software program is
installed, and the problem persists even after removing the program. "System
Restore" sets the machine to a state prior to the installation of the program,
often solving the issue.
UTILITY PROGRAMS (DISC
DEFRAGMENTER AND SCHEDULED TASKS)
• Disc Defragmenter", also called "defrag," enhances computer performance
by consolidating file fragments. "defrag" makes the process faster.
• "Scheduled Tasks" accesses a wizard, setting selected programs to run
automatically at a chosen time and frequency. For example, if a software
program backs up files, the Schedule Tasks function can schedule that
program to run daily at 3 a.m.
MORE UTILITY PROGRAMS
EXPLAINED
• Disk space analyzers: To get the size for each folder/sub folders and files
in folder or drive. Showing the distribution of the used space.
• Sorting utility: For organizing files and folders on a storage media.
• Data Recovery: Enables the user to get back all the data that might have
been deleted or lost by a virus from the computer.
MORE UTILITY PROGRAMS
EXPLAINED
• Debuggers: helps to find out the error in computer program and fix it.
• Uninstall utility: It enables the user to remove an application program and
its associated attributes from the system.
• Registry cleaners: Clean and optimize the Windows registry by removing
old registry keys that are no longer in use.
• System monitors: For monitoring resources and performance in a
computer system.
MORE UTILITY PROGRAMS
EXPLAINED
• Disk storage utilities: Ensures that data is stored and files arranged in
order of ascending. It also helps the computer to re-arrange data files.
• System Profilers: Provide detailed information about the software installed
and hardware attached to the computer
THE DIFFERENCE BETWEEN UTILITY
SOFTWARE AND OPERATING SYSTEM
APPLICATION SOFTWARE
• These are programs designed to meet user-specific needs.
• The primary function of application software is to apply the computer to
users solve problems and accomplish specific tasks.
• Application software, such as word processing, spreadsheets, e-mail,
database, and Web browser, can help you perform tasks such as creating
documents, analyzing finances, sending messages, organizing data, and
viewing pages on the World Wide Web respectively.
CLASSIFICATION OF APPLICATION
SOFTWARE
• Application software can be classified into 2, that is Off-the shelf software and
Custom written/Bespoke/In-house developed software.
• 1.Off-the shelf software
• This is software designed and packaged for sale. A user will find it readily available
in shops for sale.
• Off-the -shelf is further subdivided into 2:-
I. General purpose software
II. Special purpose software.
GENERAL PURPOSE APPLICATION
SOFTWARE
• General purpose application software is a type of software that can be used
for a variety of tasks.
• It is not limited to one particular function. For example a word processor
could be classed as general purpose software as it would allow a user to write
a novel, create a restaurant menu or even make a poster.
SPECIAL PURPOSE APPLICATION
SOFTWARE
• Special purpose application software is a type of software created to execute
one specific task.
• For example a camera application on your phone will only allow you to take
and share pictures.
• Another example would be a chess game, it would only allow you to play
chess, web browsers, calculators, media players, calendar programs etc.
ADVANTAGES /REASONS OF USING
OFF-THE-SHELF SOFTWARE
• It is relatively cheap, especially when compared to custom written software
• It is easily available from most computer shops and on their websites
• It will have been thoroughly tested so there won’t be any serious problem or
bugs
• There is lots of user support i.e. books, user guides, online help and
discussion forums on the internet
BESPOKE/CUSTOMIZED APPLICATION
SOFTWARE
• Bespoke application software is tailor made for a specific user and purpose.
For example a factory may require software to run a robot to make cars,
however, it is the only factory making that car in the world, so the software
required would have to be specially build for the task.
• Other examples might include software for hospitals and medical equipment,
software being written inside banks and other financial institutions.
ADVANTAGES CUSTOMIZED
/BESPOKE APPLICATION SOFTWARE
• The company will get the exact software they need.
• The software will work exactly how they want it to work.
• The software will only have the features that they specifically need in their
business.
DISADVANTAGES OF CUSTOMIZED/BESPOKE
APPLICATION SOFTWARE INCLUDE;

• It costs a lot of money to develop such a software


• It may take some time to develop the software, when off-the-shelf software
could be brought straight away
• The company may need to develop a team of people such as business
analysts, programmers, testers etc.
• Unlike off-the-shelf software, there is unlikely to be any internet forums or
websites to help users. For example popular spreadsheet applications have
dozens of online help sites run by users and professionals
DIFFERENCE BETWEEN SYSTEM SOFTWARE AND
APPLICATION
SOME TERMINOLOGIES USED IN
COMPUTER SOFTWARE:
FIRMWARE
• Is a software program or set of instructions programmed on a hardware
device. It provides instructions on how that device should operate.
• Unlike normal software, firmware cannot be changed or deleted by an end-
user without the aid of special programs and remains on that device
regardless if it's on or off.
SOME TERMINOLOGIES USED IN
COMPUTER SOFTWARE:
• SOFTWARE LICENSE
• A software license is a legal instrument that governs how the software can be used
and distributed. When you download or install software, you are asked to agree to
the terms of a license before you proceed with the installation.
• A license does not mean you have to pay for the software because even free
software is licensed.
• SOFTWARE COPYRIGHT
• It is a law used by proprietary (commercial) software companies to prevent the
unauthorized copying of their software.
SOFTWARE PIRACY
• This is the act of illegally using, copying or distributing software without
ownership or legal rights.
TYPES OF SOFTWARE PIRACY
INCLUDE:
• Soft lifting: Borrowing and installing a copy of a software application from
a colleague.
• Client-server overuse: Installing more copies of the software than you have
licenses for.
• Hard-disk loading: Installing and selling unauthorized copies of software
on refurbished or new computers.
TYPES OF SOFTWARE PIRACY
INCLUDE:

• Counterfeiting: Duplicating and selling copyrighted programs.


• Online piracy: Typically involves downloading illegal software from peer-to-
peer network, Internet auction or blog.
PACKAGED SOFTWARE:
• Is commercial software, which is copyrighted and designed to meet the needs
of a wide variety of users.
SOFTWARE SUITES
• A software suite, also known as application suite or productivity suite, is a
software package that has several applications that work well together
because they have related functions, features and user interfaces, and
are able to interact with each other.
• Business applications often come in suites, e.g. Microsoft Office,
OpenOffice.org, and iWork, which bundle together a word processor
application, a spreadsheet application, presentation graphics, database and e-
mail applications, etc.
ADVANTAGES OF SOFTWARE SUITES

• It is easy to transfer data from one component of the application to another.


• An integrated software takes up less disk space than individual packages.
• The user can move faster from one application to the next.
• It is usually easier to learn how to use the applications in a software suite
because the user interface for choosing commands is similar for all
applications.
ADVANTAGES OF SOFTWARE SUITES

• A software suite tends to be more powerful and versatile than individual


applications.
• A software suite is less likely to crash and contains fewer errors (bugs), since
it has been widely tried and tested.
• The producers of software suites often offer after-sales services (e.g. online
help facilities); users can also get support from user groups and magazines.
SOFTWARE ACQUISITION
• Computer software can be acquired in three main ways:-freeware, shareware, and commercial
software
• Freeware: this refers to free software but with copyright restrictions. (does not require any payment
from the user.)
a) Public domain software : This is free software with no restrictions.
• Shareware: It refers to a type of software that is given to the users to use freely for a certain
period(trial), but when that period ends a user must pay in order to continue using the software.
• Commercial software: Refers to software that requires payment before it can be used.
Commercial software programs typically come in a physical box, which is what you see displayed
in retail stores, while others are available as downloads over the Internet.
OPEN SOURCE SOFTWARE
• Open source software is:
• Software provided for use, modification and redistribution.
• Software that any programmer can download from the Internet for free and modify
with suggested improvements. The only qualification is that changes can't be
copyrighted,
• Why is it popular? Because any programmer can make improvements which can
result in better quality software.
• Examples: Linux
ADVANTAGES OF OPEN SOURCE
SOFTWARE
• The source codes are available to users and they have the rights to modify them.
This will allow improvements to the software without having to invest large sum of
money in research and development.
• The modified and improved source codes can be freely redistributed.
• The open source software is created according to industry demands but allows for
upgrades to take place freely when the need arises. Therefore, if bugs in the codes
are found, they can be fixed by anyone interested and capable.
• The software can be used in any way and for any legal purposes. There is no
restriction in a unilateral way on how the software could be used.
DISADVANTAGES OF OPEN SOURCE
SOFTWARE
• The codes are too complicated for beginner to understand.
• There is no particular official monitoring the works of a programmer
improving the codes. This is because anyone is free to use, modify or even
distribute the codes.
• Since nobody in particular is responsible for the codes, there is no exact
knowledge and assurance on when the codes are going to be fixed if there a
bugs in it. Thus, users will have to use the problematic software until
someone rectifies the problem.
PROPRIETARY SOFTWARE
• Proprietary software is also called closed source software. The closed source
software or proprietary software offers a stable system with support if the
software fails or malfunctions.
ADVANTAGES OF USING PROPRIETARY
SOFTWARE
• The software offers a stable system support if it fails or malfunction.
• The software is safe and guaranteed to be safe from dubious threats like
programming bugs and viruses thus providing ease of mind for the user.
• The software is easier to install and used as the production is planned and
extensive research is carried out to ensure users purchase only the best.
• Furthermore, free updates and latest information on the software are usually
provided to the user.
DISADVANTAGES OF USING
PROPRIETARY SOFTWARE
• Users need to spend a long time downloading and installing security patches
to fix bugs announced by the manufacturer.
• Any improvements would usually require a cost, which is often expensive.
• Customizing the software is impossible because when users buy proprietary
software, they will not receive the code as the code is the manufacturer’s
trade secret.
FACTORS TO CONSIDER BEFORE
BUYING A COMPUTER PROGRAM
• Cost of software against buyer’s budget.
• Usability of the program.
• Requirements of available hardware.
• Type of program needed.
• Needs of the organization.
FACTORS TO CONSIDER BEFORE
BUYING A COMPUTER PROGRAM
• Personnel to use the program.
• Functionalities of the program.
• Free from computer bugs.
• Software support and call centers.
• Type and quality of software developer.
PROGRAMMING LANGUAGES
• A programming language is a vocabulary and set of grammatical rules for
instructing a computer to perform specific tasks. This is usually categorized
into low-level(Assembler and machine) and high level (e.g. FORTRAN, C
and PASCAL)languages
LOW-LEVEL LANGUAGES

• Low-level languages are designed to operate and handle the entire hardware
and instructions set architecture of a computer directly.
• Programs and applications written in low-level language are directly
executable on the computing hardware without any interpretation or
translation. For example; developing new operating systems.
• Machine language is a collection of binary digits or bits that the computer
reads and interprets.
LOW-LEVEL LANGUAGES

• Assembly language implements a symbolic representation of the machine


code needed to program a given CPU architecture.
• Assembly-level language − This language introduces a layer of abstraction
by defining mnemonics. Mnemonics are English like words or symbols
used to denote a long string of 0s and 1s. For example, the word “READ”
can be defined to mean that computer has to retrieve data from the memory.
The complete instruction will also tell the memory address. Assembly level
language is machine dependent.
HIGH-LEVEL LANGUAGE
• High level language − This language uses English like statements and is
completely independent of machines. Programs written using high level
languages are easy to create, read and understand.
• Program written in high level programming languages like Java, C++, etc. is
called source code. Set of instructions in machine readable form is called
object code or machine code. System software that converts source code
to object code is called language processor.
HIGH-LEVEL LANGUAGE
• There are three types of language interpreters:
1. Assembler − Converts assembly level program into machine level
program.
2. Interpreter − Converts high level programs into machine level program
line by line.
3. Compiler − Converts high level programs into machine level programs at
one go rather than line by line.
CONCLUSION
• There two types of computer software namely, system software and
application software. System software is made up of the operating system,
utility programs and programming languages. The application software sits
on top of the system software .
• The programming languages are used to create software
ASSIGNMENT
1. State five examples of application software and their respective uses
2. List the two major categories of application programs
3. Differentiate between single-purpose and general-purpose applications
4. State the difference between in-house and off-shelf application programs. Use examples.
5. What is meant by the term user interface?
6. Outline the two major categories of user interfaces provided by modern Operating system
7. State the similarities and difference between menu-driven and graphical user interfaces
8. What is the difference between CLI and GUI
ASSIGNMENT
9. State five advantages of GUI over CLI
10. Explain any five features users interact with while using computers
11. What are utility programs?
12. State five categories of utility programs giving an example in each
13. What are the five functions of utility programs?
ASSIGNMENT
Explain the following terms as used in computer software
a) Proprietary software
b) Open source software
c) Freeware
d) Shareware
e) Public domain software

You might also like