Application Software

Download Report

Transcript Application Software

Mgt 20600:
IT Management & Applications
Software
Thursday
February 23, 2006
Reminders
 Reading
 Fundamentals
text, Chapter Four,
Telecommunications and Networks
 Homework
– Homework Two due Friday, 2/24 by 5pm
 Next
week’s class session:
Telecommunications and Networks
Systems Software:
Operating Systems
 Operating
system (OS): set of
programs that control the hardware
and act as an interface with
applications
 Common hardware functions
– Get input (e.g., keyboard)
– Retrieve data from disks and store data
on disks
– Display information on a monitor or
printer
Operating Systems
Operating Systems
 User
interface
– Allows individuals to access and
command the computer system
– Command-based user interface:
uses text commands
– Graphical user interface (GUI): uses
icons and menus to send commands to
the computer system
– Bringing Vista to life
Operating Systems
 Hardware
independence
– 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
Operating Systems


Processing tasks
– Multitasking: more than one program running
at the same time
– Time-sharing: more than one person using a
computer system at the same time
– Scalability: ability to handle an increasing
number of concurrent users smoothly
Networking capability: features that aid users in
connecting to a computer network
Operating Systems
 Access
to system resources
– Protection against unauthorized access
– Logons and passwords
 File
management
– Ensures that files in secondary storage
are
 Available
when needed
 Protected from access by unauthorized
users
Current Operating Systems
Linux: Personal Operating System

Novell’s Linux Desktop 10
– Designed to go head-to-head against Windows
– Includes

Desktop operating system
– Desktop search feature
– Desktop note-taking technology






OpenOffice.org office productivity suite
Mozilla Firefox
Instant-messaging client
Open-source collaboration client
F-Spot personal photo management application
Technical support
– Working with software vendors to develop more
applications for Linux

HP delivers Linux laptop
Linux: Workgroup and Enterprise
Operating System

Open source operating systems (Linux)
– Increasing comfort level with this alternative
– Dominates as server operating system
– Why?
 Lower
total cost of ownership
 Lower capital investment
 Greater reliability and uptime compared to
commercial alternatives
 Greater flexibility and control
 Faster, cheaper application development
Application Software
Gives users the ability to solve problems
and perform specific tasks
 Interacts with systems software; systems
software then directs the hardware to
perform the tasks
 Software spheres of influence

–
–
–
–
Personal
Work group
Enterprise
Value Chain
Personal Productivity
Application Software
 Designed
primarily for individual use
 Support individual productivity
 Major categories
– Word processing
– Spreadsheet
– Database
– Graphics
 Often
purchased as suites of
software
Workgroup Application Software
 Workgroup
application software:
supports 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
 NetMeeting
Workgroup Software
 Workgroup
software applications
– Email
– Instant messaging
– Video conferencing
– Application sharing
– Whiteboards
– Task scheduling
– Centralized storage of group files
– File version control
Groupware

Real-time
– Web conferencing
– Instant messaging
– Support online meetings to work through issues, review plans

Asynchronous
– Online collaborative workspaces
– E-mail
– Allow collaborators to contribute on their own schedule

Collaborative suites
–
–
–
–
–
Messaging
Calendaring
Document management
Workflow automation
Archives of discussions and document versions
Groupware
Technology
Usage Rate
Percentage of
companies
deploying*
Interaction
Richness
Complexity of
interaction
possible
Work Style
Collaborators
work
simultaneousl
y in real-time
or individually
in their own
time
Good for...
Not good
for...
Important
Issues
E-Mail
98%
Low
Own time
Sharing
information
with one or
more parties
Complex,
multipartydiscussio
ns or timesensitive
messages
Systems are
interoperable;
messages can
get
overlooked or
lost; archives
can be difficult
to manage
Web
Conferencing
such as
WebEx or
Microsoft
Office Live
Meeting
(PlaceWare)
75%
High
Real-time
Multiplelocation
meetings,
complex
discussions
and real-time
decision
making
Document
retention,
audit trails
Allows
application
and video
sharing, and
can integrate
with
teleconferenci
ng
Portals
such as
Plumtree
62% (Portals)
59%
(Workspaces)
High
Own time, but
some
workspaces
offer Web
conferencing
Shared access
to documents,
tools and
experts;
managing
team
interactions
Real-time
collaboration
and quick
decision
making
Can be
difficult to
implement
across
organizations
36% have
sanctioned
IM;
another 19%
report
unauthorized
IM usage
Low
Real-time
Quick reaction
to
problems/issu
es and
answers to
questions
Complicated
discussions
among many
people
Some IM tools
offer
archiving; lack
of system
interoperabilit
y;
questionable
security
Tool Choice
When supporting person-to-person or group-togroup collaboration, think about the
complexity of the interaction and whether
individuals or teams will be working together
in real-time or on their own schedules
Online
Workspaces
uch as
s
Microsoft
SharePoint
Instant
Messaging
Groupware Examples
 Aerospace
industry
– Next-generation jets designed by
engineers working together from around
the globe
 Proctor
& Gamble
– Collaborating researchers applied paper
engineering know-how from the
company’s paper towel business to its
home-care group’s Swiffer mops
Enterprise Application Software
 Software
that benefits an entire
organization
 Enterprise resource planning
(ERP) software: programs that
manage a company’s vital business
operations for an entire multisite,
global organization
Enterprise Software Applications
In an ERP suite, all of these applications would be software
modules that you could buy separately or in combination
Enterprise Software Example
Software Development
 Proprietary
software: unique
program for a specific application,
usually developed and owned by a
single company
 Off-the-shelf software: purchased
software
– Customized package
 Application
Service Provider (ASP)
Software Development


Do not develop proprietary application software unless
doing so will meet a compelling business need that can
provide a competitive advantage.
BUILD VS. BUY
The basic arguments in the buy-vs.-build debate remain
unchanged.
WHY BUILD?
Avoid painful vendor licensing terms
Gain competitive advantage
Adapt to new technology, such as grid computing

WHY BUY?
Leverage vendors’ economies of scale
Gain broader integration capabilities
Ensure that code knowledge won’t be lost
Software Development Example
 Hyundai
Information Service North
America LLC
– IT arm of Hyundai Motor America
– Builds own software offshore
– Why?
 More
customization
 Small, unique applications
 No licensing annoyances
– Example: switch from concurrent users to name
seat licensing would have raised cost by $3,300
per user for a purchased application
Application Service Providers

Software service providers
– Salesforce.com
– Rearden Commerce
– JRG Systems

Will host
–
–
–
–

Customer relationship management (CRM) systems
Travel planning systems
Supply chain management systems
Many more
Advantages
– Quick
– Easy
– Relatively inexpensive

Disadvantage
– Won’t get 100% of the features you want or would get with a
customized software package
Software Development:
Programming Languages
Sets of keywords, symbols, and a system
of rules for constructing statements
 Allow humans to communicate instructions
to be executed by a computer
 Syntax: a set of rules associated with a
programming language
 Different languages have characteristics
that make them appropriate for particular
types of applications

Programming Language Evolution
Software Development
 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.
Software Development
Rules to Live By

Prepare three separate time and cost estimates based on past experience, software functionality
and a formal estimating technique, and compare actual results with predictions

Adopt a standard notation scheme and methodology for design and coding

Automate control of the development process and link it to a project-management tool

Use joint application design for requirements analysis

Practice iterative development

Institute a formal change-request process to prevent scope creep

Establish centres of excellence-encourage the development of specialists in each development
procedure

Measure productivity and defect removal

Employ component-based development

Institute version control

Design and test for usability

Practice code inspections and walk-throughs