170 likes | 174 Vues
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. SOFTWARE. DETAILED INSTRUCTIONS TO CONTROL COMPUTER OPERATION
E N D
L Ch5: Software ReviewLearning Objectives • DESCRIBE MAJOR TYPES OF SOFTWARE • EXAMINE SYSTEM SOFTWARE & OPERATING SYSTEMS • EXPLAIN SOFTWARE EVOLUTION • ANALYZE MAJOR APPLICATION LANGUAGES • DESCRIBE APPROACHES TO SOFTWARE DEVELOPMENT Sheu
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
OPERATING SYSTEM: SCHEDULED COMPUTER EVENTS ALLOCATES COMPUTER RESOURCES MONITORS EVENTS 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 SOFTWARE APPLICATION SOFTWARE SYSTEM SOFTWARE HARDWARE Sheu
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
PROGRAM 1 PROGRAM 2 OPERATING SYSTEM OPERATING SYSTEM PROGRAM 3 UNUSED MEMORY UNUSED MEMORY MULTIPROGRAMMING TRADITIONAL SINGLE-PROGRAM SYSTEM MULTIPROGRAMMING ENVIRONMENT PROGRAM 1 MULTITASKING • MULTIPROGRAMMING ON A SINGLE-USER SYSTEM • SUCH AS A MICROCOMPUTER Sheu
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 END OF SLICE Sheu
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
OTHER OBJECT CODE MODULES LANGUAGE TRANSLATION TRANSLATION PROCESS • SOURCE CODE: • HIGH-LEVEL LANGUAGE INSTRUCTIONS • COMPILER: • TRANSLATES HIGH-LEVEL CODE INTO MACHINE LANGUAGE • OBJECT CODE: • TRANSLATED INSTRUCTIONS READY FOR COMPUTER SOURCE CODE PROGRAM COMPILER OBJECT CODE LINKAGE EDITOR LOAD MODULE Sheu
GRAPHICAL USER INTERFACE (GUI) OPERATING SYSTEM USES: • GRAPHIC ICONS (Icons, Buttons, Bars, Boxes) • MOUSE • TO ISSUE COMMANDS • MAKE SELECTIONS Sheu
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
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
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
FOURTH GENERATION LANGUAGES (4GL) • CAN BE EMPLOYED BY END USERS • NONPROCEDURAL • CAN DEVELOP APPLICATIONS QUICKLY • NATURAL LANGUAGES Sheu
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) • Integrated suites/ E-mail/Web Browser/Groupware 6.25 Sheu
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
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