(O) & 6 (L): Info sys S/W Review

Download Report

Transcript (O) & 6 (L): Info sys S/W Review

L Ch5: Software Review
Learning Objectives
 DESCRIBE
MAJOR TYPES OF
SOFTWARE
 EXAMINE SYSTEM SOFTWARE &
OPERATING SYSTEMS
 EXPLAIN SOFTWARE EVOLUTION
 ANALYZE MAJOR APPLICATION
LANGUAGES
 DESCRIBE APPROACHES TO SOFTWARE
DEVELOPMENT
Sheu
1
SOFTWARE
DETAILED INSTRUCTIONS TO CONTROL
COMPUTER OPERATION
 PROGRAM: SET OF INSTRUCTIONS TO
THE COMPUTER
 STORED: PROGRAM MUST BE IN
PRIMARY STORAGE
 SYSTEM SOFTWARE: MANAGES
COMPUTER RESOURCES
 APPLICATION SOFTWARE: SPECIFIC
BUSINESS APPLICATION
Sheu
2
SOFTWARE
APPLICATION SOFTWARE
OPERATING SYSTEM:
SYSTEM SOFTWARE
SCHEDULED COMPUTER
EVENTS
ALLOCATES
COMPUTER RESOURCES
MONITORS EVENTS
HARDWARE
LANGUAGE TRANSLATORS:
INTERPRETERS
COMPILERS
UTILITY PROGRAMS:
ROUTINE OPERATIONS
MANAGE DATA
PROGRAMMING LANGUAGES:
ASSEMBLY LANGUAGE; FORTRAN;
COBOL; PL / 1; QBASIC; PASCAL; C; C++;
“FOURTH GENERATION”
LANGUAGES
Sheu
3
Software Classification
(Alternative view)
Sheu
4
OPERATING SYSTEM
MANAGES & CONTROLS ACTIVITIES
 ALLOCATION & ASSIGNMENT
 SCHEDULING
 MONITORING
 SYSTEM RESIDENCE DEVICE:
• SECONDARY STORAGE DEVICE STORING
OPERATING SYSTEM

Common OS’
•
DOS; Windows 95 & 98; Windows NT; Windows CE; OS/2;
UNIX; Mac OS
Sheu
5
MULTIPROGRAMMING
TRADITIONAL SINGLEPROGRAM SYSTEM
MULTIPROGRAMMING
ENVIRONMENT
OPERATING
SYSTEM
OPERATING
SYSTEM
PROGRAM 1
PROGRAM 1
UNUSED MEMORY
PROGRAM 2
PROGRAM 3
UNUSED MEMORY
MULTITASKING
• MULTIPROGRAMMING ON A SINGLE-USER SYSTEM
SUCH AS A MICROCOMPUTER
Sheu
6
Virtual Storage & Time Sharing
STORED PROGRAM CONCEPT
• A program can not be executed unless it is stored in
primary memory w/ data.
VIRTUAL STORAGE

METHOD OF HANDLING SEVERAL PROGRAMS IN PRIMARY
STORAGE:
• PROGRAM DIVIDED INTO
– FIXED LENGTH PORTIONS (PAGES) OR
– VARIABLE LENGTH (SEGMENTS)
• CURRENT PORTIONS RESIDE IN PRIMARY STORAGE
• PORTIONS SWAPPED OUT WHEN DONE
TIME SHARING
MANY USERS SHARE LARGE CPU:
•
•
•
•
TIME IN CPU DIVIDED INTO SLICES (e.g.: 2 MILLISECONDS)
EACH USER HAS ACCESS TO CPU DURING SLICE
SINCE CPU IS FAST, CAN DO MUCH DURING TIME SLICE
USER’S JOB SWAPPED OUT AT ENDSheu
OF SLICE
7
MULTIPROCESSING




TWO OR MORE PARALLEL PROCESSORS IN SYSTEM
PROGRAM CAN BE DIVIDED TO BE PROCESSED BY
MULTIPLE CPUs
CAN PROCESS LARGE PROGRAMS MORE RAPIDLY
Is it really paralleling at the lowest CPU level ?
Sheu
8
TRANSLATION PROCESS
LANGUAGE TRANSLATION
SOURCE CODE
PROGRAM
COMPILER
OBJECT CODE
SOURCE CODE:
• HIGH-LEVEL LANGUAGE
INSTRUCTIONS
COMPILER:
•TRANSLATES HIGH-LEVEL CODE
INTO MACHINE LANGUAGE
OBJECT CODE:
•TRANSLATED INSTRUCTIONS
READY FOR COMPUTER
OTHER OBJECT
CODE MODULES
LINKAGE
EDITOR
LOAD MODULE
Sheu
9
GRAPHICAL USER INTERFACE (GUI)
OPERATING SYSTEM USES:
 GRAPHIC ICONS (Icons, Buttons, Bars,
Boxes)
 MOUSE
• TO ISSUE COMMANDS
• MAKE SELECTIONS
Sheu
10
GENERATIONS OF PROGRAMMING LANGUAGES
1st. Since 1940s. MACHINE LANGUAGE: binary code
2nd. Since early ’50s. ASSEMBLY LANGUAGE:
mnemonics for numeric code
3rd. Since mid ‘50s. HIGH-LEVEL LANGUAGES
4th. Since late ‘70s. MODERN APPLICATION
PACKAGES
Sheu
11
HIGH-LEVEL LANGUAGES







FORTRAN (FORmula TRANslator). Scientific,
Engineering applications
COBOL (COmmon Business Oriented Language).
Predominant for Transaction Processing
BASIC (Beginners All-purpose Symbolic Instruction
Code). General Purpose PC Language
PASCAL. Used to Teach Structured Programming
Practices. Weak in File Handling, Input / Output
C and C++. Powerful PC Language for Developing
Applications. Efficient Execution; Cross Platform
PL/1 (Programming Language 1). Powerful IBM
Language for Business & Science
ADA. Designed for Weapon Systems. Can be used on
many Platforms. Structured. Can be used for Business
Sheu
12
ARTIFICIAL INTELLIGENCE LANGUAGES
LISP (LISt Processor). Began late ‘50s at
MIT. Preferred in US. Require Specially
Configured Machines
 PROLOG. Began in early ‘70s. Preferred
outside US. Cross Platform
CREATE MEANINGFUL LISTS OF
SYMBOLS (Operations; Variables; Data)

Sheu
13
FOURTH GENERATION LANGUAGES (4GL)




CAN BE EMPLOYED BY END USERS
NONPROCEDURAL
CAN DEVELOP APPLICATIONS QUICKLY
NATURAL LANGUAGES
Sheu
14
FOURTH GENERATION LANGUAGES (4GL)

SIX CATEGORIES
1. Query languages:
– rapidly retrieve data; interactive/ on-line; may use NATURAL LANGUAGE;
support special requests for data from relational databases
2. Report Generators:
– create customized reports; wide range of formats
3. Graphics Generators
– can manipulate drawings, graphs, photos, videos; presentation managers
4. Application Generators:
– user specifies computer needs; generator creates logic and code for
application; greatly reduces development time
5. Very High Level Prog. Languages:
– professional programmer productivity tool; uses fewer instructions; reduces
development time
6. Software Packages/PC Software tools
– Commercially available set of programs…(eg. MS office / Lotus
Suite)
15
6.25 – Integrated suites/ E-mail/WebSheu
Browser/Groupware
OBJECT-ORIENTED
PROGRAMMING

Object:
– COMBINES DATA & PROCEDURES INTO A SINGLE OBJECT.

Class:
– ALL OBJECTS OF A CLASS HAVE ALL FEATURES OF THAT CLASS

Message:
– PROGRAM SENDS MESSAGE TO OBJECT TO PERFORM EMBEDDED
PROCEDURE

Encapsulation:
– OBJECT’S DATA ENCAPSULATED FROM REST OF SYSTEM

Inheritance:
– SPECIFIC CLASS RECEIVES FEATURES OF A MORE GENERAL CLASS

Overriding:
– SUBCLASS MAY OVEERRIDE INHERITED METHOD

Visual Programming: (Not all OOP)
– SELECT AND ARRANGE OBJECTS RATHER THAN WRITE Code

REDUCES TIME AND COST OF WRITING SOFTWARE
Sheu
16
OBJECT-ORIENTED
PROGRAMMING
JAVA: Sun Microsystems OBJECT-ORIENTED
PROGRAMMING LANGUAGE
• APPLET: TINY PROGRAM TO EXECUTE SMALL
FUNCTION
• APPLETS DOWNLOADED FROM NETWORK
• RUN ON ANY COMPUTER & OPERATING SYSTEM
• RESULT SAVED ON NETWORK, NOT ON PC
• ONLY NETWORK VERSION OF SOFTWARE NEEDS
UPGRADE
ActiveX: CONTROLS FOR WINDOWS SOFTWARE
ENVIRONMENT
to enable OBJECTS: e.g., CHARTS, TABLES,
ANIMATIONS to be EMBEDDED IN A WEB PAGE
Sheu
17