ACTG413 - Auditing in CIS Environment - Week 6 Systems Development and Program Change Activities
ACTG413 - Auditing in CIS Environment - Week 6 Systems Development and Program Change Activities
Another reason by an auditor’s interest in the organization’s systems development process would be the
actual products that is apparent from it. There is a parallel line between the quality of the accounting
information presented in an organization’s financial statements and the quality of the accounting
information systems that process and report it. An auditor is concern on the domino effect that can
occur if an error in the development process exist. Financial reports are prepared and generated from
through the systems development process.
These individuals are the ones who actually build the system which involves systems analysts,
systems engineers and programmers. They identify the problems of the current system, gather
and analyze the facts pertaining to the problems, and formulate solutions to solve such
problems. The end result will be a brand new information system.
End Users
They are the reason why the systems are built. These include different levels in an organization
such as managers, personnel from various operation departments.
Stakeholders
These are individuals either within or without the organization who have an interest in the
system but are not formal end users. These includes accountants, internal and external auditors
and the internal steering committee that oversees the systems development. This is to ensure
that the user’s needs are met, and adequate internal control are applied into the systems under
construction.
In-house Development
Some organizations aim to development information systems that can cater its unique
operations. With that these organizations would prefer to develop its own information systems
through the in-house systems development activities. In this method, full time group of analysts
and programmers are required to be maintained to identify the needs of user information and
to create the custom systems.
Commercial Systems
Commercial systems are becoming more popular that the in-house development due to the
following factors:
Lower cost. With the budget being taken into consideration, commercial systems are
relatively cheaper than the in-house development since, for an instance, the
maintenance of analysts and programmers are eliminated.
Industry-specific vendors. Diverse classifications of vendors are available in the market
allowing the organization to narrow down its choices to select the best software that
can cater its needs.
Growing demand from small businesses. In-house systems’ development staff is difficult
to afford given that it is too small for a growing demand from businesses.
Downsizing organizational units. It is now a trend to downsize organizational units.
Moreover, the idea of distributed data processing makes the commercial software
option more appealing to organizations, especially the large ones.
1. Turnkey Systems. These are systems that are completely finished and tested and are readily
available for implementation. Depending on the specific industry, these are often general-
purpose systems or systems customized. Usually, turnkeys are available as compiled and
completed program modules limiting the users to customize them according to their specific
needs. Although, vendors provide software, for a free, to let the users modify the input and
output of the system as well as processing some menu choices.
Presented below are the most common examples of turnkey systems:
General Accounting Systems – this is a standard system developed in order to serve
a wide group of user needs. With this, the cost of creation becomes less expensive
and way more affordable than an in-house development. Some features of general
accounting systems modules include accounts receivable, inventory control, fixed
assets, accounts payable, general ledger and financial reporting.
Special-Purpose Systems – as compared to general accounting systems, special-
purpose systems are created to serve specific industry. For an instance, the systems
for a banking industry is far different from the systems for a manufacturing
company. The software vendors, then, would offer systems to the previous that
specifically cater its operations and needs.
Office Automation Systems – these are computer systems which improve the
employee’s productivity through the availability of word processing packages,
database management systems, spreadsheets programs, and desktop publishing
systems.
2. Backbone Systems. These provide a basic system structure on which to build. Backbone
systems come with all the primary programmed processing modules. To suit the client’s
needs, the user interface are designed and programmed. Some systems such as enterprise
resource planning (ERP) offer a vast array of modules for dealing with almost every
conceivable business process, and all are interfaced seamlessly into a single system. The
customer can create a highly customized system through the selection of the appropriate
modules. However, the customization of a commercial system, can be time consuming and
expensive.
3. Vendor*supported Systems. Customized systems for the client organization’s development
and maintenance. Some support levels that are possible under this model include the
following:
Application, installation, system configuration, data conversion, personnel training,
and trouble shooting and maintenance.
Database support involves developing and maintaining the database tables for the
application.
Configuring the server and operating system to host the application and database.
Interfacing the vendor supported application to other in-house supported systems
where data sharing between systems is necessary.
Back-up and recovery of programs and data as part of an organization’s disaster
recovery plan.
Figure 5.1
The Systems Development Life Cycle is a conceptual model that defines the organizational,
personnel, policy and budgeting constraints of a large scale systems project. This starts from
initial planning through maintenance and eventual retirement of the completed system. The
length of the SDLC varied depending on the needs and industry where the organization belongs.
As shown in figure 5.1 above, there are none (9) phases of SDLC and the first seven (7) phases
involve the process undergone for all new systems.
New systems development is composed of conceptual steps that can apply to any problem-
solving such as:
The eight (8th) phase of the cycle involves the system maintenance which includes the change
and upgrades of the systems completed and fully implemented.
Each and every phase of SDLC is discussed thoroughly in the next parts.
The purpose of systems planning is to determine the scope of the problem and found out
possible solutions. Individual system projects or applications are linked to the strategic
objectives of the firm. Through the business plan, resources, costs, time, benefits and other
items are considered in this place. Analysis of systems projects against IT strategic plan is made
which is developed from and must be congruent with the organization’s business plan.
In most of the projects, the planning phase takes the longest period as everything must be taken
into consideration. The organization establishes a systems steering committee to provide
guidance and review the status of the system projects. The steering committee may be
composed of the CEO, CFO, CIO, senior management from user areas and computer services,
and internal auditor. Some of the responsibilities of steering committee are:
Strategic systems planning is the allocation of systems resources at the macro level. The
time frame for strategic systems planning is usually from three to five years. This
process involves activities like product development, market research, plant expansion
and manufacturing technology which are similar to strategic activities of budgeting
resources.
Strategic planning is done in a SDLC due to the following justifications:
Project Planning
1. Project proposal – this helps the management to decide whether to continue the
project or to terminate. It summarizes the findings of the study conducted to
provide a recommendation for the new or modified system. It also provides the
relation between the proposed system objectives and the business objectives of the
organization.
2. Project schedule – it is composed of the timeline and budget of the project for all
the phases of the SDLC.
Systems analysis includes (1) Survey of the current system; and (2) Analysis of the user’s needs.
After this phase, a formal document. Systems Analysis Report, is prepared to present the
findings during the analysis and provide recommendations for the new system.
The current systems are analyzed by determining which of its elements should be
preserved and retained to be part of the new system. This process involves a system
survey where the analyst gathers data regarding the new system and analyzed them
through understanding the problem and creating possible questions.
Facts Gathering
Gathering of facts during the survey step is done and includes the following broad
classes:
The analysis step can be done simultaneous to the facts gathering. The mere recognition
of a problem presumes some understanding of the norm or desired state. It is therefore
difficult to identify where the survey ends and the analysis begins.
The conceptualization of systems design through the SDLC phase minimizes the investment of
resources in alternatives designs, which, ultimately will be rejected. The conceptual systems
design describes two approaches, namely:
a. Object-oriented design (OOD) – builds systems from the bottom up through the assembly of
reusable modules rather than create each system from scratch. This is associated with the
iterative approach to SDLC where small chunks or modules cycle through all of the SDLC
phases rather rapidly, with a short time from beginning to end.
b. Structured design approach – builds systems from the top down which consists of the “big
picture” of the proposed system that is gradually decomposed into more and more detail
until it is fully comprehended. Data flow and structure diagrams are used in this approach.
Figure 5.2 above shows the use of structure diagram and data flow diagrams to depict the top-
down decomposition of a hypothetical business process. The diagram started with an abstract
description of the system and, through successive steps, redefines this view to produce a more
detailed description.
There are five aspects of project feasibility which must be considered and assessed in the
same manner.
https://business.tutsplus.com/articles/can-we-really-do-it-how-to-conduct-a-telos-
feasibility-study--cms-21442
Costs identification. Costs identification are done through categorizing the costs as
one-time costs and recurring costs. One-time costs include the initial investment to
develop and implement the system such as:
- Hardware acquisition
- Site preparation
- Software acquisition
- Systems design
- Programming and testing
- Data conversion from old system to new system
- Personnel training
On the other hand, recurring costs include the operating and maintenance costs
that recur over the life of the system. Examples are:
- Hardware maintenance
- Software maintenance contracts
- Insurance
- Supplies
- Personnel
- Labor reduction
- Operation cost reduction (supplies and overhead)
- Reduced inventories
- Less expensive equipment
- Reduced equipment maintenance
Meanwhile, intangible benefits are those benefits derived from the system which
are not quantifiable. These cannot be measured easily that sometimes organization
do not realize its importance in the information system decisions. Examples of
intangible benefits are:
Under the net present value method, the present value of the benefits over the life
of the system is deducted by the present value of the costs. Project with a positive
net present value or the one with the highest net present value is considered as the
most feasible.
In the payback method, the analysis of the break-even is done. Break-even is the
point when the total costs equal the total benefits.
At the end of the phase, the analysts are expected to prepare and present the Systems
Selection Report, which is a formal document that consists of a revised feasibility study, cost-
benefit analysis, and a list and explanation of intangible benefits for each alternative design.
A detailed description of the proposed system is produced in this phase to satisfy the system
requirement identified during the systems analysis and this must be in accordance with the
conceptual design. System components such as database tables, processes and controls are
specified meticulously in this phase and then presented in a formal way through a detailed
design report. A detailed design report constitutes a set of blueprints that specify input formats,
output report layouts, database structures, and process logic.
Designs for all screen inputs and source documents for the system.
Designs of all screen outputs, reports, and operational documents.
Normalized data for database tables, specifying all data elements.
Database structures and diagrams: Entity relationship (ER) diagrams describing the
data relations in the system, context diagrams for the overall system, low-level
data flow diagrams of specific system processes, structure diagrams for the
program modules in the system – including a pseudocode description of each
module.
An updated data dictionary describing each data element in the database.
Processing logic (flowcharts).
Selection of the programming language is done in this phase. Among the several languages
available, the one suitable to the application is selected. These include procedural languages like
COBOL, event-driven languages like Visual Basic, or object-oriented programming (OOP)
languages like Java or C++.
Procedural Languages
Event-driven Languages
Object-oriented Languages
a. Programming efficiency
b. Maintenance efficiency
c. Control
This phase includes testing the entire system, documenting the system, converting the
databases and performing a post-implementation review. These processes requires the time an
effort of designers, programmer, database administrators, users and accountants resulting to
extensive costs.
Once all modules are coded and tested, these will be all combined and tested as a
whole. A hypothetical data are used in the system to perform this process. The actual results will
be then compared to the predetermined results, and the test is documented to provide
evidence of the system’s performance. Once the results become satisfactory to those who are
conducting the tests, a formal acceptance document is prepared to explicitly acknowledge by
the user that the system meets the stated requirements.
Documenting the system includes three groups such as the systems designers and
programmers, computer operators, and end users. Documenting the system helps the auditor in
aiding essential information about how the system works.
Run Manual is a documentation used by computer operators which described how to run
the system. The usual content of a run manual are as follows:
User Documentation
This describes how the user can use the system such as the process of entering input for
transactions, account balances inquiry process, how to update accounts, and generation of
output reports. The nature of user documentation will depend on the user’s degree of
sophistication with computers and technology. Therefore, the classification of users must be
determined before designing the user documentation. Classifications of users can be:
Novices – have no or little experience with computers. They know little about
the assigned tasks making the training and documentation extensive and
detailed.
Occasional users – require less training and documentation than novices as they
have understood the system. However, some essential command and
procedures are forgotten.
Frequent light users – 3rd level of users who are familiar with limited aspects of
the system. However, they have lack depth of knowledge and tend not to
explore.
Frequent power users – understand the existing system and will readily adapt to
new systems. They are intolerant of detailed instructions that waste their time.
They like to find shortcuts and use macro commands to improve performance.
Converting Databases
Database conversion is the transfer of data from its current format to the format or medium
required by the new system. Thus, this is a critical step in the implementation phase. The
adaption in technology is the basis of the degree of conversion from the old system to the
new one. Some process are very labor intensive, which requires the data to be manually
entered in the database. During the data conversion, some precautions must be taken as
follows:
Validation – validation of old database is required. This means that each class of
data must be analyzed to determine if which should be reproduced in the new
database.
Reconciliation – the new database must be reconciled against the original. The
process can either be manual (record by record or field by filed) or automated
(writing a program that will compare the two sets of data).
Backup – backup of keeping of the original files must be done to verify if there
are any discrepancy against the original database. The current files can be
conveniently backed up if they are already in magnetic form. On the other hand,
there will be a storage problem if data are still in paper documents.
Cutover is the conversion of old system to the new one. System cutover will usually follow
one of three approaches:
1. Cold Turkey Cutover – also known as Big Bang Approach, the old system s discarded
simultaneous to the use of the new system. This approach is considered as the easiest
and least costly, however, with more complex systems, considered as the riskiest as
there is no back up of data process.
2. Phased Cutover – in this approach, the entire system is not immediately terminated as
the new one started. Partial removal of the system is done as the new one is run.
3. Parallel Operation Cutover – it involves running the old system and the new system
simultaneously for a period of time.
Post-Implementation Review
Systems Design Adequacy – this involves the review of the physical features of the
system and should provide answers to, but not limited to the following questions:
o Does the output from the system possess such characteristics of information as
relevance, timeliness, completeness, accuracy, and so on?
o Are the databases accurate, complete and accessible?
o Were data lost, corrupted, or duplicated by the conversion process?
o Are the users using the system properly?
o Is user documentation accurate, complete and easy to follow?
o Does the system provide the user adequate help and tutorials?
Accuracy of Time, Cost and Benefit Estimates – this is done by the review of the
budgeted amount versus the actual performance to provide guidance for future
budgeting decisions. The post-implementation review should provide insights through
the following questions:
o Were actual costs in line with the budget costs?
o What were the areas of significant departures from budget?
o Was the degree of network due to design and coding errors acceptable?
o Were values assigned to tangible and, especially, intangible benefits accurate?
Upon system implementation, the final phase of SDLC occurs. Systems maintenance is the
formal process of updating the application programs to accommodate the changes in users’
needs. Some application changes are trivial, such as modifying the system to produce a new
report or changing the length of a data field. This phase is a significant resource outlay as
compared to the initial development costs.
In this section, the work of the auditor is to verify that the processes previously discussed are controlled
and functioning properly and effectively. With this, the auditor may limit the extent of application of
control testing that needs to be done and can establish a basis for limiting substantive tests.
All systems must be properly authorized to ensure their economic justification and feasibility. As
with all material transactions, authorizing the development of a new information system should
be a formal step in the process. Typically, this requires that each new system request be
submitted in writing by users to systems professional who have both the expertise and authority
to evaluate and approve (or reject) the request.
Involvement of the users in the system development process is highly important. Regardless of
the proposed system’s technical complexity, the involvement of the users should not be set
aside. The user should provide description of the logical needs that must be satisfied by the
system.
The produced documents in user specification activities is translated in this phase into a
technical specification of a system. The activities involve system analysis, general systems
design, feasibility analysis, and detailed systems design. The adequacy of these activities is
measured by the quality of the documentation that emerges from each phase. Documentation is
both a control and evidence of control and is critical to the system’s long-term success.
Internal Audit Participation
The internal auditor plays an important role in the control of systems development activities.
The auditor is involved from the beginning of the process up to the maintenance phase.
Systems Planning. As this is a crucial phase and should be given importance, the role of
an internal auditor is to review the process to verify if the systems produced are
consistent with the organization’s goals and objectives.
Systems Analysis. The internal auditor or the group of internal audit must have an ability
to accurately assess situation in relation to computer technology and with a solid grasp
of the business problems of users.
Conceptual Systems Design. The internal auditor must have high knowledge and
expertise in an integrated audit features to check which feature is the most suitable for
the system. Integrated audit tools will add costs and significant features to the system
that should be specifies at the conceptual design stage and budgeted into the system.
Evaluation and Selection. The auditor should ensure the following:
o Only escapable costs are used in calculations of cost savings benefits
o Reasonable interest rates are used in measuring present values of cash flows
o One-time and recurring costs are completely and accurately reported
o Realistic useful lives are used in comparing competing projects
o Intangible benefits are assigned reasonable financial values
System Implementation. Auditors are needed to provide guidance in completing the
system3
The benefits achieved from controlling new system development can be quickly lost during the
system maintenance if control does not continue into that phase. Access to systems for
maintenance purposes increases the possibility of systems errors. Logic may be corrupted either
by the accidental introduction of errors or intentional acts to defraud. To minimize the potential
exposure, all maintenance actions should require, as a minimum, four control: formal
authorization, technical specification of the changes, retesting the system and updating the
documentation.
Source Program Library is a magnetic disk which stores application program source code in
larger computer services. The SPL must be controlled through some protective features and
procedures which must be explicitly addressed. An implementation of an SPL Management
System (SPLMS) is required and is used to control the following functions: