11. APPROACHES TO SYSTEM BUILDING 11.1
SYSTEM LIFECYCLE PROJECT DEFINITION: Is There a Problem? Can it be Solved with a Project?PROJECT DEFINITION: Is There a Problem? Can it be Solved with a Project? SYSTEM STUDY: Analyze problems in Existing Systems; Define Objectives Evaluate AlternativesSYSTEM STUDY: Analyze problems in Existing Systems; Define Objectives Evaluate Alternatives DESIGN: Logical & Physical Specifications for Systems SolutionDESIGN: Logical & Physical Specifications for Systems Solution PROGRAMMING: Develop Software CodePROGRAMMING: Develop Software Code* 11.2
SYSTEM LIFECYCLE INSTALLATION: Construct, Test, Train, Convert to New SystemINSTALLATION: Construct, Test, Train, Convert to New System POSTINSTALLATION: On-going Evaluation, Modifications for Improvement to meet New RequirementsPOSTINSTALLATION: On-going Evaluation, Modifications for Improvement to meet New Requirements NECESSARY FOR LARGE, COMPLEX SYSTEMS & PROJECTS NECESSARY FOR LARGE, COMPLEX SYSTEMS & PROJECTS* SYSTEM LIFECYCLE 11.3
SYSTEM LIFECYCLE CAN BE COSTLY, TIME CONSUMINGCAN BE COSTLY, TIME CONSUMING MAY ENCOURAGE FREEZING SPECIFICATIONS EARLY IN DEVELOPMENTMAY ENCOURAGE FREEZING SPECIFICATIONS EARLY IN DEVELOPMENT MAY NOT BE SUITABLE FOR SMALL, LESS STRUCTURED SYSTEMSMAY NOT BE SUITABLE FOR SMALL, LESS STRUCTURED SYSTEMS* SYSTEM LIFECYCLE 11.4
PROTOTYPING PROCESS OF BUILDING EXPERIMENTAL SYSTEM TO DEMONSTRATE, EVALUATE APPROACH; USERS REFINE NEEDS PROCESS OF BUILDING EXPERIMENTAL SYSTEM TO DEMONSTRATE, EVALUATE APPROACH; USERS REFINE NEEDS PROTOTYPE: Preliminary working version of Information System for Demonstration, Evaluation PurposesPROTOTYPE: Preliminary working version of Information System for Demonstration, Evaluation Purposes ITERATIVE PROCESSITERATIVE PROCESS* 11.5
STEPS IN PROTOTYPING IDENTIFY USER’S REQUIREMENTSIDENTIFY USER’S REQUIREMENTS DEVELOP PROTOTYPEDEVELOP PROTOTYPE USE PROTOTYPEUSE PROTOTYPE REVISE & ENHANCE PROTOTYPEREVISE & ENHANCE PROTOTYPE BEST FOR DESIGN OF END-USER INTERFACE: How End-user Interacts With System BEST FOR DESIGN OF END-USER INTERFACE: How End-user Interacts With System* 11.6
APPLICATION SOFTWARE PACKAGES PREWRITTEN, PRECODED APPLICATION SOFTWARE, COMMERCIALLY AVAILABLE FOR SALE OR LEASE PREWRITTEN, PRECODED APPLICATION SOFTWARE, COMMERCIALLY AVAILABLE FOR SALE OR LEASE GEARED TO COMMON REQUIREMENTSGEARED TO COMMON REQUIREMENTS CUSTOMIZATION: Modification of Software to Meet Organization’s NeedsCUSTOMIZATION: Modification of Software to Meet Organization’s Needs MUST WEIGH COSTS / BENEFITSMUST WEIGH COSTS / BENEFITS* 11.7
CUSTOMIZATION MODIFYING SOFTWARE PACKAGE TO MEET ORGANIZATION’S UNIQUE REQUIREMENTS WITHOUT DESTROYING INTEGRITY OF PACKAGE RAISES DEVELOPMENT COSTS * 11.8
EFFECTS OF CUSTOMIZING SOFTWARE ON TOTAL IMPLEMENTATION COSTS % LINES OF CODE CONVERTED TOTAL IMPLEMENTATION COSTS 11.9
END-USER DEVELOPMENT END-USERS DEVELOP INFORMATION SYSTEM WITH LITTLE HELP FROM TECHNICAL SPECIALISTS USING 4th GENERATION TOOLS * 11.10
END-USER DEVELOPMENT STRENGTHS: INCREASED PRODUCTIVITY USING 4th GENERATION TOOLSINCREASED PRODUCTIVITY USING 4th GENERATION TOOLS QUERY LANGUAGESQUERY LANGUAGES GRAPHICSGRAPHICS REPORT GENERATORSREPORT GENERATORS APPLICATION GENERATORSAPPLICATION GENERATORS SHORT DEVELOPMENT TIMESSHORT DEVELOPMENT TIMES* 11.11
END-USER DEVELOPMENT WEAKNESSES: RELATIVELY INEFFICIENTRELATIVELY INEFFICIENT SLOW TRANSACTION PROCESSINGSLOW TRANSACTION PROCESSING MAY CARRY HIGH COSTMAY CARRY HIGH COST LARGE FILES CAN DEGRADE PERFORMANCELARGE FILES CAN DEGRADE PERFORMANCE NONPROCEDURAL APPROACH MAY HAMPER LOGIC & UPDATING REQUIREMENTSNONPROCEDURAL APPROACH MAY HAMPER LOGIC & UPDATING REQUIREMENTS* 11.12
END-USER DEVELOPMENT MANAGEMENT BENEFITS: IMPROVED REQUIREMENTS DETERMINATIONIMPROVED REQUIREMENTS DETERMINATION INCREASED USER INVOLVEMENT & SATISFACTIONINCREASED USER INVOLVEMENT & SATISFACTION REDUCED APPLICATION BACKLOGREDUCED APPLICATION BACKLOG* 11.13
END-USER DEVELOPMENT MANAGEMENT PROBLEMS: MEET ORGANIZATIONAL OBJECTIVES?MEET ORGANIZATIONAL OBJECTIVES? QUALITY ASSURANCE?QUALITY ASSURANCE? INADEQUATE METHODOLOGY; TESTING; DOCUMENTATION?INADEQUATE METHODOLOGY; TESTING; DOCUMENTATION? LOST CONTROL OVER DATA?LOST CONTROL OVER DATA?* 11.14
END-USER DEVELOPMENT INFORMATION CENTER: SPECIAL FACILITY WITHIN ORGANIZATIONSPECIAL FACILITY WITHIN ORGANIZATION PROVIDES TRAINING, SUPPORT FORPROVIDES TRAINING, SUPPORT FOR END-USER-COMPUTINGEND-USER-COMPUTING* 11.15
OUTSOURCING CONTRACTING: COMPUTER CENTER OPERATIONSCOMPUTER CENTER OPERATIONS TELECOMMUNICATIONS NETWORKSTELECOMMUNICATIONS NETWORKS APPLICATION DEVELOPMENTAPPLICATION DEVELOPMENT TO EXTERNAL VENDORS TO EXTERNAL VENDORS* 11.16
REWARDS & PENALTIES OF OUTSOURCING REWARDS FOR EXCELLENCE PENALTY FOR PROBLEMS LOWHIGH HIGH HIGH OUTSOURCING POTENTIAL CAFETERIA ACCOUNTING PAYROLL PLANT SCHEDULING ENGINEERING ANALYSIS TOOLS AIRLINE RESERVATIONS 11.17
SYSTEM BUILDING METHODOLOGIES STRUCTURED METHODOLOGIESSTRUCTURED METHODOLOGIES OBJECT- ORIENTED SOFTWARE DEVELOPMENTOBJECT- ORIENTED SOFTWARE DEVELOPMENT COMPUTER AIDED SOFTWARE ENGINEERING (CASE)COMPUTER AIDED SOFTWARE ENGINEERING (CASE) SOFTWARE REENGINEERINGSOFTWARE REENGINEERING* 11.18
STRUCTURED METHODOLOGIES TOP DOWN, STEP BY STEP, EACH STEP BUILDS ON PREVIOUS STRUCTURED ANALYSISSTRUCTURED ANALYSIS STRUCTURED DESIGNSTRUCTURED DESIGN STRUCTURED PROGRAMMINGSTRUCTURED PROGRAMMING FLOWCHARTSFLOWCHARTS* 11.19
STRUCTURED ANALYSIS DEFINES SYSTEM INPUTS, PROCESSES, OUTPUTSDEFINES SYSTEM INPUTS, PROCESSES, OUTPUTS PARTITIONS SYSTEM INTO SUBSYSTEMS OR MODULESPARTITIONS SYSTEM INTO SUBSYSTEMS OR MODULES LOGICAL, GRAPHICAL MODEL OF INFORMATION FLOWLOGICAL, GRAPHICAL MODEL OF INFORMATION FLOW DATA FLOW DIAGRAM: Graphical Display of Component Processes, Flow of DataDATA FLOW DIAGRAM: Graphical Display of Component Processes, Flow of Data* 11.20
DATA FLOW DIAGRAM GENERATE BILL CUSTOMER GENERATE BALANCE GENERATE REPORT MANAGER PAYMENT FILE CUSTOMER FILE 11.21
STRUCTURED ANALYSIS DATA DICTIONARY: Controlled Definitions of Descriptions of all Data, such as Variable Names & Types of DataDATA DICTIONARY: Controlled Definitions of Descriptions of all Data, such as Variable Names & Types of Data PROCESS SPECIFICATIONS: Describes Logic of Processes at Module LevelPROCESS SPECIFICATIONS: Describes Logic of Processes at Module Level* 11.22
STRUCTURED DESIGN DESIGN RULES / TECHNIQUES TO DESIGN SYSTEM, TOP DOWN IN HIERARCHICAL FASHION DESIGN RULES / TECHNIQUES TO DESIGN SYSTEM, TOP DOWN IN HIERARCHICAL FASHION STRUCTURE CHARTSTRUCTURE CHART STRUCTURED PROGRAMMINGSTRUCTURED PROGRAMMING MODULEMODULE SEQUENCE CONSTRUCTSEQUENCE CONSTRUCT SELECTION CONSTRUCTSELECTION CONSTRUCT* 11.23
CALCULATE GROSS PAY CALCULATE NET PAY CALCULATE PAY PROCESS PAYROLL UPDATE MASTER FILE GET VALID INPUTS WRITE OUTPUTS GET INPUTS VALIDATE INPUTS WRITE OUTPUTS STRUCTURE CHART (WHITE BOXES ARE MODULES) 11.24
STRUCTURED PROGRAMMING DISCIPLINE TO ORGANIZE, CODE PROGRAMSDISCIPLINE TO ORGANIZE, CODE PROGRAMS SIMPLIFIES CONTROL PATHSSIMPLIFIES CONTROL PATHS EASY TO UNDERSTAND, MODIFYEASY TO UNDERSTAND, MODIFY MODULE HAS ONE INPUT, ONE OUTPUTMODULE HAS ONE INPUT, ONE OUTPUT* 11.25
SYSTEM FLOWCHART START END READ PRINT REPORT MORE? >$10,000 <$10,000 PROCESS A PROCESS B 11.26
OBJECT - ORIENTED SOFTWARE DEVELOPMENT DEEMPHASIZES PROCEDURESDEEMPHASIZES PROCEDURES SHIFTS FOCUS FROM MODELS & DATASHIFTS FOCUS FROM MODELS & DATA TO OBJECTS, WHICH COMBINE DATA & PROCEDURESTO OBJECTS, WHICH COMBINE DATA & PROCEDURES OBJECTS REUSABLEOBJECTS REUSABLE SYSTEM: Classes; Objects; RelationshipsSYSTEM: Classes; Objects; Relationships REDUCES DEVELOPMENT TIME & COSTREDUCES DEVELOPMENT TIME & COST* 11.27
COMPUTER AIDED SOFTWARE ENGINEERING (CASE) AUTOMATION OF SOFTWARE METHODOLOGIESAUTOMATION OF SOFTWARE METHODOLOGIES PRODUCES CHARTS; DIAGRAMS; SCREEN & REPORT GENERATORS; DATA DICTIONARIES; PROGRESS REPORTS; ANALYSIS; CHECKING TOOLS; CODE; DOCUMENTATIONPRODUCES CHARTS; DIAGRAMS; SCREEN & REPORT GENERATORS; DATA DICTIONARIES; PROGRESS REPORTS; ANALYSIS; CHECKING TOOLS; CODE; DOCUMENTATION* CASE 11.28
CASE COMPUTER AIDED SOFTWARE ENGINEERING (CASE) INCREASES PRODUCTIVITY & QUALITY: ENFORCES DEVELOPMENT DISCIPLINEENFORCES DEVELOPMENT DISCIPLINE IMPROVES COMMUNICATIONIMPROVES COMMUNICATION DESIGN REPOSITORY FOR OBJECTSDESIGN REPOSITORY FOR OBJECTS AUTOMATES TEDIOUS TASKSAUTOMATES TEDIOUS TASKS AUTOMATES TESTING & CONTROLAUTOMATES TESTING & CONTROL REQUIRES ORGANIZATIONAL DISCIPLINEREQUIRES ORGANIZATIONAL DISCIPLINE* 11.29
SOFTWARE REENGINEERING SALVAGES & UPGRADES AGING SOFTWARESALVAGES & UPGRADES AGING SOFTWARE DELAYS EXPENSIVE REPLACEMENTDELAYS EXPENSIVE REPLACEMENT REVERSE ENGINEERING: CONVERTING EXISTING PROGRAMS, FILES, DATABASE FOR USE IN NEW APPLICATIONSREVERSE ENGINEERING: CONVERTING EXISTING PROGRAMS, FILES, DATABASE FOR USE IN NEW APPLICATIONS* 11.30
SOFTWARE REENGINEERING REVISE DESIGN & PROGRAM SPECIFICATIONSREVISE DESIGN & PROGRAM SPECIFICATIONS FORWARD ENGINEERING: USE REVISED MATERIALS TO GENERATE NEW, STRUCTURED CODE; STRUCTURED & MAINTAINABLE SYSTEMFORWARD ENGINEERING: USE REVISED MATERIALS TO GENERATE NEW, STRUCTURED CODE; STRUCTURED & MAINTAINABLE SYSTEM* 11.31
MANAGEMENT CHALLENGES DETERMINE RIGHT DEVELOPMENT STRATEGYDETERMINE RIGHT DEVELOPMENT STRATEGY CONTROL ORGANIZATIONAL SYSTEMS DEVELOPMENTCONTROL ORGANIZATIONAL SYSTEMS DEVELOPMENT ENFORCING STANDARD METHODOLOGYENFORCING STANDARD METHODOLOGY* 11.32