Computer Software

Download Report

Transcript Computer Software

Computer Software
Learning Objectives
• Describe several important trends occurring in computer
software.
• Give examples of several major types of application and
system software.
• Explain the purpose of several popular software packages
for end user productivity and collaborative computing.
• Outline the functions of an operating system.
• Describe the main uses of software programming
languages and tools.
Software
• Types of software
– Application software
– System software
• Application software for end users
– Application-specific
– General-purpose
• Perform common information processing jobs
• Sometimes known as productivity packages
Software Suites and Integrated Packages
• Suites are a number of productivity
packages bundled together
– Microsoft Office
– Lotus SmartSuite
– Corel WordPerfect Office
– Sun StarOffice
Software Suites and Integrated Packages
(continued)
• Advantages of suites
–
–
–
–
Cost
Similar graphical user interface
Share common tools
Programs are designed to work together
• Disadvantages of suites
– Large size
– Many features never used by many end users
Software Suites and Integrated Packages
(continued)
• Integrated Packages
– Combine SOME of the features of several
programs
– Cannot do as much as individual packages or
suites
Web Browsers
• Key software interface to the
hyperlinked resources of the World
Wide Web and the rest of the Internet
– Internet Explorer
– Netscape Communicator
Electronic Mail and Instant Messaging
• E-Mail
– Has changed the way people work and
communicate
• Instant Messaging
– An e-mail/computer conferencing hybrid
technology
– Allows real time
communication/collaboration
Word Processing and Desktop Publishing
• Word Processing
– Has computerized the creation, editing, revision,
and printing of documents.
– Advanced features
• Desktop Publishing
– Design and print newsletters, brochures, manuals,
and books
Electronic Spreadsheets
• Used for business analysis, planning,
and modeling
• Involves designing its format and
developing the relationships (formulas)
Presentation Graphics
• Helps convert numeric data into
graphic displays
• Helps prepare multimedia
presentations
• Easy to use
Personal Information Managers
• For end user productivity and
collaboration
– Store, organize, and retrieve information
•
•
•
•
•
Information about customers
Appointments
Contact lists
Task lists
Schedules
Groupware
• Collaboration software
• Helps workgroups and teams work together
to accomplish group assignments
• Combines a variety of software features and
functions
–
–
–
–
–
–
E-mail
Discussion groups and databases
Scheduling
Task management
Audio and videoconferencing
Data sharing
System Software Overview
• Programs that manage and support a
computer system and its information
processing activities
• Serves as the software interface
between computer networks and
hardware and the application programs
of end users
System Software Overview (continued)
• Two major categories
– System management programs
•
•
•
•
Operating systems
Network management programs
Database management systems
System utilities
– System development programs
• Programming language translators & editors
• CASE (computer-aided software engineering)
Operating Systems
• 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 various support services as the
computer executes application programs
Operating Systems (continued)
• Performs five basic functions
– Provides a user interface
• Allows humans to communicate with the
computer
– Command-driven
– Menu-driven
– Graphical user interface
Operating Systems (continued)
• Five basic functions (continued)
– Resource management
• Manages the hardware and networking
resources of the system
• Virtual memory capability
Operating Systems (continued)
• Five basic functions (continued)
– File management
• Controls the creation, deletion, and access of
files of data and programs
• Keeps track of the physical location of files
Operating Systems (continued)
• Five basic functions (continued)
– Task management
• Manages the accomplishment of the
computing tasks of end users
• Multitasking
– Multiprogramming
– Timesharing
Operating Systems (continued)
• Popular Operating Systems
– Windows
•
•
•
•
95, 98, ME
NT
2000
XP
• Popular operating systems (continued)
– UNIX
– Linux
– Mac OS X
Database Management Systems
• Controls the development, use, and
maintenance of databases.
• Helps organizations use their integrated
collections of data records and files
• Allows different user application programs to
easily access the same database
• Simplifies the process of retrieving information
from databases
Other System Management Programs
• Utility Programs
– Perform miscellaneous housekeeping and
file conversion functions
•
•
•
•
•
Data backup
Data recovery
Virus protection
Data compression
Data defragmentation
– Performance monitors and security
monitors
Programming Languages
• Allows a programmer to develop the sets
of instructions that constitute a
computer program
• Machine Language
– First generation language
– Written using binary codes unique to each
computer
Programming Languages (continued)
– Assembler Language
• Second generation
• Requires language translator programs called
assemblers
• Allows a computer to convert the instructions
into machine instructions
• Frequently called symbolic language
Programming Languages (continued)
– High-level Languages
• Third generation
• Uses instructions, called statements, that use
brief statements or arithmetic expressions
• Uses translator programs called compilers or
interpreters
• Syntax and semantics
Programming Languages (continued)
• Fourth-generation Languages (4GLs)
– More nonprocedural and conversational than
prior languages
– Natural languages
– Ease of use gained at the expense of some
loss in flexibility
Programming Languages (continued)
• Object-Oriented Languages (OOP)
– Ties data elements to the procedures or
actions that will be performed on them
into “objects”
– Easier to use and more efficient for
programming GUIs
Programming Software
• Helps programmers develop computer
programs
• Two basic categories
– Programming language translators
– Programming tools
Programming Software (continued)
• Language Translator Programs
– Assembler
• Translates symbolic instruction codes into
machine language instructions
– Compiler
• Translates high-level language statements
– Interpreter
• Translates and executes each statement in a
program one at a time
Programming Software (continued)
• Programming Tools
– Programming editors and debuggers
– Provides a computer-aided programming
environment
– Code generators
– Libraries of reusable objects & code
The End