Cisa Module 3-Part A-I.s Acquisition
Cisa Module 3-Part A-I.s Acquisition
Cisa Module 3-Part A-I.s Acquisition
NOTE: CISA candidates will not be tested on their knowledge of any particular
project Mngt approach or std. However, they must understand the basic
elements of project Mngt structures, policies and procedures, and, more
specifically, related controls.
PROJECT MNGT PRACTICES
The project Mngt process begins with the project charter and ends with the
completion of the project.
Project Mngt practices are initiating, planning, executing, controlling,
monitoring and closing a project.
3 types of project Mngt organizational structures outline the authority and
control within an organization:
i. Functional-structured organization
Project manager has only a staff function without a formal Mngt authority.
ii. Project-structured
Project manager has formal authority over those taking part in the project,
budget, schedule and team.
iii. Matrix structured project organization
Management authority is shared between the project manager and the
department heads.
PROJECT MNGT PRACTICES
Requests for major projects should be submitted to and prioritized by an IT
steering committee.
The project manager (identified by the steering committee) who need not
be an IT staff member, should be given complete operational control over
the project and be allocated appropriate resources.
An I.S auditor may be included in the project team as control expert.
The I.S auditor may also provide an independent, objective review to ensure
that the level of commitment by responsible parties is appropriate (I.S
auditor’s advisory role).
Depending on the auditor’s level of involvement, s/he may become ineligible
to perform audits of the application when it becomes operational.
PROJECT MNGT ROLES AND RESPONSIBILITIES
User Mngt
Assumes ownership of the project and resulting system
Allocates qualified representative to the team
Actively participates in the project
Reviews and approves systems deliverables
User project team
Completes assigned tasks
Communicates with system developers by actively involving themselves in the
process as subject matter experts
Project manager
Provides day to day management and leadership of the project
Quality Assurance
Reviews results and deliverables
Confirms compliance with requirements
PROJECT MNGT ROLES AND RESPONSIBILITIES
Systems development Mngt
Provides technical support for hardware and software environments by
developing, installing and operating the requested system.
Systems development project team
Completes assigned tasks, communicates effectively with users by actively
involving them in the development process.
Advises the project manager of necessary project plan deviations.
Security officer(or security team)
Ensures that system controls and supporting processes provide an effective
level of protection, based on the data classification set in accordance with
corporate security policies and procedures.
Information system security engineer
Identifies security vulnerabilities and minimize or contain risk associated
with these vulnerabilities.
PROJECT MNGT TECHNIQUES
Project management techniques provide systematic quantitative and qualitative
approaches to software size estimating, scheduling, allocating resources and
measuring productivity.
Project mngmt should pay attention to three key intertwining elements:
deliverables, duration and budget.
Project duration and budget must be commensurate with the nature and
characteristics of the deliverables.
The objective of the PMO is to improve project and program mngmt quality and
secure project success. It focusses only on activities and tasks and not on project
or program content.
An I.S auditor should differentiate between auditing project content and/or
procedural aspects of a program or project.
Objectives of project portfolio management:
Results optimization
Prioritizing and scheduling projects
Resource coordination
Knowledge transfer throughout the projects
PROJECT BENEFITS REALIZATION
The objective of benefits realization is to ensure that IT and the business fulfil
their value management responsibilities, particularly that:
I.T enabled business investments achieve the promised benefits and deliver
measurable business value
Required capabilities are delivered on time and within budget
IT services and other IT assets continue to contribute to business value
An I.S auditor should understand how the business defines value or a return
on investments (ROI) for development-related projects. If an organisation
fails to consistently meet its ROI objectives, this may suggest weakness in its
SDLC and related project management practices.
PROJECT OBJECTIVES
A project must have clearly defined results that are specific, measurable,
attainable, realistic and timely ( SMART ).
A commonly accepted approach to define project objectives is to start off
with an object breakdown structure( OBS ).
After the OBS has been compiled or a solution is defined, a work breakdown
structure ( WBS ) is designed to structure all the tasks that are necessary to
build up the elements of the OBS during the project.
In contrast to the OBS, the WBS does not include basic elements of the
solution to build but shows individual work packages ( WPs ) instead.
Key things to remember with WBS and respective WPs include the following:
The top WBS level represents the final deliverable or project.
Subdeliverables contain WPs that are assigned to an organisations
department or unit.
All elements of the WBS do not need to be defined to the to the same level.
WPs define the work, duration and costs for the tasks required to produce
the sub deliverable.
PROJECT OBJECTIVES
Key things to remember cont….
WPs should not exceed a duration of 10days
WPs need to be independent of each other in the WBS
WPs are unique and should not be duplicated across the WBS
NOTE: The CISA candidate should be familiar with the use of FPA; however, the
CISA exam does not test the specifics on how to perform an FPA calculation.
Cost Budgets
Estimates for each task should contain:
Personnel hours by type.
Machine hours.
Other external costs.
Software cost estimation
Cost estimation is a result of software size estimation and helps to properly scope a
project.
Automated techniques for cost estimation of projects at each phase of information
systems development are available.
To use these products, an information system is usually divided into main
components and a set of cost drivers is established.
Components include:
Source code language.
Execution time constraints.
Main storage constraints.
Data storage constraints.
Computer access.
The target machine used for development.
The security environment.
Staff experience.
Scheduling and establishing the time frame
An I.S auditor should pay close attention to the degree the org’s security
engineering team is involved in the development of security controls
throughout the data life cycle within the business application.
SDLC PHASES
Phase 3a: Software selection and acquisition
It is appropriate to evaluate the risk and benefits of developing a new
system versus acquiring from a vendor
Consideration should be given to the ability of the organization to
undertake the proposed development project, the costs, risk and benefit of
having total ownership and control over the new system rather than
becoming dependent on a vendor.
SDLC PHASES
Phase 3b: Design (in-house development)
Key design phases include:
Develop system flowcharts and entity relationship models
Determine the use of structured design techniques
Describe inputs and outputs
Determine processing steps and computation rules when addressing
functional requirements
Determine data file or database system file design
Prepare program specifications for various types of requirements
Develop test plans for various level of testing
Develop data conversion plans
Perform a risk assessment of information flows.
Risks associated with software development
Strategic risk-arises when the business goals are identified and weighted
without taking the corporate strategy into account.
Business risk-relates to the likelihood that the new system may not meet the
user’s business needs, requirements and expectations.
Project risk- arises if the project activities to design and develop the system
exceed the limits of the financial resources set aside for the project and, as a
result, the project may be completed late, if ever.
I.S auditor’s role in Project Design
An I.S auditor is focused on:
Whether an adequate system of controls is incorporated into system
specifications and test plans
Whether continuous online auditing functions are built into the system
Evaluating the effectiveness of the design process itself to establish a formal
software change process that effectively freezes the inclusion of any changes to
system requirements without a formal review and approval process.
Prototyping-evolutionary development
The initial emphasis during the development of the prototype is usually placed
on the reports and screens which are the system’s aspects most used by the end
users.
This allows the end user to see a working model of the proposed system within a
short time.
There are two basic methods or approaches to prototyping:
1. Build the model to create the design then based on that model, develop the
system design.
2. Gradually build the actual system that will operate in production
SOFTWARE DEVELOPMENT METHODS
Rapid Application Development(RAD)
RAD is a mythology that enables an organization to develop strategically
important systems quickly while reducing development costs
It has four major stages:
1. Concept definition-Defines the business functions and data subject areas that
the system will support.
2. Functional design- Uses workshops to model the system’s data and processes
and build a working prototype of critical system components.
3. Development –completes the construction of the physical database and
application system, builds the conversion system, and develops user aids and
deployment work plans.
4. Deployment –includes final user testing and training, data conversion and the
implementation of the application system.
SOFTWARE DEVELOPMENT METHODS
Agile Development
An alternative method for software development which employs a more iterative
and incremental approach instead of the sequential approach of the SDLC.
It is applied when all requirements cannot be articulated upfront.
Advantages:
Ability to manage an unrestricted variety of data types
Provision of a means to model complex relationships
Capacity to meet the demands of a changing environment
SOFTWARE DEVELOPMENT METHODS
Component-Based Development
It means assembling applications from cooperating packages of executable
software that make their services available through defined interfaces
Web-based application development
Designed to achieve easier and more effective integration of code modules
within and between enterprises.
It seeks to avoid the need to perform redundant computing tasks with the
inherent need for redundant code.
The risk of web application development is that the systems are widely known
and could be exploited by almost anyone, courtesy of the internet.
A risk-based approach should therefore be taken in the assessment of web
application vulnerabilities:
Identify the business goals and supporting IT goals related to the development,
then identify what can go wrong.
SOFTWARE DEVELOPMENT METHODS
Web-Based application Development cont….
Identify risk related to inadequate specifications, poor coding techniques,
inadequate documentation, inadequate quality control,lack of proper change
control, among others, put them in the context of web application development
with the support of best practice material.
The focus should be on application development risk, the associated business
risk and technical vulnerabilities, and how these could materialize and be
controlled.
SOFTWARE DEVELOPMENT METHODS
Software Reengineering
Software reengineering is a process of updating an existing system by extracting
and reusing design and program component's.
This process is used to support major changes in the way an organization
operates.
Typical methodologies used in software reengineering generally fall into the
following categories:
BPR-thorough analysis and significant redesign of the business processes and
management systems to establish a better performing structure.
Service-oriented software reengineering methodology-its based upon the service
oriented computer architecture, and the reengineering processes apply many
concepts of RAD development leveraging Responsible, Accountable, Consulted
and Informed (RACI) charts and UML modelling.
SOFTWARE DEVELOPMENT METHODS
Reverse engineering
Reverse engineering is the process of studying and analyzing an application, a
software application or a product to see how it functions and to use that
information to develop a similar system.
,
This process can be carried out in different ways:
Decompiling object or executable code into source code and using it to analyze
the program.
Black-box- testing the application to be reverse-engineered to unveil its
functionality.
The major advantages of reverse engineering are:
Faster development and reduced SDLC duration.
The possibility of introducing improvements by overcoming the reverse-
engineering application drawbacks.
SOFTWARE DEVELOPMENT METHODS
An IS auditor should be aware of the following risk items:
Software license agreements often contain clauses prohibiting the license from
reverse engineering the software so that no trade secrets or programming
techniques are compromised.
Decompilers are relatively new tools with functions that depend on specific
computers, OSs and programming languages.
Any change in one of these components may require developing or purchasing a
new decompiler.
SOFTWARE DEVELOPMENT METHODS
DevOps
DevOps refers to the integration of development and operations processes to
eliminate conflicts and barriers.
Decisions to adopt DevOps should be made based on factors such as an
organization’s climate, risk tolerance and culture and on the scope of the
development project.
An IS auditor should ensure that there is a proper separation of duties.
An organization should consider the following controls when embracing a DevOps
development approach:
Automated software scanning.
Automated vulnerability scanning.
Web application firewall.
Developer application security training
Software dependency management.
SOFTWARE DEVELOPMENT METHODS
DevOps
Access and activity login.
Documented policies and procedures.
Application performance management.
Asset management and inventorying.
Continuous auditioning and/or monitoring.
SOFTWARE DEVELOPMENT METHODS
Business Process Reengineering and Process Change
Defn:
It’s the process of responding to competitive and economic pressures and customer
demands to survive in the current business environment.
This is done by automating system processes so that there are fewer manual
interventions and manual controls.
Advantages of BPR are experienced when the reengineering process appropriately
suits the business needs.
Steps in a successful BPR:
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
SOFTWARE DEVELOPMENT METHODS
I.S auditor’s role in Business Process Reengineering
Determine whether:
The organization’s change efforts are consistent with the overall culture and
strategic plan of the organization
The reengineering team is trying to minimize any negative impact the change
might have on the organization’s staff
The BPR team has documented lessons to be learned after the completion of the
BPR/ process change project
Provide assurance or conclusion with respect to the objectives of the audit.
SYSTEM DEVELOPMENT TOOLS AND PRODUCTIVITY AIDS
Computer-Aided Software engineering (CASE)
It’s the use of automated tools to aid in the software development process.
Their use may include the application of software tools for software requirements
capture and analysis, software design, code production, testing, document
generation, and other software development activities.
Categories of CASE products:
1. Upper CASE-used to describe and document business and application requirements.
This information includes data object definitions and relationships, and process
definitions and relationships.
2. Middle CASE-products used for developing the detailed designs. When elements or
relationships change in the design, it is necessary to make only minor alterations to
the automated design and all other relationships are automatically updated.
3. Lower CASE-Products involved with the generation of program code and database
definitions. They use detailed design information, programming rules and database
syntax rules to generate program logic, data file formats or entire applications.
SYSTEM DEVELOPMENT TOOLS AND PRODUCTIVITY AIDS
An I.S auditor should gain assurance that approvals are obtained for the
appropriate specifications, users continue to involved in the development
process and investments in CASE tools yield benefits in quality and speed.
Other key issues an auditor should consider:
Ensure that the design, programs and system are correct and that they fully
meet the needs of the organization.
Ensure that CASE is understood and used effectively by the org. ‘s software
developers.
The integrity of data moved between CASE products or between manual and
CASE processes is monitored and controlled.
Changes to the application should be reflected in stored CASE product data.
Application controls are designed
SYSTEM DEVELOPMENT TOOLS AND PRODUCTIVITY AIDS
Fourth-Generation Languages (4GLS)
Are used in software development to reduce the overall effort and cost.
Common characteristics of 4GLS are:
Non-procedural language
Environmental independence
Software facilities
Programmer workbench concepts
Simple language subsets
SYSTEM DEVELOPMENT TOOLS AND PRODUCTIVITY AIDS
Fourth-Generation Languages (4GLS)
Classification of 4GLS :
Query and report generators
Embedded database 4GLs
Relational database 4GLS
Application generators
INFRASTRUCTURE DEVELOPMENT/ ACQUISITION PRACTICES
The physical architecture analysis, definition of a new one and the necessary
roadmap to move from one to the other are critical.
Their impact is both economic as well as technological because it decides many
other choices downstream, such as operational procedures, training needs ,
installation issues and TCO.
Phases of physical architecture analysis:
1. Review of existing architecture
2. Analysis and design
3. Draft functional requirements
4. Vendor and product selection
5. Writing functional requirements
INFRASTRUCTURE DEVELOPMENT/ ACQUISITION PRACTICES
Proof of Concept
POC proves that the selected hardware, software and data are able to meet all
expectations, including security requirements.
The deliverable of the POC should be a running prototype , including the associated
document and test protocols describing the tests and their results.
The prototype should demonstrate the following features:
The basic setup of the core security infrastructure
Correct functionality of auditing components
Basic but functional implementation of security measures
Secured transactions
Characterization in terms of installation constraints and limits
Performance
Funding and costing model
Resiliency to include fail-over to a trusted operational state
Data and algorithm
INFRASTRUCTURE DEVELOPMENT/ ACQUISITION PRACTICES
Planning implementation of infrastructure
To ensure the quality of the results, it is necessary to use a phased approach to fit the
entire puzzle together.
Through these different phases, a clear understanding of the available and contactable
vendors is established by using the selection process during the procurement phase and
beyond.
It is necessary to select the scope of key business and technical requirements to
prepare the next steps such as development of the delivery, installation and test plans.
4 phases:
Procurement phase-during this phase communication between the business and the
analysis project is established to provide an overview of the chosen solution and
determine the quantity structure of the deliverables.
Delivery time-the delivery plan is developed
Installation plan-installation plan is developed in cooperation with all affected parties.
Installation test plan-based on the known dependencies of the installation plan, the
test plan is developed.
INFRASTRUCTURE DEVELOPMENT/ ACQUISITION PRACTICES
Planning implementation of infrastructure
To ensure the quality of the results, it is necessary to use a phased approach to
fit the entire puzzle together.
Through these different phases, a clear understanding of the available and
contactable vendors is established by using the selection process during the
procurement phase and beyond.
It is necessary to select the scope of key business and technical requirements to
prepare the next steps such as development of the delivery, installation and test
plans.
4 phases:
Procurement phase
Delivery time
Installation plan
Installation test plan
HARDWARE/SOFTWARE ACQUISITION
Selection of a computer h/w and s/w environment requires the preparation of
specifications for distribution to hw/sw vendors and criteria for evaluating
vendor proposals.
The specifications must define, as completely as possible, the usage, tasks and
requirements for the equipment needed and must include a description of the
environment in which that equipment will be used.
I.S auditor’s role in hw acquisition:
Determine if the acquisition process began with a business need and whether
the hw requirements were considered in the specifications
Determine if several vendors were considered and whether the comparison
between them was done according to the aforementioned criteria.
SYSTEM SOFTWARE ACQUISITION
When selecting new system software, the following business and technical issues
must be considered:
Business, functional and technical needs and specifications.