Title: INFORMATION TECHNOLOGY IT INFRASTRUCTURE
1CHAPTER 5. THE ROLE OF SOFTWARE IN THE
- INFORMATION TECHNOLOGY (IT) INFRASTRUCTURE
2LEARNING OBJECTIVES
- DESCRIBE MAJOR TYPES OF SOFTWARE
- EXAMINE SYSTEM SOFTWARE OPERATING SYSTEMS
- EXPLAIN SOFTWARE EVOLUTION
- ANALYZE MAJOR APPLICATION LANGUAGES
- DESCRIBE APPROACHES TO SOFTWARE DEVELOPMENT
- IDENTIFY SOFTWARE ISSUES
-
3MANAGEMENT CHALLENGES
- WHAT IS SOFTWARE?
- SYSTEM SOFTWARE
- APPLICATION SOFTWARE
- NEW SOFTWARE TOOLS, APPROACHES
- MANAGING SOFTWARE ASSETS
4SOFTWARE
- 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
5SOFTWARE
APPLICATION SOFTWARE
SYSTEM SOFTWARE
HARDWARE
6MULTIPROGRAMMING
7MULTITASKING
- MULTIPROGRAMMING
- ON A
- SINGLE-USER SYSTEM
- SUCH AS A
- MICROCOMPUTER
8VIRTUAL 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
9TIME SHARING
- MANY USERS SHARE LARGE CPU
- TIME IN CPU DIVIDED INTO SLICES (e.g. 2
MICROSECONDS) - EACH USER HAS ACCESS TO CPU DURING SLICE
- SINCE CPU IS FAST, CAN DO MUCH DURING TIME SLICE
- USERS JOB SWAPPED OUT AT END OF SLICE
10MULTIPROCESSING
- TWO OR MORE PARALLEL PROCESSORS IN SYSTEM
- PROGRAM CAN BE DIVIDED TO BE PROCESSED BY
MULTIPLE CPUs - CAN PROCESS LARGE PROGRAMS MORE RAPIDLY
11LANGUAGE TRANSLATION
- SOURCE CODE HIGH-LEVEL LANGUAGE INSTRUCTIONS
- COMPILER TRANSLATES HIGH-LEVEL CODE INTO MACHINE
LANGUAGE - OBJECT CODE TRANSLATED INSTRUCTIONS READY FOR
COMPUTER
12TRANSLATION PROCESS
13GRAPHICAL USER INTERFACE (GUI)
- OPERATING SYSTEM USES
- GRAPHIC ICONS (Icons, Buttons, Bars, Boxes)
- MOUSE
- TO ISSUE COMMANDS
- MAKE SELECTIONS
14MICROCOMPUTER OPERATING SYSTEMS
OPERATING SYSTEM
FEATURES
15MICROCOMPUTER OPERATING SYSTEMS
OPERATING SYSTEM
FEATURES
Unix
For powerful Microcomputers, Workstations,
Minicomputers. Multitasking Multi-user
Processing Networking. Portable to various
Computer Platforms
Linux
Free, reliable alternative to Unix, Windows. Runs
on many Platforms
Mac OS
For Macintosh computers. Multitasking. Powerful
Graphics Multimedia
DOS
For IBM (PC-DOS) and PC (MS-DOS). Program
Memory 640K
16GENERATIONS 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
17HIGH-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
18HIGH-LEVEL LANGUAGES
- 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. C is object oriented -
19FOURTH GENERATION LANGUAGES (4GL)
- CAN BE EMPLOYED BY END USERS
- NONPROCEDURAL
- CAN DEVELOP APPLICATIONS QUICKLY
- NATURAL LANGUAGES
- SIX CATEGORIES
-
20FOURTH GENERATION LANGUAGES (4GL)
- 1. QUERY LANGUAGES
- rapidly retrieve data
- interactive/ on-line
- may use NATURAL LANGUAGE
- support special requests for data from
relational databases -
21FOURTH GENERATION LANGUAGES (4GL)
- 2. REPORT GENERATORS
- Create customized reports
- Wide range of formats
- 3. GRAPHICS LANGUAGES
- Can manipulate drawings, graphs, photos, videos
- Presentation managers
-
22FOURTH GENERATION LANGUAGES (4GL)
- 4. APPLICATION GENERATORS
- User specifies computer needs
- Generator creates logic and code for application
- Greatly reduces development time
-
23FOURTH GENERATION LANGUAGES (4GL)
- 5. VERY HIGH-LEVEL PROGRAMMING LANGUAGES
- Professional programmer productivity tool
- Uses fewer instructions
- Reduces development time
-
24FOURTH GENERATION LANGUAGES (4GL)
- 7. SOFTWARE PACKAGE Commercially available set
of programs... - WORD PROCESSING
- SPREADSHEETS
- DATA MANAGEMENT
- PRESENTATION MANAGEMENT
- INTEGRATED SOFTWARE PACKAGES NOW COMBINE THESE
TO SIMPLIFY LEARNING AND USE
25SOFTWARE TOOLS
- WORD PROCESSING
- SPREADSHEETS
- DATA MANAGEMENT
- PRESENTATION GRAPHICS
- INTEGRATED SOFTWARE SUITES
- E-MAIL
- WEB BROWSERS
- GROUPWARE
26OBJECT-ORIENTED PROGRAMMING
- COMBINES DATA PROCEDURES INTO A SINGLE OBJECT
- PROGRAM SENDS MESSAGE TO OBJECT TO PERFORM
EMBEDDED PROCEDURE - OBJECTS DATA ENCAPSULATED FROM REST OF SYSTEM
- CREATES REUSABLE CODE
- REDUCES TIME AND COST OF WRITING SOFTWARE
-
27OBJECT-ORIENTED PROGRAMMING
- VISUAL PROGRAMMING SELECT AND ARRANGE OBJECTS
RATHER THAN WRITE CODE - CLASS ALL OBJECTS OF A CLASS HAVE ALL FEATURES
OF THAT CLASS - INHERITANCE SPECIFIC CLASS RECEIVES FEATURES OF
A MORE GENERAL CLASS - OVERRIDE SUBCLASS MAY OVEERRIDE INHERITED METHOD
(e.g. Printout of an HOURLY worker Pay Check may
differ from that of a WEEKLY worker -
28OBJECT-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
-
29OBJECT-ORIENTED PROGRAMMING
- ActiveX Controls for Windows software
environment to enable OBJECTS e.g., - CHARTS
- TABLES
- ANIMATIONS
- to be EMBEDDED IN A WEB PAGE
-
30SELECTING ORGANIZATIONAL SOFTWARE
- APPROPRIATENESS
- EFFICIENCY
- COMPATIBILITY
- SUPPORT
31Connect to the INTERNET
Laudon/Laudon Web site http//www.prenhall.co
m/laudon Additional Internet Resources related
to this chapter http//www.microsoft.com http//
www.neosoft.com/tcl http//www.bds.org http//www
.caldera.com http//www.javasoft.com http//www.r
edhat.com http//www.gamelan.com http//www.eiff
el.com newscomp.lang newscomp.lang.c
newscomp.lang.smalltalk http//www.perl.com
http//www.perl.org http//www.python.org
32CHAPTER 5. THE ROLE OF SOFTWARE IN THE
- INFORMATION TECHNOLOGY (IT) INFRASTRUCTURE