Professional Documents
Culture Documents
Applications Software End User Applications
Applications Software End User Applications
Computer Software
McGraw-Hill/Irwin Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved.
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.
4-2
Learning Objectives
Define and describe the functions of an
operating system.
Describe the main uses of computer
programming software, tools, and
languages.
Describe the issues associated with
open-source software.
4-3
Section 1
4-4
I. Introduction to Software
4-5
XI. Software Alternatives
Application Service Providers – provide necessary
applications for a fee (rather than a firm developing or
purchasing the s/w)
4-7
II. Operating Systems – programs that run
the computer operations
Operating Systems Functions –
User Interface – how the user communicates
with the computer
Graphical User Interface (GUI)
Command-driven
Menu Driven
Resource Management – manages the hardware
and network resources
File Management – controls the creation,
deletion, and access of files of the data and
programs
4-8
II. Operating Systems – programs that run
the computer operations
Operating Systems Functions –
Task Management – manages which tasks
are performed and when
Multitasking (Multiprogramming or
Timesharing) – programs take turns using the
processor
Preemptive – each program gets a slice of time
Cooperative – programs use the processor when it is
not being used by another program
Virtual Machines- applications run
independently at the same time
4-9
IV. Programming Languages
Machine Languages – first generation language –
instructions written in binary (0’s and 1’s); runs
directly on the computer
Assembler Languages – second generation
language – uses symbols/mnemonics to represent
operational codes; converted into binary by an
Assembler
High-Level Languages – third generation language
– BASIC, COBOL, FORTRAN; converted into binary
by Compilers and Interpreters; users tell the
computer What results they want and How to get
there
4-10
IV. Programming Languages
Fourth-Generation Languages (4GL) – non-
procedural languages; users tell the computer
What results they want, but the computer
decides How to get there
Fifth Generation Languages (5GL) – natural
languages, very close to English,
conversational
Object-Oriented Languages (5GL) – combine
the data elements and the programs that act
on them into Objects; Reusability
4-11
V. Web and Internet Languages and Services
HTML (Hypertext Markup Language) – a page
description language (markup languages are
NOT programming languages)
4-12
V. Web and Internet Languages and Services
Java and .NET
Java – a platform independent, object-oriented
programming language; very powerful
Applets – small Java programs that can be
executed by any computer running any OS
anywhere on the network
.NET – Microsoft’s collection of programming
support for Web services
4-14
VI. Programming Software
Interpreter – translates and executes one
line of the program at a time
Programming Tools – help programmers
identify and minimize errors as they
write the code
CASE Tools (Computer-Aided Software
Engineering) – automated software support
tools for developing systems
4-15