Вы находитесь на странице: 1из 32

Software Categories

Lecturer:
ZULIARTY ZARINA ABDUL
MUBI

Learning Objectives
Understands and can describe system
software
List and give example for application
software
List and give example for software utility
Can explain briefly the generation of
programming language

Term we used
Computer
- is a machine for manipulating data
according to a list of instructions.
- an ELECTRIC DEVICE that STORES,
RETRIVES, and PROCESSES data,
and can be PROGRAMMED with
instructions.

A computer is composed of HARDWARE


and SOFTWARE, and can exist in a
variety of sizes and configurations.
Hardware
is the physical part of a computer.

Term we used
Software
consists of the programs,
documentation and operating
procedures by which computers can
be made useful
- series of instructions that tells the
hardware how to perform tasks.
Program - is a collection of instructions
that describe a task, or set of tasks, to
be carried out by a computer.

The Components of a Computer


Input devices any hardware that
allows a user to enter data and
instructions into computer
Output devices any hardware that
can convey information to user

System unit box-like case that protects


the internal electronic components of the
computer from damage. (motherboard +
CPU + memory)
Storage devices holds data, instructions
and information for future use.

System Software

Consists of program that control or


maintain the operations of the computer
& its services
Serves as the interface between user,
application software & computers
hardware
Two types of system software
1.
2.

Operating System
Utility Program

Operating System
Set of programs that coordinates all the
activities among computer hardware
devices
Contain instruction that allow user to run
application software
Function:
Starting a computer
Hard reboot a.k.a. cold reboot (turned off and then
on)
When open the PC

Soft reboot a.k.a. warm reboot (under software


control)
Example: CD driver

Random reboot non-technical term (undesired)

Operating System
Recovering disk use when cannot
boot from hard disk
Provide user interface
Command line
Menu driven
GUI

Managing program
Single user / single tasking
Single user / multitasking

Scheduling jobs the order in which job


are processed

Utility Program
Is a type of software that allow user to
perform maintenance type task, related to
managing a computer, devices or program

Utility Program Examples


Utility
File Manager

Function

Perform function related to file & disk management


E.g. formatting, copying, check amount of free space

Uninstaller

Removes a program in system file

Disk scanner

Detect & correct both physical & logical problems on hard


disk

Disk defragmenter

Reorganized the file & unused space

Backup utility

Copy/back-up selected files

Virus scanners

scan for computer viruses among files and folders

Compression

output a shorter stream or a smaller file when provided


with a stream or file

Encryption

use a specific algorithm to produce an encrypted stream


or encrypted file when provided with a key and a plaintext

System Development Software (Tools)


Software used by programmers to develop
program or write instruction
direct the computer to process data into
information
E.g.

Application Software
Application software is a program that
functions and is operated by means of a
computer, with the purpose of supporting
or improving the software user's work.
Applications software also called enduser programs.
Typical examples of 'software
applications' are word processors,
spreadsheets, media players and
database applications.

Application Software
Consists of program that perform specific
tasks for user
Application

Specific Task

Microsoft Word, EZ Word, Lyx

Word processing

Microsoft Excell, KSpread,


Gnumeric

Spreadsheet

SQL, DBMS, DB2, Oracle, dBase Database


Web Browser, Media Player

Digitally Publish Media

Microsoft Publisher, Scribus

Desktop Publishing

Microsoft Power Point, Keynote

Presentation

End-User Software
Software that meet user requirements and
purposely run specific function
E.g

Computer Language

Programming Language Generations

1st Generation: Machine


Language
Numeric instructions and addresses
Machine-dependant programming
E.g. The following example adds the values at the
memory addresses 6C and 6D and places the sum
in memory at address 6E. Memory addresses and
instruction codes are written as hexadecimal
numbers
156C
166D
5056
306E
C000

Hexadecimal

Decimal

Octal

Binary

10

12

1010

11

13

1011

12

14

1100

13

15

1101

4D

77

115

1001101

32

50

62

110010

2nd Generation: Assembly


Language

Symbolic instructions and addresses


Translation of program with an assembler
Machine-dependant programming.
Typical languages: IBM BAL, VAX Macro.

E.g. The previous example will become:


LD R5, PRICE
LD R6, TAX
ADDI R0, R5 R6
ST R0, TOTAL
HLT

3rd Generation: High Level Language

Problem-oriented languages
Translation with compilers or interpreters
Structured programming
Database management systems
Typical languages: COBOL, FORTRAN,
Pascal, Ada, C, BASIC, PL/I.

E.g. Our example could look like:


$ SET SOURCEFORMAT"FREE
IDENTIFICATION DIVISION.
PROGRAM-ID. ShortestProgram.
PROCEDURE DIVISION.
DisplayPrompt.
DISPLAY "I did it".
STOP RUN.

4th Generation: Customized


software packages
non-procedural languages, integrated
data dictionaries
Dynamic relational databases: makes
possible rapid system development
and prototyping.
Typical languages: FOCUS,
Powerhouse
E.g. spreadsheet systems, database
systems, graphics packages and
powerful word processors.

E.g.
access admissions
set report device printer
set report device disc
set report name AD32
select if term = "961" and (app-status="AC" or app-status="PP")
sort on ad-source on name
report id name ad-source class hs-code entrance-code app-status
footing at ad-source skip 2 "Total for: " ad-source "=" count skip 3
final footing "Total enrollment " count
set report nolimit
go

5th Generation: Declarative


programming languages
Allow the computer user to solve a
problem by concentrating on the
problem's characteristics rather than
on how the problem is to be solved.
i.e. our task is merely to describe the
problem while the machine tackles
the issues of its solution.
This kind of programming languages
is used in the fields of artificial
intelligence, fuzzy logic and neural
networks.

Programming Paradigms
1. Imperative

A program is a sequence of
commands which manipulate data in
order to produce the desired result.

2. Declarative

The system tries to provide a general


problem solving algorithm
The system emphasizes the question
"What is the problem?" rather than
"What procedure is required to solve
the problem?".

3. Functional

Is a subset of declarative programming.


Input is given, output is required,
transformation has to be found.

4. Object-Oriented

Units of data are viewed as active


"objects" rather than the passive units
envisioned by the traditional imperative
paradigm.
A program consists of autonomous
objects that interact with each other.

Exercises
1) Find another five(5) types of system
software.
2) Find another five(5) types of
application software
3) List the differentiate between system
software and application software.
4) List the programming language
generation and give the examples.
5) Give examples of category
"Programming paradigms.

Вам также может понравиться