Appraise system building alternativesAppraise system building alternatives Compare strengths,...

Post on 28-Dec-2015

232 views 0 download

Transcript of Appraise system building alternativesAppraise system building alternatives Compare strengths,...

DATA FLOW DIAGRAM:DATA FLOW DIAGRAM:

GENERATE BILL

CUSTOMER

GENERATE BALANCE

GENERATE REPORT

MANAGER

PAYMENTFILE

CUSTOMERFILE

• Appraise system building alternativesAppraise system building alternatives• Compare strengths, weaknesses of Compare strengths, weaknesses of

approachesapproaches• Assess solutions to problems created by Assess solutions to problems created by

approachesapproaches• Describe tools, methodologies of systems Describe tools, methodologies of systems

developmentdevelopment

**

Learning ObjectivesLearning Objectives

System LifecycleSystem Lifecycle

• Project definition:Project definition: is there a problem? Can is there a problem? Can it be solved with a project?it be solved with a project?

• System study:System study: analyze problems in analyze problems in existing systems; Define objectives existing systems; Define objectives evaluate alternativesevaluate alternatives

• Design:Design: logical & physical specifications logical & physical specifications for systems solutionfor systems solution

• Programming:Programming: develop software codedevelop software code**

System LifecycleSystem Lifecycle

• Installation:Installation: construct, test, train, construct, test, train, convert to new systemconvert to new system

• Post-installation:Post-installation: on-going evaluation, on-going evaluation, modifications for improvement to modifications for improvement to meet new requirementsmeet new requirements

These steps are necessary for large, These steps are necessary for large, complex systems & projectscomplex systems & projects

**

System LifecycleSystem Lifecycle

• Can be costly, time consumingCan be costly, time consuming• May encourage freezing specifications May encourage freezing specifications

early in developmentearly in development• May not be suitable for small, less May not be suitable for small, less

structured systemsstructured systems

**

Alternative System-Alternative System-building Approachesbuilding Approaches

• PrototypingPrototyping• Application software Application software

packagespackages• End-user developmentEnd-user development• OutsourcingOutsourcing

**

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:Prototype: preliminary working preliminary working version of information system for version of information system for demonstration, evaluation purposesdemonstration, evaluation purposes

• Iterative processIterative process**

Application Software PackagesApplication Software Packages

Prewritten, pre-coded application software, Prewritten, pre-coded application software, commercially available for sale or leasecommercially available for sale or lease

• Geared to common requirements Geared to common requirements (significant few; Canned functions)(significant few; Canned functions)

• Customization:Customization: modification of software to modification of software to meet organization’s needs (trivial many; meet organization’s needs (trivial many; Use programming tools)Use programming tools)

• Must weigh costs / benefitsMust weigh costs / benefits**

Selected Examples Of Selected Examples Of Application ProgramsApplication Programs

Accounts receivable; Accounts receivable; Bond & stock management; Bond & stock management; Computer-aided design (CAD) ; Computer-aided design (CAD) ; document document imaging;imaging; E- mail; E- mail; EnterpriseEnterprise.Resource planning Resource planning (ERP); (ERP); Groupware; Groupware; Health care; Health care; HotelHotel.Management; Management; Internet telephone; Internet telephone; Inventory Inventory control; control; Job costing; Job costing; Library systems; Library systems; Life Life insurance; insurance; Mailing labels; Mailing labels; Mathematical / Mathematical / statistical modeling; statistical modeling; Order processing; Order processing; Payroll; Payroll; Process control;Process control;Tax accounting; Web browser;Tax accounting; Web browser; Word processing; BannerWord processing; Banner

**

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

NT

OT

AL

IMP

LE

ME

NT

AT

ION

CO

ST

SC

OS

TS

Effects Of Customizing Software Effects Of Customizing Software On Total Implementation CostsOn Total Implementation Costs

End-user DevelopmentEnd-user Development

End-users develop information system End-users develop information system themselves, with little help from themselves, with little help from technical specialists; Using 4th technical specialists; Using 4th generation toolsgeneration tools

(Part III of this course)(Part III of this course)

**

End-user DevelopmentEnd-user DevelopmentStrengths:Strengths:• Improved requirements determinationImproved requirements determination• Increased user involvement & satisfactionIncreased user involvement & satisfaction• Reduced application backlogReduced application backlog

**

End-user DevelopmentEnd-user DevelopmentWeaknesses:Weaknesses:• Relatively inefficientRelatively inefficient• Slow transaction processingSlow transaction processing• May carry high/hidden costMay carry high/hidden cost• Nonprocedural approach makes it difficult Nonprocedural approach makes it difficult

for others to understand or updatefor others to understand or updateManagers are not really programmers; Take Managers are not really programmers; Take

them away from their REAL work.them away from their REAL work.**

OutsourcingOutsourcing

Contracting:Contracting:• Computer center operationsComputer center operations• Telecommunications networksTelecommunications networks• Application developmentApplication development To external vendors (allow others to hold To external vendors (allow others to hold

you by your throat?)you by your throat?)

**

System Building System Building MethodologiesMethodologies

• Structured methodologies (ER approach Structured methodologies (ER approach to SDLC)to SDLC)

• Object-oriented software development Object-oriented software development (BMIS 342)(BMIS 342)

• Computer aided software engineering Computer aided software engineering (CASE, BMIS 342)(CASE, BMIS 342)

• System analysis and design (BMIS 444)System analysis and design (BMIS 444)

**

Structured MethodologiesStructured Methodologies

Top down, step by step, each step Top down, step by step, each step builds on previousbuilds on previous

• Structured analysisStructured analysis

• Structured designStructured design

• Structured programmingStructured programming

• FlowchartsFlowcharts

**

Structured AnalysisStructured Analysis

• Defines system inputs, processes, outputsDefines system inputs, processes, outputs• Partitions system into subsystems or Partitions system into subsystems or

modulesmodules• Logical, graphical model of information Logical, graphical model of information

flowflow• Data flow diagram:Data flow diagram: graphical display of graphical display of

component processes, flow of datacomponent processes, flow of data

**

SYMBOLS FOR DATA FLOW DIAGRAMS (DFD):SYMBOLS FOR DATA FLOW DIAGRAMS (DFD):

DATA FLOWDATA FLOW

PROCESSPROCESS

SOURCESOURCEOR SINKOR SINK

FILEFILE

DATA FLOW DIAGRAM:DATA FLOW DIAGRAM:

GENERATE BILL

CUSTOMER

GENERATE BALANCE

GENERATE REPORT

MANAGER

PAYMENTFILE

CUSTOMERFILE

Structured AnalysisStructured Analysis

• Data dictionary:Data dictionary: controlled definitions of controlled definitions of descriptions of all data, such as variable descriptions of all data, such as variable names & types of datanames & types of data

• Process specifications:Process specifications: describes logic of describes logic of processes at module level processes at module level

**

Program Flowchart Symbols:Program Flowchart Symbols:

BEGIN OREND

DIRECTION

PROCESS

DECISION

INPUT OROUTPUT

SUBROUTINE

MANUALOPERATION

CONNECTOR11.32

Program flowchart:Program flowchart:PROCESS A

PROCESS B

SEQUENCESEQUENCE

PROCESS CPROCESS D

R

TRUE

SELECTIONSELECTION

PROCESS E

S

TRUE

ITERATIONITERATION

PROGRAM FLOWCHART:PROGRAM FLOWCHART:1

END

REPORT

MORE?2

PRINT

1

2START

READ

>$10,000

<$10,000

PROCESS A

PROCESS B

Object - Oriented Software Object - Oriented Software DevelopmentDevelopment

• De-emphasizes procedures (“what needs De-emphasizes procedures (“what needs to be done” rather than “how to do it”)to be done” rather than “how to do it”)

• Shifts focus from models & data toShifts focus from models & data to objectsobjects, which combine data & procedures, which combine data & procedures

• ““Reusable” objectsReusable” objects

Reduces development time & costReduces development time & cost

**

Software EngineeringSoftware Engineering

• The establishment and use of sound The establishment and use of sound engineering principles in order to engineering principles in order to obtain economically software that is obtain economically software that is reliable and works efficiently on real reliable and works efficiently on real machinesmachines

• Engineering: solution based on Engineering: solution based on theoretical knowledgetheoretical knowledge

Software Software ReReengineeringengineering

• Salvages & upgrades aging softwareSalvages & upgrades aging software

• Delays expensive replacementDelays expensive replacement

• Reverse engineering:Reverse engineering: converting converting existing programs, files, database for existing programs, files, database for use in new applicationsuse in new applications

**

Software ReengineeringSoftware Reengineering

• Revise design & program specificationsRevise design & program specifications• Forward engineering:Forward engineering: use revised use revised

materials to generate new, structured materials to generate new, structured code; Structured & maintainable systemcode; Structured & maintainable system

**