[go: up one dir, main page]

0% found this document useful (0 votes)
17 views28 pages

Lecture 1 Concept of Computer Software

Uploaded by

atlevertpro262
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)
17 views28 pages

Lecture 1 Concept of Computer Software

Uploaded by

atlevertpro262
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/ 28

Who is a programmer?

A programmer, also known as a software developer or


coder, is a person who writes, tests, and maintains the
code that enables software applications and systems to
function. Programmers use programming languages like
Python, Java, C++, JavaScript, or others to create
software, automate tasks, or solve problems.
Key Roles and Responsibilities

• Writing Code: Translating requirements and designs into functional code.


• Debugging: Identifying and fixing errors in existing code.
• Testing: Ensuring the software works as intended through unit, integration,
and performance testing.
• Collaboration: Working with designers, analysts, and other developers to
create seamless applications.
• Maintenance: Updating and improving existing software to fix bugs or add
new features.
• Problem Solving: Analyzing problems and coming up with efficient, logical
solutions.
Types of Programmers

• Frontend Developers: Specialize in user interface design and interaction (e.g.,


HTML, CSS, JavaScript).
• Backend Developers: Focus on server-side logic, databases, and application
functionality (e.g., Python, Java, Ruby).
• Full-Stack Developers: Work on both frontend and backend components.
• Mobile App Developers: Create applications for mobile devices using languages
like Swift (iOS) or Kotlin (Android).
• Data Scientists/Engineers: Use programming for analyzing and processing data
(e.g., Python, R, SQL).
• Game Developers: Design and program video games (e.g., Unity, Unreal Engine).
• Programmers are critical in the modern digital age, as they create the software
and systems that power everything from smartphones to websites to industrial
automation.
Computer Software Definition
❖Computer software normally referred to as software is a set
of instructions and its associated documentations that tells a
computer what to do or how to perform a task.
❖Computer software, or simply software, is a collection of
data or computer instructions that tell the computer how to
work.
❖It is a collection of computer programs and related data that
provide instructions to the computer hardware.

4
Categories of computer software
Computer software is categorized into two;
❖System software
❖Application software

5
System software

❖System software is software designed to provide a platform


for other software.
❖System software is software on a computer that is designed
to control and work with computer hardware.
❖These are programs that enable the computer to function,
improve its performance and access the functionality of the
hardware.

6
Categories of system software
System software is divided into;
❖Operating system
❖Utility programs
❖Programming languages

7
Operating systems

❖Is a software program that enables the computer hardware


to communicate and operate with the computer software.
❖An operating system, or OS is software that communicates
with the hardware and allows other programs to run.
❖It coordinates the operations of all hardware and software.

8
Examples of Operating Systems

❖Microsoft windows (this has been an upgrade windows


❖from windows 95, windows 98, windows 2000 Professional, XP
❖Professional, windows 7,&windows 8 , windows10, windows vista)
❖MS DOS(Microsoft Disk Operating system)
❖Android – for mobile phones
❖MacOS (Macintosh Operating system ) – a product of Apple.
❖Chrome OS
❖BlackBerry Tablet OS
❖Windows Server
❖ Linux
❖ FreeBSD etc
9
Functions of Operating systems
Resource management
Data management
Manages the boot system
Memory management
Monitors system performance
Administering system security.
Provides an interface between computer
hardware and the user.

10
UTILITY PROGRAMS

❖Utility software is system software designed to help to analyze,


configure, optimize or maintain a computer. It is used to support the
computer infrastructure.
❖These are software programs that add functionality to your computer
or help the computer to perform better.

11
Example of Utility Programs
• These are categorized into System utilities, Storage device
management utilities, and File management utilities they include but
not limited to;
❖Anti-virus utilities scan for computer viruses and block or remove
them.
❖System monitors monitor resources and performance in a computer
system.
❖System profiles provide detailed information about installed
software and hardware.
❖Clipboard managers expand the clipboard functionality of an
operating system.

12
❖Computer access control software grants or denies requests for access to
system resources.
❖Debuggers typically permit the examination and modification of data and
program instructions in memory and on disk.
❖Diagnostic programs determine and report the operational status of
computer hardware and software. Memory testers are one example.
❖Network utilities analyze the computer's network connectivity, configure
network settings, check data transfer or log events.
❖Package managers are used to configure, install or keep up to date other
software on a computer.
❖Registry cleaners clean and optimize the Windows Registry by removing
old registry keys that are no longer in use.

13
PROGRAMMING LANGUAGES

These are languages designed to communicate instructions to a


computer.
These are languages in which instructions are written for a computer
to perform different tasks.
They are used to create programs that control the behavior of a
machine

14
EXAMPLES OF PROGRAMMING LANGUAGES

❖Java
❖Python
❖C#
❖C++
❖BASIC
❖COBOL
❖FORTRAN(Formula Transition)
❖Pascal etc

15
Categories of Programming Languages
The two basic categories of programming languages include;
a) Low level languages.
b) High level languages.

16
LOW LEVEL LANGUAGES
• These are languages that are only understood by the
machine(computer)
They include;
1) Machine languages(codes).
The are languages written in binary form(0`s &1`s) in a computer.

17
LOW LEVEL LANGUAGES
2) Assembler languages:
These are languages which consist of mnemonic symbols(English like
words) that represent the binary digits of zeros and ones of machine
language.
• Assembler languages are used to develop operating system software.

18
HIGH LEVEL LANGUAGES
• These are languages that consist of statements or sequences
of text including words, numbers and punctuations. They are
used in developing application software.

19
EXAMPLES OF HIGH LEVEL LANGUAGES
❖BASIC(Beginners All Purposes Symbolic
❖Instruction Code)
❖COBOL(Common Business Language)
❖FORTRAN(Formula Transition)
❖Pascal
❖Python
❖Java
❖C
❖C++
❖C#

20
APPLICATION SOFTWARE
❖Application software is software designed to perform a group of
coordinated functions, tasks, or activities for the benefit of the user.
❖These are programs which are designed to accomplish/perform
specific tasks .
Application software is categorized into;
❖Special purpose/ tailored/ customized software.
❖General purpose/packaged/ off the shelf Software.

21
Special purpose/ tailored/ customized
❖It is a type of software created to execute/perform one specific task.
Examples special purpose/ tailored/ customized software
❖A game e.g. chess ,cards
❖Web browser. E.g. Mozilla fire fox, operamin
❖Media player. E.g. VLC, windows media player
❖Calculators.
❖Accounting software e.g. pastel, quick books,
❖Inventory
❖Calendar
22
General purpose/packaged/ off the shelf Software.

• This is a software which can perform or be used for a wide


variety of purposes. It is not limited to one particular task or
function.

23
Examples of General purpose/packaged/off the shelf
Software.
• Word processors. For Reports ,memos, letters or other word
document.
• Electronic spreadsheets. For Calculations, charts, tabulation.
• Electronic presentation software. For presentations, picture
organisation .
• Database applications. For data tabulation, reports, queries.
• Desktop publishing software. For Leaflets , business cards, brochures
,calendars, certificates
• Web design software.
• Graphics software etc
24
Mention ways how you can acquire a software.

• Direct purchase
• Borrowing
• Downloading
• Hiring
• Donation
• Designing

25
Factors one should consider before purchasing a software.

❖Cost
❖Size of the software
❖Compatibility of the software
❖Purpose
❖Functionality
❖Source

26
Software can be developed for a variety of purposes, the three most
common being;
• to meet specific needs of a specific client/business (the case with
custom software)
• to meet a perceived need of some set of potential users (the case
with commercial and open source software),
• for personal use (e.g. a scientist may write software to automate a
mundane/routine task).

27
• Embedded software development, that is, the development of
embedded software, such as used for controlling consumer products,
requires the development process to be integrated with the
development of the controlled physical product.
• The need for better quality control of the software development
process has given rise to the discipline of software engineering, which
aims to apply the systematic approach
• System software underlies applications and the programming process
itself, and is often developed separately.

28

You might also like