Title: Chapter 3 Systems and Infrastructure Lifecycle Management
1ISACA
The recognized global leader in IT governance,
control, security and assurance
2Chapter 3Systems and Infrastructure Life Cycle
Management
2008 CISA? Review Course
3Chapter Outline
3.1 Introduction 3.2 Business realization 3.3
Project management structure 3.4 Project
management practices 3.5 Business application
development 3.6 Alternative application
development approaches
4Chapter Outline
3.7 Alternative Forms of software project
organization 3.8 Alternative development
methods 3.9 Infrastructure development/acquisiti
on practices 3.10 Information systems
maintenance practices 3.11 System development
tools and productivity aids
5Chapter Outline
3.12 Process improvement practices 3.13
Application controls 3.14 Auditing application
controls 3.15 Auditing systems development,
acquisition and maintenance 3.16 Business
application systems 3.17 Case studies
63.1.1 Course Objectives
- Review outline of chapter
- Discuss Task and Knowledge Statements
- Discuss specific topics within the chapter
- Case studies
- Sample questions
7Exam Relevance
Ensure that the CISA candidate Understands
and can provide assurance that the management
practices for the development/acquisition,
testing, implementation, maintenance and disposal
of systems and infrastructure will meet the
organizations objectives. The
content area in this chapter will represent
approximately 16 of the CISA examination
(approximately 32 questions).
83.1.2 Chapter 3 Task Statements
T3.1 Evaluate the business case for the proposed
system development/acquisition to ensure that it
meets the organizations business goals. T3.2
Evaluate the project management framework and
project governance practices to ensure that
business objectives are achieved in a
cost-effective manner while managing risks to the
organization. T3.3 Perform reviews to ensure
that a project is progressing in accordance with
project plans, is adequately supported by
documentation and status reporting is accurate.
93.1.2 Chapter 3 Task Statements (continued)
T3.4 Evaluate proposed control mechanisms for
systems and/or infrastructure during
specification, development/acquisition and
testing to ensure that they will provide
safeguards and comply with the organizations
policies and other requirements. T3.5 Evaluate
the processes by which systems and/or
infrastructure are developed/acquired and tested
to ensure that the deliverables meet the
organizations objectives. T3.6 Evaluate the
readiness of the system and/or infrastructure for
implementation and migration into production.
103.1.2 Chapter 3 Task Statements (continued)
T3.7 Perform postimplementation review of
systems and/or infrastructure to ensure that they
meet the organizations objectives and are
subject to effective internal control. T3.8
Perform periodic reviews of systems and/or
infrastructure to ensure that they continue to
meet the organizations objectives and are
subject to effective internal control. T3.9 Evalua
te the process by which systems and/or
infrastructure are maintained, to ensure the
continued support of the organizations
objectives and are subject to effective internal
control. T3.10 Evaluate the process by which
systems and/or infrastructure are disposed to
ensure that they comply with the organizations
policies and procedures.
113.1.3 Chapter 3 Knowledge Statements
KS3.1 Knowledge of benefits management practices
(e.g., feasibility studies, business cases)
KS3.2 Knowledge of project governance
mechanisms (e.g., steering committee, project
oversight board) KS3.3 Knowledge of project
management practices, tools and control
frameworks KS3.4 Knowledge of risk management
practices applied to projects KS3.5 Knowledge of
project success criteria and risks
123.1.3 Chapter 3 Knowledge Statements (continued)
KS3.6 Knowledge of configuration, change and
release management in relation to development
and maintenance of systems and/or
infrastructure KS3.7 Knowledge of control
objectives and techniques that ensure the
completeness, accuracy, validity and
authorization of transactions and data within IT
systems applications KS3.8 Knowledge of
enterprise architecture related to data,
applications and technology (e.g., distributed
applications, web-based applications, web
services, n-tier applications) KS3.9 Knowledge of
requirements analysis and management practices
(e.g., requirements verification, traceability,
gap analysis)
133.1.3 Chapter 3 Knowledge Statements (continued)
KS3.10 Knowledge of acquisition and contract
management processes (e.g., evaluation of
vendors, preparation of contracts, vendor
management, escrow) KS3.11 Knowledge of system
development methodologies and tools, and an
understanding of their strengths and weaknesses
(e.g., agile development practices, prototyping,
rapid application development RAD,
object-oriented design techniques) KS3.12
Knowledge of quality assurance
methods KS3.13 Knowledge of the management of
testing processes (e.g., test strategies, test
plans, test environments, entry and exit
criteria)
143.1.3 Chapter 3 Knowledge Statements (continued)
KS3.14 Knowledge of data conversion tools,
techniques and procedures KS3.15 Knowledge of
system and/or infrastructure disposal
procedures KS3.16 Knowledge of software and
hardware certification, and accreditation
practices KS3.17 Knowledge of
postimplementation review objectives and methods
(e.g., project closure, benefits realization,
performance measurement) KS3.18 Knowledge of
system migration and infrastructure deployment
practices
153.2.1 Portfolio/Program Management
- A program can be seen as a group of projects and
time-bound tasks that are closely linked together
through common objectives, a common budget,
intertwined schedules and strategies. Like
projects, programs have a limited time frame
(start and end date) and organizational
boundaries.
163.2.1 Portfolio/ProgramManagement (continued)
- Methodology and processes used in program
management are similar to those in project
management and run parallel to each other - To formally start a program, some form of written
assignment from the program owner to the program
manager/team is necessary
173.2.1 Portfolio/Program Management (continued)
- The objectives of project portfolio management
are - Optimization of the results of the project
portfolio - Prioritizing and scheduling projects
- Resource coordination (internal and external)
- Knowledge transfer throughout the projects
183.2.2 Business Case Development and Approval
- A business case provides the information required
for an organization to decide whether a project
should proceed - The initial business case normally derives from a
feasibility study as part of project planning - The business case should be of sufficient detail
to describe the justification for setting up and
continuing a project
193.2.3 Benefits RealizationTechniques
- Benefits realization requires
- Describing benefits management or benefits
realization - Assigning a measure and target
- Establishing a tracking/measuring regime
- Documenting the assumption
- Establishing key responsibilities for realization
- Validating the benefits predicted in the business
- Planning the benefit that is to be realize
203.3.1 General Aspects
- IS projects may be initiated from any part of an
organization - A project is always a time-bound effort
- Project management should be a business process
of a project-oriented organization - The complexity of project management requires a
careful and explicit design of the project
management process
213.3.2 Project Context and Environment
- A project context can be divided into a time and
social context. The following must be taken into
account - Importance of the project in the organization
- Connection between the organizations strategy
and the project - Relationship between the project and other
projects - Connection between the project to the underlying
business case
223.3.3 Project Organizational Forms
- Three major forms of organizational alignment for
project management are - Influence project organization
- Pure project organization
- Matrix project organization
233.3.4 Project Communication and Culture
- Depending on the size and complexity of the
project and the affected parties, communication
when initiating the project management project
process may be achieved by - One-on-one meetings
- Kick-off meetings
- Project start workshops
- A combination of the three
243.3.5 Project Objectives
- A project needs clearly defined results that are
specific, measurable, achievable, relevant and
time-bound (SMART) - A commonly accepted approach to define project
objectives is to begin with an object breakdown
structure (OBS) - After the OBS has been compiled, a work breakdown
structure (WBS) is designed
253.3.6 Roles and Responsibilities of Groups and
Individuals
- Senior management
- User management
- Project steering committee
263.3.6 Roles and Responsibilities of Groups and
Individuals (continued)
- Project sponsor
- Systems development management
- Project manager
- Systems development project team
273.3.6 Roles and Responsibilities of Groups and
Individuals (continued)
- User project team
- Security officer
- Quality assurance
283.4 Project Management Practices
Project management is the application of
knowledge, skills, tools and techniques applied
to a broad range of activities to achieve a
stated objective such as meeting the defined user
requirements and deadlines for an IS project.
293.4 Project Management Practices (continued)
- There are three elements or dimensions of a
project that should always be taken into account - Time/durationHow long will it take to complete
the project? - Cost/resourcesHow much will it cost?
- DeliverablesWhat has to be done?
303.4.2 Project Planning
- The project manager needs to determine
- The various tasks that need to be performed to
produce the expected business application system - The sequence or the order in which these tasks
need to be performed - The duration or the time window for each task
- The priority of each task
- The IT resources that are available and required
to perform these tasks - Budget or costing for each of these tasks
- Source and means of funding
313.4.2 Project Planning (continued)
- Software size estimation
- Relates to methods of determining the relative
physical size of the application software to be
developed - Can be used as a guide for the allocation of
resources, estimates of time and cost required
for its development, and as a comparison of the
total effort required by the resources available
323.4.2 Project Planning (continued)
- Lines of source code
- The traditional and simplest method in measuring
size by counting the number of lines of source
code, measured in SLOC, is referred to as kilo
lines of code (KLOC)
333.4.2 Project Planning (continued)
- Function point analysis
- Widely used for estimating complexity in
developing large business applications - The results of FPA are a measure of the size of
an information system based on the number and
complexity of the inputs, outputs, files,
interfaces and queries with which a user sees and
interacts
343.4.2 Project Planning (continued)
- FPA feature points
- Cost budgets
- Software cost estimation
353.4.2 Project Planning (continued)
- Scheduling and establishing the time frame
- Involves establishing the sequential relationship
among tasks - The schedule can be graphically represented using
various techniques such as Gantt charts or
Program Evaluation Review Technique (PERT)
diagram
363.4.2 Project Planning (continued)
- Critical path methodology
- A critical path if one whose sum of activity time
is longer than that for any other path through
the network - The critical path is found by working forward
through the network (forward-pass) and computing
the earliest possible completion time for each
activity until the earliest possible completion
time for the total project is found
373.4.2 Project Planning (continued)
- Gantt charts
- Constructed to aid in scheduling the activities
(tasks) needed to complete a project - Charts show when an activity should begin and end
- Charts show which activities can be in progress
concurrently and which activities must be
completed sequentially
383.4.2 Project Planning (continued)
- Program evaluation review technique (PERT)
- PERT is a network management technique often used
in system development projects based on
well-defined events and activities for specific
project management tasks
393.4.2 Project Planning (continued)
- Timebox management
- Project management technique for defining and
deploying software deliverables within a
relatively short and fixed period of time and
with predetermined specific resources
403.4.3 General Project Management
- Involves automated techniques to handle proposals
and cost estimations, and to monitor, predict and
report on performance with recommended action
items - Many of these techniques are provided as decision
support systems (DSS) for planning and
controlling project resources
413.4.5 Closing a Project
- When closing a project, there may still be some
issues that need to be resolved, ownership of
which needs to be assigned - The project sponsor should be satisfied that the
system produced is acceptable and ready for
delivery - Custody of contracts may need to be assigned, and
documentation archived or passed on to those who
will need it
423.5 Business Application Development
- The implementation process for business
applications, commonly referred to as an SDLC,
begins when an individual application is
initiated as a result of one or more of the
following situations - A new opportunity that relates to a new or
existing business process - A problem that relates to an existing business
process - A new opportunity that will enable the
organization to take advantage of technology - A problem with the current technology
433.5 Business Application Development (continued)
- Benefits of using this approach
- All affected parties will have a common and clear
understanding of the objectives and how they
contribute to business support - Conflicting key business drivers (e.g., cost vs.
functionality) and mutually dependent key
business drivers can be detected and resolved in
early stages of an SDLC project
443.5 Business ApplicationDevelopment (continued)
- From an IS auditors perspective, an approach
with defined life cycles and specific points for
review provides the following advantages - Influence is significantly increased when there
are formal procedures and guidelines - Can review all relevant areas and phases of the
systems development project and report
independently to management - Can identify selected parts of the system and
become involved in the technical aspects - Can evaluate the methods and techniques applied
through the development phases
453.5.1 Traditional SDLC Approach
- Also referred to as the waterfall technique, this
life cycle approach is the oldest and most widely
used for developing business applications - Based on a systematic, sequential approach to
software development that begins with a
feasibility study and progresses through
requirements definition, design, development,
implementation and postimplementation
463.5.1 Traditional SDLC Approach (continued)
- Some of the problems encountered with this
approach include - Unanticipated events
- Difficulty in obtaining an explicit set of
requirements from the user - Managing requirements and convincing the user
about the undue or unwarranted requirements in
the system functionality - The necessity of user patience
- A changing business environment that alters or
changes the users requirements before they are
delivered
473.5.2 Integrated Resource Management Systems
- A growing number of organizations are shifting to
a fully integrated corporate solution, i.e., an
ERP solution - This type of software implementation is much
larger than a regular software acquisition
project - ERP systems impact the way a corporation does
business, its entire control environment,
technological direction and internal resources
483.5.3 Description of Traditional SDLC Phases
- Feasibility Study
- Concerned with analyzing the benefits and
solutions for the identified problem area - Includes development of a business case, which
determines the strategic benefits of implementing
the system either in productivity gains or in
future cost avoidance - Identifies and quantifies the cost savings of the
new system and estimates a payback schedule for
the cost incurred in implementing the system or
shows the projected return on investment (ROI)
493.5.3 Description of TraditionalSDLC Phases
(continued)
- Requirements definition
- Concerned with identifying and specifying the
business requirements of the system chosen for
development during the feasibility study - Requirements include descriptions of what a
system should do, how users will interact with a
system, conditions under which the system will
operate, and the information criteria the system
should meet - This phase deals with the issues that are
sometimes called nonfunctional requirements
503.5.3 Description of Traditional SDLC Phases
(continued)
- Entity relationship diagrams
- An ERD depicts a systems data and how these data
interrelate - An ERD can be used as a requirements analysis
tool to obtain an understanding of the data a
system needs to capture and manage - An ERD can also be used later in the development
cycle as a design tool that helps document the
actual database schema that will be implemented
513.5.3 Description of Traditional SDLC Phases
(continued)
- Software acquisition
- Not a phase in the standard SDLC. However, if a
decision was reached to acquire rather than
develop software, software acquisition is the
process that should occur after the requirements
definition phase - Decision based on various factors such as the
cost differential between development and
acquisition, availability of generic software,
and the time gap between development and
acquisition
523.5.3 Description of Traditional SDLC Phases
(continued)
- Software acquisition
- The project team needs to carefully examine and
compare the vendors responses to the request for
proposal (RFP) - It is likely that more than one product/vendor
fits the requirements with advantages and
disadvantages with respect to each other - Once vendors are short listed, it can be
beneficial for the project team to talk to
current users of each potential product
533.5.3 Description of Traditional SDLC Phases
(continued)
- Design
- Key design phase activities include
- Developing system flowcharts and entity
relationship models - Determining the use of structured design
techniques - End of design phase
- Describing inputs and outputs
- Determining processing steps and computation
rules - Determining data file or database system file
design - Preparing program specifications
- Developing test plans for the various levels of
testing - Developing data conversion plans
543.5.3 Description of Traditional SDLC Phases
(continued)
- Development
- Key activities performed in a test/development
environment include - Coding and developing program and system-level
documents - Debugging and testing the programs developed
- Developing programs to convert data from the old
system for use on the new system - Creating user procedures to handle transition to
the new system - Training selected users on the new system
- Ensure modifications are documented and applied
accurately
553.5.3 Description of Traditional SDLC Phases
(continued)
- Development
- Programming methods and techniques
- Online programming facilities (integrated
development environment) - Programming languages
- Program debugging
- Testing
56Practice Question
- 3-1 To assist in testing a core banking system
being acquired, an organization has provided the
vendor with sensitive data from its existing
production system. An IS auditors PRIMARY
concern is that the data should be - sanitized.
- complete.
- representative.
- current.
573.5.3 Description of Traditional SDLC Phases
(continued)
- Development
- Elements of a software testing process
- Test plan
- Conduct and report test results
- Address outstanding issues
- Testing classifications
- Unit testing
- Interface or integration testing
- System testing
- Final acceptance testing
58Practice Question
- 3-2 An IS auditor is performing a project review
to identify whether a new application has met
business objectives. Which of the following test
reports offers the MOST assurance that business
objectives are met? - User acceptance
- Performance
- Sociability
- Penetration
593.5.3 Description of TraditionalSDLC Phases
(continued)
- Development
- Other types of testing
- Alpha and beta testing
- Pilot testing
- White box testing
- Black box testing
- Function/validation testing
- Regression testing
- Parallel testing
- Sociability testing
- Automated application testing
603.5.3 Description of Traditional SDLC Phases
(continued)
- Implementation
- During the implementation phase, the actual
operation of the new information system is
established and tested - Final user-acceptance testing is conducted in
this environment - The system may also go through a certification
and accreditation process to assess the
effectiveness of the business application at
mitigating risks to an appropriate level
613.5.3 Description of Traditional SDLC Phases
(continued)
- Implementation planning
- Phase 1Develop to-be support structures
- Phase 2Establish support function
- End-user training
- Data conversion
- Refining migration scenario
- Fallback (rollback) scenario
- Changeover (go-live or cutover) techniques
- Parallel changeover
- Phased changeover
- Abrupt changeover
- Certification/accreditation
623.5.3 Description of Traditional SDLC Phases
(continued)
- Postimplementation Review
- Should meet the following objectives
- Assess the adequacy of the system
- Evaluate the projected cost benefits or ROI
- Develop recommendations that address the systems
inadequacies and deficiencies - Develop a plan for implementing the
recommendations - Assess the development project process
- A postimplementation review should be performed
jointly by the project development team and
appropriate end users
633.5.4 Risks Associated with Software Development
- Business risk relating to the likelihood that the
new system may not meet the users business
needs, requirements and expectations - Potential risks that can occur when designing and
developing software systems - Within the project
- With suppliers
- Within the organization
- With the external environment
643.5.5 Use of Structured Analysis, Design and
Development Techniques
- Closely associated with the traditional, classic
SDLC approach - Techniques provide a framework for representing
the data and process components of an application
using various graphical notations at different
levels of abstraction, until it reaches the
abstraction level that enables programmers to
code the system
653.7 Alternative Forms of SoftwareProject
Organization
- Other approaches an IS auditor may encounter
include - Incremental or progressive development
- Iterative development
- Evolutionary development
- Spiral development
- Agile development
663.7.1 Agile Development
- Agile development refers to a family of similar
development processes that espouse a
nontraditional way of developing complex systems. - Agile development processes have a number of
common characteristics, including - The use of small, time-boxed subprojects or
iterations - Replanning the project at the end of each
iteration - Relatively greater reliance on tacit knowledge
- Heavy influence on mechanisms to effectively
disseminate tacit knowledge and promote teamwork - A change in the role of the project manager
673.7.2 Prototyping
- The process of creating a system through
controlled trial and error procedures to reduce
the level of risks in developing the system - Reduces the time to deploy systems primarily by
using faster development tools such as
fourth-generation techniques - Potential risk is that the finished system will
have poor controls - Change control often becomes more complicated
683.7.3 Rapid Application Development
- A methodology that enables organizations to
develop strategically important systems quickly,
while reducing development costs and maintaining
quality - Achieved through the use of
- Small, well-trained development teams
- Evolutionary prototypes
- Integrated power tools
- A central repository
- Interactive requirements and design workshops
- Rigid limits on development time frames
693.8.1 Data-oriented System Development
- A method for representing software requirements
by focusing on data and their structure - Major advantage of this approach is that it
eliminates data transformation errors such as
porting, conversion, transcription and
transposition
703.8.2 Object-oriented System Development
- The process of solution specification and
modeling where data and procedures can be grouped
into an entity known as an object - OOSD is a programming technique and is not a
software development methodology itself - The major advantages of OOSD are
- The ability to manage an unrestricted variety of
data types - Provision of a means to model complex
relationships - The capacity to meet the demands of a changing
environment
713.8.3 Component-based Development
- Process of assembling applications from
cooperating packages of executable software that
make their services available through defined
interfaces - Basic types of components are
- In-process client components
- Stand-alone client components
- Stand-alone server components
- In-process server components
723.8.3 Component-based Development (continued)
- Components play a significant role in web-based
applications - Component-based development
- Reduces development time
- Improves quality
- Allows developers to focus more strongly on
business functionality - Promotes modularity
- Simplifies reuse
- Reduces development cost
- Supports multiple development environments
733.8.4 Web-based Application Development
- Designed to achieve easier and more effective
integration of code modules within and between
enterprises - Different from traditional third- or
fourth-generation program developments in many
ways - Languages and programming techniques used
- Methodologies used to control development work
- The way users test and approve development work
743.8.6 Reverse Engineering
- The process of taking apart an application, a
software application or a product to see how it
functions, and to use that information to develop
a similar system - Major advantages
- Faster development and reduced SDLC duration
- Creation of an improved system using the
reverse-engineered application drawbacks
753.9 Infrastructure Development/Acquisition
Practices
- The physical architecture analysis, the
definition of a new one and the necessary road
map to move from one to the other are critical
tasks for an IT department - Goals
- To successfully analyze the existing architecture
- To design a new architecture
- To write the functional requirements of this new
architecture - To develop a proof of concept
763.9 Infrastructure Development/Acquisition
Practices (continued)
- Physical implementation of the required technical
infrastructure to set up the future environment
will be planned next - Task will cover procurement activities such as
contracting partners, setting up the SLAs, and
developing installation plans and installation
test plans
773.9.1 Project Phases of Physical Architecture
Analysis
783.9.2 Planning Implementation of Infrastructure
- To ensure the quality of results, a phased
approach is necessary - Communication processes should be set up to other
projects - Through these different phases the components are
fit together, and a clear understanding of the
available and contactable vendors is established
by using the selection process during the
procurement phase and beyond
793.9.2 Planning Implementation of Infrastructure
(continued)
803.9.2 Planning Implementation of Infrastructure
(continued)
813.9.2 Planning Implementation of Infrastructure
(continued)
823.9.2 Planning Implementation of Infrastructure
(continued)
833.9.2 Planning Implementation of Infrastructure
(continued)
843.9.4 Hardware Acquisition
- For acquiring a system, the invitation to tender
(ITT) should include the following - Organizational descriptions
- Information processing requirements
- Hardware requirements
- System software applications
- Support requirements
- Adaptability requirements
- Constraints
- Conversion requirements
853.9.4 Hardware Acquisition(continued)
- Acquisition steps include, but are not limited
to, the following - Testimonials or visits with other users
- Provisions for competitive bidding
- Analysis of bids against requirements
- Comparison of bids against each other
- Analysis of the vendors financial condition
- Analysis of the vendors capability to provide
maintenance - Review of delivery schedules against requirements
- Analysis of security and control facilities
- Review and negotiation of price
- Review of contract terms
863.9.5 System Software Acquisition
- When selecting new system software, the following
technical issues should be considered - Business, functional, technical needs and
specifications - Cost and benefit(s)
- Obsolescence
- Compatibility with existing systems
- Security
- Demands on existing staff
- Training and hiring requirements
- Future growth needs
- Impact on system and network performance
873.9.7 System Software ChangeControl Procedures
- All test results should be documented, reviewed
and approved by technically-qualified subject
matter experts prior to production use - Change control procedures are designed to ensure
that changes are authorized and do not disrupt
processing
883.10.1 Change ManagementProcess Overview
- Change management process begins with authorizing
changes to occur - Requests initiated from end users, operational
staff and system development/maintenance staff - Change requests should be in a format that
ensures all changes are considered for action and
that allows the system management staff to easily
track the status of the request - All requests for changes should be maintained by
the system maintenance staff as part of the
systems permanent documentation
893.10.1 Change Management Process Overview
(continued)
- Deploying changes
- Documentation
- Testing changed programs
- Auditing program changes
- Emergency changes
- Deploying changes back into production
- Change exposures (unauthorized changes)
903.10.2 Configuration Management
- Maintenance requests must be formally documented
and approved by a change control group - Careful control is exercised over each stage of
the maintenance process via checkpoints, reviews
and sign-off procedures - From an audit perspective, provides evidence of
managements commitment to careful control - Involves procedures throughout the software life
cycle
913.10.2 Configuration Management (continued)
- As part of the software configuration management
task, the maintainer performs the following
tasks - Develop the configuration management plan
- Baseline the code and associated documents
- Analyze and report on the results of
configuration control - Develop the reports that provide configuration
status - Develop release procedures
- Perform configuration control activities
- Update the configuration status accounting
database
923.11.2 Computer-aided Software Engineering
- CASE is the use of automated tools to aid in the
software development process - May include the application of software tools for
software requirements analysis, software design,
code production, testing, document generation and
other software development activities - Three categories
- Upper CASE
- Middle CASE
- Lower CASE
933.11.2 Computer-aided Software Engineering
(continued)
- Key issues an IS auditor needs to consider with
CASE include - CASE tools do not ensure that the design,
programs and system are correct or that they
fully meet the needs of the organization - CASE tools should complement and fit into the
application development methodology - The integrity of data moved between CASE products
needs to be monitored and controlled - Changes to the application should be reflected in
stored CASE product data
943.11.3 Fourth-generation Languages
- Common characteristics of 4GLs include
- Nonprocedural language
- Environmental independence (portability)
- Software facilities
- Programmer workbench concepts
- Simple language subsets
- 4GLs are classified as
- Query and report generators
- Embedded database 4GLs
- Relational database 4GLs
- Application generators
953.12.1 Business Process Reengineering and Process
Change Projects
963.12.1 Business Process Reengineering and Process
Change Projects (continued)
- The steps in a successful BPR are
- Define the areas to be reviewed
- Develop a project plan
- Gain an understanding of the process under review
- Redesign and streamline the process
- Implement and monitor the new process
- Establish a continuous improvement process
973.12.1 Business Process Reengineering and Process
Change Projects (continued)
- A successful BPR/process change project requires
the project team to perform the following for the
existing processes - Process decomposition to the lowest level
required for effectively assessing a business
process - Identification of customers, process-based
managers or process owners responsible for
beginning to end processes - Documentation of the elementary process-related
profile information
983.12.1 Business Process Reengineering and Process
Change Projects (continued)
- BPR methods and techniques
- Benchmarking process
- Plan
- Research
- Observe
- Analyze
- Adapt
- Improve
99Practice Question
- 3-3 When conducting a review of business process
reengineering, an IS auditor found that a key
preventive control had been removed. In this
case, the IS auditor should - inform management of the finding and determine
whether management is willing to accept the
potential material risk of not having that
preventive control. - determine if a detective control has replaced the
preventive control during the process and, if it
has not, report the removal of the preventive
control. - recommend that this and all control procedures
that existed before the process was reengineered
be included in the new process. - develop a continuous audit approach to monitor
the effects of the removal of the preventive
control.
100Practice Question
- 3-4 During which of the following steps in the
business process reengineering should the
benchmarking team visit the benchmarking partner? - Observation
- Planning
- Analysis
- Adaptation
1013.13 Application Controls
- Application controls are controls over input,
processing and output functions. They include
methods for ensuring that - Only complete, accurate and valid data are
entered and updated in a computer system - Processing accomplishes the correct task
- Processing results meet expectations
- Data are maintained
1023.13 Application Controls (continued)
- An IS auditors tasks include the following
- Identifying the significant application
components and the flow of transactions through
the system - Identifying the application control strengths
- Testing the controls to ensure their
functionality and effectiveness - Evaluating the control environment
- Considering the operational aspects of the
application to ensure its efficiency and
effectiveness
1033.13.1 Input/Origination Controls
- Input authorization
- Input authorization verifies that all
transactions have been authorized and approved by
management - Types of authorization include
- Signatures on batch forms or source documents
- Online access controls
- Unique passwords
- Terminal or client workstation identification
- Source documents
1043.13.1 Input/Origination Controls (continued)
- Batch controls and balancing
- Batch controls group input transactions to
provide control totals - Types of batch controls include
- Total monetary amount
- Total items
- Total documents
- Hash totals
1053.13.1 Input/Origination Controls (continued)
- Batch controls and balancing
- Batch balancing can be performed through manual
or automated reconciliation - Types of batch balancing include
- Batch registers
- Control accounts
- Computer agreement
1063.13.1 Input/Origination Controls (continued)
- Error reporting and handling
- Input processing requires that controls be
identified to verify that data are accepted into
the system correctly and that input errors are
recognized and corrected - Input error handling can be processed by
- Rejecting only transactions with errors
- Rejecting the whole batch of transactions
- Holding the batch in suspense
- Accepting the batch and flagging error
transactions
1073.13.1 Input/Origination Controls (continued)
- Error reporting and handling
- Input control techniques include
- Transaction log
- Reconciliation of data
- Documentation
- Error correction procedures
- Anticipation
- Transmittal log
- Cancellation of source documents
1083.13.2 Processing Procedures and Controls
- Data validation and editing procedures
- Procedures should be established to ensure that
input data are validated and edited as close to
the time and point of origination as possible - Data validation identifies data errors,
incomplete or missing data and inconsistencies
among related data items
1093.13.2 Processing Procedures and Controls
(continued)
- Processing controls
- Ensure the completeness and accuracy of
accumulated data - The following techniques can be used
- Manual recalculations
- Editing
- Run-to-run totals
- Programmed controls
- Reasonableness verification of calculated amounts
- Limit checks on calculated amounts
- Reconciliation of file totals
- Exception reports
1103.13.2 Processing Procedures and Controls
(continued)
- Data file control procedures
- File controls should ensure that only authorized
processing occurs to stored data - Data files generally fall into four categories
- System control parameters
- Standing data
- Master data/balance data
- Transaction files
111Practice Question
- 3-5 A hash total of employee numbers is part of
the input to a payroll master file update
program. The program compares the hash total with
the corresponding control total. What is the
purpose of this procedure? - Verify that employee numbers are valid
- Verify that only authorized employees are paid
- Detect errors in payroll calculations
- Detect the erroneous update of records
1123.13.3 Output Controls
- Output controls provide assurance that the data
delivered to users will be presented, formatted
and delivered in a consistent and secure manner - Output controls include
- Logging and storage of negotiable, sensitive and
critical forms in a secure place - Computer generation of negotiable instruments,
forms and signatures - Report distribution
- Balancing and reconciling
- Output error handling
- Output report retention
- Verification of receipt of reports
1133.13.4 Business Process Control Assurance
- Specific matters to consider in business process
control assurance are - Process maps
- Process controls
- Assessing business risks within the process
- Benchmarking with best practices
- Roles and responsibilities
- Activities and tasks
- Data restrictions
1143.14 Auditing Application Controls
- An IS auditors tasks include the following
- Identifying the significant application
components and the flow of transactions through
the system - Identifying the application control strengths and
evaluating the impact of the control weaknesses
to develop a testing strategy by analyzing the
accumulated information - Reviewing application system documentation to
provide an understanding of the functionality of
the application
1153.14.4 Data Integrity Testing
- Data integrity testing is a set of substantive
tests that examines the accuracy, completeness,
consistency and authorization of data presently
held in a system - Data integrity tests will indicate failure in
input or processing controls - Two common types of data integrity tests are
relational and referential integrity tests
1163.14.5 Data Integrity in Online Transaction
Processing Systems
- The ACID principle
- Atomicity
- Consistency
- Isolation
- Durability
1173.14.6 Test Application Systems
1183.14.6 Test Application Systems (continued)
1193.14.6 Test Application Systems (continued)
1203.14.6 Test Application Systems (continued)
1213.14.7 Continuous Online Auditing
- Provides a method for an IS auditor to collect
evidence on system reliability while normal
processing takes place - Continuous audit techniques are important IS
audit tools, particularly when used in a
time-sharing environment that process a large
number of transactions with a scarce paper trail
1223.14.8 Online Auditing Techniques
- There are five types of automated evaluation
techniques applicable to continuous online
auditing - Systems Control Audit Review File and Embedded
Audit Modules (SCARF/EAM) - Snapshots
- Audit hooks
- Integrated test facility (ITF)
- Continuous and intermittent simulation (CIS)
1233.15 Auditing Systems Development, Acquisition
and Maintenance
- An IS auditors tasks in system development,
acquisition and maintenance include - Determine the main components, objectives and
user requirements of the system - Determine and rank the major risks to, and
exposures of, the system - Identify controls to mitigate the risks to, and
exposures of, the system - Monitor the system development process
- Participate in postimplementation reviews
- Test system maintenance procedures
- Evaluate the system maintenance process
1243.15.1 Project Management
- Typically, an IS auditor should review the
adequacy of the following project management
activities - Levels of oversight by project committee
- Risk management methods within the project
- Issue management
- Cost management
- Processes for planning and dependency management
- Reporting processes to senior management
- Change control processes
- Stakeholder management involvement
- Sign off process
1253.15.2 Feasibility Study
- An IS auditor should perform the following
functions - Review the documentation produced in this phase
for reasonableness - Determine whether all cost justifications/benefits
are verifiable - Identify and determine the criticality of the
need - Determine if a solution can be achieved with
systems already in place - Determine the reasonableness of the chosen
solution
1263.15.3 Requirements Definition
- An IS auditor should perform the following
functions - Obtain the detailed requirements definition
document - Identify the key team members on the project team
- Verify that project initiation and cost have
received proper management approval - Review the conceptual design specifications to
ensure they address the needs of the user - Review the conceptual design to ensure control
specifications have been defined - Determine whether a reasonable number of vendors
received a proposal covering the project scope
and user requirements - Review the UAT specification
- Determine whether the application is a candidate
for an embedded audit routine
127Practice Question
- 3-6 When auditing the requirements phase of a
software acquisition, an IS auditor should - assess the feasibility of the project timetable.
- assess the vendors proposed quality processes.
- ensure that the best software package is acquired
- review the completeness of the specifications
1283.15.4 Software Acquisition Process
- An IS auditor should perform the following
functions - Analyze the documentation from the feasibility
study - Review the RFP
- Determine whether the selected vendor is
supported by RFP documentation - Attend agenda-based presentations and conference
room pilots - Review the vendor contract prior to its signing
- Ensure the contract is reviewed by legal counsel
before it is signed
129Practice Question
- 3-7 An organization decides to purchase a package
instead of developing it. In such a case, the
design and development phases of a traditional
software development life cycle (SDLC) would be
replaced with - selection and configuration phases.
- feasibility and requirements phases.
- implementation and testing phases.
- nothing replacement is not required.
1303.15.5 Detailed Design and Development
- An IS auditor should perform the following
functions - Review the system flowcharts for adherence to the
general design - Review the input, processing and out controls
designed into the system for appropriateness - Interview the key users of the system
- Assess the adequacy of audit trails
- Verify the integrity of key calculations and
processes - Verify that the system can identify and process
erroneous data correctly - Review the quality assurance results of the
programs developed - Verify that all recommended corrections to
programming errors were made
131Practice Question
- 3-8 User specifications for a project using the
traditional SDLC methodology have not been met.
An IS auditor looking for a cause should look in
which of the following areas? - Quality assurance
- Requirements
- Development
- User training
1323.15.6 Testing
- An IS auditor should perform the following
functions - Review the test plan for completeness
- Reconcile control totals and converted data
- Review error reports for their precision in
recognizing erroneous data and for resolution of
errors - Verify cyclical processing for correctness
- Interview end users of the system for their
understanding of new methods, procedures and
operating instructions - Review unit and system test plans to determine
whether tests for internal controls are planned
and performed - Review parallel testing results for accuracy
1333.15.7 Implementation Phase
- An IS auditor should verify that appropriate
sign-offs have been obtained prior to
implementation, and perform the following - Review the programmed procedures used for
scheduling and running the system along with
system parameters used in executing the
production schedule - Review all system documentation to ensure its
completeness and that all recent updates from the
testing phase have been incorporated - Verify all data conversion to ensure that they
are correct and complete before implementing the
system in production
1343.15.8 Postimplementation Review
- An IS auditor should perform the following
functions - Determine if the systems objectives and
requirements were achieved - Determine if the cost benefits identified in the
feasibility study are being measured, analyzed
and accurately reported to management - Review program change requests performed to
assess the type of changes required of the system - Review controls built into the system
- Review operators error logs
- Review input and output control balances and
reports
1353.15.9 System Change Procedures and the Program
Migration Process
- An IS auditor should consider the following
- The use and existence of a methodology for
authorizing, prioritizing and tracking system
change requests from the user - Whether emergency change procedures are addressed
in the operations manuals - Whether change control is a formal procedure for
the user and the development groups - Whether the change control log ensures all
changes shown were resolved - The users satisfaction with the turnaround of
change requests - The adequacy of the security access restrictions
over production source and executable modules
1363.15.9 System Change Procedures and the Program
Migration Process (continued)
- For a selection of changes on the change control
log - Determine whether changes to requirements
resulted in appropriate change-development
documents - Determine whether changes were made as documented
- Determine whether current documentation reflects
the changed environment - Evaluate the adequacy of the procedures in place
for testing system changes - Review evidence to ensure that procedures are
carried out as prescribed by organizational
standards - Review the procedures established for ensuring
executable and source code integrity
1373.16.1 Electronic Commerce
- E-commerce models include the following
- Business-to-consumer (B-to-C) relationships
- Business-to-business (B-to-B) relationships
- Business-to-employee (B-to-E) relationships
- Business-to-government (B-to-G) relationships
- Consumer-to-government (C-to-G) relationships
- Exchange-to-exchange (X-to-X) relationships
1383.16.1 Electronic Commerce(continued)
- With increasing emphasis on integrating the web
channel with a business internal legacy systems
and the systems of its business partners, company
systems now typically will run on different
platforms, running different software and with
different databases - The challenge of integrating diverse technologies
within and beyond the business has increasingly
lead companies to move to component-based systems
that utilize a middleware infrastructure, based
around an application server
1393.16.1 Electronic Commerce (continued)
- Databases play a key role in most e-commerce
systems, maintain