4-3 - McGraw Hill Higher Education

Download Report

Transcript 4-3 - McGraw Hill Higher Education

Chapter
4
Computer Software
McGraw-Hill/Irwin
Copyright © 2011 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
4-3
Integrated Packages
• Combine functions of several programs
– Examples: Microsoft Works, AppleWorks
• Advantages
– Lower price
– Less disk space
– Pre-installed on microcomputers
• Disadvantages
– Limited functionality
4-4
Groupware
• Collaborate on group assignments
– E-mail, discussion groups, databases, video
conferencing
• Lotus Notes
• Novell GroupWise
• Microsoft Exchange
– Some allow teams to create websites
• Windows SharePoint Services, WebSphere
4-5
Software Alternatives
• Outsourcing
– Domestic
– Offshore
• Application service providers (ASPs)
– Companies that own, operate, and maintain
application software and computer system
resources
– Use the application for a fee over the Internet
– Pay-as-you-go
– Use expected to accelerate
4-6
Software Alternatives
• Cloud computing – services over the internet
– Natural step from grid computing (Chapter 3)
– Applications
– Virtualized hardware resources
• Vendors of cloud services
– SAP Business ByDesign, Salesforce.com,
Google Apps, MidlandHR’s “iTrent as a Service”
• Advantages
– Low barrier to entry
– Cost Savings
– More powerful software
4-7
Categories of Group Software
• System Management Programs
– Manage the resources of a computer
system
– Examples:
•
•
•
•
Operating systems
Network management programs
Database management systems
System utilities
• System Development Programs
– Helps develop IS programs and procedures
and then prepare them for processing
• Language translators and editors
• CASE and programming tools
4-8
Operating Systems
• Integrated system of programs that…
– Provides interface between user and computer
– Manages the operations of the CPU
– Controls the input/output, storage resources,
and activities of the computer system
– Provides support for application programs
• Loaded first before other tasks
4-9
Popular Operating Systems
• Windows
– GUI, multitasking, networking, multimedia
– Microsoft’s operating system
• NT, XP, 2003, Vista, Windows 7
– Different versions manage servers
• Windows Server 2008
– Based on Vista
– Release 2 to correct performance and
security issues
4-10
Popular Operating Systems
• Unix
– AT&T
– Multitasking, multi-user, network-managing
– Portable across computer sizes
• Linux
–
–
–
–
–
Low-cost, powerful, reliable
Similar to Unix-like
Open-source
Flexible
Multiple machines
4-11
Open-Source Licensing Characteristics
• The Program
– Must allow distribution of
• Source code
• Compiled form
• The License
–
–
–
–
–
–
Shall not restrict selling or giving away
Must allow modifications
Must allow distribution
May restrict modified source code
Must not discriminate
Must not restrict other software distributed
along with the licensed software
4-12
Application virtualization
• Allows software to run on a different
operating system.
• Advantages
– One machine acts like multiple machines
• Reduces the number of computers needed
• Energy savings
• Use software from multiple vendors
4-13
Web Languages
• HTML
– Hypertext documents for the Web
• XML
– Identifying tags or contextual labels
– Digital publishing
• Cheaper, faster
• Java
– Object-oriented
– Simple, secure, and platform independent
– Java applets on any computer
• JEE6 – Java Enterprise Edition 6
• Microsoft .NET
4-14
Programming Tools
• Help identify and minimize errors
– Graphical programming interfaces
– Programming editors
– Debuggers
• CASE Tools
– Help in the software development process.
• Combine many programming tools into a single
application with a common interface
• Used in different stages of the systems
development process
4-15