Computer Software. Describe several important trends occurring in computer software. Give examples...

Post on 23-Dec-2015

236 views 0 download

Tags:

Transcript of Computer Software. Describe several important trends occurring in computer software. Give examples...

Computer SoftwareComputer Software

• 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.

Learning ObjectivesLearning Objectives

• 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

SoftwareSoftware

• Suites are a number of productivity packages bundled together– Microsoft Office– Lotus SmartSuite– Corel WordPerfect Office– Sun StarOffice

Software Suites and Integrated PackagesSoftware Suites and Integrated Packages

• 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 Software Suites and Integrated Packages (continued)(continued)

• Integrated Packages– Combine SOME of the features of several

programs– Cannot do as much as individual packages or

suites

Software Suites and Integrated Packages Software Suites and Integrated Packages (continued)(continued)

• Key software interface to the hyperlinked resources of the World Wide Web and the rest of the Internet– Internet Explorer– Netscape Communicator

Web BrowsersWeb Browsers

• E-Mail– Has changed the way people work and

communicate

• Instant Messaging– An e-mail/computer conferencing hybrid

technology– Allows real time

communication/collaboration

Electronic Mail and Instant MessagingElectronic Mail and Instant Messaging

• Word Processing– Has computerized the creation, editing, revision,

and printing of documents.– Advanced features

• Desktop Publishing– Design and print newsletters, brochures, manuals,

and books

Word Processing and Desktop PublishingWord Processing and Desktop Publishing

• Used for business analysis, planning, and modeling

• Involves designing its format and developing the relationships (formulas)

Electronic SpreadsheetsElectronic Spreadsheets

• Helps convert numeric data into graphic displays

• Helps prepare multimedia presentations

• Easy to use

Presentation GraphicsPresentation Graphics

• For end user productivity and collaboration– Store, organize, and retrieve information• Information about customers• Appointments• Contact lists• Task lists• Schedules

Personal Information ManagersPersonal Information Managers

• 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

GroupwareGroupware

• 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 OverviewSystem Software Overview

• 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)

System Software Overview (continued)System Software Overview (continued)

• 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 SystemsOperating Systems

• 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)Operating Systems (continued)

• Five basic functions (continued)– Resource management• Manages the hardware and networking

resources of the system• Virtual memory capability

Operating Systems (continued)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)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)Operating Systems (continued)

• Popular Operating Systems– Windows

• 95, 98, ME• NT• 2000• XP

• Popular operating systems (continued)– UNIX– Linux– Mac OS X

Operating Systems (continued)Operating Systems (continued)

• 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

Database Management SystemsDatabase Management Systems

• Utility Programs– Perform miscellaneous housekeeping and

file conversion functions• Data backup• Data recovery• Virus protection• Data compression• Data defragmentation

– Performance monitors and security monitors

Other System Management ProgramsOther System Management Programs

• 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 LanguagesProgramming Languages

– 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)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)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)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 Languages (continued)Programming Languages (continued)

• Helps programmers develop computer programs

• Two basic categories– Programming language translators– Programming tools

Programming SoftwareProgramming Software

• 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 Software (continued)

• Programming Tools– Programming editors and debuggers– Provides a computer-aided programming

environment– Code generators– Libraries of reusable objects & code

Programming Software (continued)Programming Software (continued)

The End