WHAT IS SOFTWARE?
Key Points:
● User-oriented and task-specific.
Definition of Software ● Examples: MS Word, Photoshop,
Chrome, Excel.
● Software is a collection of
programs or instructions that C. Programming Software
perform specific tasks or
operations based on user ● Used by developers to create, test,
commands. It acts as the interface and debug applications and
between the user and computer programs.
hardware. Key Points:
Key Points: ● Provides tools for coding and
● Software controls all user tasks on software creation.
a computer. ● Examples: Compilers, Debuggers,
● Written in binary code (0s and 1s). Linkers, IDEs (e.g., Visual Studio).
● Divided into different types based
on function and purpose.
System Software
Types of Software Components
A. System Software
Operating System (OS)
● System software manages ● A collection of software that helps
computer hardware and other execute programs and offers a
software, ensuring they run computer application’s general
efficiently. It runs in the services.
background to maintain basic
functions. ● Examples: iOS, macOS,
Key Points: Windows, Unix, Linux, Ubuntu, and
etc.
● Acts as a mediator between user
and computer.
● Examples: Operating systems, Device Drivers
drivers, firmware, utilities.
● Act as a software interface for the
hardware devices so that
B. Application Software
applications and the operating
system of a computer can run the
Description:
hardware functions without having
Designed for end-users to perform and
the knowledge of the hardware’s
accomplish specific tasks such as writing,
exact specifications.
browsing, graphic designing, research, or
● Handle the operations of the
online games.
hardware devices connected to a
computer.
Firmware Multimedia Software
● Permanent software stored in ● Used for playing, creating,
read-only memory (ROM). recording, and editing(audio, video,
● Provides low-level control for images) using multimedia
hardware. softwares.
● This type of software has a
Utility Programs massive application in the field of
graphic designing where users
● Tools for system maintenance, create gifs, photos, animations.
support in analysis and ● Examples: Adobe, Photoshop,
optimization, and configuration.. Illustrator, Windows Movie Maker,
● Examples: Antivirus, Disk cleanup, Media Player, Corel Draw, and
Backup utilities. Picasa.
Web Browsers
Application Software ● Allow users to fetch data across
the web and also position the data.
Categories In simpler terms, you would access
the internet with the help of web
Word Processors browsers so that you find the
information that you need
● Used for typing data, editing, ● Examples: Chrome, Opera, Mozilla
making notes, and formatting Firefox, Microsoft Edge, Apple
documents. Safari, and UC Browser.
● Users can also store and print their
data and documents respectively
using word processes. Application Software
● Examples: MS Word, Google
Docs. Distribution Models
Database Software Freeware
● Performs quick data creation, ● Freeware software is made
storage, retrieval, management, available free of cost for a lifetime
organization, and modification. and it can be downloaded from the
● Also known as Database internet.
Management System (DBMS). ● Example: Skype, Audacity, Zoom,
● Examples: MS Access, dBase, Adobe Reader, WhatsApp, etc.
MySQL, Oracle, Microsoft SQL
Server, and FileMaker. Shareware
● Free for a limited trial period;
requires payment for full version.
● Example: WinZip, Adobe Acrobat.
Open-Source Software ● Worms – Spread automatically
across networks.
● Source code is publicly available
for modification. ● Ransomware – Locks data until
● This means users who download payment is made.
open source software can make
changes and transformations to it
and even add features to it. Prevention:
● Example: Linux, Apache, VLC Install and regularly update antivirus or
Media Player. anti-malware software.
Programming Software How Software Works
Tools ● Process:
1. The user gives input (commands)
Compilers that are processed by the software.
● It is given in complex
● Converts human-readable code language that humans use.
into machine code.
2. Software converts input into binary
Debuggers language that the software
understands.
● Detecting and fixing code errors.
3. The system processes input and
Linkers returns output based on the input.
● This output depends on the
● Combines various individual files nature of the command
from a compiler into a single given and the functionalities
executable program. of the software.
Malware (Malicious Software Distribution
Software) Mechanisms
● Software that is intentionally ● Commercial Software: Needs a
designed to harm or exploit licence to use; cannot modify or
systems. add features.
Types: ● Open-Source Software: Source
code available for modification and
● Viruses – Replicate and infect
some open-source software might
files.
be free of cost, some may also be
● Trojans – Disguised as legitimate
sold at retail prices.
programs.
● Freeware: Free to download from Testing Parameters:
the internet and is completely free
of cost but may include ads. ● Functional Requirements: Core
software operations.
● Shareware: Free for a limited
period of time on a trial basis, then ● Non-functional Requirements:
a paid license is required. Quality attributes (performance,
security, usability).
Ongoing Maintenance:
Software Development
Lifecycle (SDLC) ● Regular updates based on user
feedback and technical issues.
Phases:
● Determines the requirements of
1. Requirement Analysis – Identify users and issues pertaining to its
user needs. features to make the needed
modifications.
2. Design – Plan software structure
and interface.
3. Implementation – Development of
the coding and building of the
software.
4. Testing – Detecting and fixing
errors.
5. Maintenance – Ensure software
runs smoothly post-release.
Maintaining Software
Quality
● Ensures the software performs as
intended and meets user
expectations.
● Software testing is performed to
determine and resolve any
technical issues in the source code
of the software. It also assesses
other aspects, such as security,
performance, and usability