SlideShare a Scribd company logo
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                      Computer Fundamentals: Pradeep K. Sinha & Priti Sinha




Ref Page   Chapter 10: Computer Software                     Slide 1/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                               Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

 Learning Objectives

      In this chapter you will learn about:

           § Term “Software” and its relationship with “Hardware”
           § Various types of software and their examples
           § Relationship among hardware, system software,
             application software, and users of a computer system
           § Different ways of acquiring software
           § Various steps involved in software development
           § Firmware
           § Middleware




Ref Page 172        Chapter 10: Computer Software                     Slide 2/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                              Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

  Software

      § Hardware refers to the physical devices of a
        computer system.
      § Software refers to a collection of programs
      § Program is a sequence of instructions written in a
        language that can be understood by a computer
      § Software package is a group of programs that solve
        a specific problem or perform a specific type of job




Ref Page 172       Chapter 10: Computer Software                     Slide 3/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                              Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

 Relationship Between Hardware and
 Software

      § Both hardware and software are necessary for a
        computer to do useful job. They are complementary
        to each other
      § Same hardware can be loaded with different software
        to make a computer system perform different types
        of jobs
      § Except for upgrades, hardware is normally a one-
        time expense, whereas software is a continuing
        expense
      § Upgrades refer to renewing or changing components
        like increasing the main memory, or hard disk
        capacities, or adding speakers, modems, etc.




Ref Page 173       Chapter 10: Computer Software                     Slide 4/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                               Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

  Types of Software

      Most software can be divided into two major categories:
           § System software are designed to control the
             operation and extend the processing capability of a
             computer system
           § Application software are designed to solve a
             specific problem or to do a specific task




Ref Page 173        Chapter 10: Computer Software                     Slide 5/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                              Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

 System Software

      § Make the operation of a computer system more effective
        and efficient

      § Help hardware components work together and provide
        support for the development and execution of application
        software

      § Programs included in a system software package are
        called system programs and programmers who
        prepare them are called system programmers

      § Examples of system software are operating systems,
        programming language translators, utility programs, and
        communications software




Ref Page 173       Chapter 10: Computer Software                     Slide 6/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                               Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

 Application Software

      § Solve a specific problem or do a specific task
      § Programs included in an application software
        package are called application programs and the
        programmers who prepare them are called
        application programmers
      § Examples of application software are word
        processing, inventory management, preparation of
        tax returns, banking, etc.




Ref Page 174        Chapter 10: Computer Software                     Slide 7/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                                        Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

 Logical System Architecture



                                           HARDWARE
                                   (Physical devices/components
                                     of the computer system)

                                       SYSTEM SOFTWARE
                             (Software that constitute the operating and
                         programming environment of the computer system)

                                     APPLICATION SOFTWARE
                        (Software that do a specific task or solve a specific problem)

                                            USERS
                        (Normally interact with the system via the user
                        interface provided by the application software)

       Relationship among hardware, system software, application software, and users of a
       computer system.



Ref Page 175             Chapter 10: Computer Software                                   Slide 8/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                                Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

  Ways of Acquiring Software

      § Buying pre-written software
      § Ordering customized software
      § Developing customized software
      § Downloading public-domain software

      Each of these ways of acquiring software has its own
      advantages and limitations




Ref Page 176         Chapter 10: Computer Software                     Slide 9/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                              Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
  Advantages and Limitations of
  Buying Pre-written Software

      § Usually costs less
      § Planned activity can be stared almost immediately
      § Often, operating efficiency and the capability to meet
        specific needs of user more effectively in not as good
        for pre-written software packages as for in-house
        developed software packages




Ref Page 176       Chapter 10: Computer Software                     Slide 10/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                               Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

  Advantages & Limitations of Ordering
  Customized Software

      § User need not maintain its own software development team,
        which is an expensive affair
      § User needs to always depend on the vendor for carrying out
        the changes and the vendor may separately charge for
        every request for change




Ref Page 177        Chapter 10: Computer Software                     Slide 11/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                               Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

  Advantages & Limitations of Developing
  Customized Software

      § Easier to carry out changes in the software, if it is
        developed in-house
      § Developing software in-house means a major
        commitment of time, money, and resources
      § In-house software development team needs to be
        maintained and managed




Ref Page 177        Chapter 10: Computer Software                     Slide 12/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                                 Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

  Advantage & Limitations of Downloading
  Public-domain Software

      §   Available for free or as shareware, and are usually accompanied
          with source code
      §   Usually community-supported as author does not support users
          directly
      §   Can be downloaded and used immediately
      §   They may not be properly tested before release
      §   Open Source Software (OSS) are becoming popular due to:
          § Allows any user to download, view, modify, and redistribute
          § User can fix bugs or change software to suit needs
          § Copyright is protected for both original and subsequent
            authors
      §   Not all open source software are free and vise-verse




Ref Page 178          Chapter 10: Computer Software                     Slide 13/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                               Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

 Software Development Steps

      Developing a software and putting it to use is a complex
      process and involves following steps:
      §   Analyzing the problem at hand and planning the
          program(s) to solve the problem
      §   Coding the program(s)
      §   Testing, debugging, and documenting the program(s)
      §   Implementing the program(s)
      §   Evaluating and maintaining the program(s)




Ref Page 178        Chapter 10: Computer Software                     Slide 14/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                              Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

 Firmware

      § Firmware is software substituted for hardware and stored
        in read-only memory
      § Firmware technology has enabled production of various
        types of smart machines having microprocessor chips
        with embedded software




Ref Page 179       Chapter 10: Computer Software                     Slide 15/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                               Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

 Middleware

      § Basic idea is to have a separate software layer to:
          § Act as “glue” between client and server parts of
            application
          § Provide programming abstraction
          § Mask heterogeneity of underlying network, hardware,
            and OS
      § Encourages three-tier software architecture against two-
        tier popularized by Server-Client architecture




Ref Page 179        Chapter 10: Computer Software                     Slide 16/17
Computer Fundamentals: Pradeep K. Sinha & Priti Sinha
                                  Computer Fundamentals: Pradeep K. Sinha & Priti Sinha

 Key Words/Phrases

        §   Application programmers        §   Pre-written software
        §   Application programs           §   Public-domain software
        §   Application software           §   Shareware
        §   Computer program               §   Software
        §   Customized software            §   Software package
        §   Database                       §   Spreadsheet
        §   Education software             §   System programmers
        §   End-to-end solution            §   System programs
        §   Entertainment software         §   System software
        §   Firmware                       §   Turnkey solution
        §   Graphics software              §   User-supported
        §   Hardware                           software
        §   Middleware                     §   Utilities
        §   Open Source Software           §   Word-processing
        §   Personal assistance software




Ref Page 181           Chapter 10: Computer Software                     Slide 17/17

More Related Content

Viewers also liked

Computer Fundamentals_Chapter 02 bco
Computer Fundamentals_Chapter 02 bcoComputer Fundamentals_Chapter 02 bco
Computer Fundamentals_Chapter 02 bcoSaumya Sahu
 
Chapter19 multimedia-091006115642-phpapp02 (1)
Chapter19 multimedia-091006115642-phpapp02 (1)Chapter19 multimedia-091006115642-phpapp02 (1)
Chapter19 multimedia-091006115642-phpapp02 (1)Jay Patel
 
Chapter 17 dccn
Chapter 17 dccnChapter 17 dccn
Chapter 17 dccn
Hareem Aslam
 
Chapter 04 computer codes
Chapter 04 computer codesChapter 04 computer codes
Chapter 04 computer codes
Hareem Aslam
 
Chapter 05 computer arithmetic
Chapter 05 computer arithmeticChapter 05 computer arithmetic
Chapter 05 computer arithmetic
Hareem Aslam
 
Computer Fundamentals Chapter 14 os
Computer Fundamentals Chapter 14 osComputer Fundamentals Chapter 14 os
Computer Fundamentals Chapter 14 osSaumya Sahu
 
Chapter 06 boolean algebra
Chapter 06 boolean algebraChapter 06 boolean algebra
Chapter 06 boolean algebra
Hareem Aslam
 
Computer Fundamentals
Computer FundamentalsComputer Fundamentals
Computer FundamentalsSaumya Sahu
 
Chapter03 number system
Chapter03   number systemChapter03   number system
Chapter03 number system
Ainuddin Yousufzai
 
Chapter01 introduction to computer
Chapter01   introduction to computerChapter01   introduction to computer
Chapter01 introduction to computer
Ainuddin Yousufzai
 
Chapter04 ip addressing networking
Chapter04 ip addressing networkingChapter04 ip addressing networking
Chapter04 ip addressing networking
Ainuddin Yousufzai
 
Chapter05 secondary storage
Chapter05   secondary storageChapter05   secondary storage
Chapter05 secondary storage
Ainuddin Yousufzai
 
Chapter06 computer software
Chapter06   computer softwareChapter06   computer software
Chapter06 computer software
Ainuddin Yousufzai
 
Chapter07 io devices
Chapter07   io devicesChapter07   io devices
Chapter07 io devices
Ainuddin Yousufzai
 
Chapter 18 internet
Chapter 18 internetChapter 18 internet
Chapter 18 internet
Hareem Aslam
 
Chapter 20 coc
Chapter 20 cocChapter 20 coc
Chapter 20 coc
Hareem Aslam
 
Chapter04 processor and memory
Chapter04   processor and memoryChapter04   processor and memory
Chapter04 processor and memory
Ainuddin Yousufzai
 
Chapter02 basic computer organization
Chapter02   basic computer organizationChapter02   basic computer organization
Chapter02 basic computer organization
Ainuddin Yousufzai
 
Computer fundamentals-internet p1
Computer fundamentals-internet p1Computer fundamentals-internet p1
Computer fundamentals-internet p1
Leo Mark Villar
 

Viewers also liked (19)

Computer Fundamentals_Chapter 02 bco
Computer Fundamentals_Chapter 02 bcoComputer Fundamentals_Chapter 02 bco
Computer Fundamentals_Chapter 02 bco
 
Chapter19 multimedia-091006115642-phpapp02 (1)
Chapter19 multimedia-091006115642-phpapp02 (1)Chapter19 multimedia-091006115642-phpapp02 (1)
Chapter19 multimedia-091006115642-phpapp02 (1)
 
Chapter 17 dccn
Chapter 17 dccnChapter 17 dccn
Chapter 17 dccn
 
Chapter 04 computer codes
Chapter 04 computer codesChapter 04 computer codes
Chapter 04 computer codes
 
Chapter 05 computer arithmetic
Chapter 05 computer arithmeticChapter 05 computer arithmetic
Chapter 05 computer arithmetic
 
Computer Fundamentals Chapter 14 os
Computer Fundamentals Chapter 14 osComputer Fundamentals Chapter 14 os
Computer Fundamentals Chapter 14 os
 
Chapter 06 boolean algebra
Chapter 06 boolean algebraChapter 06 boolean algebra
Chapter 06 boolean algebra
 
Computer Fundamentals
Computer FundamentalsComputer Fundamentals
Computer Fundamentals
 
Chapter03 number system
Chapter03   number systemChapter03   number system
Chapter03 number system
 
Chapter01 introduction to computer
Chapter01   introduction to computerChapter01   introduction to computer
Chapter01 introduction to computer
 
Chapter04 ip addressing networking
Chapter04 ip addressing networkingChapter04 ip addressing networking
Chapter04 ip addressing networking
 
Chapter05 secondary storage
Chapter05   secondary storageChapter05   secondary storage
Chapter05 secondary storage
 
Chapter06 computer software
Chapter06   computer softwareChapter06   computer software
Chapter06 computer software
 
Chapter07 io devices
Chapter07   io devicesChapter07   io devices
Chapter07 io devices
 
Chapter 18 internet
Chapter 18 internetChapter 18 internet
Chapter 18 internet
 
Chapter 20 coc
Chapter 20 cocChapter 20 coc
Chapter 20 coc
 
Chapter04 processor and memory
Chapter04   processor and memoryChapter04   processor and memory
Chapter04 processor and memory
 
Chapter02 basic computer organization
Chapter02   basic computer organizationChapter02   basic computer organization
Chapter02 basic computer organization
 
Computer fundamentals-internet p1
Computer fundamentals-internet p1Computer fundamentals-internet p1
Computer fundamentals-internet p1
 

Similar to Chapter 10 cs

Chapter 10 cs
Chapter 10 csChapter 10 cs
Chapter 10 cs
Hareem Aslam
 
Chapter 10 cs 2o-p
Chapter 10 cs 2o-pChapter 10 cs 2o-p
Chapter 10 cs 2o-pIIUI
 
Chapter14 os-121120003310-phpapp02
Chapter14 os-121120003310-phpapp02Chapter14 os-121120003310-phpapp02
Chapter14 os-121120003310-phpapp02Tapas Das
 
Chapter14 os-121120003310-phpapp02
Chapter14 os-121120003310-phpapp02Chapter14 os-121120003310-phpapp02
Chapter14 os-121120003310-phpapp02Tapas Das
 
Chapter 12 cl
Chapter 12 clChapter 12 cl
Chapter 12 cl
Hareem Aslam
 
Chapter 02 Computer Languages (re-upload)
Chapter 02 Computer Languages (re-upload)Chapter 02 Computer Languages (re-upload)
Chapter 02 Computer Languages (re-upload)
bluejayjunior
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1gvkmku
 
Computer Hardware, Software and Firmware
Computer Hardware, Software and FirmwareComputer Hardware, Software and Firmware
Computer Hardware, Software and Firmware
City University, Dhaka, Bangladesh
 
Chapter 14 os
Chapter 14 osChapter 14 os
Chapter 14 os
Hareem Aslam
 
Unit 1 introduction to software
Unit 1 introduction to softwareUnit 1 introduction to software
Unit 1 introduction to software
KanchanPatil34
 
Computer Fundamentals Chapter 01 introduction
Computer Fundamentals Chapter 01 introductionComputer Fundamentals Chapter 01 introduction
Computer Fundamentals Chapter 01 introductionSaumya Sahu
 
Software engg. pressman_ch-1
Software engg. pressman_ch-1Software engg. pressman_ch-1
Software engg. pressman_ch-1Dhairya Joshi
 
APPLICATIONS AND DEVICES-DRIVERS REVIEW NOTES.pdf
APPLICATIONS AND DEVICES-DRIVERS REVIEW NOTES.pdfAPPLICATIONS AND DEVICES-DRIVERS REVIEW NOTES.pdf
APPLICATIONS AND DEVICES-DRIVERS REVIEW NOTES.pdf
AirrahArishaPialaAlc
 
What is software
What is softwareWhat is software
What is software
Anil815218
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
13harpreet
 
Chapter19 multimedia-091006115642-phpapp021-120309093503-phpapp02
Chapter19 multimedia-091006115642-phpapp021-120309093503-phpapp02Chapter19 multimedia-091006115642-phpapp021-120309093503-phpapp02
Chapter19 multimedia-091006115642-phpapp021-120309093503-phpapp02dhruv patel
 
Chapter 19 multimedia
Chapter 19 multimediaChapter 19 multimedia
Chapter 19 multimedia
Hareem Aslam
 
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIYWhy Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Enterprise Management Associates
 

Similar to Chapter 10 cs (20)

Chapter 10 cs
Chapter 10 csChapter 10 cs
Chapter 10 cs
 
Chapter 10 cs 2o-p
Chapter 10 cs 2o-pChapter 10 cs 2o-p
Chapter 10 cs 2o-p
 
Chapter14 os-121120003310-phpapp02
Chapter14 os-121120003310-phpapp02Chapter14 os-121120003310-phpapp02
Chapter14 os-121120003310-phpapp02
 
Chapter14 os-121120003310-phpapp02
Chapter14 os-121120003310-phpapp02Chapter14 os-121120003310-phpapp02
Chapter14 os-121120003310-phpapp02
 
Chapter 12 cl
Chapter 12 clChapter 12 cl
Chapter 12 cl
 
Chapter 02 Computer Languages (re-upload)
Chapter 02 Computer Languages (re-upload)Chapter 02 Computer Languages (re-upload)
Chapter 02 Computer Languages (re-upload)
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Computer Hardware, Software and Firmware
Computer Hardware, Software and FirmwareComputer Hardware, Software and Firmware
Computer Hardware, Software and Firmware
 
Chapter 14 os
Chapter 14 osChapter 14 os
Chapter 14 os
 
Unit 1 introduction to software
Unit 1 introduction to softwareUnit 1 introduction to software
Unit 1 introduction to software
 
Computer Fundamentals Chapter 01 introduction
Computer Fundamentals Chapter 01 introductionComputer Fundamentals Chapter 01 introduction
Computer Fundamentals Chapter 01 introduction
 
P k sinha IT Book
P k sinha IT BookP k sinha IT Book
P k sinha IT Book
 
Software engg. pressman_ch-1
Software engg. pressman_ch-1Software engg. pressman_ch-1
Software engg. pressman_ch-1
 
APPLICATIONS AND DEVICES-DRIVERS REVIEW NOTES.pdf
APPLICATIONS AND DEVICES-DRIVERS REVIEW NOTES.pdfAPPLICATIONS AND DEVICES-DRIVERS REVIEW NOTES.pdf
APPLICATIONS AND DEVICES-DRIVERS REVIEW NOTES.pdf
 
Software.
Software.Software.
Software.
 
What is software
What is softwareWhat is software
What is software
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Chapter19 multimedia-091006115642-phpapp021-120309093503-phpapp02
Chapter19 multimedia-091006115642-phpapp021-120309093503-phpapp02Chapter19 multimedia-091006115642-phpapp021-120309093503-phpapp02
Chapter19 multimedia-091006115642-phpapp021-120309093503-phpapp02
 
Chapter 19 multimedia
Chapter 19 multimediaChapter 19 multimedia
Chapter 19 multimedia
 
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIYWhy Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
 

More from Saumya Sahu

Paper presentation-nano-robots
Paper presentation-nano-robotsPaper presentation-nano-robots
Paper presentation-nano-robotsSaumya Sahu
 
Paper presentation-nano-robots
Paper presentation-nano-robotsPaper presentation-nano-robots
Paper presentation-nano-robotsSaumya Sahu
 
Engineering Symbols
Engineering SymbolsEngineering Symbols
Engineering SymbolsSaumya Sahu
 
Gate-2013(Computer Science) Que_Ans
Gate-2013(Computer Science) Que_AnsGate-2013(Computer Science) Que_Ans
Gate-2013(Computer Science) Que_AnsSaumya Sahu
 
Project management
Project managementProject management
Project managementSaumya Sahu
 
Computer Fundamentals Chapter 09 io devices
Computer Fundamentals Chapter 09 io devicesComputer Fundamentals Chapter 09 io devices
Computer Fundamentals Chapter 09 io devicesSaumya Sahu
 
Computer Fundamentals Chapter 08 secondary storage
Computer Fundamentals Chapter 08 secondary storageComputer Fundamentals Chapter 08 secondary storage
Computer Fundamentals Chapter 08 secondary storageSaumya Sahu
 
Computer networks
Computer networksComputer networks
Computer networksSaumya Sahu
 
Computer networks (2)
Computer networks (2)Computer networks (2)
Computer networks (2)Saumya Sahu
 
Software project management
Software project managementSoftware project management
Software project managementSaumya Sahu
 

More from Saumya Sahu (11)

Cloud computing
Cloud computingCloud computing
Cloud computing
 
Paper presentation-nano-robots
Paper presentation-nano-robotsPaper presentation-nano-robots
Paper presentation-nano-robots
 
Paper presentation-nano-robots
Paper presentation-nano-robotsPaper presentation-nano-robots
Paper presentation-nano-robots
 
Engineering Symbols
Engineering SymbolsEngineering Symbols
Engineering Symbols
 
Gate-2013(Computer Science) Que_Ans
Gate-2013(Computer Science) Que_AnsGate-2013(Computer Science) Que_Ans
Gate-2013(Computer Science) Que_Ans
 
Project management
Project managementProject management
Project management
 
Computer Fundamentals Chapter 09 io devices
Computer Fundamentals Chapter 09 io devicesComputer Fundamentals Chapter 09 io devices
Computer Fundamentals Chapter 09 io devices
 
Computer Fundamentals Chapter 08 secondary storage
Computer Fundamentals Chapter 08 secondary storageComputer Fundamentals Chapter 08 secondary storage
Computer Fundamentals Chapter 08 secondary storage
 
Computer networks
Computer networksComputer networks
Computer networks
 
Computer networks (2)
Computer networks (2)Computer networks (2)
Computer networks (2)
 
Software project management
Software project managementSoftware project management
Software project management
 

Chapter 10 cs

  • 1. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Ref Page Chapter 10: Computer Software Slide 1/17
  • 2. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Learning Objectives In this chapter you will learn about: § Term “Software” and its relationship with “Hardware” § Various types of software and their examples § Relationship among hardware, system software, application software, and users of a computer system § Different ways of acquiring software § Various steps involved in software development § Firmware § Middleware Ref Page 172 Chapter 10: Computer Software Slide 2/17
  • 3. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Software § Hardware refers to the physical devices of a computer system. § Software refers to a collection of programs § Program is a sequence of instructions written in a language that can be understood by a computer § Software package is a group of programs that solve a specific problem or perform a specific type of job Ref Page 172 Chapter 10: Computer Software Slide 3/17
  • 4. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Relationship Between Hardware and Software § Both hardware and software are necessary for a computer to do useful job. They are complementary to each other § Same hardware can be loaded with different software to make a computer system perform different types of jobs § Except for upgrades, hardware is normally a one- time expense, whereas software is a continuing expense § Upgrades refer to renewing or changing components like increasing the main memory, or hard disk capacities, or adding speakers, modems, etc. Ref Page 173 Chapter 10: Computer Software Slide 4/17
  • 5. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Types of Software Most software can be divided into two major categories: § System software are designed to control the operation and extend the processing capability of a computer system § Application software are designed to solve a specific problem or to do a specific task Ref Page 173 Chapter 10: Computer Software Slide 5/17
  • 6. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha System Software § Make the operation of a computer system more effective and efficient § Help hardware components work together and provide support for the development and execution of application software § Programs included in a system software package are called system programs and programmers who prepare them are called system programmers § Examples of system software are operating systems, programming language translators, utility programs, and communications software Ref Page 173 Chapter 10: Computer Software Slide 6/17
  • 7. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Application Software § Solve a specific problem or do a specific task § Programs included in an application software package are called application programs and the programmers who prepare them are called application programmers § Examples of application software are word processing, inventory management, preparation of tax returns, banking, etc. Ref Page 174 Chapter 10: Computer Software Slide 7/17
  • 8. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Logical System Architecture HARDWARE (Physical devices/components of the computer system) SYSTEM SOFTWARE (Software that constitute the operating and programming environment of the computer system) APPLICATION SOFTWARE (Software that do a specific task or solve a specific problem) USERS (Normally interact with the system via the user interface provided by the application software) Relationship among hardware, system software, application software, and users of a computer system. Ref Page 175 Chapter 10: Computer Software Slide 8/17
  • 9. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Ways of Acquiring Software § Buying pre-written software § Ordering customized software § Developing customized software § Downloading public-domain software Each of these ways of acquiring software has its own advantages and limitations Ref Page 176 Chapter 10: Computer Software Slide 9/17
  • 10. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Advantages and Limitations of Buying Pre-written Software § Usually costs less § Planned activity can be stared almost immediately § Often, operating efficiency and the capability to meet specific needs of user more effectively in not as good for pre-written software packages as for in-house developed software packages Ref Page 176 Chapter 10: Computer Software Slide 10/17
  • 11. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Advantages & Limitations of Ordering Customized Software § User need not maintain its own software development team, which is an expensive affair § User needs to always depend on the vendor for carrying out the changes and the vendor may separately charge for every request for change Ref Page 177 Chapter 10: Computer Software Slide 11/17
  • 12. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Advantages & Limitations of Developing Customized Software § Easier to carry out changes in the software, if it is developed in-house § Developing software in-house means a major commitment of time, money, and resources § In-house software development team needs to be maintained and managed Ref Page 177 Chapter 10: Computer Software Slide 12/17
  • 13. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Advantage & Limitations of Downloading Public-domain Software § Available for free or as shareware, and are usually accompanied with source code § Usually community-supported as author does not support users directly § Can be downloaded and used immediately § They may not be properly tested before release § Open Source Software (OSS) are becoming popular due to: § Allows any user to download, view, modify, and redistribute § User can fix bugs or change software to suit needs § Copyright is protected for both original and subsequent authors § Not all open source software are free and vise-verse Ref Page 178 Chapter 10: Computer Software Slide 13/17
  • 14. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Software Development Steps Developing a software and putting it to use is a complex process and involves following steps: § Analyzing the problem at hand and planning the program(s) to solve the problem § Coding the program(s) § Testing, debugging, and documenting the program(s) § Implementing the program(s) § Evaluating and maintaining the program(s) Ref Page 178 Chapter 10: Computer Software Slide 14/17
  • 15. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Firmware § Firmware is software substituted for hardware and stored in read-only memory § Firmware technology has enabled production of various types of smart machines having microprocessor chips with embedded software Ref Page 179 Chapter 10: Computer Software Slide 15/17
  • 16. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Middleware § Basic idea is to have a separate software layer to: § Act as “glue” between client and server parts of application § Provide programming abstraction § Mask heterogeneity of underlying network, hardware, and OS § Encourages three-tier software architecture against two- tier popularized by Server-Client architecture Ref Page 179 Chapter 10: Computer Software Slide 16/17
  • 17. Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Computer Fundamentals: Pradeep K. Sinha & Priti Sinha Key Words/Phrases § Application programmers § Pre-written software § Application programs § Public-domain software § Application software § Shareware § Computer program § Software § Customized software § Software package § Database § Spreadsheet § Education software § System programmers § End-to-end solution § System programs § Entertainment software § System software § Firmware § Turnkey solution § Graphics software § User-supported § Hardware software § Middleware § Utilities § Open Source Software § Word-processing § Personal assistance software Ref Page 181 Chapter 10: Computer Software Slide 17/17