Lec 17-18 Computer Softwares

APPLICATION OF INFORMATION AND COMMUNICATION TECHNOLOGIES

  • Lecture Details

    • Title: Computer Software

    • Lectured by: Mr. Muhammad Tahir Sohail

    • Department: Computer Science

COMPUTER SOFTWARE

  • Hardware vs Software

    • Hardware:

      • Physical components of a computer system that can be touched.

    • Software:

      • Instructions that run on hardware, also known as Computer Programs.

      • Software is necessary for hardware to perform useful tasks, and hardware cannot function without software.

MACHINE LANGUAGE

  • Definition:

    • The language that computers understand and execute.

    • Considered the lowest level of programming language.

  • Characteristics:

    • Easy for computers, but challenging for humans to write and understand.

LANGUAGE TRANSLATORS

  • Purpose:

    • Convert programs written in human-friendly languages to machine language.

  • Types:

    • Compiler:

      • Translates high-level language code into machine language all at once.

    • Interpreter:

      • Translates high-level language code one statement at a time.

SOFTWARE DEVELOPMENT

  • Overview:

    • Creating complex software requires more than just coding.

  • Time Allocation:

    • Only 15% of time is spent coding; 85% is spent on other activities.

THE SOFTWARE DEVELOPMENT PROCESS

  • Phases:

    1. Concept & Feasibility

    2. User Requirement

    3. Developer Specification

    4. Planning

    5. Design

    6. Implementation

MAJOR TYPES OF SOFTWARE

  • Categories:

    • System Software:

      • Operates in the background, interacts directly with hardware.

    • Application Software:

      • Programs that users directly interact with to perform tasks.

SYSTEM & APPLICATION SOFTWARE

  • Functionality:

    • System software works behind the scenes, while application software interacts directly with users through the system software.

TYPES OF SYSTEM SOFTWARE

  • Categories:

    • Operating System

    • Firmware

    • Utilities

    • Language Translators

    • Device Drivers

OPERATING SYSTEM

  • Definition:

    • Operates in the background and facilitates user interaction with hardware.

  • Examples:

    • Windows, Mac OS, Unix, Linux.

FIRMWARE

  • Characteristics:

    • Embedded software that controls hardware.

    • Examples include BIOS on PCs for loading the operating system.

UTILITIES

  • Function:

    • Designed to maintain and optimize computer performance.

  • Examples:

    • Antivirus software, disk optimization programs.

LANGUAGE TRANSLATORS

  • Function:

    • Translate code from high-level to low-level languages for CPU understanding.

  • Types:

    • Compilers and Interpreters cover different translations processes.

DEVICE DRIVERS

  • Definition:

    • Programs that facilitate communication between hardware and operating systems.

  • Function:

    • Acts as a manual for the OS to understand how to operate that hardware.

APPLICATION SOFTWARE

  • Definition:

    • Programs designed for user interaction to perform specific tasks.

  • Types:

    • Scientific, Business, Productivity, Entertainment, Educational Software.

CLASSIFICATION OF SOFTWARE

ACCORDING TO THE MODE

  • Interactive-mode:

    • Continuous user interaction (e.g., Word Processor).

  • Batch-mode:

    • Non-interactive processing of data (e.g., Payroll).

ACCORDING TO APPLICATION AREA

  • Categories:

    • Scientific/Engineering/Graphics Software

    • Business Software

    • Productivity Software

    • Entertainment Software

    • Educational Software

ENTERTAINMENT SOFTWARE

  • Example Types:

    • Music and Video Players (WinAmp, Real Player)

    • Computer Games (Educational, Strategy, Sports).

EDUCATIONAL SOFTWARE

  • Growth Areas:

    • Increasing reliance on software to enhance or replace traditional education methods.

SOFTWARE OWNERSHIP

  • License Purchase:

    • Users purchase licenses, not software ownership.

  • Types of Licenses:

    • Proprietary, Freeware, Open-Source, Shareware.

PROPRIETARY SOFTWARE LICENSE

  • Definition:

    • Licenses prohibit modification and redistribution.

  • Examples:

    • MS Windows, MS Office.

FREEWARE SOFTWARE LICENSE

  • Characteristics:

    • Software is free to use.

    • Examples:

    • Linux, Chrome.

OPEN-SOURCE SOFTWARE LICENSE

  • Definition:

    • Users can modify high-level source code.

  • Examples:

    • Apache Web Server, MySQL.

SHAREWARE SOFTWARE LICENSE

  • Definition:

    • Free to use initially, payment requested if the software is satisfactory.

TRIALWARE

  • Features:

    • Usable for a limited time before requiring purchase.

CONCLUSION

  • Final Thoughts:

    • Ample opportunities exist in software utilization and development.

  • Closing Note:

    • Jazak Allah, Questions?