Introduction to software chapter, Lecture notes of Introduction to Software Engineering

Introduction to software full chapter easy way to understand thanks

Typology: Lecture notes

2020/2021

Available from 01/02/2022

aladin-khan
aladin-khan šŸ‡µšŸ‡°

3 documents

1 / 32

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Outlin
es
Chapter 3:
Computer
Software
Software
History
Types
ļ‚§Classification based on purpose
o System & Application Software
ļ‚§Classification based on availability
o Shareware, Freeware, Open source
Programming Languages
ļ‚§Machine, Assembly & high level languages
ļ‚§Compilation and interpretation
ļ‚§Algorithm
ļ‚§Pseudocode
ļ‚§Flowchart
ļ‚§Graphical Programming
Artificial Intelligence
Information System
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20

Partial preview of the text

Download Introduction to software chapter and more Lecture notes Introduction to Software Engineering in PDF only on Docsity!

Outlin

es

Chapter 3 :

Computer

Software

Software

History

Types

ļ‚§ (^) Classification based on purpose o System & Application Software ļ‚§ (^) Classification based on availability o Shareware, Freeware, Open source

Programming Languages

ļ‚§ (^) Machine, Assembly & high level languages ļ‚§ (^) Compilation and interpretation ļ‚§ (^) Algorithm ļ‚§ (^) Pseudocode ļ‚§ (^) Flowchart ļ‚§ (^) Graphical Programming

Artificial Intelligence

Information System

Software

• Computer^ program.

• A^ set^ of instructions^ that^ tells^ the^ computer^ what^ to

do and how to do.

• Enable^ user^ to^ interact^ with^ hardware.

• A^ piece^ of^ hardware^ is^ useless^ without^ software.

Introduction To Computer & ICT – by Dr. Rahman Ali & Asmat Ali 2

Types of Software

1. Classification Based on Purpose - Two^ broad^ categories^ based^ on^ Purpose,^ System^ Software^ and^ Application

Software.

Soft w a r e System Software Operating System Utility Software …… Application Software Desktop Application Web Application …… 4

Types of Software

a. System Software

• Provides^ platform^ to^ other^ software^ programs.

• Controls^ and^ works^ with^ hardware.

• Enables^ the^ hardware^ tools^ to^ work^ together:

ļ‚§ (^) Transferring data between memory and disks. ļ‚§ (^) Transferring data between memory and CPU. ļ‚§ (^) Rendering output to output devices. ļ‚§ (^) Receiving input form input devices.

• Examples:

ļ‚§ (^) Operating system ļ‚§ (^) System development programs ļ‚§ (^) Device drivers Introduction To Computer & ICT – by Dr. Rahman Ali & Asmat Ali 5

System Software

Introduction To Computer & ICT – by Dr. Rahman Ali & Asmat Ali 7  (^) Types of System S/W (continued… )

  • Translator

ļ‚§ Translates a program from high level language to machine language.

o (^) Assembler. o (^) Interpreter. o (^) Compiler.

  • Networking^ Software ļ‚§ (^) Facilitates and interacts with computer network. ļ‚§ (^) Supports the creation and operation of network.
  • Utility^ Software ļ‚§ (^) Programs distributed with OS but not a part of OS. o (^) Firewall o (^) Backup utility o (^) Archive Managers o (^) Disk utilities and more.

Types of Software

b. Application Software

• A^ computer^ program^ designed^ to^ perform^ a^ specific^ task^ or^ a^ group^ of

coordinated tasks.

• Not^ necessary^ for^ the^ basic^ functionality^ of^ computer.

• General^ purpose^ or^ special^ purpose.

• Broad^ category^ with^ thousands^ of^ different^ software^ tools.

Introduction To Computer & ICT – by Dr. Rahman Ali & Asmat Ali 8

Application Software

10  (^) Types of Application S/W (continued… )

  • Enterprise^ Software ļ‚§ (^) Designed to address the needs of a large organization. ļ‚§ (^) Often runs in a distributed environment.
  • Content^ Access^ Software ļ‚§ (^) Designed to access content without editing it. ļ‚§ (^) Media players, web browsers.
  • Educational Software ļ‚§ (^) Designed for use by educators and students, e.g. for delivering tests.
  • Simulation Software ļ‚§ (^) Simulate physical or abstract systems. ļ‚§ (^) Used in education and research.

Application Software

11  (^) Types of Application S/W (continued … )

  • Media^ Development^ Software ļ‚§ (^) Graphic art tools, video composers etc. ļ‚§ (^) Generates electronic media.
  • Product^ Engineering^ Software ļ‚§ (^) Tools used to develop software programs. ļ‚§ (^) IDE, editor, compiler and more.
  • General^ Purpose^ Software ļ‚§ (^) Programs used for multiple purposes. ļ‚§ (^) Spreadsheet applications, word processors, communication software and more.
  • Special^ Purpose^ Software ļ‚§ (^) Customized software. ļ‚§ (^) Designed to meet a person or organization’s unique demands.

Types of Software

Introduction To Computer & ICT – by Dr. Rahman Ali & Asmat Ali 13

2. Classification by Copyright Status (continued…)

 Free Software

ļ‚§ (^) Freely available. ļ‚§ (^) Free to use, copy and distribute. ļ‚§ (^) Should be redistributed with original terms of use.

 Open Source Software

ļ‚§ (^) Similar to freeware. ļ‚§ (^) Source code made available to view and analyze how it was created. ļ‚§ (^) Can be modified and extended by adding additional modules.

Software Copyrights and

Pirac y Software Copyrights:

• Copyrights:

ļ‚§ (^) Protection of any piece of work to protect it from being used, reproduced and distributed illegally.

• Software^ developers^ use^ copyrights^ to^ prevent

unauthorized copying of their software.

• Each^ user^ needs^ to^ be^ licensed^ for^ each^ computer^ using

the program.

 (^) Software Piracy

• Illegal^ use^ of^ software

ļ‚§ (^) Copying ļ‚§ (^) Distributing to unlicensed users. ļ‚§ (^) Selling copyrighted software. ļ‚§ (^) Installing on more devices than the user is licensed for. ļ‚§ (^) Sharing login credentials of a web application. 14

Programming Languages

 (^) Machine Language

• Collection^ of binary^ digits^ (bits).

• Directly^ executed^ by^ CPU^ without^ compilation.

• Only^ language^ computer^ understands;^ programs^ written^ in^ any^ other^ language

must first be transformed into machine code.

Introduction To Computer & ICT – by Dr. Rahman Ali & Asmat Ali 16

Programming Languages

 (^) Low Level Language

• Close^ to^ machine^ language.

• Little^ or no abstraction^ of^ programming^ concepts.

• Human^ readable^ and^ understandable^ form.

• Easier^ to^ write^ programs.

• Example:

ļ‚§ (^) Assembly language, transformed to machine code by an assembler. Introduction To Computer & ICT – by Dr. Rahman Ali & Asmat Ali 17

Programming Languages

 (^) Compilation and Interpretation

• Compilation

ļ‚§ (^) Converts program in high level language into machine language. ļ‚§ (^) The whole program is converted to machine code as a whole. ļ‚§ (^) Produces a list of errors and warnings if any. ļ‚§ (^) Doesn’t run the program.

• Interpretation

ļ‚§ (^) Converts program into machine code. ļ‚§ (^) Reads the programs line by line, transforms and executes. ļ‚§ (^) Stops if any error found. ļ‚§ (^) Slower than compilation. Introduction To Computer & ICT – by Dr. Rahman Ali & Asmat Ali 19

Algorithm

• Step^ by^ step^ method^ to^ solve^ a^ particular^ problem.

• Series of instructions to carry out an operation.

• The^ step^ by^ step^ solution^ is^ transformed^ to^ computer^ program^ by^ programmers.

Introduction To Computer & ICT – by Dr. Rahman Ali & Asmat Ali 20