Lecture 03 - Computer software

Tài liệu học tập môn Business Computing Skills (BA120IU) tại Trường Đại học Quốc tế, Đại học Quốc gia Thành phố Hồ Chí Minh giúp bạn học tập, ôn luyện và đạt điểm cao!

Downloaded by Hoa Minh (minhhoaanthea@gmail.com)
McGraw-Hill/Irwin
©2008,The McGraw-H
ill Companies, All Rights Reserved
Lecture 03
Computer
Software
lOMoARcPSD|364906 32
lOMoARcPSD|364906 32
4- 2
Learning Objectives
1. Describe several important trends occurring in computer
software.
2. Give examples of major types of application and system
software.
3. Explain the purpose of several popular software packages
for end user productivity and collaborative computing.
4. Define and describe the functions of an operating system.
lOMoARcPSD|364906 32
4- 3
5. Describe the main uses of computer programming
software, tools, and languages.
lOMoARcPSD|364906 32
4- 4
Types of software
lOMoARcPSD|364906 32
4- 5
Software types
Application software
Performs information processing tasks for end users
System software
Manages and supports operations of computer systems and
networks
lOMoARcPSD|364906 32
4- 6
Application software
General purpose
Programs that perform common information processing jobs
for end users
E.g., word processing, spreadsheet, etc.
Also called productivity packages
Application-specific
Programs that support specific applications of end users
lOMoARcPSD|364906 32
4- 7
E.g., electronic commerce, customer relationship
management, etc.
Software classifications
Classify based on how it was developed
Custom software
Software applications that are developed within an
organization for use by that organization
COTS software
Commercial Off-the-shelf (COTS)
lOMoARcPSD|364906 32
4- 8
Software developed with the intention of selling the software
in multiple copies
Why would you choose Custom over COTS?
Why would you choose COTS over Custom?
Software Suites
Software suites integrate software packages
Advantages:
Cost less than buying individual packages
All have a similar GUI
Work together well
lOMoARcPSD|364906 32
4- 9
Disadvantages
Features not used by all users
Take a lot of disk space
lOMoARcPSD|364906 32
4- 10
Software Suites
lOMoARcPSD|364906 32
4- 11
Integrated Packages
Integrated packages
Combine the functions of several programs into one package
E.g., Microsoft Works, AppleWorks Advantages:
Many functions for lower price and smaller disk space
Disadvantage
Limited functionality
lOMoARcPSD|364906 32
4- 12
Web Browser
Software applications that support navigation through
the point-and-click resources of the Web
Surfing the web
Becoming a universal software platform for
Internetbased applications
Microsoft Explorer, Netscape Navigator, Firefox, Opera
or Mozilla
lOMoARcPSD|364906 32
4- 13
E-mail, Instant Messaging and Weblogs
E-mail
Software to communicate by sending and receiving messages
and attachments via the Internet, intranet or extranet
Instant messaging (IM)
Receive electronic messages instantly
Weblog or blog
A personal website in dated log format
Updated with new information about a subject or range of
subjects
lOMoARcPSD|364906 32
4- 14
Word processing and Desktop publishing
Word processing
Create, edit, revise and print documents
E.g., Microsoft Word, Lotus WordPro and Corel WordPerfect
Desktop Publishing
Produce printed materials that look professionally published
E.g., Adobe PageMaker, Microsoft Publisher and
QuarkXPress
lOMoARcPSD|364906 32
4- 15
Electronic Spreadsheets and Presentation Graphics
Electronic Spreadsheets
Worksheet of rows and columns
Used for calculations and charts
E.g., Lotus 1-2-3, Microsoft Excel, Corel QuattroPro
Presentation Graphics
Convert numeric data into graphics displays
Prepare multimedia presentations including graphics, photos,
animation, and video clips
E.g., Microsoft PowerPoint, Lotus Freelance, Corel
Presentations
lOMoARcPSD|364906 32
4- 16
Personal Information Manager and Groupware
Personal Information Manager (PIM)
Software for end user productivity and collaboration
Store information about clients, schedules, manage
appointments, manage tasks
E.g., Lotus Organizer, Microsoft Outlook
Groupware
Software that helps workgroups collaborate on group
assignments
E-mail, discussion groups, databases, videoconferencing
E.g., Lotus Notes, Novell GroupWise, Microsoft Exchange
lOMoARcPSD|364906 32
4- 17
Sources of Software
lOMoARcPSD|364906 32
4- 18
Proprietary and Off-the-Shelf Software
lOMoARcPSD|364906 32
4- 19
Software : for sale/free/rent
Commercial software:
proprietary software or package software
Copyright : exclusive legal right
Software license : the right to use
You don’t buy software: you buy a license to use the software
under the terms of the licensing agreement
Licensed to protect the vendor’s property right
Public-domain software
lOMoARcPSD|364906 32
4- 20
not protected by copyright
For ex: open source software
Software : for sale, for free or for rent ?
Shareware
distributed free of charge but requires users to make a
monetary contribution to continue using it
Freeware
Copyright software that is distributed free of charge
Rentalware
The users lease software
lOMoARcPSD|364906 32
4- 21
Pirated software # counterfeit software
System software
Software that manages and supports a computer system
System management programs
Programs that manage hardware, software, network, and data
resources
E.g., operating systems, network management programs,
database management systems, systems utilities
lOMoARcPSD|364906 32
4- 22
Systems development programs
Programs that help users develop information system
programs
Operating System
Integrated system of programs that
Manages the operations of the CPU
Controls the input/output and storage resources and activities
of the computer system
Provides support services as computer executes applications
programs
lOMoARcPSD|364906 32
4- 23
Operating System basic functions
lOMoARcPSD|364906 32
4- 24
User Interface
Part of the operating system that allows you to
communicate with it
Three main types:
Command-driven
Menu-driven
Graphical user interfaces (GUI)
lOMoARcPSD|364906 32
4- 25
Resource management
Part of operating system that manages the hardware and
networking resources of a computer system
Includes CPU, memory, secondary storage device,
telecommunications, and input/output peripherals
Virtual memory
Swapping parts of programs and data between memory and
magnetic disks
lOMoARcPSD|364906 32
4- 26
File management
Part of the operating system that controls the creation,
deletion, and access of files of data and programs
lOMoARcPSD|364906 32
4- 27
Task Management
Part of the operating system that manages the
accomplishment of computing tasks of the end users
Multitasking
Task management approach that allows for several tasks to be
performed in a seemingly simultaneous fashion
Assigns only one task to CPU but switches between tasks so
quickly looks like executing all programs at once
lOMoARcPSD|364906 32
4- 28
Also called multiprogramming or time-sharing
Popular Operating Systems
Windows
GUI, multitasking, networking, multimedia
Microsoft’s operating system
Different versions manage servers
Unix
Multitasking, multiuser, network-managing
Portable can run on mainframes, midrange and PCs Linux
Low-cost, powerful reliable Unix-like operating system
Open-source
MAC OS X
lOMoARcPSD|364906 32
4- 29
Apple operating system for the iMac
GUI, multitasking, multimedia
Other system software
Utilities
Miscellaneous housekeeping functions
Example, Norton utilities includes data backup, virus
protection, data compression, etc.
Performance monitors
Programs that monitor and adjust computer system to keep
them running efficiently
lOMoARcPSD|364906 32
4- 30
Security monitors
Programs that monitor and control use of computer systems
to prevent unauthorized use of resources
lOMoARcPSD|364906 32
4- 31
Programming Languages
lOMoARcPSD|364906 32
4- 32
Machine Languages
First-generation languages
All program instructions had to be written using binary
codes unique to each computer
Programmers had to know the internal operations of the
specific type of CPU
Assembler Languages
Second-generation languages
lOMoARcPSD|364906 32
4- 33
Symbols are used to represent operation codes and
storage locations
Need language translator programs to convert the
instructions into machine instructions
Used by systems programmers (who program system
software)
High-Level Languages
Third-generation languages
lOMoARcPSD|364906 32
4- 34
Instructions that use brief statements or arithmetic
expressions
Macroinstructions: each statement generates several
machine instructions when translated by compilers or
interpreters
Easier to learn than assembler
Machine independent
Less efficient than assembler
lOMoARcPSD|364906 32
4- 35
Fourth-Generation Languages
Variety of programming languages that are
nonprocedural and conversational
Nonprocedural users specify results they want while
computer determines the sequence of instructions that
will accomplish those results
Natural Language very close to English or other
human language
lOMoARcPSD|364906 32
4- 36
Object-Oriented Languages
Combine data elements and the
procedures that will be
performed upon them into
Objects
E.g., an object could be data
about a bank account and the
procedures performed on it
such as interest calculations
lOMoARcPSD|364906 32
4- 37
Object-Oriented Languages
Most widely used software development languages
today
Easier to use and more efficient for graphics-oriented
user interfaces
Reusable: can use an object from one application in
another application
E.g., Visual Basic, C++, Java
lOMoARcPSD|364906 32
4- 38
Web Languages
HTML
A page description language that creates hypertext documents for
the Web
XML
Describes the contents of Web pages by applying identifying tags or
contextual labels to the data in Web documents
Java
Object-oriented programming language that is simple, secure and
platform independent
lOMoARcPSD|364906 32
4- 39
Java applets can be executed on any computer
Web Services
Software components
based on a framework of Web and object-oriented
standards and technologies
for using the Web
to electronically link the applications of different users
and different computing platforms
lOMoARcPSD|364906 32
4- 40
Language Translator Programs
Translate instructions written in programming
languages into machine language
Assembler
translates assembler language statements
Compiler
translates high-level language statements
lOMoARcPSD|364906 32
4- 41
Interpreter
compiler that translates and executes each statement in a
program one at a time
Java is interpreted
| 1/41

Preview text:

lOMoARcPSD|364 906 32 Lecture 03 Computer Software McGra D
wo-wn Hilo
lla/d I e r d w b i y n H
©2008,The McGraw-H oa Minh
ill Companies, All Rights Reserved (minhhoaanthea@gmail.com) lOMoARcPSD|364 906 32 Learning Objectives
1. Describe several important trends occurring in computer software.
2. Give examples of major types of application and system software.
3. Explain the purpose of several popular software packages
for end user productivity and collaborative computing.
4. Define and describe the functions of an operating system. 4- 2 lOMoARcPSD|364 906 32
5. Describe the main uses of computer programming
software, tools, and languages. 4- 3 lOMoARcPSD|364 906 32 4- 4 Types of software lOMoARcPSD|364 906 32 Software types • Application software
– Performs information processing tasks for end users • System software
– Manages and supports operations of computer systems and networks 4- 5 lOMoARcPSD|364 906 32 Application software • General purpose
– Programs that perform common information processing jobs for end users
– E.g., word processing, spreadsheet, etc.
– Also called productivity packages • Application-specific
– Programs that support specific applications of end users 4- 6 lOMoARcPSD|364 906 32
– E.g., electronic commerce, customer relationship management, etc.
Software classifications
• Classify based on how it was developed • Custom software
– Software applications that are developed within an
organization for use by that organization • COTS software
– Commercial Off-the-shelf (COTS) 4- 7 lOMoARcPSD|364 906 32
– Software developed with the intention of selling the software in multiple copies
• Why would you choose Custom over COTS?
• Why would you choose COTS over Custom? Software Suites
• Software suites integrate software packages – Advantages:
• Cost less than buying individual packages • All have a similar GUI • Work together well 4- 8 lOMoARcPSD|364 906 32 – Disadvantages
• Features not used by all users • Take a lot of disk space 4- 9 lOMoARcPSD|364 906 32 Software Suites 4- 10 lOMoARcPSD|364 906 32 Integrated Packages • Integrated packages
– Combine the functions of several programs into one package
– E.g., Microsoft Works, AppleWorks – Advantages:
• Many functions for lower price and smaller disk space – Disadvantage • Limited functionality 4- 11 lOMoARcPSD|364 906 32 Web Browser
• Software applications that support navigation through
the point-and-click resources of the Web • Surfing the web
• Becoming a universal software platform for Internetbased applications
• Microsoft Explorer, Netscape Navigator, Firefox, Opera or Mozilla 4- 12 lOMoARcPSD|364 906 32
E-mail, Instant Messaging and Weblogs • E-mail
– Software to communicate by sending and receiving messages
and attachments via the Internet, intranet or extranet • Instant messaging (IM)
– Receive electronic messages instantly • Weblog or blog
– A personal website in dated log format
– Updated with new information about a subject or range of subjects 4- 13 lOMoARcPSD|364 906 32
Word processing and Desktop publishing • Word processing
– Create, edit, revise and print documents
– E.g., Microsoft Word, Lotus WordPro and Corel WordPerfect • Desktop Publishing
– Produce printed materials that look professionally published
– E.g., Adobe PageMaker, Microsoft Publisher and QuarkXPress 4- 14 lOMoARcPSD|364 906 32
Electronic Spreadsheets and Presentation Graphics • Electronic Spreadsheets
– Worksheet of rows and columns
– Used for calculations and charts
– E.g., Lotus 1-2-3, Microsoft Excel, Corel QuattroPro • Presentation Graphics
– Convert numeric data into graphics displays
– Prepare multimedia presentations including graphics, photos, animation, and video clips
– E.g., Microsoft PowerPoint, Lotus Freelance, Corel Presentations 4- 15 lOMoARcPSD|364 906 32
Personal Information Manager and Groupware
• Personal Information Manager (PIM)
– Software for end user productivity and collaboration
– Store information about clients, schedules, manage appointments, manage tasks
– E.g., Lotus Organizer, Microsoft Outlook • Groupware
– Software that helps workgroups collaborate on group assignments
– E-mail, discussion groups, databases, videoconferencing
– E.g., Lotus Notes, Novell GroupWise, Microsoft Exchange 4- 16 lOMoARcPSD|364 906 32 Sources of Software 4- 17 lOMoARcPSD|364 906 32
Proprietary and Off-the-Shelf Software 4- 18 lOMoARcPSD|364 906 32
Software : for sale/free/rent • Commercial software:
– proprietary software or package software
– Copyright : exclusive legal right
– Software license : the right to use
– You don’t buy software: you buy a license to use the software
under the terms of the licensing agreement
– Licensed to protect the vendor’s property right • Public-domain software 4- 19 lOMoARcPSD|364 906 32
– not protected by copyright
– For ex: open source software
Software : for sale, for free or for rent ? • Shareware
– distributed free of charge but requires users to make a
monetary contribution to continue using it • Freeware
–Copyright software that is distributed free of charge • Rentalware –The users lease software 4- 20 lOMoARcPSD|364 906 32
Pirated software # counterfeit software System software
• Software that manages and supports a computer system
• System management programs
– Programs that manage hardware, software, network, and data resources
– E.g., operating systems, network management programs,
database management systems, systems utilities 4- 21 lOMoARcPSD|364 906 32
• Systems development programs
– Programs that help users develop information system programs Operating System
• Integrated system of programs that
– Manages the operations of the CPU
– Controls the input/output and storage resources and activities of the computer system
– Provides support services as computer executes applications programs 4- 22 lOMoARcPSD|364 906 32
Operating System basic functions 4- 23 lOMoARcPSD|364 906 32 User Interface
• Part of the operating system that allows you to communicate with it • Three main types: – Command-driven – Menu-driven
– Graphical user interfaces (GUI) 4- 24 lOMoARcPSD|364 906 32 Resource management
• Part of operating system that manages the hardware and
networking resources of a computer system
– Includes CPU, memory, secondary storage device,
telecommunications, and input/output peripherals • Virtual memory
– Swapping parts of programs and data between memory and magnetic disks 4- 25 lOMoARcPSD|364 906 32 File management
• Part of the operating system that controls the creation,
deletion, and access of files of data and programs 4- 26 lOMoARcPSD|364 906 32 Task Management
• Part of the operating system that manages the
accomplishment of computing tasks of the end users • Multitasking
– Task management approach that allows for several tasks to be
performed in a seemingly simultaneous fashion
• Assigns only one task to CPU but switches between tasks so
quickly looks like executing all programs at once 4- 27 lOMoARcPSD|364 906 32
– Also called multiprogramming or time-sharing
Popular Operating Systems • Windows
– GUI, multitasking, networking, multimedia
– Microsoft’s operating system
– Different versions manage servers • Unix
– Multitasking, multiuser, network-managing
– Portable – can run on mainframes, midrange and PCs • Linux
– Low-cost, powerful reliable Unix-like operating system – Open-source • MAC OS X 4- 28 lOMoARcPSD|364 906 32
– Apple operating system for the iMac
– GUI, multitasking, multimedia Other system software • Utilities
– Miscellaneous housekeeping functions
– Example, Norton utilities includes data backup, virus
protection, data compression, etc. • Performance monitors
– Programs that monitor and adjust computer system to keep them running efficiently 4- 29 lOMoARcPSD|364 906 32 • Security monitors
– Programs that monitor and control use of computer systems
to prevent unauthorized use of resources 4- 30 lOMoARcPSD|364 906 32 Programming Languages 4- 31 lOMoARcPSD|364 906 32 Machine Languages
• First-generation languages
• All program instructions had to be written using binary codes unique to each computer
• Programmers had to know the internal operations of the specific type of CPU Assembler Languages
• Second-generation languages 4- 32 lOMoARcPSD|364 906 32
• Symbols are used to represent operation codes and storage locations
• Need language translator programs to convert the
instructions into machine instructions
• Used by systems programmers (who program system software) High-Level Languages
• Third-generation languages 4- 33 lOMoARcPSD|364 906 32
• Instructions that use brief statements or arithmetic expressions
• Macroinstructions: each statement generates several
machine instructions when translated by compilers or interpreters
• Easier to learn than assembler • Machine independent
• Less efficient than assembler 4- 34 lOMoARcPSD|364 906 32
Fourth-Generation Languages
• Variety of programming languages that are
nonprocedural and conversational
• Nonprocedural – users specify results they want while
computer determines the sequence of instructions that will accomplish those results
• Natural Language – very close to English or other human language 4- 35 lOMoARcPSD|364 906 32
• Combine data elements and the procedures that will be performed upon them into Objects
• E.g., an object could be data about a bank account and the procedures performed on it such as interest calculations
Object-Oriented Languages 4- 36 lOMoARcPSD|364 906 32
Object-Oriented Languages
• Most widely used software development languages today
• Easier to use and more efficient for graphics-oriented user interfaces
• Reusable: can use an object from one application in another application
• E.g., Visual Basic, C++, Java 4- 37 lOMoARcPSD|364 906 32 Web Languages • HTML
– A page description language that creates hypertext documents for the Web • XML
– Describes the contents of Web pages by applying identifying tags or
contextual labels to the data in Web documents • Java
– Object-oriented programming language that is simple, secure and platform independent 4- 38 lOMoARcPSD|364 906 32
– Java applets can be executed on any computer Web Services • Software components
• based on a framework of Web and object-oriented standards and technologies • for using the Web
• to electronically link the applications of different users
and different computing platforms 4- 39 lOMoARcPSD|364 906 32
Language Translator Programs
• Translate instructions written in programming
languages into machine language • Assembler
– translates assembler language statements • Compiler
– translates high-level language statements 4- 40 lOMoARcPSD|364 906 32 • Interpreter
– compiler that translates and executes each statement in a program one at a time – Java is interpreted 4- 41
Document Outline

  • Learning Objectives
  • Software types
    • • Application software
    • • System software
  • Application software
    • • General purpose
    • • Application-specific
  • Software classifications
    • • Custom software
    • • COTS software
  • Software Suites
  • Software Suites (1)
  • Integrated Packages
    • • Integrated packages
  • Web Browser
    • E-mail, Instant Messaging and Weblogs
      • • E-mail
      • • Weblog or blog
    • Word processing and Desktop publishing
    • Electronic Spreadsheets and Presentation Graphics
      • • Electronic Spreadsheets
      • • Presentation Graphics
    • Personal Information Manager and Groupware
      • • Personal Information Manager (PIM)
      • • Groupware
  • Sources of Software
  • Software : for sale/free/rent
  • System software
    • • Systems development programs
  • Operating System
    • Operating System basic functions
  • User Interface
  • Resource management
    • • Virtual memory
  • File management
  • Task Management
    • • Multitasking
  • Popular Operating Systems
  • Other system software
  • Programming Languages
  • Machine Languages
  • Assembler Languages
  • High-Level Languages
  • Fourth-Generation Languages
  • Object-Oriented Languages
  • Web Languages
  • Web Services
  • Language Translator Programs
    • • Assembler
    • • Interpreter