chapter 14 construct, deliver, and maintain systems projects

Post on 28-Dec-2015

350 Views

Category:

Documents

29 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Chapter 14Construct, Deliver, and Maintain

Systems Projects

Objectives for Chapter 14• The sequence of events that constitutes the in-house

development phase of SDLC

• Tools used to improve the success of systems construction and delivery activities: CASE tools; PERT and Gantt charts

• Distinction between structured and object-oriented design approaches

• Multi-level DFDs in the design of business processes

• Types of systems documentation and the purposes they serve

• The role of accountants in the construction and delivery of systems

• The advantages and disadvantages of the commercial software option

Systems Development Life Cycle

1. Systems Strategy - Assessment - Develop Strategic Plan

1. Systems Strategy - Assessment - Develop Strategic Plan

2. Project Initiation - Feasibility Study - Analysis - Conceptual Design - Cost/Benefit Analysis

2. Project Initiation - Feasibility Study - Analysis - Conceptual Design - Cost/Benefit Analysis

3. In-house Development - Construct - Deliver

3. In-house Development - Construct - Deliver

4. Commercial Packages - Configure - Test - Roll-out

4. Commercial Packages - Configure - Test - Roll-out

5. Maintenance & Support - User help desk - Configuration Management - Risk Management & Security

5. Maintenance & Support - User help desk - Configuration Management - Risk Management & Security

SSystemystem Interfaces, Architecture Interfaces, Architecture and Uand User ser RRequirementsequirements

BBusiness usiness RRequirementsequirements

High Priority Proposals undergo High Priority Proposals undergo Additional Study and DevelopmentAdditional Study and Development

FeedbackFeedback::User requests for New SystemsUser requests for New Systems

Selected System Proposals Selected System Proposals go forward for Detailed go forward for Detailed

DesignDesign

New and Revised New and Revised Systems Enter into Systems Enter into

ProductionProduction

Business Needs and Strategy

Legacy Situation

FeedbackFeedback::User requests for System User requests for System Improvements and SupportImprovements and Support

Overview of Phases 3, 4 and 5• Phase 3 - In-House Development

– appropriate when organizations have unique information needs

– steps include: • analyzing user needs• designing processes and databases• creating user views• programming the applications• testing and implementing the completed system

Overview of Phases 3, 4 and 5• Phase 4 - Commercial Packages

– when acceptable, most organizations will seek a pre-coded commercial software package

– advantages: • lower initial cost• shorter implementation time• better controls• rigorous testing by the vendor

– risks:• must adequately meet end users’ needs• compatible with existing systems

Overview of Phases 3, 4 and 5• Phase 5 - Maintenance and Support

– acquiring and implementing the latest software versions of commercial packages

– making in-house modifications to existing systems to accommodate changing user needs

– may be relatively trivial, such as modifying an application to produce a new report, or more extensive, such as programming new functionality into a system

Phase 3Systems Strategy

Why Up to 25% of All Systems Projects Fail

• Poorly specified systems requirements– communication problems– time pressures

• Ineffective development techniques– paper, pencils, templates, erasers instead of

software tools, such as CASE• Lack of user involvement in systems

development

Prototyping• A technique for providing a preliminary

working version of the system• Built quickly and relatively inexpensively

with the intention it will be modified• End users work with the prototype and

make suggestions for changes.– A better understanding of the true

requirements of the system is achieved.

Prototyping Techniques

IdentifyConceptualUserSpecifications

DevelopPrototype

PresentPrototypeto Users

ObtainUserFeedback

ChangePrototypePer UserFeedback

DevelopPrototypeinto FinishedSystem

Discard Prototypeand DevelopSystem UnderTraditionalSDLC Procedures

Computer-Aided Software Engineering (CASE)

• CASE technology involves the use of computer systems to build computer systems.

• CASE tools are commercial software products consisting of highly integrated applications that support a wide range of SDLC activities.

Uses of CASE Tools

• Define user requirements

• Create physical databases from conceptual user views

• Produce system design specifications

• Automatically generate program code

• Facilitate the maintenance of programs created by both CASE and non-CASE techniques

CASE Spectrum of Support Tools for the SDLC

1

27

3

4

6

8

9

Purch

ase E

quipm

ent

Install and Test Equipment

Design Data Model Create Data Structures

5

Design Process

Code Programs Test

Prog

ram

s

Prepare

Doc

umen

tation

Convert Data Files

Test System

Train Personnel

Cut Over

to N

ew Syste

m

A = 3 Wee

ks

B = 4 Weeks

C = 4 Weeks

D = 2 Weeks

E = 5 Weeks

F = 5 Weeks G =

3 W

eeks

H = 3 W

eeks

I = 3 Weeks

J = 4 Weeks

L = 4 Week

s

K = 3 Weeks

Construct Phase Deliver Phase

Project Evaluation and Review Technique (PERT)

PERT charts show the relationship among key activities that constitute the construct and delivery process.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

Project Week

Purchase Equipment

Design Data Model

Install and Test Equipment

Design Process

Code Programs

Test Programs

Create Data Structures

Prepare Documentation

Convert Data Files

Test System

Cut Over to New System

Train Personnel

Cur

rent

Poi

nt in

Tim

e

Budgeted

Actual

Gantt Chartrepresents time horizontally and activities vertically

Structured Design Approach

• A disciplined way of designing systems from the top down

• Starts with the “big picture” of the proposed system and gradually decomposes it into greater detail so that it may be fully understood

• Utilizes data flow diagrams (DFDs) and structure diagrams

Object-Oriented Design Approach

• It builds information systems from reusable standard components or objects.

• Once created, standard modules can be used in other systems with similar needs.

• A library of modules can be created for future use.

Elements of the Object-Oriented Approach

• Objects: equivalent to nouns– vendors, customers, inventory, etc.

• Attributes: equivalent to adjectives– part number, quantity on hand, etc.

• Operations: equivalent to verbs – review quantity on hand, reorder item

Characteristics of an Inventory Object

Part Number DescriptionQuantity on Hand Reorder Point Order Quantity

Inventory

Reduce ReviewQuantity

Reorder Replace

Attributes

Object

Operations

Classes and Instances• An object class is a logical grouping of

individual objects that share the same attributes and operations.

• An object instance is a single occurrence of an object within a class.

Inventory

Wheel Bearing Alternator Water Pump

ObjectClass

Instance

Inheritance

• Inheritance means that each object instance inherits the attributes and operations of the class to which it belongs.

• Object classes may also inherit from other object classes.

Systems Design

• Follows a logical sequence of events:– model the business process and design

conceptual views– design normalized database tables – design physical user views (output and input

views)– develop process modules – specify system controls– perform system walkthroughs

Data Modeling

• Formalizes the data requirements of the business process as a conceptual model

• Entity-relationship diagram (ERD) – the primary tool for data modeling– used to depict the entities or data objects in the

system

• Each entity in an ER diagram is a candidate for a conceptual user view that must be supported by the database.

Normalization• User views in the data model must be

supported by normalized database tables.• Normalization of database tables:

– A process of organizing tables so that entities are represented unambiguously

– Eliminates data redundancies and associated anomalies– Depends on the extent that the data requirements of all

users have been properly specified in the data model– REA modeling facilitates normalization by identifying

entities at their most fundamental levels– The resulting databases will support multiple user views

• Described in more detail in chapter 9

Physical User Views: Output Views

• Output is the information produced by the system to support user tasks and decisions.

• Output attributes:-relevant

-summarization

-except orientation

-timely-accurate-complete-concise

Output Reporting Techniques

• Different users prefer different styles of output… – tables, matrices, charts, and graphs

• …and modes of output – hard copy vs. display screen.

• Systems designers must identify these styles and provide output in the desired style.

• Input views are used to capture the relevant facts in business processes and transactions (e.g., via REA model):– Resources– Events– Agents

• Input may be either hard copy input documents or electronic input.

Physical User Views: Input Views

Designing Hard Copy Input

• Items to Consider:– How will the document be handled? – How long will the form be stored and in what

type of environment?– How many copies are required?– What size form is necessary?

• Non-standard form can cause printing and storage problems.

Designing Electronic Input Input may be from either hardcopy or electronic

Data Entry Devices

• Point-of-sale terminals

• Touch screens

• Mouse

• Magnetic ink character recognition devices

• Optical character recognition devices

• Voice and touch-tone recognition devices

Designing Process Modules

• Begins with the DFDs produced in the general design phase

• First, decompose the existing DFDs to a degree of detail that will serve as the basis for creating structure diagrams

• Structure diagrams provide the blueprints for writing the actual program modules

Data Flow Diagrams (DFDs)

• Used to represent multiple levels of detail– Can represent system physically or logically

• Decompose high-level DFDs into more detailed lower-level DFDs

• Context-level DFDs represent an overview of the business activities and the primary transactions processed by the system. – Do not include detailed definitions of data files

and specific procedures

Lower-Level DFD for an AP Process

The Modular Approach

• Each module performs a single task.

• Correctly designed modules possess two attributes:– loosely coupled - low amounts of exchange

of data between modules– strongly cohesive - small number of tasks

performed in each module

Designing System Controls• The last step in the detailed design phase• Need to consider:

– computer processing controls– data base controls– manual controls over input to and output from the

system– operational environment controls

• Allows the design team to review, modify, and evaluate controls with a system-wide perspective that did not exist when each module was being designed independently

Systems Walkthrough

• Usually performed by the development team– Ensure that design is free from conceptual

errors that could become programmed into the final system

• Some firms use a quality assurance (QA) group to perform this task. – An independent group of programmers,

analysts, users, and internal auditors

Program Application Software• If the organization intends to develop

software in-house, then a programming language must be selected:– procedural languages or 3GLs COBOL– event-driven languages Visual Basic– object-oriented languages Java

The Modular Approach to Programming

• Promotes programming efficiency – modules can be both programmed and tested

independently

• Promotes maintenance efficiency – small modules are easier to analyze and

change

• Promotes greater control – modules are less likely to contain material

errors of fraudulent logic

Deliver the System:Testing

• Programs must be thoroughly tested before being implemented. – All logic procedures should be tested.

• Test individual modules with test data containing both “good” and “bad” data.

• After testing individual modules, the entire system should tested as a whole.

• Describes how the system works • Documentation should be provided for:

– designers and programmers - comment lines in programs, system flowcharts, and program flowcharts

– operator documentation - run manuals– user documentation - instructions on how to use

the system, tutorials, and help features– accountants and auditors - all of the above as

well as document flowcharts

Deliver the System:Documenting

• The transfer of data from its current form to the format or medium required by the new system

• Control risks with the following procedures:– validation – inspect old database before

conversion– reconciliation – reconcile the new

converted database against the original– backup - keep copies of the original files

against discrepancies in the converted data

Deliver the System:Converting the Databases

Three data conversion cutover approaches:• Cold turkey - switch to the new system all at once

and simultaneously terminate the old system– riskiest approach

• Phased - modules are implemented in a piecemeal fashion– reduces risk of a devastating failure

• Parallel operation - the old system and new system are run simultaneously for awhile– safest, yet costliest, approach

Deliver the System:Converting the Databases

• Objective: measure the success of the new system.– do after initial problems have been addressed

• Assess:– system design adequacy– accuracy of time, cost, and benefit estimates

• Provides feedback to improve future systems development projects, including changes to the current system

Deliver the System:Post-Implementation Review

Deliver the System:The Role of Accountants

• Most system failures are due to poor design and improper implementation.

• Accountants should provide their expertise to help avoid inadequate systems by:– providing technical expertise for financial reporting

requirements– specifying documentation standards for auditing

purposes– verifying control adequacy in accordance with SAS

78

Phase 4Commercial Packages

The Purchase of Commercial Systems Packages

• Four factors have stimulated the growth of commercial software:– relatively low cost– prevalence of industry-specific vendors– growing demand by small businesses– trend toward downsizing and distributed data

processing

Trends in Commercial Packages

• Turnkey systems - completely finished and tested systems ready for implementation

• Backbone systems - provide a basic system structure on which to build.

• Vendor-supported systems - customized and maintained by a vendor for a customer

• ERP systems - difficult to classify since they have characteristic of all of the above.– See chapter 11 for more details on ERP systems

Pros and Cons of Commercial Packages

• Advantages:– decreased implementation time– decreased cost– reduced probability of program errors

• Disadvantages:– dependent on the vendor for maintenance– less flexibility in system– greater difficulty in modifying the system as

needs change over time

Four Steps in Choosing a Commercial Package

1. Analyze needs and develop detailed specifications of the system requirements.

2. Send out the request for proposals to all prospective vendors to serve as a comparative basis for initial screening.

3. Gather the facts about each vendor’s system using multiple sources and techniques.

4. Analyze the findings and make a final selection.

Phase 5Maintenance and

Support

Maintenance and Support

• Approximately 80% of the life and costs of SDLC• Can be outsourced or done in-house resources• End user support is a critical aspect of

maintenance that can be facilitated by:– knowledge management - method for gathering,

organizing, refining, and disseminating user input– group memory - method for collecting user input for

maintenance and support

The Iceberg Effect

top related