0% found this document useful (0 votes)
4 views

Lecture 06 - Software

Uploaded by

abdsyd21
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Lecture 06 - Software

Uploaded by

abdsyd21
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 20

Week 03: Software

109101– Introduction to ICT

Sheeraz Ahmad Khan

Lecturer CS
Institute of Space Technology, Islamabad
Today’s Aim
• Defining a Software
• History of Software
• Software Development Process
• Types of Software
• Different types of Software License
• Attributes of a Good Software
Software

• Software, in its most general sense, is a set of instructions or


programs instructing a computer to do specific tasks.

• Software is a generic term used to describe computer programs that


run on PCs, mobile phones, tablets, or other smart devices.
History of Software
• Concept of Programming Developed by Charles Babbage
• First Computer Program by Ada Baron
• Consist of “Machine Language”
• 1945, Von Neumann's “Stored-Program Technique”
• 1949, “Short Code” :Machine Language
• 1950’s, Assembly Languages
• 1957, Math-Matic :High-Level Language
• 1957, FORTRAN :High-Level Language
Software Development Process
• Concept and Feasibility
• Domain Analysis:
• Doing the Homework
• Software Elements Analysis:
• Reading the Customer Requirements
• Specification:
• Precise Description of the Software
• Planning:
• Time, Cost and Personnel Estimates
• Software Architecture:
• Issues Concerned with Software Production and Compatibility
• Implementation:
• Writing the Code
• Testing
• Documentation
Types of Software (User’s view-
point)

• System Software

• Application Software

• Programming Software
System Software
• Control the overall operation of the computer
• OS

• Interact directly with HW


• Device drivers

• Perform system management & maintenance


• Utilities

• Used to develop or maintain other programs


• Language translators
System Software
• Operating System
• Manages Sharing of Resources
• Process Management
• Memory Management
• File System Support
• Networking
• Security
• Graphical User Interface
• Hardware Management
• Examples?
Role of the Operating System
System Software
• Device Drivers
• Work as Interface
• Translates Instructions and Data from OS and Application
Software into Device Specific Form
• Necessary for Hardware Compatibility
System Software
• Utilities
• For providing a particular functions
• Maintain and manage systems
• Examples:
• Anti-virus SW
• Data compression SW
• Disk optimization SW
• Disk backup SW
System Software
• Language Translators
• Assembler
• Converts Assembly Language into binary code
• Compiler
• Converts a high-level language into binary code
• Interpreter
• Converts and executes one instruction at a time
Application Software
• Direct Interaction with User
• Indirect Interaction with Hardware (through drivers)
• Scientific/engineering/graphics SW
• Matlab, Visual Studio, Adobe Photoshop
• Business SW
• The billing system for the mobile phone company
• Productivity SW
• Microsoft word; Spreadsheets
• Entertainment SW
• Games, PubG, CoD
• Educational SW
• Electronic encyclopedias
Programming Software

• Used by Programmers
• Assists in Writing Programs
• IDE; Integrated Development Environment
• Language Translators also fall into the same category
Software Licensing
• Software Protection
• Trade Secrets
• Copyright
• Patents
• Trademarks
• Allows Ownership to stay with the Manufacturers
Types of Licensing
• Proprietary
• License for ‘Use only’ is Bought
• Manufacturers retain Ownership
• Counters Piracy
• Examples : Shrink-Wrapped
• Types:
• Single-User
• Multiple-User
• Concurrent-User
• Site
Types of Licensing
• Freeware:
• Downloaded from Internet
• Manufacturer retains Ownership
• User is Free to Use
• Examples: Public Domain SW
• Types:
• Open-Source
• Closed-Source
Types of Licensing
• Shareware:
• Downloaded from Internet, or Ordered on Websites
• Manufacturer retains Ownership
• Payment made Upon Satisfactory Performance
• Reasons
• Types:
• Trialware
• Crippleware
Attributes of a Good Software

• Maintainable
• Reliable
• Efficient
• Appropriate and interactive Interface
• Cost Effective
Objectives Achieved In Today’s Lecture

• Defining Software
• Types of Software
• Attributes of Software
• Software Licensing

You might also like