2. Configuration Management

Total Page:16

File Type:pdf, Size:1020Kb

2. Configuration Management Computer Science and Software Engineering University of Wisconsin - Platteville 2. Configuration Management Yan Shi SE 3730 / CS 5730 Lecture Notes Outline . What is configuration management? — Identification — Change control — Status accounting — Audit and review . CM techniques and practices — lock-modify-unlock — copy-modify-merge — RCS — branching — deltas . CM tools Why is CM needed? . ``This worked yesterday and doesn't work now.” What happened? . ``The user manual says to do this, but when I do it, something different happens.'' Which is correct, the manual or the code? Why was one changed? . ``The code changes that I made last week are no longer in the code.” What happened to the fix? Who changed the code and Why? . ``The listing doesn't match what the program does!'' Which is correct? . ``Did the bug get fixed in this copy, too?'' Why is CM needed? . Control the changes — Versions of documents need to be combined to form a product, or configuration — With many people working on many files, inconsistencies can occur . Required for testing — We must know and control what source was used to produce a software system in order to know what is being tested — We need to be able to build and rebuild a software system reliably . Reduce the quality cost — https://www.youtube.com/watch?v=Ij1yDpfZI8Q CM CONCEPTS AND COMPONENTS What is Configuration Management? . Software CM is a discipline for managing the evolution of software systems throughout all stages of the software life cycle. SCM is a component of SQA system. — Infrastructure component — Organizational framework . SQA teams are often required to take the responsibility of managing the CM system. Support, Control and Service . Support — Developers, organization, customer . Control — Specifications, documents, software, and other deliverables . Service — “SCM is a service provider in that it supports people and controls data.” SCM functional areas . Identification — identify components, structure . Control: — control releases and changes . Status accounting — record, report status . Audit and review — validate completeness Configuration identification . What is the configuration of my system? . What version of the file is this? . What are the components of the system? . Version control is involved during identification. Prerequisite for other CM functionalities Software configuration item . Software configuration item (SCI): — An approved unit of software code, a document or piece of hardware that is designed for configuration management and treated as a distinct entity in the SCM process. — The main criterion: whether needed for future development or maintainace . Each SCI must have a unique and consistent name: — Augment the name with various attributes such as type of document, OS, language, etc. — It is a terrible practice to have an SCI change name for each version. Use a consistent name and let the CM system to handle versions. main09-01-2015a.cpp, main09-01-20145.cpp, main09-02-2015a.cpp main.cpp Typical SCI . Documents — development plan, requirement specifications, design specifications, database description, test plan, test report, user manuals, maintenance plan, change requests, CM plan, version description, standards, etc. Software code — source code, prototype . Data files — parameters, codes, etc. — test cases and test scripts . Software development tools — compilers, debuggers, linkers, etc. — CASE tools Version . SCI version: — The approved state of an SCI at any given point of time during the development and maintainace process. Software configuration version: — An approved selected set of documented SCI versions that constitute a software system or document at a given point of time, where the activities to be performed are controlled by SCM procedures. — The software configuration versions are released according to the cited procedures. Identification activities . Select items to be placed under control SCIs . Identify which version of a SCI can or cannot be included in a working release . Uniquely identify various versions of the software . Define relationships and interfaces between various software products . Release configuration documentation . Establish controlled repositories . Establish configuration baselines Configuration baselines . Configuration baseline is a fixed reference configuration established by defining and recording the approved SCI at a milestone event or at a specified time. Each configuration baseline serves as a point of departure for future SCI changes. — Baselines for different SCIs may occur at different times, (e.g., requirement baselined before code) — Once an SCI is baselined, modifications are strictly controlled by CM policies. — Incremental baselines occur sequentially over the life cycle. Typical Baseline Progression http://www.chambers.com.au/glossary/baseline.php Configuration change control . What is controlled? . How are the changes to the products controlled? . who controls the changes? . when are the changes accepted, received, and verified? . Configuration change control makes sure the product is in a consistent state and enforces access control Access control . We don’t want multiple people writing to the same file concurrently. Different groups in an organization play different roles with respect to the development process. — Coders and testers need read access to requirements, but they should not be permitted to directly change them. — Marketing and requirement engineers should be able to write requirements, but not change code. — Quality Assurance Engineers should have write access to test cases, but coders should not be able to change test cases. Change Control . Change control: a process for proposing, evaluating(feasibility, marketability, economics, risks, etc.) and changing an existing system. Types of changes: — Defects fixing — Enhancement — Ports: modifying a system so that it can run in different environments. Change control process . A generic change control process [Berlack 1992] Software changes Analyze and assess impact Software enhancement Prepare change proposal Problems Evaluate Control Board change proposal Incorporate Yes No Archive Approve change change Supply Verify change feedback to originator end Configuration Control Board . CCB is a committee of many stakeholders — sales, marketing — development — quality assurance — customer support who meet regularly to execute this change control process. Standard Change Request Form http://www.projectmanagementdocs.com/project-documents/change-request.html Change control policies . Who can initiate the change requests . criteria for placing an SCI under formal change control . The “change impact” analysis expected for each requested change . How revision history should be kept . The check-in/check-out procedure . Procedure to approve changes . How change requests are tracked and resolved . The reviews and regression tests required . The procedure to update all affected software life cycle components to reflect the approved changes Configuration status accounting . Accounting is the art of recording, summarizing, reporting, and analyzing financialthe change transactions. process . What is the status of an SCI? . Which version of an SCI implements an approved change request? . What is different about a new version of a system? . How many faults are detected and how many are fixed each month? . What is the cause of the change? Typical Configuration Status Report . A list of the configuration items that comprise a baseline . The date when each version of each configuration item was baselined . A list of the specifications that describe each configuration item . The history of baseline changes including rationales for change . A list of open change requests by configuration item . Deficiencies identified by configuration audits . The status of works associated with approved change requests by CI. Configuration auditing . Is a change properly resolved? . Does the system satisfy the requirement? . Are all changes incorporated in this version? . Configuration auditing verifies that the software product is built according to the requirements, standards, or contract agreement. Informal and formal audits . Informal audits are performed at key phases of the software life cycle. Reviews . Two formal audits are conducted before the software is delivered to the customer: — functional configuration audit (FCA) validate the system against the requirement — physical configuration audit (PCA) whether the design and reference documents represent the software that was built. CM TECHNIQUES History of SCM techniques . 1960s: — change and configuration control concepts (UCSB); . 1970s: — diff algorithm (by bell labs) — SCCS(Source Code Control System by bell labs ); . 1980s: — RCS (Revision Control System) : only for single files — CVS (Concurrent Version System) . 2000: Subversion . now: distributed revision control systems (git) Software Repository . Sources files reside in a software repository. — once it has been added to the repository, it becomes subject to version control. — version control tools are responsible for managing the repository. A.K.A. project databases or project libraries. Workspace . Each team member has a workspace, which is designed to prevent members from interfering with each other’s work. — When a change to a document is required, it is checked out to a team member’s workspace. — Any changes made in the workspace don’t affect the repository. — Test/review the document and then check it in. changed documents are copied back into
Recommended publications
  • Managing the Configuration of Information Systems with a Focus on Security
    MANAGING THE CONFIGURATION OF INFORMATION SYSTEMS WITH A FOCUS ON SECURITY Shirley Radack, Editor Computer Security Division Information Technology Laboratory National Institute of Standards and Technology U.S. Department of Commerce Organizations have to make frequent changes to their information systems in order to implement new and updated hardware and software components, correct software flaws and other errors, address new security threats, and adapt to changing business objectives. These constant changes result in adjustments being made to the configuration of information systems; these activities could have an impact on the security of the systems and operations. In developing information systems, organizations employ many components that can be interconnected in different arrangements to meet the organization’s business, mission, and information security needs. To protect information systems and information, organizations need techniques for the secure configuration, operation, and management of system components, including mainframes, workstations, servers, networks, operating systems, middleware, and applications, and for the management and control of risks to systems and information. The Information Technology Laboratory (ITL) at the National Institute of Standards and Technology (NIST) has issued a new guide to help organizations develop a well-defined process for managing and controlling secure system configurations, and for managing risks in information systems. NIST Special Publication 800-128, Guide to Security- Focused
    [Show full text]
  • Business Rule Based Configuration Management and Software System Implementation Using Decision Tables
    Business Rule Based Configuration Management and Software System Implementation Using Decision Tables Olegas Vasilecas, Aidas Smaizys Vilnius Gediminas Technical University, Sauletekio av. 11, LT-10223 Vilnius, Lithuania [email protected], [email protected] Abstract. Deployment and customization of the software in different information systems of separate organizations challenge large requirement conformity, project and specification management, design and architecture complexity, code integration, compatibility and interoperability issues, frequently causing the need of reengineering through the entire all the system development lifecycle. The paper proposes new business rule based method of information system configuration management and automated way of configuration implementation into the final software system code. 1 Introduction Business systems are functioning according to business rules in specific business domain. Due to dynamic of its nature, business environment is changing frequently according to internal and external influences such as changes in law, new competition etc. [1]. However Business rules (BR) of particular problem domain are similar in several organizations but they are never applied the same way even they depend on the same legal regulations. Production and implementation of such a software system into the large amount of slightly different information systems of separate organizations challenge large requirement conformity, project and specification management, design and architecture complexity,
    [Show full text]
  • ITIL Asset and Configuration Management in the Cloud
    ITIL Asset and Configuration Management in the Cloud January 2017 © 2017, Amazon Web Services, Inc. or its affiliates. All rights reserved. Notices This document is provided for informational purposes only. It represents AWS’s current product offerings and practices as of the date of issue of this document, which are subject to change without notice. Customers are responsible for making their own independent assessment of the information in this document and any use of AWS’s products or services, each of which is provided “as is” without warranty of any kind, whether express or implied. This document does not create any warranties, representations, contractual commitments, conditions or assurances from AWS, its affiliates, suppliers or licensors. The responsibilities and liabilities of AWS to its customers are controlled by AWS agreements, and this document is not part of, nor does it modify, any agreement between AWS and its customers. Contents Introduction 1 What Is ITIL? 1 AWS Cloud Adoption Framework 2 Asset and Configuration Management in the Cloud 3 Asset and Configuration Management and AWS CAF 5 Impact on Financial Management 5 Creating a Configuration Management Database 6 Managing the Configuration Lifecycle in the Cloud 8 Conclusion 9 Contributors 10 Abstract Cloud initiatives require more than just the right technology. They also must be supported by organizational changes, such as people and process changes. This paper is intended for IT service management (ITSM) professionals who are supporting a hybrid cloud environment that leverages AWS. It outlines best practices for asset and configuration management, a key area in the IT Infrastructure Library (ITIL), on the AWS cloud platform.
    [Show full text]
  • Software Project Monitoring and Control
    Module 12 Software Project Monitoring and Control Version 2 CSE IIT, Kharagpur Lesson 31 Risk Management and Software Configuration Management Version 2 CSE IIT, Kharagpur Specific Instructional Objectives At the end of this lesson the student would be able to: • Identify the main categories of risks which can affect a software project. • Explain how to assess a project risk. • Identify the main strategies to plan for risk containment. • Explain what risk leverage is. • Explain how to handle the risk of schedule slippage. • Explain what is meant by configuration of a software product. • Differentiate among release, version and revision of a software product. • Explain the necessity of software configuration management. • Identify the principal activities of software configuration management. • Identify the activities carried out during configuration identification. • Identify the activities carried out during configuration control. • Identify the popular configuration management tools. Risk management A software project can be affected by a large variety of risks. In order to be able to systematically identify the important risks which might affect a software project, it is necessary to categorize risks into different classes. The project manager can then examine which risks from each class are relevant to the project. There are three main categories of risks which can affect a software project: Project risks. Project risks concern varies forms of budgetary, schedule, personnel, resource, and customer-related problems. An important project risk is schedule slippage. Since, software is intangible, it is very difficult to monitor and control a software project. It is very difficult to control something which cannot be seen. For any manufacturing project, such as manufacturing of cars, the project manager can see the product taking shape.
    [Show full text]
  • Quality Assurance and Configuration Management
    Quality Assurance and Configuration Management Energy, Climate, & Sandia National Laboratories implements quality assurance and configuration Infrastructure Security systems essential to the control and traceability of modeling used to demonstrate regulatory compliance. Introduction agencies, including, most significantly, the U.S. Nuclear Regulatory Commission Sandia National Laboratories has a long and the U.S. Environmental Protection history of involvement in significant Agency, as well as various federal, state, national programs directed at solving and other organizations. Among more the national problem of managing the notable successes of this work has been disposal of various forms of nuclear the adaptation of quality assurance wastes. These involvements include to activities sponsored largely by the significant responsibility on the Waste U.S. Department of Energy involved Isolation Pilot Plant (WIPP), the Yucca in the characterization, selection, and Mountain Site Characterization Project performance analyses associated with (YMP), the Hanford Tank Waste programs involving nuclear waste Remediation System (TWRS), and management. Quality assurance the Greater Confinement Disposal requirements originated from a need to (GCD) programs. In addition, control and assure the quality of nuclear Sandia has also played major roles power plant design, construction, and in nuclear waste transportation, operations; modifying these concepts and in several environmental for application to scientific investigation remediation and restoration and characterization activities was a programs, including those at Fernald, necessary and beneficial effort that Ohio, and Hanford, Washington. has proven successful for nuclear waste A key to the success of our activities management. on these programs, particularly for Decades of experience under the WIPP, YMP, TWRS, and GCD, was the scrutiny of independent audits, development and application of quality identifying quality deficiencies, and assurance for program activities.
    [Show full text]
  • Service Asset and Configuration Management (SACM/CMDB) Process
    Service Transition SERVICE ASSET AND CONFIGURATION MANAGEMENT PROCESS VERSION: 4.3 REVISION DATE: February 23, 2017 Service Transition USER GUIDE Service Asset and Configuration Management Process 4.3 | 02/23/2017 Contents Section 1. Introduction ......................................................................................... 1 1.1 Purpose .............................................................................................. 1 1.2 Goal .................................................................................................... 1 1.3 Overview ............................................................................................ 1 1.4 Key Relationships with other processes ........................................ 2 1.5 Definitions .......................................................................................... 2 Section 2. Roles and Responsibilities .................................................................. 4 2.1 Process Owner/Configuration Manager ......................................... 4 2.2 Configuration Item Class Owner ..................................................... 4 2.3 Configuration Item Class Administrator ......................................... 4 2.4 Configuration Item Company Administrator .................................. 5 2.5 IT Service Continuity Management (ITSCM) Role......................... 5 2.6 IT Staff ................................................................................................ 5 2.7 ITSM Product Manager ....................................................................
    [Show full text]
  • A Guide to Configuration Management for Intelligent Transportation Systems
    A Guide to Configuration Management for Intelligent Transportation Systems April 2002 Prepared for Intelligent Transportation Systems Joint Program Office US Department of Transportation By Mitretek Systems, Inc. FHWA-OP-02-048 EDL #13622 Technical Report Documentation Page 1. Report No. 2. Government Accession No. 3. Recipient's Catalog No. FHWA-OP-02-048 4. Title and Subtitle 5. Report Date April 2002 A Guide to Configuration Management for Intelligent Transportation 6. Performing Organization Code Systems 7. Author(s) 8. Performing Organization Report No. Paul J. Gonzalez 9. Performing Organization Name and Address 10. Work Unit No. (TRAIS) Mitretek Systems, Inc. 11. Contract or Grant No. 600 Maryland Avenue, SW, Suite 755 DTFH61-00-C-00001 Washington, DC 20024 12. Sponsoring Agency Name and Address 13. Type of Report and Period Covered Department of Transportation Intelligent Transportation Systems Joint Program Office 400 Seventh Street, SW – Room 3416 Washington, DC 20590 14. Sponsoring Agency Code HOIT 15. Supplementary Notes William S. Jones – Task Manager 16. Abstract This monograph is one of a series intended to introduce the topic of systems engineering to managers and staff working on transportation systems projects, with particular emphasis on Intelligent Transportation Systems (ITS) projects. Systems engineering is a discipline that has been used for over 50 years and has its roots in the building of large, complex systems for the Department of Defense. Systems engineering is an approach to building systems that enhances the quality of the end result and the expectation is that its application to transportation systems projects will make those projects more effective in developing and implementing the systems they are intended to build.
    [Show full text]
  • Configuration Management Process Map
    Configuration Management Process Asset Library Office of Information and Technology Table of Contents Configuration Management Process Map ............................................... 1 Configuration Management Description and Goals................................................ 2 Description................................................................................................................. 2 Goals........................................................................................................................... 2 Configuration Management RACI Information ........................................................ 3 Configuration Management Associated Artifacts Information .............................. 5 Configuration Management Tools and Web Sites Information ............................. 5 Configuration Management Standards Information ............................................... 5 Configuration Management Process ........................................................................ 6 Process Activity Name: CFG-01 Identify Configuration Items ........................... 6 Process Activity Name: CFG-02 Place Configuration Items Under Configuration Control .............................................................................................. 7 Process Activity Name: CFG-03 Adopt Change Management Procedures ...... 8 Process Activity Name: CFG-04 Verify and Audit Configuration Items ............ 9 Process Activity Name: CFG-05 Generate Reports ........................................... 11 Configuration
    [Show full text]
  • Configuration Management Basics
    Configuration Management Basics Enchantment Chapter of INCOSE October 12, 2011 Ann Hodges, CSEP [email protected] 505-844-6284 Topics • What is CM? • CMII Summary • Practical Suggestions for Applying CM Practices What is Configuration Management (CM)? A process that establishes and maintains consistency of a product's attributes with its requirements and product configuration information throughout the product's life cycle [EIA] Why CM? • CM ensures the effective management of the evolving configuration of a system, including all of its work products, during its life cycle [SE: pg 5.11] • Change is inevitable, and managing the impact of change is the focus of CM – It is important to maintain enough of and the right information to ensure that deliverables can be related and are controlled based on engineering and management trade-off decisions Systems engineering activities rely on product configurations being known and controlled When Does CM Occur? • CM activities occur throughout the life cycle of both the project and the product – CM begins at the initial determination of mission need and continues until project closeout or product retirement (from “lust to dust”) Industry Standard CM Activities* Quality Product Configuration Audit Identification Configuration Change Control Configuration Status Accounting Status Configuration CM Planning and Management * Adapted from [EIA] Figure 1 CM Planning and Management • Identify needs/requirements – Factors that might impact CM activities (e.g., team co- location, partners/subcontractors/suppliers,
    [Show full text]
  • Best Practices in Cyber Supply Chain Risk Management
    National Institute of Standards and Technology Best Practices in Cyber Supply Chain Risk Management Conference Materials Cyber Supply Chain Best Practices In a Nutshell: Cybersecurity in the supply chain cannot be viewed as an IT problem only. Cyber supply chain risks touch sourcing, vendor management, supply chain continuity and quality, transportation security and many other functions across the enterprise and require a coordinated effort to address. Cyber Supply Chain Security Principles: 1. Develop your defenses based on the principle that your systems will be breached. When one starts from the premise that a breach is inevitable, it changes the decision matrix on next steps. The question becomes not just how to prevent a breach, but how to mitigate an attacker’s ability to exploit the information they have accessed and how to recover from the breach. 2. Cybersecurity is never just a technology problem, it’s a people, processes and knowledge problem. Breaches tend to be less about a technology failure and more about human error. IT security systems won’t secure critical information and intellectual property unless employees throughout the supply chain use secure cybersecurity practices. 3. Security is Security. There should be no gap between physical and cybersecurity. Sometimes the bad guys exploit lapses in physical security in order to launch a cyber attack. By the same token, an attacker looking for ways into a physical location might exploit cyber vulnerabilities to get access. Key Cyber Supply Chain Risks: Cyber supply chain risks covers a lot of territory. Some of the concerns include risks from: • Third party service providers or vendors – from janitorial services to software engineering -- with physical or virtual access to information systems, software code, or IP.
    [Show full text]
  • Configuration Management Guidelines
    Configuration Management Guidelines Date: April 2014 www.iaqg.org/scmh Section 7.5 Forward . The guideline describes Configuration Management functions and principles and defines Configuration Management terminology for use with Aerospace and Defense AS&D product line. It is targeted at Small and Medium size companies acting as subcontractors/suppliers either in a Build to Print or a Build to Spec relationship. The intention of these guidelines is to assist organizations with understanding the concept and process of Configuration Management and is not intended to be a requirement, nor auditable. 2 Introduction . The Aerospace Standards (e.g. IAQG 9100) call for the implementation of Configuration Management and documents control throughout the entire life cycle of product realization. Configuration Management establishes a language of understanding between the customer and the supplier both in predefined relationship (such as Built to Print) and those in which the supplier is given some freedom (such as Built to Spec). 3 Introduction . When Configuration Management principles are applied using effective practices, return on investment is maximized, product life cycle costs are reduced and the small investment in resources necessary for effective Configuration Management is returned many fold in cost avoidance. These Guidelines provide the reader with the basic ideas of the industry needs, the benefits to the implementing organization and describes Configuration Management functions and principles. 4 List of Topics 1. What is “Configuration”? 2. Why it is important to manage and control configuration in AS&D 3. Applicable Terms and Definitions 4. The objectives of Configuration Management 5. Benefits for an enterprise gained through application of CM 6.
    [Show full text]
  • Reduce Network Risks with Secure Configuration Management Learn About the Security Aspect of Configuration Management for Network Devices
    Reduce Network Risks with Secure Configuration Management Learn about the security aspect of configuration management for network devices Share: All network devices require scripts or configurations that determine how they should work in a network. These configurations are manually written and differ from vendor to vendor. Furthermore, device configurations change frequently due to application or technology deployments, network expansions, organizational changes and device failures or end-of-life replacements. Deploying and managing device configurations in large networks with hundreds of devices makes it a time consuming, extensive process that is very error-prone. BT/Gartner1 has estimated that 65% of cyber-attacks exploit systems with vulnerabilities introduced by configuration errors. This is one of the major reasons why configuration and change management has been gaining significance in the security aspect of the network. Misconfigurations known as vulnerabilities create huge security risks. Some examples include: A misconfigured HSRP (Hot Standby Router Protocol) can be responsible for the backup link not working Unidentified security holes or unintended backdoor in the firewall Intended VPN tunnel not used due to IPSec (Internet Protocol Security) configuration error Inconsistent QoS (Quality of Service) configurations impacting VoIP (Voice over IP) performance Most organizations implement internal and external regulatory standards for device configuration and management. However, they may not necessarily follow them. This may be due to the difficulty of enforcing the process or lack of control or negligence. Whatever may be the reason, the price to pay is big. Companies incur huge costs due to these network incidents and suffer even more damage to reputation and brand value.
    [Show full text]