(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