11. approaches to system building 11.1. system lifecycle project definition: is there a problem? can...
TRANSCRIPT
11. APPROACHES TO SYSTEM BUILDING
11. APPROACHES TO SYSTEM BUILDING
DATA FLOW DIAGRAMDATA FLOW DIAGRAM
GENERATE BILL
CUSTOMER
GENERATE BALANCE
GENERATE REPORT
MANAGER
PAYMENTFILE
CUSTOMERFILE
11.1
SYSTEM LIFECYCLESYSTEM LIFECYCLE
• PROJECT DEFINITION: Is There a PROJECT DEFINITION: Is There a Problem? Can it be Solved with a Project?Problem? Can it be Solved with a Project?
• SYSTEM STUDY: Analyze problems in SYSTEM STUDY: Analyze problems in Existing Systems; Define Objectives Existing Systems; Define Objectives Evaluate AlternativesEvaluate Alternatives
• DESIGN: Logical & Physical Specifications DESIGN: Logical & Physical Specifications for Systems Solutionfor Systems Solution
• PROGRAMMING: Develop Software CodePROGRAMMING: Develop Software Code
**11.2
SYSTEM LIFECYCLESYSTEM LIFECYCLE
• INSTALLATION: Construct, Test, Train, INSTALLATION: Construct, Test, Train, Convert to New SystemConvert to New System
• POSTINSTALLATION: On-going POSTINSTALLATION: On-going Evaluation, Modifications for Improvement Evaluation, Modifications for Improvement to meet New Requirementsto meet New Requirements
NECESSARY FOR LARGE, COMPLEX NECESSARY FOR LARGE, COMPLEX SYSTEMS & PROJECTSSYSTEMS & PROJECTS
**
SYSTEM LIFECYCLESYSTEM LIFECYCLE
11.3
SYSTEM LIFECYCLESYSTEM LIFECYCLE
• CAN BE COSTLY, TIME CONSUMINGCAN BE COSTLY, TIME CONSUMING• MAY ENCOURAGE FREEZING MAY ENCOURAGE FREEZING
SPECIFICATIONS EARLY IN SPECIFICATIONS EARLY IN DEVELOPMENTDEVELOPMENT
• MAY NOT BE SUITABLE FOR SMALL, MAY NOT BE SUITABLE FOR SMALL, LESS STRUCTURED SYSTEMSLESS STRUCTURED SYSTEMS
**
SYSTEM LIFECYCLESYSTEM LIFECYCLE
11.4
PROTOTYPINGPROTOTYPING
PROCESS OF BUILDING EXPERIMENTAL PROCESS OF BUILDING EXPERIMENTAL SYSTEM TO DEMONSTRATE, EVALUATE SYSTEM TO DEMONSTRATE, EVALUATE
APPROACH; USERS REFINE NEEDSAPPROACH; USERS REFINE NEEDS
• PROTOTYPE: Preliminary working PROTOTYPE: Preliminary working version of Information System for version of Information System for Demonstration, Evaluation PurposesDemonstration, Evaluation Purposes
• ITERATIVE PROCESSITERATIVE PROCESS
**
11.5
STEPS IN PROTOTYPINGSTEPS 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 BEST FOR DESIGN OF END-USER INTERFACE: How End-user Interacts INTERFACE: How End-user Interacts With SystemWith System
**11.6
APPLICATION SOFTWARE PACKAGES
APPLICATION SOFTWARE PACKAGES
PREWRITTEN, PRECODED APPLICATION PREWRITTEN, PRECODED APPLICATION SOFTWARE, COMMERCIALLY SOFTWARE, COMMERCIALLY AVAILABLE FOR SALE OR LEASEAVAILABLE FOR SALE OR LEASE
• GEARED TO COMMON REQUIREMENTSGEARED TO COMMON REQUIREMENTS• CUSTOMIZATION: Modification of CUSTOMIZATION: Modification of
Software to Meet Organization’s NeedsSoftware to Meet Organization’s Needs• MUST WEIGH COSTS / BENEFITSMUST WEIGH COSTS / BENEFITS
**
11.7
CUSTOMIZATIONCUSTOMIZATION
MODIFYING SOFTWARE PACKAGE MODIFYING SOFTWARE PACKAGE
TO MEET ORGANIZATION’S UNIQUE TO MEET ORGANIZATION’S UNIQUE REQUIREMENTSREQUIREMENTS
WITHOUT DESTROYING INTEGRITYWITHOUT DESTROYING INTEGRITY
OF PACKAGEOF PACKAGE
RAISES DEVELOPMENT COSTSRAISES DEVELOPMENT COSTS
**
11.8
EFFECTS OF CUSTOMIZING SOFTWARE ON TOTAL IMPLEMENTATION COSTS
EFFECTS OF CUSTOMIZING SOFTWARE ON TOTAL IMPLEMENTATION COSTS
0
2
4
6
8
10
0.5 1 2 3 4 5
% LINES OF CODE CONVERTED% LINES OF CODE CONVERTED
TO
TA
L IM
PL
EM
EN
TA
TIO
N
TO
TA
L IM
PL
EM
EN
TA
TIO
N
CO
ST
SC
OS
TS
11.9
END-USER DEVELOPMENTEND-USER DEVELOPMENT
END-USERS DEVELOP INFORMATION END-USERS DEVELOP INFORMATION SYSTEMSYSTEM
WITH LITTLE HELP FROM WITH LITTLE HELP FROM
TECHNICAL SPECIALISTSTECHNICAL SPECIALISTS
USING 4th GENERATION TOOLSUSING 4th GENERATION TOOLS
**
11.10
END-USER DEVELOPMENTEND-USER DEVELOPMENT
STRENGTHS:STRENGTHS:• INCREASED PRODUCTIVITY USING 4th INCREASED PRODUCTIVITY USING 4th
GENERATION TOOLSGENERATION TOOLS• QUERY LANGUAGESQUERY LANGUAGES• GRAPHICSGRAPHICS• REPORT GENERATORSREPORT GENERATORS• APPLICATION GENERATORSAPPLICATION GENERATORS• SHORT DEVELOPMENT TIMESSHORT DEVELOPMENT TIMES
**
11.11
END-USER DEVELOPMENTEND-USER DEVELOPMENT
WEAKNESSES: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 NONPROCEDURAL APPROACH MAY HAMPER
LOGIC & UPDATING REQUIREMENTSLOGIC & UPDATING REQUIREMENTS
**
11.12
END-USER DEVELOPMENTEND-USER DEVELOPMENT
MANAGEMENT BENEFITS:MANAGEMENT BENEFITS:• IMPROVED REQUIREMENTS IMPROVED REQUIREMENTS
DETERMINATIONDETERMINATION• INCREASED USER INVOLVEMENT & INCREASED USER INVOLVEMENT &
SATISFACTIONSATISFACTION• REDUCED APPLICATION BACKLOGREDUCED APPLICATION BACKLOG
**
11.13
END-USER DEVELOPMENTEND-USER DEVELOPMENT
MANAGEMENT PROBLEMS:MANAGEMENT PROBLEMS:• MEET ORGANIZATIONAL OBJECTIVES?MEET ORGANIZATIONAL OBJECTIVES?• QUALITY ASSURANCE?QUALITY ASSURANCE?• INADEQUATE METHODOLOGY; TESTING; INADEQUATE METHODOLOGY; TESTING;
DOCUMENTATION?DOCUMENTATION?• LOST CONTROL OVER DATA?LOST CONTROL OVER DATA?
**
11.14
END-USER DEVELOPMENTEND-USER DEVELOPMENT
INFORMATION CENTER:INFORMATION CENTER:• SPECIAL FACILITY WITHIN SPECIAL FACILITY WITHIN
ORGANIZATIONORGANIZATION• PROVIDES TRAINING, SUPPORT FORPROVIDES TRAINING, SUPPORT FOR• END-USER-COMPUTINGEND-USER-COMPUTING
**
11.15
OUTSOURCINGOUTSOURCING
CONTRACTING:CONTRACTING:• COMPUTER CENTER OPERATIONSCOMPUTER CENTER OPERATIONS• TELECOMMUNICATIONS NETWORKSTELECOMMUNICATIONS NETWORKS• APPLICATION DEVELOPMENTAPPLICATION DEVELOPMENT
TO EXTERNAL VENDORSTO EXTERNAL VENDORS
**
11.16
REWARDS & PENALTIES OF OUTSOURCINGREWARDS & PENALTIES OF OUTSOURCING
REWARDS FOR EXCELLENCEREWARDS FOR EXCELLENCE
PE
NA
LT
Y F
OR
PR
OB
LE
MS
PE
NA
LT
Y F
OR
PR
OB
LE
MS
LOWLOW HIGHHIGH
HIGHHIGH
HIGH HIGH OUTSOURCING OUTSOURCING POTENTIALPOTENTIAL
CAFETERIA CAFETERIA ACCOUNTINGACCOUNTING
PAYROLLPAYROLL PLANT PLANT SCHEDULINGSCHEDULING
ENGINEERING ENGINEERING ANALYSIS TOOLSANALYSIS TOOLS
AIRLINE AIRLINE RESERVATIONSRESERVATIONS
11.17
SYSTEM BUILDING METHODOLOGIESSYSTEM BUILDING METHODOLOGIES
• STRUCTURED METHODOLOGIESSTRUCTURED METHODOLOGIES
• OBJECT- ORIENTED SOFTWARE OBJECT- ORIENTED SOFTWARE DEVELOPMENTDEVELOPMENT
• COMPUTER AIDED SOFTWARE COMPUTER AIDED SOFTWARE ENGINEERING (CASE)ENGINEERING (CASE)
• SOFTWARE REENGINEERINGSOFTWARE REENGINEERING
**
11.18
STRUCTURED METHODOLOGIESSTRUCTURED METHODOLOGIES
TOP DOWN, STEP BY STEP, EACH TOP DOWN, STEP BY STEP, EACH STEP BUILDS ON PREVIOUSSTEP BUILDS ON PREVIOUS
• STRUCTURED ANALYSISSTRUCTURED ANALYSIS
• STRUCTURED DESIGNSTRUCTURED DESIGN
• STRUCTURED PROGRAMMINGSTRUCTURED PROGRAMMING
• FLOWCHARTSFLOWCHARTS
**
11.19
STRUCTURED ANALYSISSTRUCTURED ANALYSIS
• DEFINES SYSTEM INPUTS, PROCESSES, DEFINES SYSTEM INPUTS, PROCESSES, OUTPUTSOUTPUTS
• PARTITIONS SYSTEM INTO SUBSYSTEMS PARTITIONS SYSTEM INTO SUBSYSTEMS OR MODULESOR MODULES
• LOGICAL, GRAPHICAL MODEL OF LOGICAL, GRAPHICAL MODEL OF INFORMATION FLOWINFORMATION FLOW
• DATA FLOW DIAGRAM: Graphical Display DATA FLOW DIAGRAM: Graphical Display of Component Processes, Flow of Dataof Component Processes, Flow of Data
**11.20
DATA FLOW DIAGRAMDATA FLOW DIAGRAM
GENERATE BILL
CUSTOMER
GENERATE BALANCE
GENERATE REPORT
MANAGER
PAYMENTFILE
CUSTOMERFILE
11.21
STRUCTURED ANALYSISSTRUCTURED ANALYSIS
• DATA DICTIONARY: Controlled Definitions DATA DICTIONARY: Controlled Definitions of Descriptions of all Data, such as of Descriptions of all Data, such as Variable Names & Types of DataVariable Names & Types of Data
• PROCESS SPECIFICATIONS: Describes PROCESS SPECIFICATIONS: Describes Logic of Processes at Module Level Logic of Processes at Module Level
**
11.22
STRUCTURED DESIGNSTRUCTURED DESIGN
DESIGN RULES / TECHNIQUES TO DESIGN DESIGN RULES / TECHNIQUES TO DESIGN SYSTEM, TOP DOWN IN HIERARCHICAL SYSTEM, TOP DOWN IN HIERARCHICAL FASHIONFASHION
• 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 CHARTSTRUCTURE CHART
(WHITE BOXES ARE MODULES)(WHITE BOXES ARE MODULES)11.24
STRUCTURED PROGRAMMINGSTRUCTURED PROGRAMMING
• DISCIPLINE TO ORGANIZE, CODE DISCIPLINE TO ORGANIZE, CODE PROGRAMSPROGRAMS
• SIMPLIFIES CONTROL PATHSSIMPLIFIES CONTROL PATHS
• EASY TO UNDERSTAND, MODIFYEASY TO UNDERSTAND, MODIFY
• MODULE HAS ONE INPUT, ONE MODULE HAS ONE INPUT, ONE OUTPUTOUTPUT
**
11.25
SYSTEM FLOWCHARTSYSTEM FLOWCHART
1
1
2
2
START
END
READ
REPORT
MORE?
>$10,000
<$10,000
PROCESS A
PROCESS B
11.26
OBJECT - ORIENTED SOFTWARE DEVELOPMENT
OBJECT - ORIENTED SOFTWARE DEVELOPMENT
• DEEMPHASIZES PROCEDURESDEEMPHASIZES PROCEDURES• SHIFTS FOCUS FROM MODELS & DATASHIFTS FOCUS FROM MODELS & DATA• TO TO OBJECTSOBJECTS, WHICH COMBINE DATA & , WHICH COMBINE DATA &
PROCEDURESPROCEDURES• OBJECTS REUSABLEOBJECTS REUSABLE• SYSTEM: Classes; Objects; RelationshipsSYSTEM: Classes; Objects; Relationships• REDUCES DEVELOPMENT TIME & COST REDUCES DEVELOPMENT TIME & COST
**
11.27
COMPUTER AIDED SOFTWARE ENGINEERING (CASE)
COMPUTER AIDED SOFTWARE ENGINEERING (CASE)
• AUTOMATION OF SOFTWARE AUTOMATION OF SOFTWARE METHODOLOGIESMETHODOLOGIES
• PRODUCES CHARTS; DIAGRAMS; PRODUCES CHARTS; DIAGRAMS; SCREEN & REPORT GENERATORS; SCREEN & REPORT GENERATORS; DATA DICTIONARIES; PROGRESS DATA DICTIONARIES; PROGRESS REPORTS; ANALYSIS; CHECKING REPORTS; ANALYSIS; CHECKING TOOLS; CODE; DOCUMENTATIONTOOLS; CODE; DOCUMENTATION
**
CASCASEE
11.28
CASCASEE
COMPUTER AIDED SOFTWARE ENGINEERING (CASE)
COMPUTER AIDED SOFTWARE ENGINEERING (CASE)
INCREASES PRODUCTIVITY & QUALITY: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 REENGINEERINGSOFTWARE REENGINEERING
• SALVAGES & UPGRADES AGING SALVAGES & UPGRADES AGING SOFTWARESOFTWARE
• DELAYS EXPENSIVE REPLACEMENTDELAYS EXPENSIVE REPLACEMENT• REVERSE ENGINEERING: CONVERTING REVERSE ENGINEERING: CONVERTING
EXISTING PROGRAMS, FILES, DATABASE EXISTING PROGRAMS, FILES, DATABASE FOR USE IN NEW APPLICATIONSFOR USE IN NEW APPLICATIONS
**
11.30
SOFTWARE REENGINEERINGSOFTWARE REENGINEERING
• REVISE DESIGN & PROGRAM REVISE DESIGN & PROGRAM SPECIFICATIONSSPECIFICATIONS
• FORWARD ENGINEERING: USE REVISED FORWARD ENGINEERING: USE REVISED MATERIALS TO GENERATE NEW, MATERIALS TO GENERATE NEW, STRUCTURED CODE; STRUCTURED & STRUCTURED CODE; STRUCTURED & MAINTAINABLE SYSTEMMAINTAINABLE SYSTEM
**
11.31
MANAGEMENT CHALLENGESMANAGEMENT CHALLENGES
• DETERMINE RIGHT DEVELOPMENT DETERMINE RIGHT DEVELOPMENT STRATEGYSTRATEGY
• CONTROL ORGANIZATIONAL CONTROL ORGANIZATIONAL SYSTEMS DEVELOPMENTSYSTEMS DEVELOPMENT
• ENFORCING STANDARD ENFORCING STANDARD METHODOLOGYMETHODOLOGY
**
11.32