Chapter3 Software Final.pptx
Chapter3 Software Final.pptx
BASIC SOFTWARE
1
Learning Objectives
5
Software
• The term Software is used to refer to the computer
programs, which is a set of instructions that tells the
computer what to do.
• It is a broad term for organized collections of data
and instructions that are used by a computer.
• Computer software is non-tangible, contrasted
with computer hardware.
• Computer software includes computer
programs, libraries and their associated
documentation.
• The word software is also sometimes used in a
narrower sense, meaning application only.
6
Software
• Tells the computer what to do and how to do it
– Software manages both the input (what
information is provided by the user, like typing on a
keyboard or using a mouse)
– and the output (like what’s displayed on the
screen).
– Software can take many forms, from Microsoft
Office (for tasks like writing documents or creating
spreadsheets) to the Operating System (like
Windows or macOS, which controls the entire
computer), computer games, and antivirus
software.
7
How Does Software Work?
• Software works by giving specific instructions to
the computer’s hardware.
• The software is written in programming languages
(such as Python, Java, or C++) including low-level
assembly language, which is a human-readable
version of machine language.
• and these instructions tell the computer how to
perform certain tasks.
• For example, when you use Microsoft Word to
type a letter, the software tells the computer to
display the letters on the screen as you type, save
the document, print it, or format the text.
8
How Does Software Work?
• Here’s a step-by-step explanation of how users perform tasks using system
and application software:
• User Interaction:
The user starts the process by using devices like a keyboard, mouse, or
touchscreen to give input to the computer.
• Application Software:
The user’s input is received by application software (like word processors
or games), which processes the input to perform specific tasks.
• Operating System (System Software):
The operating system (OS) helps the application software by managing
the hardware. It translates the application's requests into commands that
the hardware understands.
• Hardware:
The hardware (such as the CPU, memory, and storage) carries out the
instructions from the OS, performing actions like calculations, data
storage, and controlling the screen or speakers.
• In this flow, the user interacts with applications, which communicate with
the operating system. The OS, in turn, instructs the hardware to perform
the required actions. Each of these steps involves complex operations that
work together seamlessly to achieve the desired output.
9
Necessity of Software
10
Necessity of Software
Provides User-Friendly Interfaces: Software offers intuitive
interfaces, making it easier for users to interact with devices
without needing technical expertise.
Encourages Innovation and Collaboration: Software tools
promote creativity and teamwork, enabling people to
collaborate on projects regardless of their location.
Boosts Efficiency and Productivity: By automating repetitive
tasks, software helps users focus on more important work,
improving overall productivity.
Reduces Human Errors: Software minimizes mistakes by
automating tasks with precision, ensuring consistent and
accurate results.
11
Necessity of Software
Supports Communication: Software facilitates communication across
platforms, whether through email, social media, or video
conferencing, making it easier for people to stay connected and
collaborate.
Enhances Entertainment: From video games to streaming services,
software provides endless entertainment options for users, enhancing
leisure and relaxation.
Improves Information Access: Software provides access to vast
amounts of information on the internet, making research, learning,
and knowledge-sharing more accessible.
Assists in Business and Finance: Software is critical for managing
finances, bookkeeping, and business operations through tools like
accounting programs and point-of-sale systems, making businesses
run more efficiently. 12
Necessity of Software
Supports Education: Educational software provides
interactive tools for students and teachers in both
classrooms and online, improving the learning experience.
Advances Healthcare: Medical software manages patient
records, helps with diagnosis, and supports treatment
planning, playing a vital role in healthcare.
Provides Security: Software protects data and systems from
cyber threats through antivirus programs, firewalls, and
encryption.
Reduces Human Errors: By automating tasks, software
minimizes human mistakes and ensures accurate results in
areas like data analysis and business operations.
13
Necessity of Software
Business Benefits:
I. Cuts Costs by Automating Routine Tasks: Businesses can
reduce labor costs by automating repetitive tasks, freeing
employees to focus on more complex work.
II. Improves Customer Service: Customer service software
allows companies to respond quickly and efficiently to
inquiries, improving the customer experience.
III. Increases Employee Efficiency: Business software helps
employees perform their tasks more effectively, streamlining
workflows and enhancing productivity.
IV. Enables Electronic Communication and Collaboration:
Software facilitates seamless communication and
collaboration with suppliers, partners, and employees,
regardless of location, improving business operations and
partnerships.
14
15
TYPES OF SOFTWARE
16
Types of Software
Software
System Application
Software. Software.
17
Types of Software and relations among them
18
SYSTEM SOFTWARE
❑ Discussion on system software and their usages (Operating system,
some tasks performed by the operating system, other system utility
software like, antivirus, disk cleaner, disk error checker, disk
defragmenter etc.)
19
System Software
• System software is essential for managing and controlling computer hardware, forming
the foundation that allows application software to run. It ensures smooth communication
between hardware and software, enabling the user to interact with the computer without
needing to understand its internal workings.
• For instance, system software includes device drivers that allow hardware, like printers or
keyboards, to function. Once the correct driver is installed, users can easily use the
hardware without knowing how it works.
• The key purposes of system software are:
I. To provide basic functionality to the computer,
II. To manage and control hardware,
III. To serve as an interface between the user, application software, and hardware.
20
Usages of System Software
Basic Functionality: Makes the computer work by managing its main functions.
Hardware Control: Manages devices like printers and keyboards using device drivers.
User Interface: Connects the user and application software to the computer hardware.
Device Management: Controls devices without the user needing to know how they
work.
Resource Management: Allocates memory and processing power to run applications
smoothly.
Application Development: Provides tools like compilers and loaders for creating
software.
System Utilities: Includes tools like file managers and antivirus programs for maintaining
the system.
21
Types of System Software
22
Operating System (OS)
23
The key functions of OS
24
Main Parts of Operating System
• The Kernel
• Device Drivers
• User Interface
• System Utilities
25
Kernel
28
User Interface (UI)
• The user interface (UI) is the point of interaction between humans and
computers. It includes elements like display screens, keyboards, a
mouse, and the graphical layout of a desktop or application.
• Functions:
– Facilitates user interaction with applications and websites.
– Includes navigation elements (buttons, icons, menus, forms).
• Types of User Interfaces:
– Graphical User Interfaces (GUIs): Visual elements (windows, icons).
– Command-Line Interfaces (CLIs): Text-based commands.
– Touch Interfaces: Interactions through gestures (tapping, swiping).
– Voice User Interfaces (VUIs): Interaction via spoken commands.
– Natural User Interfaces (NUIs): Intuitive interactions based on natural
behaviors (gesture recognition).
• Importance:
– Enhances usability and accessibility.
– Ensures efficient and enjoyable user experience (UX).
29
Utility Software
• System utility software is required for the maintenance of computer.
• System utilities are used for supporting and enhancing the programs and the data in computer. Some
system utilities may come embedded with OS and others may be added later on.
• Some examples of system utilities are:
• Anti-virus utility to scan computer for viruses .
• Data Compression utility to compress the files.
• Cryptographic utility to encrypt and decrypt files.
• Disk Compression utility to compress contents of a disk for increasing the capacity of a disk.
• Disk Partitioning to divide a single drive into multiple logical drives. Each drive is then treated as an
individual drive and has its own file system.
• Backup Utility to make a copy of all information stored on the disk. It also restoresthe backed up
contents in case of disk failure.
• System Profiling Utility provides detailed information about the software installed onthe computer and
the hardware attached to it.
• Network Managers to check the computer network and to log events.
30
What are Viruses?
Viruses:
⚫ A computer virus is a program designed to harm or
cause harm on an infected computer.
⚫ Its spreads through e-mail attachments, portable
devices, websites containing malicious scripts and
file downloads.
⚫ A computer virus attaches itself to the host files
and always activate whenever you open the
infected files.
31
A virus can run as an
application, therefore it can -
• Remotely access a computer, giving anyone complete control of the
machine.
• Run as a background process, using internet connection to send
private data anywhere, anytime.
• Delete files, run programs, edit registry and steal information.
• Corrupt Windows files to make a machine become unusable, causing it
to crash and turn off at any time.
• Key log information such as passwords, usernames and credit card
details.
32
The Symptoms Of An Infected Computer
34
Sources of Viruses
Common source of infection is by visiting a website. For example,
many password trading websites and WAREZ sites contain
viruses. By simply visiting the site with a vulnerable browser, you
may be infected by a virus.
35
Antivirus
• Cleaning up your disk is one of the best ways to improve your computer’s performance.
• Disk Cleanup Tool is a Microsoft utility that you can use to clean up all sorts of temporary
files, including internet downloads, web browser cache, temporary Internet files, and
much more.
• The Disk Cleanup Tool lets you choose specific types of files to be deleted or removed.
• You can also specify which hard drive to clean up or how much space to free up.
• Example: Microsoft Disk Cleanup, Cleaner
37
Disk Defragmenter
• It organizes the individual files, resulting in
improved hard drive speed.
• Unused space is freed.
• Any unused space on a hard drive can be
maximized by defragmentation.
• Sometimes, it can also create more usable space
if bits of data are left over from deleted files.
• Example: Windows' Built-In Disk Defragmenter
is a software that enables you to increase data
access speed by rearranging files stored on PC.
38
PROGRAMMING LANGUAGES
39
What Is a Language ?
● Language is a systematic means of
communicating ideas or feelings by the
use of conventionalized signs, sounds,
gestures, or marks having understood
meanings
● We communicate with others to get the
response or feedback which may be in
the form of speech, action or others
40
What Is a Programming Language ?
41
Types of Programming Language
42
Types of Programming Language
Low-Level Language (Machine Language)
High-Level Language
● Uses natural language-like syntax (e.g., C, Python) that is easy for humans to read and write.
● Needs a compiler or interpreter to convert into machine language.
● Platform-independent in many cases, meaning it can run on various systems with the same OS.
● Called "high-level" because it is farthest from machine code and most understandable for humans.
43
TRANSLATOR SOFTWARE
44
45
Translator Program Why Programs Need Translation
❖ The program that converts source program into object program is called translator program.
❖ A program written in high-level language is called source program and a program written in machine language is called
object program.
❖ A translator program takes in source program as input and converts it into object program as output. It also detects and
reports the error during translation by providing diagnostic messages wherever the programmer violates syntax of the
high-level language. 47
Types of Translator Program
48
49
Compiler
A compiler is a tool that converts a whole program from a high-level language into machine code at once.
Steps:
1. First, it checks the program for errors. If any are found, it shows error messages called "Compile-Time Errors." After fixing
these, the program is compiled into machine code.
2. Next, the compiled program is run to produce results based on the input data.
50
The Compilation Process
51
Interpreter
❖ An interpreter translates and runs a program line by line, showing results immediately. If it finds an
error, it stops and reports it right away. Unlike a compiler, it doesn't convert the whole program at once.
52
Assembler
❖ Assembler is a translator program which is used to translate the assembly language code into machine language code.
❖ An assembler translates the whole code at once from assembly language to machine code. Unlike an interpreter, which works line by line, an assembler processes
the entire program and converts it into machine code in one go.
53
How machine understands the instructions
54
LINKER
55
Linker
57
Loader
58
DISCUSSION ON APPLICATION
SOFTWARE
How they are different from system software
59
Application Software
• Applications Software:
– Application Software is a program
or group of programs designed for
end user to perform a group of
coordinated functions, tasks, or
activities.
– Application software cannot run
on itself but is dependent on
system software to execute.
60
System Software VS Application Software
61
Software Acquisition
63
THE COMMONLY USED APPLICATION
SOFTWARE
64
Application Software
Application Suite
An application suite is a collection of multiple software applications bundled together. These programs
usually have similar functions, features, and interfaces, and can often interact with each other for
better productivity. Examples include:
⚫ Microsoft Office: Word, Excel, PowerPoint, etc.
⚫ LibreOffice: Writer, Calc, Impress, etc.
⚫ iWork: Pages, Numbers, Keynote.
Enterprise Software
Enterprise software is designed to manage an organization’s entire operations and processes. It
supports tasks across various departments and helps streamline workflows. Examples include:
⚫ Enterprise Resource Planning (ERP): For managing business operations (e.g., SAP, Oracle ERP).
⚫ Customer Relationship Management (CRM): For managing customer interactions (e.g.,
Salesforce).
⚫ Supply Chain Management (SCM): For managing product flows and logistics (e.g., Oracle SCM,
SAP SCM).
65
Application Software
Content Access Software
Content Access Software is mainly used to view or access digital content without editing,
but some programs may offer basic editing features. Common examples include:
• Media Players: Applications like VLC Media Player or Windows Media Player are used
to play audio and video files.
• Web Browsers: Programs like Google Chrome, Mozilla Firefox, and Safari help users
access the internet and web-based content.
• Help Browsers: Software designed to provide help documentation or support content,
often integrated into applications.
Multimedia Software
Multimedia software allows for creating, editing, and consuming various forms of media.
Examples include:
• Media Players: VLC, which plays different formats of audio and video files.
• Graphic Design Software: Adobe Photoshop, used for editing and creating images and
visual content.
Educational Software
Educational software is a type of content access software designed for teaching and
learning. It may include features like delivering quizzes, tracking progress, and offering
interactive lessons. For example, tools like Google Classroom or Khan Academy help
educators and students manage learning tasks.
66
Application Software
Product Engineering Software
Product engineering software is used to develop both hardware and software products. It
includes tools that assist in designing, testing, and building these products, such as:
• Computer-Aided Design (CAD): For creating 3D models of hardware (e.g., AutoCAD,
SolidWorks).
• Computer-Aided Engineering (CAE): For analyzing and testing designs (e.g., ANSYS, Abaqus).
• Programming Tools: Such as code editors, compilers, and integrated development
environments (IDEs) used for software development (e.g., Visual Studio, Ecli pse).
• Application Programming Interfaces (APIs): For connecting different software components.
Entertainment Software
Entertainment software provides interactive or media-rich experiences, including:
• Video Games: Playable on computers, consoles, or mobile devices (e.g., Fortnite,
Minecraft).
• Media Players: For playing movies or music (e.g., VLC, Spotify).
• Screen Savers and Visual Displays: Programs that show images or animations (e.g., Electric
Sheep).
67
Application Software
Simulation Software
Simulation software mimics real-world or abstract systems for research, training, or entertainment. It
helps in studying or practicing different scenarios in a virtual environment. Examples include:
• Engineering Simulations: For testing designs (e.g., ANSYS, MATLAB).
• Business Simulations: For financial or operational analysis (e.g., AnyLogic, Arena).
• Training Simulations: For hands-on practice in fields like aviation or medicine (e.g., Microsoft
Flight Simulator).
• Entertainment Simulations: Games like The Sims or SimCity.
Media Development Software
Media development software creates digital or printed content for educational, commercial, or
personal use. Types include:
⚫ Graphic Design: For creating images and visuals (e.g., Adobe Photoshop).
⚫ Desktop Publishing: For making print materials like brochures or books (e.g., Adobe InDesign).
⚫ Multimedia: For video, audio, and animations (e.g., Adobe Premiere Pro, Final Cut Pro).
⚫ Web Development: For creating websites (e.g., WordPress, Adobe Dreamweaver).
68
Application Software
Communication Software
Communication software is an application or program
designed to pass information from one system to
another.
• Such software provides remote access to systems and
transmits files in a multitude of formats between
computers.
• Examples:
• Email software (Gmail, Outlook, etc.)
• Instant messaging (WhatsApp, Messenger, etc.)
• Video conferencing (Zoom, Microsoft Teams, Skype etc.)
• Collaborative workspace (Dropbox, Google Drive, etc.)
• Social Media platforms (Facebook, Instagram, etc.)
69
Application Software
Enterprise Infrastructure Software
• Enterprise infrastructure software provides essential tools to support
enterprise software systems. These systems enable smooth operation of
networks, databases, and security within an organization. Examples include:
• Databases: Store and manage data (e.g., Oracle Database, MySQL).
• Email Servers: Manage organizational email (e.g., Microsoft Exchange).
• Network and Security Management: Control and protect IT infrastructure
(e.g., Cisco, Fortinet).
Information Worker Software
• Information worker software helps individuals or teams manage and organize
information, typically for specific projects or tasks, rather than large-scale
enterprise management. Examples include:
• Time Management Tools: Help schedule and track time (e.g., Microsoft
Outlook, Google Calendar).
• Resource Management Software: Tracks the use of resources like staff or
equipment (e.g., Microsoft Project, Trello). 70
Web Application & Browsers
• Web Application:
– A web application or web app is any software that runs in a web
browser.
– It is created in a browser-supported programming language (such
as the combination of JavaScript, HTML and CSS) and relies on a
web browser to render the application.
• Web Browsers:
– These programs allow users to navigate the Internet.
– Some of the more common ones include Microsoft Internet
Explorer, Netscape Navigator, Mozilla Firefox and Apple Safari
71
Review Questions
1. What is the need of an operating system?
2. Describe the functions of an operating system.
3. “OS controls and coordinates the use of hardware among the different application
software and the users”. Explain.
4. Name any three operating systems.
5. Define a device driver.
6. What are plug and play devices?
7. What is the purpose of a device driver?
8. What are the uses of system utilities?
9. List any five system utilities and also list the purpose of each.
10. Explain the purpose of the following system utilities in one line—(i) Anti-virus, (ii) Data
compression, (iii) Cryptographic, (iv) Disk compression, (v) Disk partitioning, (vi) Disk
cleaners, (vii) Backup utility, (viii) System Profiling utility, (ix) Network managers.
72
73
74