Title: Information Systems in Business: Software
1Information Systemsin Business Software
2The Software Crisis
Computer System
- New software applications cannot be developed
fast enough to - Keep up with dynamic business environment
- Keep pace with rapid hardware advances
- Lag in software development limits IS
capabilities
Hardware
Software
Computer hardware power grows roughly by a factor
of two every 18 months (Moores law), but
computer software power barely doubles in
eight years.
3The Software Crisis (continued)
- In addition to new application development,
existing software must also be maintained (80 IT
personnel effort towards maintenance). - Increasing complexity leads to the increased
potential for bugs. - Testing and debugging software is expensive and
time-consuming.
4Software Fundamentals
- Some basic terms
- Computer programs - sequences of instructions for
the computer - Stored program concept instructions written in
programs are stored and executed by CPU when
needed - Programming - process of writing (or coding)
programs - Programmers - individuals who perform programming
5Software Instructions to the Computer
- A computer program is a series of instructions to
a computer to execute any and all processes - Computers only understand instructions
consisting of electrical signals alternating
between two states
6Software Instructions to the Computer
- Application software enables users to complete a
particular task - The instructions direct computer hardware to
perform specific data or information processing
activities that provide functionality to the
user. This functionality may be broad, such as
general word processing, or narrow, such as an
organizations payroll program - System software enables application software to
run on a computer and manages the interaction
between hardware devices - e.g. loading itself when the computer is first
turned on, as in Windows Professional managing
hardware resources such as secondary storage etc.
7Systems software
- Operating system
- System software
- Manages and controls computer
8- Functions of the operating system
- Allocates and assigns system resources
- Schedules use of computer resources
- Monitors computer system activities
- Provides locations in primary memory for data and
programs - Controls the input and output devices
9Functions of the operating system
- Time Sharing
- Sharing of computer resources by many users
simultaneously - Multiprocessing
- Executing two or more instructions simultaneously
in a single computer using multiple central
processing units
10Functions of the operating system
- Multitasking
- Multiprogramming capability of single-user
operating systems - Virtual Storage
- Handles programs more efficiently by dividing the
programs into small fixed or variable length
11Functions of the operating system
- Multi-tasking - What this really means is that
the programs are taking turns with the processor.
It allows a single user to have the spreadsheet
and the word processor open at the same time, and
even more. Now the user can see to copy data from
one to the other. - The computer must decide on how many time slices
each program gets. The active program gets the
most. Next is programs that are doing things but
which aren't the foreground program. Last is
programs that are open but aren't doing anything.
They need a little bit of time every now and then
to see if they are supposed to do something yet.
12Functions of the operating systemTime-Sharing
and Multi-processing
- The next step up in complexity is multiple users.
On a network several users can be using the same
computer or even the same program on that
computer. This is called time-sharing. - If a computer has multiple CPUs, it can do
multiprocessing. Rather than a single CPU giving
out turns to various programs, the different CPUs
can work simultaneously. Speed increases
immensely. Of course cost does, too! - It is possible for a computer to use more than
one operating system through the use of virtual
machines. "Virtual" means it's not really there.
But programs written for different operating
systems are fooled into thinking their required
operating system is present.
13TYPES OF SOFTWARE
Virtual Storage
14Application software
- Includes proprietary application software and
off-the-shelf application software. - Tailor-made application software addresses a
specific or unique business need for a company. - may be developed in-house by IS personnel or may
be commissioned from a software vendor. - Such specific software programs developed for a
particular company by a vendor are called
contract software. Alternatively, off-the-shelf
application software can be purchased, leased, or
rented from a vendor that develops programs and
sells them to many organizations. - Off-the-shelf software may be a standard package
or it may be customizable. Special purpose
programs or packages can be tailored for a
specific purpose, such as inventory control or
payroll. - General-purpose application programs that are not
linked to any specific business task, but instead
support general types of information processing. - e.g spreadsheet, data management, word
processing, desktop publishing, graphics,
multimedia, and communications.
15TYPES OF SOFTWARE
Spreadsheet Software
16TYPES OF SOFTWARE
Data Management Software
17How are Programs Understood by the Computer?
(The Language Translation Process)
18Programming Languages
- Abbreviated forms of instructions that translate
into machine language - New programming languages make programming easier
for people who are not necessarily hardware
experts
19Programming Languages (Cont.)
20First Generation Machine Languages (ML)
- Only languages computers can directly interpret
to carry out instructions - ML coding time-consuming and error-prone
- ML programmers concerned with hardware details
- Every computer or family of computers has its own
ML each is machine-dependent
21Second Generation Assembly Languages
- Represent a string of 0s and 1s for machine
language instruction - More English-like codes shorter than machine
languages - Assembler translates into machine language
- Advantages of machine or assembly languages
- Programmer in control of hardware
- Programs written in low-level languages run more
efficiently
22Third Generation Procedural Languages
- Third-generation (procedural) languages are more
English-like than assembly languages - Programmers focus on the procedure of the
application problem at hand - Some languages are standardized or portable
- Relatively easy to learn, write, and debug
- FORTRAN, COBOL, BASIC
23Fourth Generation Languages (4GL)
- 4GLs are more English-like than procedural
languages - Programmer only has to select an action without
having to specify the actions formula or
procedure - Easy to learn and use shorter application
development time - PowerBuilder, SQL
24Fourth Generation Languages (Cont.)
25Visual Programming
- Languages that let programmers create field
windows, scroll-down menus, click buttons, etc.,
by choosing from a palette - Appropriate code written automatically
- Accelerates work
- Microsofts Visual Basic
26MENU BAR
TOOLBAR
FORM LOCATION SIZE INFORMATION
PROJECT EXPLORER WINDOW
FORM1 NAME OF THE OBJECT
FORM
FORM CLASS OF THE OBJECT
PROPERTIES WINDOW
PROPERTIES HELP PANE
TOOLBOX
FORM LAYOUT WINDOW
FORM WINDOW
27TOOLBOX
POINTER (NOT A CONTROL)
PICTUREBOX
LABEL
TEXTBOX
FRAME
COMMAND BUTTON
CHECKBOX
OPTIONBUTTON
COMBOBOX
LISTBOX
HSCROLLBAR
VSCROLLBAR
DRIVELISTBOX
TIMER
FILELISTBOX
DIRLISTBOX
SHAPE
LINE
DATACONTROL
IMAGE
OLE
28(No Transcript)
29Object-Oriented Programming (OOP)
- Emphasis on the objects involved in the task, not
on the procedure - In traditional programming, programmers receive
specifications of how a program should process
data and how it should interact with users - An object encapsulates a data set with the code
that is used to operate on it - Standardized programming modules can be reused
- Applications can be rapidly developed with
appropriate objects from an object library