Software: Systems and Application Software
Chapter 4
When selecting an operating system, you must consider the current and future needs for application software to meet the needs of the organization. In addition, your choice of a particular operating system must be consistent with your choice of hardware.
Identify & describe the functions of the 2 basic kinds of software.
Outline the role of the operating system & identify the features of several popular operating systems.
Principles and Learning Objectives
Do not develop proprietary application software unless doing so will meet a compelling business need that can provide a competitive advantage.
Discuss how applications software can support personal, workgroup, and enterprise business objectives.
Identify 3 basic approaches to developing applications software and discuss the pros and cons of each.
Principles and Learning Objectives
Choose a programming language whose functional characteristics are appropriate to the task at hand, taking into consideration the skills and experience of the programming staff.
Outline the evolution of programming languages.
The software industry continues to undergo constant change; users need to be aware of recent trends and issues to be effective in their business and personal life.
Differentiate among the five generations of programming languages.
An Overview of Software
Computer program - sequences of instructions for the computer
Documentation - describes program functions
Systems software - coordinates the activities of hardware & programs
Applications software - helps users solve particular problems
The Importance of Software in Business
Supporting Individual, Group, and Organizational Goals
Operating Systems
Operating Systems
Perform common hardware functions
Provide a user interface
Provide hardware independence
Manage system memory
Manage processing
Control access to system resources
Manage files
The Role of the Operating System
Common Hardware Functions
Accept keyboard input
Store data on disks
Send data to output devices
User Interface
Command-based interfaces
Graphical User Interfaces (GUIs)
Hardware Independence
Memory Management
Processing Tasks
Multitasking - more than one program can run at a time using a single processor
Time-sharing - multiple users can simultaneously use the resources of a single processor
Scalability - easy adaptation to more users or tasks
Access to System Resources
Protection against unauthorized access
Logins and passwords
Personal Computer Operating Systems
Personal Computer Operating Systems
Workgroup Operating Systems
Netware
Windows NT Server 4.0
Windows 2000 Server
Unix
Red Hat Linux
Mac OS X Server
Enterprise Operating Systems
IBM’s OS/390
HP’s MPE/iX (Multiprogramming Executive with integrated POSIX)
IBM’s z/OS
Linux
Consumer Appliance Operating Systems
Windows CE.NET
Mobil Linux
Windows XP Embedded
Handheld PC
Pocket PC
Palm OS
Nokia 7650
Utility Programs
Types and Functions of Applications Software
Sources of Software
Comparison of Proprietary and Off-the-Shelf Software
Personal Application Software
Personal and Application Software
Personal and Application Software
TurboTax
Quicken
Word Processing
Spreadsheet Analysis
Database Applications
Graphics Programs
On-Line Information Systems
Software Suite
Major Components of Leading Software Suites
Workgroup Application Software
Groupware
Collaborative computing software
Group Scheduling
Examples of Enterprise Application Software
Enterprise Application Software
Selected Enterprise Resource Vendors
Programming Languages
Commands and statements combined according to a particular syntax
Different languages have different characteristics
Programming Languages
First-Generation Languages
Machine language
ASCII (American Standard Code for Information Interchange)
Second-Generation Languages
Assembly languages
Assemblers
Symbolic language
Third-Generation Languages
Fourth-Generation Languages
4GLs
Programs tell the CPU the desired results, not how to get them
Examples: SQL, SAS
Fifth-Generation Languages
5GLs
Uses a visual or graphical development interface to create source language
Examples: Visual Basic, PC COBOL, and Visual C++
Object-Oriented Programming Languages
Objects - data and actions that can be performed on the data
Encapsulation - group items into an object
Polymorphism - one procedure can work with multiple objects
Inheritance - an object in a particular class gets attributes of that class
Object-Oriented Programming Languages
Software Issues & Trends
Software bugs
Open source software
Software licensing
Software upgrades
Global software support
Antitrust issues for software
How to Deal with Software Bugs
Summary
Software - consists of programs that control the workings of the computer hardware
Operating system - set of computer programs that controls the computer hardware
Application - software that applies the power of the computer to solve problems and perform specific tasks
Programming languages - provide instructions to a computer to perform some processing activity