Change Management CHAPTER



Similar documents
Change Management. Why Change Management? CHAPTER

Application Security in the Software Development Lifecycle

Network Configuration Management

Using COBiT For Sarbanes Oxley. Japan November 18 th 2006 Gary A Bannister

Reaching CMM Levels 2 and 3 with the Rational Unified Process

The President s Critical Infrastructure Protection Board. Office of Energy Assurance U.S. Department of Energy 202/

Enforcing IT Change Management Policy

LAMAR STATE COLLEGE - ORANGE INFORMATION RESOURCES SECURITY MANUAL. for INFORMATION RESOURCES

CRISC Glossary. Scope Note: Risk: Can also refer to the verification of the correctness of a piece of data

Build (develop) and document Acceptance Transition to production (installation) Operations and maintenance support (postinstallation)

Proving Control of the Infrastructure

CMS Policy for Configuration Management

September 2005 Report No FDIC s Information Technology Configuration Management Controls Over Operating System Software

Capability Maturity Model Integration (CMMI SM ) Fundamentals

Office of the Auditor General Performance Audit Report. Statewide UNIX Security Controls Department of Technology, Management, and Budget

IT General Controls Domain COBIT Domain Control Objective Control Activity Test Plan Test of Controls Results

Data Management Policies. Sage ERP Online

Measuring Success Service Desk Evaluation Guide for the Midsized Business: How to Choose the Right Service Desk Solution and Improve Your ROI

Introduction to Change

Using Automated, Detailed Configuration and Change Reporting to Achieve and Maintain PCI Compliance Part 4

The Challenges of Administering Active Directory

Applying ITIL v3 Best Practices

Change Management Best Practices

CDC UNIFIED PROCESS JOB AID

Functional Area 3. Skill Level 301: Applications Systems Analysis and Programming Supervisor (Mercer 1998 Job 011)

05.0 Application Development

Software Licenses Managing the Asset and Related Risks

LUXOFT ADVANTAGES. International Quality Standards

A Database Security Management White Paper: Securing the Information Business Relies On. November 2004

Reining in the Effects of Uncontrolled Change

SRA International Managed Information Systems Internal Audit Report

Best Practices in ICS Security for System Operators. A Wurldtech White Paper

Basics of Internet Security

---Information Technology (IT) Specialist (GS-2210) IT Security Competency Model---

Specific observations and recommendations that were discussed with campus management are presented in detail below.

Leveraging a Maturity Model to Achieve Proactive Compliance

Cisco Advanced Services for Network Security

Managing Vulnerabilities for PCI Compliance White Paper. Christopher S. Harper Managing Director, Agio Security Services

Approved 12/14/11. FIREWALL POLICY INTERNAL USE ONLY Page 2

Application Security in the Software Development Life Cycle (SDLC) White Paper

Executive Summary Program Highlights for FY2009/2010 Mission Statement Authority State Law: University Policy:

PHASE 9: OPERATIONS AND MAINTENANCE PHASE

Information Technology Auditing for Non-IT Specialist

How To Manage Security On A Networked Computer System

Italy. EY s Global Information Security Survey 2013

External Penetration Assessment and Database Access Review

HIPAA Compliance Review Analysis and Summary of Results

Supplier Security Assessment Questionnaire

Best Practices Report

Simply Sophisticated. Information Security and Compliance

Effective Release Management for HPOM Monitoring

MICHIGAN AUDIT REPORT OFFICE OF THE AUDITOR GENERAL THOMAS H. MCTAVISH, C.P.A. AUDITOR GENERAL

ADMINISTRATIVE SUPPORT AND CLERICAL OCCUPATIONS SIN 736 1

THE TOP 4 CONTROLS.

Office of the Auditor General Performance Audit Report. Statewide Oracle Database Controls Department of Technology, Management, and Budget

Ohio Supercomputer Center

Cisco Security Optimization Service

Managing IT Security with Penetration Testing

Information Technology Security Review April 16, 2012

Managed Services. Business Intelligence Solutions

PCI Data Security Standards (DSS)

FIREWALL POLICY November 2006 TNS POL - 008

RL Solutions Hosting Service Level Agreement

ELECTRONIC INFORMATION SECURITY A.R.

Software Development Processes

T141 Computer Systems Technician MTCU Code Program Learning Outcomes

Cisco Unified Communications and Collaboration technology is changing the way we go about the business of the University.

Guideline on Auditing and Log Management

General Computer Controls

Top Three POS System Vulnerabilities Identified to Promote Data Security Awareness

PCI DSS Reporting WHITEPAPER

Automated IT Asset Management Maximize organizational value using BMC Track-It! WHITE PAPER

HIGH-RISK SECURITY VULNERABILITIES IDENTIFIED DURING REVIEWS OF INFORMATION TECHNOLOGY GENERAL CONTROLS

Better secure IT equipment and systems

DIVISION OF INFORMATION SECURITY (DIS) Information Security Policy Threat and Vulnerability Management V1.0 April 21, 2014

Operational Change Control Best Practices

OCC 98-3 OCC BULLETIN

BEST PRACTICES. Systems Management.

Information security controls. Briefing for clients on Experian information security controls

ensure prompt restart of critical applications and business activities in a timely manner following an emergency or disaster

Central Agency for Information Technology

AD Management Survey: Reveals Security as Key Challenge

How Cisco IT Uses Software Configuration Management to Minimize Business Risk

ADDING NETWORK INTELLIGENCE TO VULNERABILITY MANAGEMENT

Lecture 8 About Quality and Quality Management Systems

Solution Brief for ISO 27002: 2013 Audit Standard ISO Publication Date: Feb 6, EventTracker 8815 Centre Park Drive, Columbia MD 21045

How To Test For Security On A Network Without Being Hacked

micros MICROS Systems, Inc. Enterprise Information Security Policy (MEIP) August, 2013 Revision 8.0 MICROS Systems, Inc. Version 8.

Key Benefits of Microsoft Visual Studio Team System

FSIS DIRECTIVE

SANS Top 20 Critical Controls for Effective Cyber Defense

agility made possible

Critical Security Controls

AN OVERVIEW OF VULNERABILITY SCANNERS

Transcription:

Change Management 18 CHAPTER In this chapter, you will Learn why change management is an important enterprise management tool Understand the key concept of segregation of duties Review the essential elements of change management Learn a process for implementing change management Study the concepts of the Capability Maturity Model Integration It is well recognized that today s computer systems are extremely complex, and it is obvious that inventory management systems for large international enterprises such as Walmart and Home Depot are probably as complex as an aircraft or skyscraper. Prominent operating systems such as Windows or UNIX are also very complex, as are computer processors on a chip. Many of today s web-based applications are relatively complex as well. For example, today s web-based applications typically consist of Flash content on web sites interacting with remote databases through a variety of services or serviceoriented architectures hosted on web servers located anywhere in the world. You wouldn t think of constructing an aircraft, large building, computer chip, or automobile in the informal manner sometimes used to develop and operate computer systems of equal complexity. Computer systems have grown to be so complex and mission-critical that enterprises cannot afford to develop and maintain them in an ad hoc manner. Change management procedures can add structure and control to the development and management of large software systems as they move from development to deployment and during operation. In this chapter, change management refers to a standard methodology for performing and recording changes during software development and system operation. The methodology defines steps that ensure that system changes are required by the organization and are properly authorized, documented, tested, and approved by management. In this chapter, the term configuration management is considered synonymous with change management and, in a more limited manner, version or release control. The term change management is often applied to the management of changes in the business environment, typically as a result of business process reengineering or quality enhancement efforts. The term change management as used in this chapter is directly related to managing and controlling software development, maintenance, and system operation. Configuration management is the application of change management principles to configuration of both software and hardware. 537

CompTIA Security+ All-in-One Exam Guide, Third Edition 538 Why Change Management? Chapter 17 presented risk management as an essential decision-making process. In much the same way, change management is an essential practice for managing a system during its entire lifecycle, from development through deployment and operation, until it is taken out of service. To manage the system development and maintenance processes effectively, you need discipline and structure to help conserve resources and enhance effectiveness. Change management, like risk management, is often considered expensive, nonproductive, unnecessary, and confusing an impediment to progress. However, like risk management, change management can be scaled to control and manage the development and maintenance of systems effectively. Change management should be used in all phases of a system s life: development, testing, quality assurance (QA), and production. Short development cycles have not changed the need for an appropriate amount of management control over software development, maintenance, and operation. In fact, short turnaround times make change management more necessary, because once a system goes active in today s webbased environment, it often cannot be taken offline to correct errors it must stay up and online or business will be lost and brand recognition damaged. In today s volatile stock market, for example, even small indicators of lagging performance can have dramatic impacts on a company s stock value. Types of Changes The Information Technology Infrastructure Library s ITIL v3 Glossary of Terms, Definitions, and Acronyms (www.itilcampus.com/moodle/mod/glossary/view.php?id=166) defines the following types of changes (with examples added in parentheses): Change: The addition, modification, or removal of anything that could have an effect on IT Services. (For example, the modification of a module to implement a new capability.) Standard Change: A preapproved change that is low risk, relatively common, and follows a procedure or work instruction. (For example, each month the finance department must make a small rounding adjustment to reconcile the General Ledger to account for foreign currency calculations.) Emergency Change: A change that must be introduced as soon as possible,. for example, to resolve a major incident or implement a security patch. (The change management process will normally have a specific procedure for handling emergency changes.) See www.itilofficialsite.com/home/home.asp for more information.

Chapter 18: Change Management 539 The following scenarios exemplify the need for appropriate change management policy and for procedures over software, hardware, and data: The developers can t find the latest version of the production source code. Change management practices support versioning of software changes. A bug corrected a few months ago mysteriously reappears. Proper change management ensures that developers always use the most recently changed source code. Fielded software was working fine yesterday but does not work properly today. Good change management controls access to previously modified modules so that previously corrected errors aren t reintroduced into the system. Development team members overwrote each other s changes. Today s change management tools support collaborative development. A programmer spent several hours changing the wrong version of the software. Change management tools support viable management of previous software versions. A customer record corrected by the call center yesterday shows the old, incorrect information today. Good change management applies to databases as well and ensures that recent changes are not lost. New tax rates stored in a table have been overwritten with last year s tax rates. Change control prevents inadvertent overwriting of critical reference data. An application runs fine at some overseas locations but not at other locations. Change management can simplify localization efforts. A network administrator inadvertently brings down a server as he incorrectly punched down the wrong wires. Just as a blueprint shows key electrical paths, data center connection paths can be version-controlled. A newly installed server is hacked soon after installation because it is improperly configured. Network and system administrators use change management to ensure configurations consistently meet security standards. PART V Just about anyone with more than a year s experience in software development or system operations can relate to at least one of the preceding scenarios. However, each of these scenarios can be controlled, and impacts mitigated, through proper change management procedures.

CompTIA Security+ All-in-One Exam Guide, Third Edition 540 The Sarbanes-Oxley Act of 2002, officially entitled the Public Company Accounting Reform and Investor Protection Act of 2002, was enacted on July 30, 2002, to help ensure management establishes viable governance environments and control structures to ensure the accuracy of financial reporting. Section 404 outlines the requirements most applicable to information technology. Change management is an essential part of creating a viable governance and control structure and critical to compliance with the Sarbanes-Oxley Act. NOTE All software can be placed under an appropriate software change management process, including: Web pages Service packs Security patches Third-party software releases Test data and test scripts Parameter files Scripts, stored procedures, or job control language type programs Customized vendor code Source code of any kind Applications The Key Concept: Separation (Segregation) of Duties A foundation for change management is the recognition that involving more than one individual in a process can reduce risk. Good business control practices require that duties be assigned to individuals in such a way that no one individual can control all phases of a process or the processing and recording of a transaction. This is called separation of duties (also called segregation of duties). It is an important means by which errors and fraudulent or malicious acts can be discouraged and prevented. Separation of duties can be applied in many organizational scenarios because it establishes a basis for accountability and control. Proper separation of duties can safeguard enterprise assets and protect against risks. They should be documented, monitored, and enforced. A well-understood business example of separation of duties is in the management and payment of vendor invoices. If a person can create a vendor in the finance system, enter invoices to payment, and then authorize a payment check to be written, it is apparent that fraud could be perpetrated because the person could write a check to him/ herself for services never performed. Separating duties by requiring one person to create the vendors and another person to enter invoices and write checks makes it more difficult for someone to defraud an employer.

Chapter 18: Change Management 541 Information technology (IT) organizations should design, implement, monitor, and enforce appropriate separation of duties for the enterprise s information systems and processes. Today s computer systems are rapidly evolving into an increasingly decentralized and networked computer infrastructure. In the absence of adequate IT controls, such rapid growth may allow exploitation of large amounts of enterprise information in a short time. Further, the knowledge of computer operations held by IT staff is significantly greater than that of an average user, and this knowledge could be abused for malicious purposes. Some of the best practices for ensuring proper separation of duties in an IT organization are as follows: Separation of duties between development, testing, QA, and production should be documented in written procedures and implemented by software or manual processes. Program developers and program testers activities should be conducted on test data only. They should be restricted from accessing live production data. This will assist in ensuring an independent and objective testing environment without jeopardizing the confidentiality and integrity of production data. End users or computer operations personnel should not have direct access to program source code. This control helps lessen the opportunity of exploiting software weaknesses or introducing malicious code (or code that has not been properly tested) into the production environment either intentionally or unintentionally. Functions of creating, installing, and administrating software programs should be assigned to different individuals. For example, since developers create and enhance programs, they should not be able to install them on the production system. Likewise, database administrators should not be program developers on database systems they administer. All accesses and privileges to systems, software, or data should be granted based on the principle of least privilege, which gives users no more privileges than are necessary to perform their jobs. Access privileges should be reviewed regularly to ensure that individuals who no longer require access have had their privileges removed. Formal change management policy and procedures should be enforced throughout the enterprise. Any changes in hardware and software components (including emergency changes) that are implemented after the system has been placed into production must go through the approved formal change management mechanism. PART V

CompTIA Security+ All-in-One Exam Guide, Third Edition 542 Separation of Duties The following steps can be used to implement separation of duties: 1. Identify an indispensable function that is potentially subject to abuse. 2. Divide the function into separate steps, each containing a portion of the necessary steps that enables the function to be abused. 3. Assign each step to a different person or organization. Managers at all levels should review existing and planned processes and systems to ensure proper separation of duties. Smaller business entities may not have the resources to implement all of the preceding practices fully, but other control mechanisms, including hiring qualified personnel, bonding contractors, and using training, monitoring, and evaluation practices, can reduce any organization s exposure to risk. The establishment of such practices can ensure that enterprise assets are properly safeguarded and can also greatly reduce error and the potential for fraudulent or malicious activities. Change management practices implement and enforce separation of duties by adding structure and management oversight to the software development and system operation processes. Change management techniques can ensure that only correct and authorized changes, as approved by management or other authorities, are allowed to be made, following a defined process. Elements of Change Management Change management has its roots in system engineering, where it is commonly referred to as configuration management. Most of today s software and hardware change management practices derive from long-standing system engineering configuration management practices. For example, automakers know that a certain amount of configuration management is necessary to build safe cars efficiently and effectively. Bolts and screws with proper strengths and qualities are used on every car, in specific places employees don t just reach into a barrel of bolts, pull one out that looks about right, and bolt it on. The same applies to aircraft for an aircraft to fly safely, it must be built of parts of the right size, shape, strength, and so on. Computer hardware and software development have also evolved to the point that proper management structure and controls must exist to ensure the products operate as planned. TIP The ITIL v3 Glossary defines change management as the process responsible for controlling the lifecycle of all changes. The primary objective of change management is to enable beneficial changes to be made, with minimum disruption to IT services. See www.itil-campus.com/moodle/mod/glossary/ view.php?id=166. Change management and configuration management use different terms for their various phases, but they all fit into the four general phases defined under configuration management:

Chapter 18: Change Management 543 Configuration identification Configuration control Configuration status accounting Configuration auditing Configuration identification is the process of identifying which assets need to be managed and controlled. These assets could be software modules, test cases or scripts, table or parameter values, servers, major subsystems, or entire systems. The idea is that, depending on the size and complexity of the system, an appropriate set of data and software (or other assets) must be identified and properly managed. These identified assets are called configuration items or computer software configuration items. Related to configuration identification, and the result of it, is the definition of a baseline. A baseline serves as a foundation for comparison or measurement. It provides the necessary visibility to control change. For example, a software baseline defines the software system as it is built and running at a point in time. As another example, network security best practices clearly state that any large organization should build its servers to a standard build configuration to enhance overall network security. The servers are the configuration items, and the standard build is the server baseline. NOTE It is important to understand that even though all servers may be initially configured to a common baseline, large enterprise application systems require viable change management systems. For example, SAP has its own change management system called the Transport Management System (TMS). Third-party software such as Phire Architect (www.phire-soft. com) and Quest Stat (www.quest.com) provide change management applications for Oracle s PeopleSoft or E-Business Suite. Configuration control is the process of controlling changes to items that have been baselined. Configuration control ensures that only approved changes to a baseline are allowed to be implemented. It is easy to understand why a software system, such as a web-based order entry system, should not be changed without proper testing and control otherwise, the system might stop functioning at a critical time. Configuration control is a key step that provides valuable insight to managers. If a system is being changed, and configuration control is being observed, managers and others concerned will be better informed. This ensures proper use of assets and avoids unnecessary downtime due to the installation of unapproved changes. Configuration status accounting consists of the procedures for tracking and maintaining data relative to each configuration item in the baseline. It is closely related to configuration control. Status accounting involves gathering and maintaining information relative to each configuration item. For example, it documents what changes have been requested; what changes have been made, when, and for what reason; who authorized the change; who performed the change; and what other configuration items or systems were affected by the change. PART V

CompTIA Security+ All-in-One Exam Guide, Third Edition 544 Returning to our example of servers being baselined, if the operating system of those servers is found to have a security flaw, then the baseline can be consulted to determine which servers are vulnerable to this particular security flaw. Those systems with this weakness can be updated (and only those that need to be updated). Configuration control and configuration status accounting help ensure systems are more consistently managed and, ultimately in this case, the organization s network security is maintained. It is easy to imagine the state of an organization that has not built all servers to a common baseline and has not properly controlled their systems configurations. It would be very difficult to know the configuration of individual servers, and security could quickly become weak. NOTE Although servers may be initially configured to the same baseline, individual applications might require a system-specific configuration to run properly. Change management actually facilitates system-specific configuration in that all exceptions from the standard configuration are documented. All people involved in managing and operating these systems will have documentation to help them quickly understand why a particular system is configured in a unique way. Configuration auditing is the process of verifying that the configuration items are built and maintained according to the requirements, standards, or contractual agreements. It is similar to how audits in the financial world are used to ensure that generally accepted accounting principles and practices are adhered to and that financial statements properly reflect the financial status of the enterprise. Configuration audits ensure that policies and procedures are being followed, that all configuration items (including hardware and software) are being properly maintained, and that existing documentation accurately reflects the status of the systems in operation. Configuration auditing takes on two forms: functional and physical. A functional configuration audit verifies that the configuration item performs as defined by the documentation of the system requirements. A physical configuration audit confirms that all configuration items to be included in a release, install, change, or upgrade are actually included, and that no additional items are included no more, no less. Implementing Change Management Change management requires some structure and discipline in order to be effective. The change management function is scalable from small to enterprise-level projects. Figure 18-1 illustrates a sample software change management flow appropriate for medium to large projects. It can be adapted to small organizations by having the developer perform work only on his/her workstation (never on the production system) and having the system administrator serve in the buildmaster function. The buildmaster is usually an independent person responsible for compiling and incorporating changed software into an executable image.

Chapter 18: Change Management 545 TIP The ITIL v3 Glossary defines release management as the process responsible for planning, scheduling, and controlling the movement of releases to test and live environments. The primary objective of release management is to ensure that the integrity of the live environment is protected and that the correct components are released. See www.itilcampus.com/moodle/mod/ glossary/view.php?id=166. Figure 18-1 shows that developers never have access to the production system or data. It also demonstrates proper separation of duties between developers, QA and test personnel, and production. It implies that a distinct separation exists between development, testing and QA, and production environments. This workflow is for changes that have a major impact on production or the customer s business process. For minor changes that have minimal risk or impact on business processes, some of the steps may be omitted. TIP Using Figure 18-1, observe the separation of duties between development, test/qa, and production. The functions of creating, installing, and administrating are assigned to different individuals. Note also appropriate management review and approval. This implementation also ensures that no compiler is necessary on the production system. Indeed, compilers should not be allowed to exist on the production system. PART V Figure 18-1 Software change control workflow

CompTIA Security+ All-in-One Exam Guide, Third Edition 546 The change management workflow proceeds as follows: 1. The developer checks out source code from the code-control tool archive to the development system. 2. The developer modifies the code and conducts unit testing. 3. The developer checks the modified code into the code-control tool archive. 4. The developer notifies the buildmaster that changes are ready for a new build and testing/qa. 5. The buildmaster creates a build incorporating the modified code and compiles the code. 6. The buildmaster notifies the system administrator that the executable image is ready for testing/qa. 7. The system administrator moves the executables to the test/qa system. 8. QA tests the new executables. If tests are passed, test/qa notifies the manager. If tests fail, the process starts over. 9. Upon manager approval, the system administrator moves the executable to the production system. The Purpose of a Change Control Board To oversee the change management process, most organizations establish a change control board (CCB). In practice, a CCB not only facilitates adequate management oversight, but it also facilitates better coordination between projects. The CCB convenes on a regular basis, usually weekly or monthly, and can be convened on an emergency or as-needed basis as well. Figure 18-2 shows the process for implementing and properly controlling hardware or software during changes. The CCB s membership should consist of development project managers, network administrators, system administrators, test/qa managers, an information security manager, an operations center manager, and a help desk manager. Others can be added as necessary, depending on the size and complexity of the organization. Figure 18-2 Change control board process

Chapter 18: Change Management 547 A system problem report (SPR) is used to track changes through the CCB. The SPR documents changes or corrections to a system. It reflects who requested the change and why, what analysis must be done and by whom, and how the change was corrected or implemented. Figure 18-3 shows a sample SPR. Most large enterprises cannot rely on a paper-based SPR process and instead use one of the many software systems available to perform change management functions. While this example shows a paper-based SPR, it contains all the elements of change management: it describes the problem and who reported it, it outlines resolution of the problem, and it documents approval of the change. Figure 18-4 shows the entire change management process and its relationship to incident management and release management. Figure 18-3 Sample system problem report PART V

CompTIA Security+ All-in-One Exam Guide, Third Edition 548 Figure 18-4 Change, incident, and release management Code Integrity One key benefit of adequate change management is the assurance of code consistency and integrity. Whenever a modified program is moved to the production source-code library, the executable version should also be moved to the production system. Automated change management systems greatly simplify this process and are therefore better controls for ensuring executable and source-code integrity. Remember that at no time should the user or application developer have access to production source and executable code libraries in the production environment. Finally, in today s networked environment, the integrity of the executable code is critical. A common hacking technique is to replace key system executable code with modified code that contains backdoors, allowing unauthorized access or functions to be performed. Executable code integrity can be verified using host-based intrusion detection systems. These systems create and maintain a database of the size and content of executable modules. Conceptually, this is usually done by performing some kind of hashing or sophisticated checksum operation on the executable modules and storing the results in a database. The operation is performed on a regular schedule against the executable modules, and the results are compared to the database to identify any unauthorized changes that may have occurred to the executable modules. The Capability Maturity Model Integration One area that is likely to be covered on the Security+ test is the Capability Maturity Model Integration (CMMI) developed at Carnegie Mellon University s Software Engineering Institute (SEI). SEI has created three capability maturity model integrations that replace the older Capability Maturity Model (CMM): the Capability Maturity Model Integration for Acquisition (CMMI-ACQ), the Capability Maturity Model Integration for Development (CMMI-DEV), and the Capability Maturity Model Integration for Services (CMMI-SVC). CMMI-DEV is representative of the three models. Configuration or change management is one of the fundamental concepts of CMMI-DEV, which provides organizations with the ability to improve their software and other processes by providing an evolutionary path from ad hoc processes to disciplined management processes.

Chapter 18: Change Management 549 The CMMI-DEV defines five maturity levels: Level 1: Initial At maturity level 1, processes are usually ad hoc and chaotic. The organization usually does not provide a stable environment to support processes. Level 2: Managed At maturity level 2, processes are planned and executed in accordance with policy. Also, the projects employ skilled people who have adequate resources to produce controlled outputs; involve relevant stakeholders; are monitored, controlled, and reviewed; and are evaluated for adherence to their process descriptions. Level 3: Defined At maturity level 3, processes are well characterized and understood, and are described in standards, procedures, tools, and methods. These standard processes are used to establish consistency across the organization. Level 4: Quantitatively Managed At maturity level 4, the organization establishes quantitative objectives for quality and process performance and uses them as criteria in managing projects. Quantitative objectives are based on the needs of the customer, end users, organization, and process implementers. Quality and process performance is understood in statistical terms and is managed throughout the life of projects. Level 5: Optimizing At maturity level 5, an organization continually improves its processes based on a quantitative understanding of its business objectives and performance needs. The organization uses a quantitative approach to understand the variation inherent in the process and the causes of process outcomes. EXAM TIP To complete your preparations for the Security+ exam, it is recommended that you consult SEI s web site (www.sei.cmu.edu/cmmi) for specific CMMI definitions. Be sure that you understand the differences between capability levels and maturity levels as defined in CMMI. PART V Change management is a key process to implementing the CMMI-DEV in an organization. For example, if an organization is at CMMI-DEV level 1, it probably has minimal formal change management processes in place. At level 3, an organization has a defined change management process that is followed consistently. At level 5, the change management process is a routine, quantitatively evaluated part of improving software products and implementing innovative ideas across the organization. In order for an organization to effectively manage software development, operation, and maintenance, it should have effective change management processes in place.

CompTIA Security+ All-in-One Exam Guide, Third Edition 550 Chapter Review Change management is an essential management tool and control mechanism. The key concept of segregation of duties ensures that no single individual or organization possesses too much control in a process. Therefore, it helps prevent errors and fraudulent or malicious acts. The elements of change management (configuration identification, configuration control, configuration status accounting, and configuration auditing), coupled with a defined process and a change control board, will provide management with proper oversight of the software lifecycle. Once such a process and management oversight exists, the company will be able to use CMMI-DEV to move from ad hoc activities to a disciplined software management process. Questions 1. An upgrade to a software package resulted in errors that had been corrected in the previously released upgrade. This type of problem could have been prevented by A. The system administrator making the changes instead of the developer B. Proper change management procedures being used when changing the object code C. The use of an object-oriented design approach rather than a rapid prototyping design approach D. Proper change management procedures when changing the source code 2. Change management procedures are established to A. Ensure continuity of business operations in the event of a major disruption B. Ensure that changes in business operations caused by a major disruption are properly controlled C. Add structure and control to the development of software systems D. Identify threats, vulnerabilities, and mitigating actions that could impact an organization 3. Which of the following is not a principle of separation of duties? A. Software development, testing, quality assurance, and production should be assigned to different individuals. B. Software developers should have access to production data and source code files. C. Software developers and testers should be restricted from accessing live production data. D. The functions of creating, installing, and administrating software programs should be assigned to different individuals. 4. Why should end users not be given access to program source code? A. It could allow an end user to implement the principle of least privilege. B. It helps lessen the opportunity of exploiting software weaknesses.

Chapter 18: Change Management 551 C. It assists in ensuring an independent and objective testing environment. D. It ensures testing and quality assurance perform their proper functions. 5. Configuration status accounting consists of A. The process of controlling changes to items that have been baselined B. The process of identifying which assets need to be managed and controlled C. The process of verifying that the configuration items are built and maintained properly D. The procedures for tracking and maintaining data relative to each configuration item in the baseline 6. Configuration identification consists of A. The process of controlling changes to items that have been baselined B. The process of identifying which assets need to be managed and controlled C. The process of verifying that the configuration items are built and maintained properly D. The procedures for tracking and maintaining data relative to each configuration item in the baseline 7. Which position is responsible for moving executable code to the test/qa or production systems? A. System administrator B. Developer C. Manager D. Quality assurance 8. Which computer security technology is used to ensure the integrity of executable code? A. Host-based intrusion detection systems B. Firewalls C. Gateways D. Network-based intrusion detection systems 9. In the Software Engineering Institute s Capability Maturity Model Integration for Development (CMMI-DEV), which of the following correctly defines Level 3, Defined? A. Statistical evaluation and quantitative objectives are used to control and manage processes. B. Processes are ad hoc and are not institutionalized. C. Processes are well characterized and understood and are described in standards, procedures, tools, and methods. D. Processes are planned and executed according to policy and are monitored, controlled, reviewed, and evaluated. PART V

CompTIA Security+ All-in-One Exam Guide, Third Edition 552 10. In the Software Engineering Institute s Capability Maturity Model Integration for Development (CMMI-DEV), which of the following correctly defines Level 2, Managed? A. Statistical evaluation and quantitative objectives are used to control and manage processes. B. Processes are improved based on quantitative understanding of business objectives and performance needs. C. Processes are well characterized and understood and are described in standards, procedures, tools, and methods. D. Processes are planned and executed according to policy and are monitored, controlled, reviewed, and evaluated. Answers 1. D. Reappearing errors are likely caused by a developer not using the most recent version of the source code. Answer A is wrong because proper segregation of duties states that the developer is responsible for changing software programs, not the system administrator. Answer B is wrong because the source code will be recompiled, not the object code. Answer C is wrong because the design approach would not have caused this problem. 2. C. The fundamental purpose of software change management is to add structure and control to the software development process. Answers A and B are incorrect because software change management does not apply directly to ensuring business continuity. Answer D is incorrect; this is the definition of risk management. 3. B. Programmers should not be given direct access to production data or files. All the other answers are principles of segregation of duties, as outlined in the chapter. 4. B. If end users have access to source code, they could possibly view, identify, and abuse errors or weaknesses in the source code. Answer A is incorrect because the principle of least privilege does not directly apply here. Answer C is incorrect because end user access to program source code is not directly related to the testing environment. Answer D is incorrect because end user access to program source code is not directly related to the testing and quality assurance functions. 5. D. Configuration status accounting consists of the procedures for tracking and maintaining data relative to each configuration item in the baseline. Answers A, B, and C are the definitions of configuration control, configuration identification, and configuration auditing, respectively. 6. B. Configuration identification consists of the process of identifying which assets need to be managed and controlled. Answers A, C, and D are the definitions of configuration control, configuration auditing, and configuration status accounting, respectively.

Chapter 18: Change Management 553 7. A. The system administrator should be the only person allowed to move executables. The developer modifies the source code, the manager approves moving the executable to the production system, and quality assurance tests the executables. 8. A. Host-based intrusion detection systems create and maintain a database of the size and content of executable modules. Firewalls filter IP traffic; gateways also filter traffic, and network-based intrusion detection systems monitor IP traffic. 9. C. Level 3, Defined means that processes are well characterized and understood and are described in standards, procedures, tools, and methods. Answers A, B, and D are the definitions of Level 4, Quantitatively Managed; Level 1, Initial; and Level 2, Managed, respectively. 10. D. Level 2, Managed means that processes are planned and executed according to policy and are monitored, controlled, reviewed, and evaluated. Answers A, B, and C are the definitions of Level 4, Quantitatively Managed; Level 5, Optimizing; and Level 3, Defined, respectively. PART V