+ All Categories
Home > Documents > © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn...

© Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn...

Date post: 21-Dec-2015
Category:
View: 213 times
Download: 0 times
Share this document with a friend
Popular Tags:
43
© Holmes Miller 1999 System Development
Transcript
Page 1: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

© Holmes Miller 1999

System Development

Page 2: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Why Learn About Systems Development?

Important to learn how to: Initiate systems development processAnalyze your needs with help of IS personnel

Learn how a project can be:PlannedAligned with corporate goalsRapidly developed

Page 3: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

An Overview of Systems Development

Managers and employees in all functional areas work together in a business information system

Users help and often lead the way with development process

Participants in systems development: Determine when a project failsAre critical to systems development success

Page 4: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Participants in Systems Development

Development team consists of the following: Project managers: coordinate system development effort Stakeholders: directly or indirectly benefit from the

project Users: interact with the system regularly Systems analysts: analyze and design business systems Programmers: modify or develop programs to satisfy

user requirements Various support personnel: specialists, vendors

Page 5: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Information Systems Planning and Aligning Corporate and IS Goals

Information systems planning: translating strategic and organizational goals into systems development initiatives

Aligning organizational goals and IS goals is critical for any successful systems development effort

Determining whether organizational and IS goals are aligned can be difficult

Page 6: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Systems Development Life Cycles

The systems development process is also called a systems development life cycle (SDLC)

Common SDLCsTraditional systems development life cycle PrototypingRapid application development (RAD)End-user development

Page 7: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

The Traditional Systems Development Life Cycle

Figure 8.3: The Traditional Systems Development Life Cycle

Page 8: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Prototyping

An iterative approach to systems development

Figure 8.4: Prototyping

Page 9: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Rapid Application Development, Agile Development, Joint Application Development, and Other Systems Development Approaches

Rapid application development (RAD) Systems development approach that employs tools,

techniques, and methodologies designed to speed application development

Some iterative development approaches allow the system to change as it is being developed Agile development: frequent face-to-face meetings

between systems developers and users XP programming: pairs of programmers work together to

develop robust systems quickly Joint application development (JAD)

Process for data collection and requirements analysis in which users, stakeholders, and IS professionals work together to analyze existing systems, propose possible solutions, and define the requirements of a new or modified system

Used extensively by RAD Often utilizes group support systems (GSS) software to

foster positive group interactions

Page 10: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

The End-User Systems Development Life Cycle

End-user systems development: any systems development project in which the primary effort is undertaken by a combination of business managers and users

End-user-developed systems can be structured as complementary to, rather than in conflict with, existing and emerging information systems

Page 11: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Outsourcing and On Demand Computing

An outside consulting firm or computer company that specializes in systems development can take over some or all of the development and operations activities

Reasons for using outsourcing and on demand computingReducing costs, obtaining state-of-the-art

technology, eliminating staffing and personnel problems, and increasing technological flexibility

Page 12: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Use of Computer-Aided Software Engineering (CASE) Tools

Computer-aided software engineering (CASE): tools that automate many of the tasks required in a systems development effort and encourage adherence to the SDLC Instill a high degree of rigor and standardization to

the entire systems development processUpper-CASE tools focus on investigation, analysis,

and designLower-CASE tools focus on implementation

Page 13: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Use of Computer-Aided Software Engineering (CASE) Tools

(continued)

Table 8.2: Advantages and Disadvantages of CASE Tools

Page 14: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Object-Oriented Systems Development

Object-oriented systems development (OOSD) Approach to systems

development that combines the logic of the systems development life cycle with the power of object-oriented modeling and programming

Object-oriented systems development typically involves: Identifying potential problems

and opportunities within the organization that would be appropriate for the OO approach

Defining the kind of system users require

Designing the system Programming or modifying

modules Evaluation by users Periodic review and

modification

Page 15: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Systems Investigation

What primary problems might a new or enhanced system solve?

What opportunities might a new or enhanced system provide?

What new hardware, software, databases, telecommunications, personnel, or procedures will improve an existing system or are required in a new system?

What are the potential costs (variable and fixed)?

What are the associated risks?

Initiating Systems Investigation Systems request form:

document filled out by someone who wants the IS department to initiate systems investigation

Helps rationalize and prioritize the activities of the IS department

Includes the following information:

Problems in and opportunities for system

Objectives in investigation Overview, costs, and

benefits of proposed system

Page 16: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Feasibility Analysis

Technical feasibility: hardware, software, and other system components

Economic feasibility: predicted benefits vs. cost and time

Legal feasibility: limitations of laws and regulations on project

Operational feasibility: logistical and motivational considerations

Schedule feasibility: completion of project in reasonable amount of time

Page 17: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

The Systems Investigation Report

Systems investigation report Summary of the results of

the systems investigation and the process of feasibility analysis

Recommendation of a course of actionContinue systems

analysisModify the projectAbandon the project

Reviewed by steering committee of senior management and users

Page 18: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Systems Analysis

Answers the question “What must the information system do to solve the problem?”

Overall emphasis of systems analysis is:Gathering data on the existing systemDetermining the requirements for the new systemConsidering alternatives within these constraints Investigating the feasibility of the solutions

Primary outcome: prioritized list of systems requirements

Page 19: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Data Collection

Identifying sources of data Internal sources External sources

Collecting data Interviews: structured and

unstructured Direct observation Questionnaires: structured

or unstructuredUsed when data sources

are spread over a wide geographic area

Page 20: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Data Analysis

Data analysisManipulation of collected data so that systems

development team can use the data

Data modelingEntity-relationship (ER) diagrams: objects, attributes,

and associations

Activity modelingData-flow diagrams (DFDs): objects, associations,

and activities

Page 21: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Data Analysis (continued)

Figure 8.12: Data and Activity Modeling (a) An entity-relationship diagram

Page 22: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Data Analysis (continued)

Figure 8.12: Data and Activity Modeling (b) A data-flow diagram

Page 23: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Requirements Analysis

Determines user, stakeholder, and organizational needs through the following techniques: Asking directly: best for

stable systems Critical success factors:

asks for critical factors in interviewee’s area

IS plan: translates strategic plan into initiatives

Requirements analysis tools: CASE tools

Page 24: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Object-Oriented Systems Analysis

Identifying problems or potential opportunities Identifying key participants and collecting dataUses classes and generalization/specialization

hierarchies instead of data-flow diagrams and flowcharts

Page 25: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

The Systems Analysis Report

Systems analysis report should cover:Strengths and weaknesses of the existing system

from a stakeholder’s perspectiveUser/stakeholder requirements for the new system

(also called the functional requirements)Organizational requirements for the new systemDescription of what the new information system

should do to solve the problem

Page 26: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Systems Design

Answers the question “How will the information system solve a problem?”

Has two dimensions: logical and physicalLogical design: description of the functional

requirements of a systemPhysical design: specification of the

characteristics of the system components necessary to put the logical design into action

Page 27: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Object-Oriented Design

Design key objects and classes of objects in the new or updated system Consideration of the problem

domain, the operating environment, and the user interface

Consideration of the sequence of events that must happen for the system to function correctly

Scenario: sequence of events Can be diagrammed in a

sequence diagram

Page 28: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Generating Systems Design Alternatives

Request for proposal (RFP): document that specifies in detail required resources such as hardware and software

Financial options Purchasing Leasing Renting

Evaluating and Selecting a Systems Design Preliminary evaluation

To dismiss unwanted proposals

Begins after all proposals have been submitted

Final evaluationDetailed investigation of

the proposals offered by the vendors remaining after the preliminary evaluation

Page 29: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

The Design Report

Design report: primary result of systems design, reflecting the decisions made and preparing the way for systems implementation

System specifications include technical description of the following:System outputs, inputs, and user interfacesHardware, software, databases, telecommunications,

personnel, and procedure components and the way these components are related

Page 30: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Systems Implementation

Figure 8.19: Typical Steps in Systems Implementation

Page 31: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Acquiring Hardware from an IS Vendor

IS vendor: company that offers hardware, software, telecommunications systems, databases, IS personnel, and/or other computer-related resources

Buying computer hardwareLeasing computer hardware Renting computer hardware“Pay-as-you-go,” “on-demand,” or “utility”

computing

Page 32: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Acquiring Software: Make or Buy?

Make-or-buy decision: decision regarding whether to obtain software from external or internal sources

Choices include: Purchase software externallyDevelop software in-house Used a blend of external and internal software

developmentRent software

Page 33: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Acquiring Database and Telecommunications Systems

Databases and telecommunications systems require a blend of hardware and software

New hardware is acquired from an IS vendorNew or upgraded software might be purchased

or developed in-house

Page 34: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

User Preparation

Process of readying managers, decision makers, employees, other users, and stakeholders for new systems

Provide users with proper training

Page 35: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

IS Personnel: Hiring and Training

Personnel that might be needed for the new system IS managerSystems analystsComputer programmersData-entry operators

Training programs should be conducted for the IS personnel who will be using the computer system

Page 36: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Site Preparation

Preparation of the location of a new systemMaking room for equipmentSpecial wiring and air conditioningSpecial floorSecurity systemAdditional power circuits

Page 37: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Data Preparation

Also called data conversionEnsures all files and databases are ready to be

used with new computer software and systems

Page 38: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Installation

Physically placing the computer equipment on the site and making it operational

Normally the manufacturer is responsible for installing computer equipment

Someone from the organization (usually the IS manager) should oversee the process

Page 39: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Testing

Unit testing: testing of individual programsSystem testing: testing the entire system of

programsVolume testing: testing the application with a

large amount of data Integration testing: testing all related systems

togetherAcceptance testing: conducting any tests

required by the user

Page 40: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Start-Up

Process of making the final tested information system fully operational

ApproachesDirect conversion (plunge, direct cutover): stopping

the old system and starting the new one on a given date

Phase-in approach (piecemeal): slowly replacing old system components with new system components

Pilot start-up: run new system with one group of users

Parallel start-up: running old and new systems together for a period of time

Page 41: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

User Acceptance

User acceptance document: formal agreement signed by the user that states that a phase of the installation or the complete system is approvedLegal document that removes or reduces IS vendor’s

liability

Page 42: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Systems Operation and Maintenance

Systems operation: use of a new or modified systemHelp desk provides support

Systems maintenance: checking, changing, and enhancing the system to make it more useful in achieving user and organizational goalsDifficult and costly for legacy systems

Page 43: © Holmes Miller 1999 System Development. Why Learn About Systems Development? Important to learn how to:  Initiate systems development process  Analyze.

Systems Review Process of analyzing systems to make sure that they are operating

as intended Often compares the performance and benefits of the system as it was

designed with the actual performance and benefits of the system in operation

Event-driven review: triggered by a problem or opportunity such as an error, a corporate merger, or a new market for products

Time-driven review: performed after a specified amount of time


Recommended