Title: Construct, Deliver, and Maintain Systems Projects
1Chapter 14
- Construct, Deliver, and Maintain Systems
Projects
2Objectives 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
3Systems Development Life Cycle
Business Needs and Strategy
Legacy Situation
Business Requirements
1. Systems Strategy - Assessment - Develop
Strategic Plan
FeedbackUser requests for New Systems
System Interfaces, Architecture and User
Requirements
High Priority Proposals undergo Additional Study
and Development
2. Project Initiation - Feasibility Study -
Analysis - Conceptual Design -
Cost/Benefit Analysis
FeedbackUser requests for System Improvements
and Support
Selected System Proposals go forward for Detailed
Design
3. In-house Development - Construct -
Deliver
4. Commercial Packages - Configure - Test -
Roll-out
New and Revised Systems Enter into Production
5. Maintenance Support - User help desk -
Configuration Management - Risk Management
Security
4Overview 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
5Overview 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
6Overview 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
7Phase 3
8Up to 25 of all systems projects fail! Why?
- 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
systems developer
end user
9Prototyping
- 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.
10Prototyping Techniques
Identify Conceptual User Specifications
Change Prototype Per User Feedback
Develop Prototype into Finished System
Present Prototype to Users
Obtain User Feedback
Develop Prototype
Discard Prototype and Develop System
Under Traditional SDLC Procedures
11Computer-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.
12Uses 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
13CASE Spectrum of Support Tools for the SDLC
14Project Evaluation and Review Technique (PERT)
Deliver Phase
Construct Phase
2
7
A 3 Weeks
Purchase Equipment
Install and Test Equipment
Prepare Documentation
D 2 Weeks
H 3 Weeks
K 3 Weeks
Train Personnel
B 4 Weeks
E 5 Weeks
I 3 Weeks
Design Data Model
Create Data Structures
Convert Data Files
1
3
6
9
Test Programs
L 4 Weeks
G 3 Weeks
Design Process
Cut Over to New System
C 4 Weeks
J 4 Weeks
Test System
F 5 Weeks
Code Programs
4
5
8
PERT charts show the relationship among key
activities that constitute the construct and
delivery process.
15Gantt Chartrepresents time horizontally and
activities vertically
Purchase Equipment
Design Data Model
Design Process
Install and Test Equipment
Code Programs
Test Programs
Create Data Structures
Convert Data Files
Test System
Current Point in Time
Prepare Documentation
Train Personnel
Cut Over to New System
Budgeted Actual
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
Project Week
16The 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
17Object-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.
18Elements 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
19Characteristics of an Inventory Object
Attributes
Quantity on Hand
Part Number
Description
Reorder Point
Order Quantity
Inventory
Object
Operations
Review Quantity
Reduce
Reorder
Replace
20Classes 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
Water Pump
Wheel Bearing
Alternator
21Inheritance
- 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.
22Systems 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
23Data 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.
24Physical 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
25Output 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.
26Physical 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.
27Designing 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? Non-standard form
can cause printing and storage problems.
28Designing Electronic Input
- Input may be from either hardcopy or electronic
29Data Entry Devices
- Point-of-sale terminals
- Touch screens
- Mouse
- Magnetic ink character recognition
devices - Optical character recognition devices
- Voice and touch-tone recognition devices
30Designing 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.
31Data 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.
32Lower-Level DFD for an AP Process
33The 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)
34Design 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.
35System 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.
36Program 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)
37The 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
38Deliver the SystemTesting
- 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.
39Deliver the SystemDocumenting
- 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
40Deliver the SystemConverting 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
41Deliver the SystemConverting 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.
42Deliver the SystemPost-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.
43Deliver the SystemThe 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
44Phase 4
45The 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
46Trends 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 custom-developed and
maintained by a vendor for a customer. - ERP systems are difficult to classify since they
have characteristic of all of the above.
47Pros 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
48Four Steps in Choosing a Commercial Package
- Analyze needs and develop detailed specifications
of the system requirements. - Send out the request for proposals to all
prospective vendors to serve as a comparative
basis for initial screening. - Gather the facts about each vendors system using
multiple sources and techniques. - Analyze the findings and make a final selection.
49Phase 5
50Maintenance 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
51The Iceberg Effect