420 likes | 733 Vues
12. APPROACHES TO SYSTEMS-BUILDING. 12.1. LEARNING OBJECTIVES. APPRAISE SYSTEM BUILDING ALTERNATIVES COMPARE STRENGTHS, WEAKNESSES OF APPROACHES ASSESS SOLUTIONS TO PROBLEMS CREATED BY APPROACHES DESCRIBE TOOLS, METHODOLOGIES OF SYSTEMS DEVELOPMENT *. 12.2. MANAGEMENT CHALLENGES.
E N D
12. APPROACHES TO SYSTEMS-BUILDING 12.1
LEARNING OBJECTIVES • APPRAISE SYSTEM BUILDING ALTERNATIVES • COMPARE STRENGTHS, WEAKNESSES OF APPROACHES • ASSESS SOLUTIONS TO PROBLEMS CREATED BY APPROACHES • DESCRIBE TOOLS, METHODOLOGIES OF SYSTEMS DEVELOPMENT * 12.2
MANAGEMENT CHALLENGES • TRADITIONAL SYSTEMS LIFECYCLE • ALTERNATIVE SYSTEM-BUILDING APPROACHES • SYSTEM-BUILDING METHODOLOGIES & TOOLS * 12.3
SYSTEM LIFECYCLE • PROJECT DEFINITION:Is there a problem? Can it be solved with a project? • SYSTEM STUDY:Analyze problems in existing systems; define objectives evaluate alternatives • DESIGN:Logical & physical specifications for systems solution • PROGRAMMING:Develop software code * 12.4
SYSTEM LIFECYCLE • INSTALLATION:Construct, test, train, convert to new system • POSTINSTALLATION:On-going evaluation, modifications for improvement to meet new requirements NECESSARY FOR LARGE, COMPLEX SYSTEMS & PROJECTS * 12.5
SYSTEM LIFECYCLE • CAN BE COSTLY, TIME CONSUMING • MAY ENCOURAGE FREEZING SPECIFICATIONS EARLY IN DEVELOPMENT • MAY NOT BE SUITABLE FOR SMALL, LESS STRUCTURED SYSTEMS * 12.6
ALTERNATIVE SYSTEM-BUILDING APPROACHES • PROTOTYPING • APPLICATION SOFTWARE PACKAGES • END-USER DEVELOPMENT • OUTSOURCING * 12.7
PROTOTYPING PROCESS OF BUILDING EXPERIMENTAL SYSTEM TO DEMONSTRATE, EVALUATE APPROACH; USERS REFINE NEEDS • PROTOTYPE:Preliminary working version of information system for demonstration, evaluation purposes • ITERATIVE PROCESS * 12.8
STEPS IN PROTOTYPING 1. IDENTIFY USER’S REQUIREMENTS 2, DEVELOP PROTOTYPE 3, USE PROTOTYPE 4. REVISE & ENHANCE PROTOTYPE BEST FOR DESIGN OF END-USER INTERFACE:How end-user interacts with system * 12.9
APPLICATION SOFTWARE PACKAGES PREWRITTEN, PRECODED APPLICATION SOFTWARE, COMMERCIALLY AVAILABLE FOR SALE OR LEASE • GEARED TO COMMON REQUIREMENTS • CUSTOMIZATION:Modification of software to meet organization’s needs • MUST WEIGH COSTS / BENEFITS * 12.10
SELECTED EXAMPLES OF APPLICATION PROGRAMS ACCOUNTS RECEIVABLE; BOND & STOCK MANAGEMENT; COMPUTER-AIDED DESIGN (CAD) ; DOCUMENT IMAGING;E- MAIL; ENTERPRISE.RESOURCE PLANNING (ERP); GROUPWARE; HEALTH CARE; HOTEL.MANAGEMENT; INTERNET TELEPHONE; INVENTORY CONTROL; JOB COSTING; LIBRARY SYSTEMS; LIFE INSURANCE; MAILING LABELS; MATHEMATICAL / STATISTICAL MODELING; ORDER PROCESSING; PAYROLL; PROCESS CONTROL;TAX ACCOUNTING; WEB BROWSER;WORD PROCESSING * 12.11
CUSTOMIZATION MODIFYING SOFTWARE PACKAGE TO MEET ORGANIZATION’S UNIQUE REQUIREMENTS WITHOUT DESTROYING INTEGRITY OF PACKAGE RAISES DEVELOPMENT COSTS * 12.12
10 8 6 4 COSTS TOTAL IMPLEMENTATION 2 0 0.5 1 2 3 4 5 % LINES OF CODE CONVERTED EFFECTS OF CUSTOMIZING SOFTWARE ON TOTAL IMPLEMENTATION COSTS 12.13
REQUEST FOR PROPOSAL (RFP) • DESCRIPTION (PRESENT, PROPOSED) • RELIABILITY • BACKUP • SERVICES • SYSTEM SPECIFICATIONS • CRITERIA • DEMONSTRATION (PROTOTYPE) • SCHEDULE (BENCH MARKS) • PRICE (PENALTIES) • SPECIFIC QUESTIONS • PROCEDURES FOR RESPONSE * 12.14 Source: Senn, Information Technology in Business (1995)
END-USER DEVELOPMENT END-USERS DEVELOP INFORMATION SYSTEM WITH LITTLE HELP FROM TECHNICAL SPECIALISTS USING 4th GENERATION TOOLS * 12.15
END-USER DEVELOPMENT STRENGTHS: • IMPROVED REQUIREMENTS DETERMINATION • INCREASED USER INVOLVEMENT & SATISFACTION • REDUCED APPLICATION BACKLOG * 12.16
END-USER DEVELOPMENT WEAKNESSES: • RELATIVELY INEFFICIENT • SLOW TRANSACTION PROCESSING • MAY CARRY HIGH COST • LARGE FILES CAN DEGRADE PERFORMANCE • NONPROCEDURAL APPROACH MAY HAMPER LOGIC & UPDATING REQUIREMENTS * 12.17
MANAGING END-USER DEVELOPMENT INFORMATION CENTER: • SPECIAL FACILITY WITHIN ORGANIZATION • PROVIDES TRAINING, SUPPORT FOR END-USER-COMPUTING * 12.18
OUTSOURCING CONTRACTING: • COMPUTER CENTER OPERATIONS • TELECOMMUNICATIONS NETWORKS • APPLICATION DEVELOPMENT TO EXTERNAL VENDORS * 12.19
OUTSOURCING WHEN TO OUTSOURCE: • IF FIRM WON’T DISTINGUISH ITSELF BY DEVELOPING APPLICATION • PREDICTABILITY OF UNINTERRUPTED SERVICE NOT IMPORTANT • IF EXISTING SYSTEM IS LIMITED, INEFFECTIVE, INFERIOR * 12.20
SYSTEM BUILDING METHODOLOGIES • STRUCTURED METHODOLOGIES • OBJECT- ORIENTED SOFTWARE DEVELOPMENT • COMPUTER AIDED SOFTWARE ENGINEERING (CASE) • SOFTWARE REENGINEERING * 12.21
STRUCTURED METHODOLOGIES TOP DOWN, STEP BY STEP, EACH STEP BUILDS ON PREVIOUS • STRUCTURED ANALYSIS • STRUCTURED DESIGN • STRUCTURED PROGRAMMING • FLOWCHARTS * 12.22
STRUCTURED ANALYSIS • DEFINES SYSTEM INPUTS, PROCESSES, OUTPUTS • PARTITIONS SYSTEM INTO SUBSYSTEMS OR MODULES • LOGICAL, GRAPHICAL MODEL OF INFORMATION FLOW • DATA FLOW DIAGRAM:Graphical display of component processes, flow of data * 12.23
SYMBOLS FOR DATA FLOW DIAGRAMS (DFD): DATA FLOW PROCESS SOURCE OR SINK FILE 12.24
GENERATE BALANCE GENERATE BILL CUSTOMER FILE PAYMENT FILE GENERATE REPORT CUSTOMER MANAGER DATA FLOW DIAGRAM: 12.25
STRUCTURED ANALYSIS • DATA DICTIONARY:Controlled definitions of descriptions of all data, such as variable names & types of data • PROCESS SPECIFICATIONS:Describes logic of processes at module level * 12.26
STRUCTURED DESIGN DESIGN RULES / TECHNIQUES TO DESIGN SYSTEM, TOP DOWN IN HIERARCHICAL FASHION • STRUCTURE CHART • STRUCTURED PROGRAMMING • MODULE • SEQUENCE CONSTRUCT • SELECTION CONSTRUCT * 12.27
HIGH LEVEL STRUCTURE CHART: HIGH LEVEL STRUCTURE CHART: PROCESS PAYROLL GET VALID CALCULATE WRITE INPUTS PAY OUTPUTS CALCULATE CALCULATE GROSS PAY NET PAY GET VALIDATE UPDATE WRITE INPUTS INPUTS MASTER FILE OUTPUTS (WHITE BOXES ARE MODULES) (WHITE BOXES ARE MODULES) 12.28
STRUCTURED PROGRAMMING: • DISCIPLINE TO ORGANIZE, CODE PROGRAMS • SIMPLIFIES CONTROL PATHS • EASY TO UNDERSTAND, MODIFY • MODULE HAS ONE INPUT, ONE OUTPUT * 12.29
STRUCTURED PROGRAMMING: • MODULE:Logical unit of program. performs specific task(s) • SEQUENCE CONSTRUCT:Sequential steps or actions in program logic; streamlines flow • SELECTION CONSTRUCT:IF Condition R is True THEN Action C ELSE Action D • ITERATION CONSTRUCT:WHILE Condition is True DO Action E * 12.30
HUMAN RESOURCES DATA PAYROLL MASTER TIME CARDS LOAD & VALIDATE PAYROLL SYSTEM VALID TRANS- ACTIONS PAYROLL MASTER COMPARE & UPDATE PAYROLL REPORTS & CHECKS UPDATED PAYROLL MASTER DIRECT DEPOSITS GENERAL LEDGER SYSTEM FLOWCHART: 12.32
PROCESS A SEQUENCE PROCESS B R TRUE PROCESS E TRUE PROCESS D PROCESS C S SELECTION ITERATION PROGRAM FLOWCHART: 12.34
1 START 2 READ PRINT >$10,000 REPORT PROCESS A <$10,000 2 MORE? PROCESS B 1 END PROGRAM FLOWCHART: 12.35
OBJECT - ORIENTED SOFTWARE DEVELOPMENT • DE-EMPHASIZES PROCEDURES • SHIFTS FOCUS FROM MODELS & DATA • TOOBJECTS, WHICH COMBINE DATA & PROCEDURES • OBJECTS REUSABLE • SYSTEM: Classes; objects; relationships REDUCES DEVELOPMENT TIME & COST * 12.36
COMPUTER AIDED SOFTWARE ENGINEERING (CASE) • AUTOMATION OF SOFTWARE METHODOLOGIES • PRODUCES CHARTS; DIAGRAMS; SCREEN & REPORT GENERATORS; DATA DICTIONARIES; PROGRESS REPORTS; ANALYSIS; CHECKING TOOLS; CODE; DOCUMENTATION * CASE 12.37
COMPUTER AIDED SOFTWARE ENGINEERING (CASE) INCREASES PRODUCTIVITY & QUALITY: • ENFORCES DEVELOPMENT DISCIPLINE • IMPROVES COMMUNICATION • DESIGN REPOSITORY FOR OBJECTS • AUTOMATES TEDIOUS TASKS • AUTOMATES TESTING & CONTROL • REQUIRES ORGANIZATIONAL DISCIPLINE * CASE 12.38
SOFTWARE REENGINEERING • SALVAGES & UPGRADES AGING SOFTWARE • DELAYS EXPENSIVE REPLACEMENT • REVERSE ENGINEERING:CONVERTING EXISTING PROGRAMS, FILES, DATABASE FOR USE IN NEW APPLICATIONS * 12.39
SOFTWARE REENGINEERING • REVISE DESIGN & PROGRAM SPECIFICATIONS • FORWARD ENGINEERING:USE REVISED MATERIALS TO GENERATE NEW, STRUCTURED CODE; STRUCTURED & MAINTAINABLE SYSTEM * 12.40
Connect to the INTERNET PRESS LEFT MOUSE BUTTON ON ICON TO CONNECT TO THE LAUDON & LAUDON WEB SITE FOR MORE INFORMATION ON THIS CHAPTER 12.41
12. APPROACHES TO SYSTEMS-BUILDING 12.42