Chapter 14

advertisement
Chapter 14
Construct, Deliver, and
Maintain Systems Projects
Objectives for Chapter 14
• The sequence of events that constitute the in-house
development phase of the SDLC
• The tools used to improve the success of system construction
and delivery activities (CASE tools; PERT and Gantt charts)
• The distinction between the structured and object-oriented
design approaches
• Multi-level DFDs in the design of business processes
• The different types of system documentation and the
purposes they serve
• The role of accountants in the construct and delivery of
systems
• The advantages and disadvantages of the commercial
software option, the decision-making process used to select
commercial software
Systems Development Life Cycle
Business Needs and
Strategy
Legacy Situation
Business Requirements
1. Systems Strategy
- Assessment
- Develop Strategic Plan
System Interfaces, Architecture
and User Requirements
Feedback:
User requests for New Systems
High Priority Proposals undergo
Additional Study and Development
2. Project Initiation
- Feasibility Study
- Analysis
- Conceptual Design
- Cost/Benefit Analysis
Selected System Proposals
go forward for Detailed
Design
3. In-house Development
Feedback:
User requests for System
Improvements and Support
4. Commercial Packages
- Construct
- Deliver
- Configure
- Test
- Roll-out
New and Revised
Systems Enter into
Production
5. Maintenance & Support
- User help desk
- Configuration Management
- Risk Management & Security
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 include:
•
•
•
•
lower initial cost
shorter implementation time
better controls
rigorous testing by the vendor
– risk
• must ensure that the user gets a package that
adequately meets his or her needs and is
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 3
In-House
Development
Up to 25% of all systems
projects fail! Why?
• Poorly specified systems
requirements
– communication problems
– time pressures
systems
• Ineffective development
developer
techniques
– paper, pencils, templates, erasers
instead of software tools, such as CASE
• Lack of user involvement in systems
development
end
user
Prototyping
• Prototyping is a technique for providing
users a preliminary working version of the
system.
• It is built quickly and relatively
inexpensively with the intention it will be
modified.
• As the users work with the prototype and
make suggestions for changes, a better
understanding of the true requirements of
the system is achieved.
Prototyping Techniques
Identify
Conceptual
User
Specifications
Develop
Prototype
Present
Prototype
to Users
Obtain
User
Feedback
Change
Prototype
Per User
Feedback
Discard Prototype
and Develop
System Under
Traditional
SDLC Procedures
Develop
Prototype
into Finished
System
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
Project Evaluation and Review
Technique (PERT)
Deliver Phase
Construct Phase
2
B = 4 Weeks
Design Data Model
1
E = 5 Weeks
Create Data Structures
3
I = 3 Weeks
Convert Data Files
6
9
4
5
8
PERT charts show the relationship among key activities
that constitute the construct and delivery process.
Gantt Chart
represents time horizontally and activities vertically
Purchase Equipment
Design Data Model
Design Process
Install and Test Equipment
Code Programs
Test Programs
Create Data Structures
Current Point in Time
Convert Data Files
Test System
Prepare Documentation
Train Personnel
Cut Over to New System
Budgeted
Actual
1
2
3
4
5
6
7
8
9
10 11 12
Project Week
13 14
15
16
17
18
19
20
21
The Structured Design
Approach…
• is 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 DFD 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 ObjectOriented 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
Attributes
Part Number
Description
Quantity
on Hand
Reorder Point
Order Quantity
Inventory
Object
Operations
Reduce
Review
Quantity
Reorder
Replace
Classes and Instances
• An object class is a logical grouping of
individual objects that share the same
attributes and operations.
• An instance is a single occurrence of an
object within a class.
Inventory
Object
Class
Instance
Wheel Bearing
Alternator
Water Pump
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
• This stage follows a logical sequence of
events:
– data model the business process and design
conceptual views
– design the normalized database tables
– design the physical user views (output and
input views)
– develop the process modules
– specify the system controls
– perform a system walkthrough
Data Modeling
• Data Modeling is the task of formalizing the
data requirements of the business process
as a conceptual model.
• The primary tool is the ER diagram which is
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.
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.
Physical User Views:
Input Views
• Data input views are used to capture the
relevant facts about the resources,
events, and agents involved in business
process transactions.
• Input may be either
hard copy input documents
or electronic input.
Designing Hard Copy Input
• Items to Consider:
– How will the document be handled? What
quality paper?
– How long will the form be stored and in what
type of environment?
– How many copies are required?
– What size form is necessary? Nonstandard 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 the Process
Component
• This phase begins with the DFDs
produced in the general design phase.
• The first task is to decompose the
existing DFDs to a degree of detail that
will serve as the basis for creating
structure diagrams.
• The structure diagrams will provide the
blueprints for writing the actual program
modules.
Data Flow Diagrams (DFDs)
• DFDs are used to represent multiple
levels of detail.
• Context-level DFDs are used to present
an overview model of the business
activities and the primary transactions
processed by the system.
• It does not include a detailed definition 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)
Design 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
• This step 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.
System Design Walkthrough
• This step is performed by the development
team to ensure the design is free from
conceptual errors that could become
programmed into the final system.
• Some firms may use a quality assurance
group to perform the task. This is 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, such as:
– procedural languages or 3GLs
(COBOL)
– event-driven languages
(Visual Basic)
– object-oriented languages
(Java)
The Modular Approach to
Programming
• Promotes programming efficiency
since modules can be both programmed
and tested independently
• Promotes maintenance efficiency
since small modules are easier to
analyze and change
• Promotes greater control since they
are less likely to contain material errors
of fraudulent logic
Deliver the System:
Testing
• Programs must be thoroughly tested
before they are implemented.
• Individual modules should be tested with
test data containing both “good” and “bad”
data. All logic procedures should be
tested.
• After the individual modules have been
tested, the entire system should tested as
a whole.
Deliver the System:
Documenting
• Documentation describes how the system
works and should be made 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:
Converting the Databases
• This is the transfer of data from its current form to the
format or medium required by the new system.
• Data conversion is risky and must be carefully
controlled by the following precautions:
– validation - old database must be inspected before
conversion
– reconciliation - after the conversion, the new
database must be reconciled against the original
– backup - copies of the original files must be kept
as backup against discrepancies in the converted
data
Deliver the System:
Converting the Databases
Three approaches:
• Cold turkey cutover - the firm switches to the
new system on a particular day and
simultaneously terminates the old system.
– This is the riskiest approach.
• Phased cutover - modules are implemented in a
piecemeal fashion.
– The risk of a devastating failure can be reduced.
• Parallel operation cutover - the old system and
new system are run simultaneously.
– This is the safest, yet costliest, approach.
Deliver the System:
Post-Implementation Review
• The objective is to measure the success
of the system and of the process after
the dust has settled. Want to assess:
– system design adequacy
– accuracy of time, cost, and benefit
estimates
• This information can provide feedback
to improve future systems development
projects.
Deliver the System:
The Role of Accountants
• Most system failures are due to poor
designs 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 4
Commercial
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 are completely finished
and tested systems that are ready for
implementation.
• Backbone systems provide a basic system
structure on which to build.
• Vendor-supported systems are customdeveloped and maintained by a vendor for a
customer.
• ERP systems are difficult to classify since
they have characteristic of all of the above.
Pros and Cons of Commercial
Packages
• Advantages:
– decreased implementation time
– decreased cost
– reduced probability of program errors
• Disadvantages:
– reduced independence - the customer is
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 5
Maintenance
and
Support
Maintenance and Support
• Approximately 80% of the life and costs of the
SDLC
• Can be outsourced or done with in-house
resources
• User support is a critical aspect of
maintenance. 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
Download