Lesson E - 2 Ch05 The Systems Development Life Cycle
Lesson E - 2 Ch05 The Systems Development Life Cycle
Life Cycle
Systems Development and Program
Change Activities
• Participants in Systems • The Systems Development Life Cycle
• Systems Planning—Phase I
Development
• Systems Analysis—Phase II
• Why Are Accountants and • Conceptual Systems Design—Phase III
Auditors Involved with SDLC? • System Evaluation and Selection—Phase IV
• How Are Accountants Involved • Detailed Design—Phase V
with the SDLC? • Application Programming and Testing—
Phase VI
• Information Systems Acquisition • System Implementation—Phase VII
• In-House Development • Systems Maintenance—Phase VIII
• Commercial Systems • Controlling and Auditing the SDLC
• Controlling New Systems Development
• The Controlling Systems Maintenance
THE SYSTEMS DEVELOPMENT LIFE CYCLE
(SDLC)
• The SDLC in Figure 5.1 is an eight-
phase process consisting of two
major stages:
• 1) new systems development
• System Documentation:
• Each phase in the SDLC produces a set of
required documentation that together
constitutes a body of audit evidence about
the overall quality the SDLC.
• 2) maintenance
• Constitutes program change procedures
• begins once the seven phases are
complete and the system is fully
implemented.
Phase 1: Systems Planning
Objective
• Objective: To link individual system projects or
applications to the strategic objectives of the firm.
• Organization’s business plan:
• Is the basis for the systems plan.
• specifies where the firm plans to go and how it will get there.
• IT strategic plan:
• is developed from and congruent with the organization’s
business plan.
Figure 5.2 presents the relationship
• Is used to analyze the systems projects . between these plans and the strategic
objectives of the firm.
• There must be congruence between the individual
projects and the business plan, or the firm may fail to
meet its objectives.
• Effective systems planning provides this goal congruence.
Phase 1: Systems Planning
Steering Committee
Typical responsibilities for a steering
Who Should Do Systems Planning? committee
• Systems Steering Committee • Resolving conflicts that arise from new
• to provide guidance and review the status of systems
system projects. • Reviewing projects and assigning priorities
• may include
• the CEO
• Budgeting funds for systems development
• the CFO • Reviewing the status of individual projects
• the chief information officer under development
• senior management from user areas
• the internal auditor
• Determining at various checkpoints
• senior management from computer services. throughout the SDLC whether to continue
• External parties, such as management consultants with the project or terminate it
and the firm’s external auditors, may also
supplement the committee.
Phase 1: Systems Planning
Occurs at Two Levels
1) Strategic Systems Planning 2) Project Planning
• the allocation of systems resources at the • identifying areas of user needs, preparing
macro level. proposals, evaluating each proposal’s
• employees (the number of systems professionals feasibility and contribution to the business
to be hired plan, prioritizing individual projects, and
• hardware (the number of workstations, scheduling the work to be done.
minicomputers, and mainframes to be
purchased), • Purposes of project planning
• software (the funds to be allocated to new • to allocate resources to individual applications
systems projects and for systems maintenance), within the framework of the strategic plan.
• telecommunications (the funds allocated to • to allocate scarce resources to specific projects.
networking and EDI).
• Product of this phase consists of two formal
• deals with a time frame of 3 to 5 years. documents:
• is not part of the SDLC because the SDLC • 1) project proposal
pertains to specific applications. • 2) project schedule.
Phase 1: Systems Planning
Why Perform Strategic Systems Planning?
• Information system planning
• Is volatile
• any long-term plans a firm makes are likely to change
• Is unpredictable
• No one can accurately predict the state of systems technology
Risk Control
• An organization has produced • The Auditor’s Role in Systems
unneeded, inefficient, Planning
ineffective, and fraudulent • Auditors routinely examine the
systems. systems planning phase of the
SDLC.
• Both internal and external
auditors are interested in
ensuring that adequate systems
planning takes place.
Phase 2: Systems Analysis
• is the foundation for the rest of the SDLC.
• formally state the goals and objectives of the system.
• a two-step process involving
• 1) System Survey Step: a survey of the current system
• A business problem must be fully understood by the systems analyst before he or she
can formulate a solution.
• 2) System Analysis Step: an analysis of the user’s needs.
• An incomplete or defective analysis will lead to an incomplete or defective solution.
• Deliverable or Product: Formal systems analysis report
• Which presents the findings of the analysis and recommendations for the
new system.
Phase 2: Systems Analysis
1) System Survey Step
• 1) System survey
• Determine what elements, if any, of the current system should be preserved
as part of the new system.
• 2) Gathering facts
• Facts about the system are gathered and analyzed.
• 3) Fact-Gathering Techniques
• Assessment of the current system
• 4) Formally documents the impressions and understanding of the
system.
• the form of notes, system flowcharts, and data flow diagrams.
Phase 2: Systems Analysis
1) System Survey Step
Advantages: Disadvantages
• Identifying what aspects of the • Current physical tar pit
old system should be kept • Thinking inside the box
• Forcing systems analysts to fully
understand the system.
• Isolating the root of problem
symptoms.
Phase 2: Systems Analysis
1) System Survey Step
Gathering Facts Fact-Gathering Techniques
• System facts fall into the following broad • Systems analysts employ several
classes:
• Data sources
commonly used techniques to
• Users gather the previously cited facts.
• Data stores • Observation
• Processes
• task participation
• Data flows
• Controls • personal interviews
• Transaction volumes • reviewing key documents.
• Error rates
• Resource costs
• Bottlenecks and redundant operations
Phase 2: Systems Analysis
2) System Analysis Step
• Systems analysis
• an intellectual process that is commingled (mix) with fact gathering.
• simultaneously analyzing as gathers facts.
• It is therefore difficult to identify where the survey ends and the analysis
begins.
• Who to present:
• presents to management or the steering committee
• What to present:
• the survey findings, problems identified with the current system,
formally state the goals and objectives of the system, Analyzes user’s
needs, Specify requirements for the new system
• How to present:
• 1) Set out in detail what the system must do rather than how to do
it.
• 2) Establish in clear terms the data sources, users, data files, general
processes, data flows, controls, and transaction volume capacity.
• 3) Remains at the objectives level to avoid placing artificial
constraints on the conceptual design phase.
Phase 2: Systems Analysis
2) System Analysis Step
Risk Controls
• Advanced audit features cannot • The accountant/auditor
be easily added to existing (external & internal) should be
systems. involved in the needs analysis of
the proposed system to
determine if it is a good
candidate for advanced audit
features and, if so, which
features are best suited for the
system.
Phase 3: Conceptual Systems Design
• Purpose:
• is to produce several alternative conceptual systems that satisfy the system
requirements identified during systems analysis.
• Alternative designs/models
• Are presented to user, then the user will evaluate these models and settle on
the alternatives that appear most plausible and appealing.
• Advantages: • Advantage:
• simplicity of design
• ease of implementation
• may allow the firm to reduce or even eliminate
• lower demand for systems resources
inventories
• Disadvantage: • Disadvantage:
• requires the firm to carry inventories • more expensive and sophisticated system resources
Risk Control
• The auditability of a system depends • The auditor is a stakeholder in all
in part on its design characteristics. FSs and, thus, has an interest in
the conceptual design stage of
the system.
• Systems should be designed with
special audit features that are
integral to the system
• These audit features must be
specified at the conceptual design
stage.
Phase 4: System Evaluation and Selection
• An optimization process that seeks to identify the best system.
• Purpose of this phase:
• to structure this decision-making process and thereby reduce both uncertainty and the risk of
making a poor decision.
• Risks: Errors, omissions, and misrepresentations in the accounting for such items can
distort the analysis and may result in a materially flawed decision.
• Controls:
• Auditors’ concern: that the economic feasibility of the proposed system is measured as
accurately as possible.
• Specifically, the auditor should ensure five things:
• 1. Only escapable costs are used in calculations of cost savings benefits.
• 2. Reasonable interest rates are used in measuring present values of cash flows.
• 3. One-time and recurring costs are completely and accurately reported.
• 4. Realistic useful lives are used in comparing competing projects.
• 5. Intangible benefits are assigned reasonable financial values.
Phase 5: Detailed Design
• Purpose :
• To produce a detailed description of the proposed system that both satisfies the
system requirements identified during systems analysis and is in accordance with the
conceptual design.
• Output/Deliverable: Detailed Design report
• Controls:
• Detecting and correcting errors in the design phase thus reduces
costly reprogramming later.
• Hire Quality assurance group
• To do the job of simulating the operation of the system to uncover errors,
omissions, and ambiguities in the design.
Phase 6: Application Programming and
Testing
• Two (2) Activities involved in phase 6:
• 1) Program the Application Software
• Select a programming language that is available and suitable to the
application
• 2) Test the Application Software
• All program modules must be thoroughly tested before they are implemented.
Phase 6: Application Programming and Testing
1) Program the Application Software
• Program Languages:
• procedural languages like COBOL
• event-driven languages like Visual Basic
• object-oriented programming (OOP) languages like Java or C++.
• Three (3) factors that are used as a basis by Systems professionals to choose
on the program language:
• the in-house standards, architecture, and user needs.
Phase 6: Application Programming and Testing
1) Program the Application Software
Procedural Languages Event-Driven Object-Oriented
Languages Languages
Features •Programmer is in control (specify •The user is in control * Binds related data
the precise order in which the (external actions or and functions into an
program logic is executed which “events” that are object and encourages
is sequentially from top to initiated by the user reuse
bottom). dictate the control of these objects
•The program’s code is executed flow of the program). within the same
in a predefined sequence. and other
Programs.
Languages Third-generation languages Microsoft’s Visual Java, Smalltalk, PHP,
(3GLs) such as COBOL, FORTRAN, Basic C/C++
C, and PL1. In
Phase 6: Application Programming and Testing
1) Program the Application Software
• Programming the System
• Regardless of the programming language used, modern programs should follow
a modular approach.
• Controls:
• Test the application software by
• Testing methodology
• Testing offline before deploying online
• Testing data
Phase 7: System Implementation
• The implementation process
• engages the efforts of designers, programmers, database administrators, users, and accountants.
• The activities in this phase
• entail extensive costs
• will often consume more personnel-hours than all other pre-implementation phases of the SDLC
combined.
• What to test? All modules must be brought together and tested as a whole.
• Who will test? Test team
• comprising user personnel, systems professionals, and internal audit personnel.
• How to test? The procedure involves processing hypothetical data through the system.
Features Have little or no Understood the •Familiar with limited •Understand the existing
experience with system but have aspects of the system. system and will readily adapt
computers. forgotten some •Tend not to explore to new systems.
essential commands beneath the surface & lack •Intolerant of detailed
and procedures. depth of knowledge. instructions, like to find
•Know only what it needs shortcuts, & use macro
to know. commands.
Trainings & User training & Require less training Requires training & Require only abbreviated
Documentation documentation & documentation documentation for documentation.
must be extensive than novices. unfamiliar areas.
and detailed
Phase 7: System Implementation
2) Documenting the System
• User’s Documentation:
• 1) user handbook
• 2) online documentation
• guides the user interactively in the use of the system.
• Two (2) types of online features:
• 1) Tutorials
• can be used to train the novice or the occasional user.
• 2) Help features
• simple help feature may be nothing more than an error message displayed on the screen.
• The user must “walk through” the screens in search of the solution to the problem.
• sophisticated help is context-related.: The help feature analyzes the context of what the
user is doing at the time of the error and provides help with that specific function (or
command).
• When the user makes an error, the system will send the message, “Do you need help?”
Phase 7: System Implementation
3) Converting the Databases
• Database conversion
• is a critical step in the implementation phase.
• the transfer of data from its current form to the format or medium required by the new system.
• data transfer may be accomplished by writing special conversion programs---changing the file structure of the
databases from sequential direct access files.
• Data conversion cost the costs associated with transferring data from one storage medium to another
• Example:
• the move from a manual system to a computer system will require converting files from paper to magnetic disk
or tape.
• Three (3) ways that Internal auditors may get involved in the system
implementation:
• 1) Provide Technical Expertise
• Specifications must comply with GAAP, GAAS, SEC regulations
• 2) Specify Documentation Standards
• Since financial systems must periodically be audited, they must be adequately documented.
• 3) Verify Control Adequacy and Compliance with SOX.
• Adequacy: AIS applications must possess adequate controls
• Compliance with SOX: Requires management to certify the existence and effectiveness of
those controls.
Phase 7: System Implementation
Risks Controls
• If operator documentation • The activities of programmers and
includes system flowcharts, logic operators should be separated.
• Consistent with this segregation of duties
flowcharts, and program code issue, operators should not have access
listings. to the details of a system’s internal logic.
• If operators have access to the • For security and control reasons,
details of a system’s internal system flowcharts, logic flowcharts,
logic. and program code listings should not
be part of the operator
documentation.
Phase 8: Systems Maintenance
• the longest period in the SDLC, often spanning several years (5 years or longer).
• represents a significant resource outlay compared to initial development costs: 80/20 rule
• 80% of the total cost of a system occurs in the Maintenance phase!
• Only 20% actually occurs in the other 7 phases.