• Do not develop proprietary application software unless doing so will meet a compelling business need that can provide a competitive advantage• Discuss how application software can supp
Trang 2• When selecting an operating system, you must consider the current and future requirements 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 and briefly describe the functions of the two basic kinds of software
Trang 3• Do not develop proprietary application software unless doing so will meet a compelling business need that can provide a competitive advantage
• Discuss how application software can support personal, workgroup, and enterprise business objectives
• Identify three basic approaches to developing application software and discuss the pros and cons of each
Trang 4• Choose a programming language whose functional characteristics are appropriate for the task at hand, taking into consideration the skills and experience of the programming staff
• Outline the overall evolution of programming
Trang 5• 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
• Identify several key issues and trends that have an impact on organizations and individuals
Trang 7Table 4.1: Classifying Software by Type
and Sphere of Influence
Trang 8Systems Software: Operating Systems
• Operating system (OS): a set of computer programs that controls the computer hardware and acts as an interface with application programs
• Kernel: ties all of the components of the OS together and regulates other programs; controls the most critical
processes
Trang 9Operating Systems (continued)
• Activities performed by the operating system:
• Perform common computer hardware functions
• Provide a user interface and input/output management
• Provide a degree of hardware independence
• Manage system memory
Trang 10Operating Systems (continued)
• Activities performed by the operating system:
• Manage processing tasks
• Provide networking capability
• Control access to system resources
• Manage files
Trang 11Figure 4.2:
Operating system as interface between
application software and hardware
Trang 12Operating Systems (continued)
• Common hardware functions
• Get input from the keyboard or some other input device
• Retrieve data from disks
• Store data on disks
• Display information on a monitor or printer
Trang 13Operating Systems (continued)
• User interface and input/output management
• User interface: allows individuals to access and command the computer system
• Command-based user interface: requires that text
commands be given to the computer to perform basic
activities
• Graphical user interface (GUI): uses icons and menus displayed on screen to send commands to computer system
Trang 14Operating Systems (continued)
• Application program interface (API): allows
applications to make use of the operating system
• Memory management: control how memory is accessed and maximize available memory and storage
Trang 15Figure 4.3: Application Program Interface
Links Application Software to the
Operating System
Trang 16• Processing tasks
• Multitasking: capability allowing more than one program
to run at the same time
• Time-sharing: allows more than one person to use a
computer system at the same time
• Scalability: ability of the computer to handle an increasing number of concurrent users smoothly
• Networking capability: features and capabilities of the OS
Operating Systems (continued)
Trang 17Operating Systems (continued)
• Access to system resources
• Protection against unauthorized access
• Logins and passwords
• File management: ensures that files in secondary storage are available when needed and that they are protected from access by unauthorized users
Trang 18Table 4.3: Popular Operating Systems Cross All Three Spheres of Influence
Trang 19Current Operating Systems
• Microsoft PC operating systems
• Apple computer operating systems
• Linux
Trang 20Workgroup Operating Systems
Trang 21Enterprise Operating Systems
• z/OS
• MPE/iX and HP-UX
• Linux
Trang 22Operating Systems for Small Computers
and Special-Purpose Devices
• Palm OS
• Windows Embedded
• Windows Mobile
Trang 23Utility Programs
• Utility programs are used to:
• Merge and sort sets of data
• Keep track of computer jobs being run
• Compress data files before they are stored or transmitted over a network
• Perform other important tasks
Trang 24Utility Programs (continued)
Trang 25Utility Programs (continued)
• Network and Internet utilities
• Server and mainframe utilities
• Other utilities
Trang 26Table 4.4: Examples of Utility Programs
Trang 27Application Software
• Primary function is to apply the power of the computer to give individuals, workgroups, and the entire enterprise the ability to solve problems and perform specific tasks
• Application programs interact with systems software;
systems software then directs the computer hardware to perform the necessary tasks
Trang 28Types and Functions of Application
Software
• Proprietary software: a one-of-a-kind program for a specific application, usually developed and owned by a single company
• Off-the-shelf software: existing software programs that are purchased
Trang 29Table 4.5: A Comparison of Proprietary
and Off-the-Shelf Software
Trang 30Table 4.5: A Comparison of Proprietary and Off-the-Shelf Software (continued)
Trang 31Personal Application Software
• Serve the needs of an individual user
• Include personal productivity software, which enable users to improve their personal effectiveness
Trang 32Table 4.6: Examples of Personal
Productivity Software
Trang 33Table 4.6: Examples of Personal Productivity Software (continued)
Trang 34Workgroup Application Software
• Workgroup application software: designed to support teamwork, whether people are in the same location or dispersed around the world
• Groupware: software that helps groups of people work together more efficiently and effectively
Trang 35Table 4.8: Ernst & Young’s “Three Cs”
Rule for Groupware
Trang 36Enterprise Application Software
• Software that benefits an entire organization
• Enterprise resource planning (ERP) software: a set of integrated programs that manage a company’s vital
business operations for an entire multisite, global
organization
Trang 37Table 4.9: Examples of Enterprise
Application Software
Trang 39Table 4.11: The Evolution of Programming Languages
Trang 40First Generation
• Machine language
• Required use of binary symbols (0s and 1s)
Trang 41Second Generation
• Assembly languages
• Use symbols rather than binary digits
• Assemblers: programs that translate assembly languages into machine code
Trang 42Third Generation
• Greater use of symbolic code
• Examples: BASIC, COBOL, C, and FORTRAN
• Compiler: a software program that converts the
programmer’s source code into the machine-language instructions consisting of binary digits
Trang 43Figure 4.18: How a Compiler Works
Trang 45Languages Beyond the Fourth
Generation
• Artificial intelligence, visual, and object-oriented languages
• Easier for nonprogrammers to use
• Programming languages used to create artificial
intelligence or expert systems applications are called generation languages (5GLs)
fifth-• Visual languages use a graphical or visual interface for
program development
• Object-oriented programming languages are based on
objects (data and the actions that can be performed on it)
Trang 46Software Issues and Trends
• Software bugs: defects in a computer program that keep
it from performing in the manner intended
• Copyrights and licenses
• Open-source software: software that is freely available
to anyone in a form that can be easily modified
Trang 47Software Issues and Trends
(continued)
• Shareware and freeware: software that is very
inexpensive or free, but whose source code cannot be modified
• Multiorganizational software development
• Software upgrades
• Global software support
Trang 49Summary (continued)
icons and menus displayed on screen to send commands to the computer system
• Time-sharing allows more than one person to use a
computer system at the same time
for a specific application, usually developed and owned by a single company
Trang 50Summary (continued)
• Enterprise resource planning (ERP) software:
manages a company’s vital business operations for an entire multisite, global organization
• Programming languages allow humans to communicate instructions to be executed by a computer
• Programming languages can be classified as first
generation, second generation, third generation, fourth generation, and languages beyond the fourth generation