Preapared by: Kshitiz Goel Mahesh Panchal Ravindra Nath Sharma Roshan Rangari Utkarsh Khare
Agenda  Introduction(Utkarsh) Configuration control board (Ravi) Configuration manager (Mahesh) Configuration item owner(Kshitiz) Configuration librarian( Kshitiz) Configuration Auditor(Roshan) Configuration support manager(Roshan) Person in role(Ravi) Configuration tools(Utkarsh)
Configuration Management Roles 1. Control Board:  composed of technical and  administrative representatives who recommend approval/disapproval of changes to a CI or baseline (e.g., Configuration Control Board (CCB), Internal Review Board (IRB)) 2. Configuration Manager: A configuration manager is responsible for the Configuration Management process and the Configuration Management Database (CMDB). He or she has the create, read, update, and delete permissions on all configuration items in the CMDB. A configuration manager is also a super user for all accounts in a multi-customer environment. Responsible for identifying configuration items. The configuration manager can also be responsible for defining the procedures for creating promotions and releases 3. Configuration Management Officer (CMO):  Implements and maintains the CM system according to the project’s CM Plan.  Coordinates, supports, and performs CM activities and reports those activities to the PDL
4. Configuration Item Owner: A configuration item owner has primary responsibility for a configuration item (CI). 5. Configuration Librarian: A configuration librarian is the owner of the configuration library and manager of all master copies of configuration items (CIs). In a multi-customer environment, a configuration librarian is a super user for the accounts he or she is assigned to. 6. Configuration Auditor: The configuration auditor can view, modify, or cancel audit schedules and clean up old audit output. 7. Support Manager: A support manager is responsible for managing relationships between configuration items (CIs) and users that have been assigned to a role. 8. Person in a Role: A person in a role is a user who has been assigned to a role. The assignment of a user to a role is done by modifying the ld file in LDAP.
Types of roles we thereby define are: the  performing role  played by the  project worker the  controlling role  of the  Quality Control Board  that makes decisions regarding requested changes, approves of implemented changes and determines which choices (variants) are to be variable The  registering role  of the  Configuration responsible person , that is a link between the performing and controlling roles, by maintaining list of change requests and making approved changes available for further development
1. Quality Control Board
 
2. Configuration Manager A configuration manager is responsible for the Configuration Management process and the Configuration Management Database (CMDB). He or she has the create, read, update, and delete permissions to on all configuration items in the CMDB. A configuration manager is also a super user for all accounts in a multi-customer environment. A configuration manager has the following responsibilities: Choose a team of people to support various roles in the process Has access to all configuration items in the CMDB Ensure the goals of the company are met through the right set of policies and procedures Ensure that the team maintains a quick turnaround of requests
Tasks for the Configuration Managers Define configuration items Define promote /release policies Define responsibilities Set up configuration management system SCMP following the IEEE 828-1990 standard
Contd… Maintain an auditable process Request a set of resources to be maintained in the CMDB Configure policies and standards View reports and request Work with reports View configuration items Expand configuration management
Configuration Management job – Configuration Manager Responsibilities Works to the  overall objectives  agreed with the IT Services Manager; implements the organization’s Configuration Management  policy and standards .  Evaluates existing Configuration Management systems and the design, implementation and management of  new/improved systems for efficiency and effectiveness  - including  estimating and planning the work and resources involved , and monitoring and reporting on progress against plan.  Proposes and agrees scope  of the Configuration Management processes, function, the items that are to be controlled, and the information that is to be recorded. Develops Configuration Management standards, Configuration Management plans and procedures.
Continued…. Mounts an awareness campaign to win support for  new Configuration Management procedures .  Ensures that changes  to the Configuration Management methods and processes  are properly approved and communicated to staff  before being implemented. Plans, publicizes and oversees implementation of new Configuration Management systems.  Arranges  recruitment and training of staff . Trains Configuration Management specialists and other staff in Configuration Management principles, processes and procedures.  Evaluates  proprietary Configuration Management tools  and recommends those  that best meet the organization’s budget , resource, timescale and technical requirements.  Creates and manages the Configuration Management plan, principles and processes and their implementation. This includes CI  registration procedures; access controls and privileges.  Ensures that the  Correct roles and responsibilities are defined  in the Configuration Management plans and procedures.
“ An aggregation of hardware, software, or both, that is designated for configuration management and treated as a single entity in the configuration management process.” Software configuration items are not only program code segments but all type of documents according to development, e.g All type of code files Drivers for tests Analysis or design documents User or developer manuals System configurations (e.g. version of compiler used) In some systems, not only software but also hardware configuration items (CPUs, bus speed frequencies) exist! 3. Configuration Item Owner
Finding Configuration Items Large projects typically produce thousands of entities (files, documents, data ...) which must be uniquely identified. Any entity  managed in the software engineering process can potentially be brought under configuration management control But not every entity needs to be under configuration management control all the time.  Two Issues: What: Selection of Configuration Items What should be under configuration control? When: When do you start to place entities under configuration control?
Finding Configuration Items (continued) Conflict for the Project Manager: Starting with CIs too early introduces too much bureaucracy Starting with CIs too late introduces chaos Some items must be maintained for the lifetime of the software. This includes also the phase, when the software is no longer developed but still in use; perhaps by industrial customers who are expecting proper support for lots of years. An entity naming scheme should be defined  so that related documents have related names. Selecting the right configuration items is a skill that takes practice
Which of these Entities should be Configuration Items? Problem Statement  Software Project Management Plan (SPMP) Requirements Analysis Document (RAD) System Design Document (SDD) Project Agreement  Object Design Document  (ODD) Unit tests Integration test strategy Database description Input data and data bases Source code Executable program API Specification Test plan Test data Support software (part of the product) Support software (not part of the product) Operation and installation manuals User manual Administrator manual
Possible Selection of Configuration Items Problem Statement  Software Project Management Plan (SPMP) Requirements   Analysis Document (RAD) System Design Document (SDD) Project Agreement  Object Design Document  (ODD) Unit tests Integration test strategy Database description Input data and data bases Source code Executable program API Specification Test plan Test data Support software (part of the product) Support software (not part of the product) Operation and installation manuals User manual Administrator manual
Configuration Item Tree  “ The project” CI Models Subsystems Documents Object Model Dynamic Model Database User Interface . . . . Code Data Unit Test RAD ODD . . . . . . . . . . . . “ The project”
Configuration Librarian A configuration librarian is the owner of the configuration library and manager of all master copies of configuration items (CIs). In a multi-customer environment, a configuration librarian is a super user for the accounts he or she is assigned to. A configuration librarian has the following responsibilities: Make sure the CIs registered in the database are correct and up to date Configure discovery Create CIs Update a CI instance Delete a CI Register a new CI Transfer ownership of a CI Transition a CI state Assign or remove CIs to or from an organization Create extended attributes for a CI type View CIs Generate a configuration management report
4. Configuration Auditor The configuration auditor can view, modify, or cancel audit schedules and clean up old audit output. The audit process asks and answers the following questions: Has the change specified in the ECO been made? Have any additional modifications been incorporated? Has a formal technical review been conducted to assess technical correctness? Have software engineering standards been properly followed? Has the change been highlighted in the SCI? Have the change date and author been specified? Have SCM procedures for noting the change, recording it, and reporting it been followed? Have all related SCIs been properly updated?
Types of Configuration Audits Physical configuration audit (PCA):  An audit conducted to verify that a configuration item, as built, conforms to the technical documentation that defines it. Functional configuration audit (FCA):  An audit conducted to verify that the development of a configuration item has been completed satisfactorily, that the item has achieved the performance and functional characteristics specified in the functional and allocated configuration identification, and that its operational and support documents are complete and satisfactory
Configuration Audits and Reviews Configuration audits consist of reviews where the CM process or a product configuration is compared to requirements to determine if those requirements are being met.  CM Process Audits:   The quality management office (QMO) conducts these audits  Process audits confirm the CM process is being followed.  They examine the manner in which the CM activities are performed against the documented procedures.  CM Baseline Audit:   The CMO works with the Lead Integrator and the QMO to conduct a baseline audit  for each release  This baseline audit verifies the release contents are complete.
Operational Readiness Reviews (ORR):   The CMO works with Systems Integration and Test to participate in release Operational Readiness Reviews. The ORR membership determines the status of release activities and the approval when a release will be moved into the operational environment.  For each audit or review the plan has to define: Objective The Configuration Items under review  The schedule for the review Procedures for conducting the review Participants by job title Required documentation Procedure for recording deficiencies and how to correct them Approval criteria
5. Support Manager A support manager is responsible for managing relationships between configuration items (CIs) and users that have been assigned to a role. The following tasks belong to the support manager: View CIs assigned to organizations and people in the organizations Restrict configuration item access by organization
Person in a role A person in a role is a user who has been assigned to a role. The assignment of a user to a role is done by modifying the dif file in LDAP. A person can be assigned to one or more of the following roles: Configuration Manager Configuration Librarian Configuration Item owner Configuration Auditor Support Manager The following Configuration Management Database (CMDB) read permission is required for any person in a role that needs to perform updates to configuration items in the CMDB. The CMDB admin permission is required for any person in a role that needs to assign people in roles to CIs.
Tools for Software Configuration Management Software configuration management is normally supported by tools with different functionality. Examples: RCS very old but still in use; only version control system CVS (Concurrent Version Control) based on RCS, allows concurrent working without locking http://www.cvshome.org/ CVS Web: Web Front-end to CVS Perforce Repository server; keeps track of developer’s activities http://www.perforce.com Clear Case Multiple servers, process modeling, policy check mechanisms http://www.rational.com/products/clearcase/
Plastic SCM - Software Configuration Management Tool A Software configuration management solution often contains the following components:  •  Configuration Identification-  which means that you can tell which body of source code you are working with  •  Configuration Control-  which involves controlling the release of a product and changes to it throughout its lifecycle so that you can create consistent baselines of that product,  •  Status Accounting and Auditing-  which means that you can record and report on the status of components and change requests to help you to measure some aspects of quality and change.  •  Review-  to validate the completeness of a product and to help you maintain consistency among the components.  •  Build Management-  to help you to create and maintain a repeatable construction process.  •  Process Management-  to ensure that the organization’s development processes are followed by those developing and releasing the software. Plastic SCM.PDF
 

software configuratiom management role n resposnbilities

  • 1.
    Preapared by: KshitizGoel Mahesh Panchal Ravindra Nath Sharma Roshan Rangari Utkarsh Khare
  • 2.
    Agenda Introduction(Utkarsh)Configuration control board (Ravi) Configuration manager (Mahesh) Configuration item owner(Kshitiz) Configuration librarian( Kshitiz) Configuration Auditor(Roshan) Configuration support manager(Roshan) Person in role(Ravi) Configuration tools(Utkarsh)
  • 4.
    Configuration Management Roles1. Control Board: composed of technical and administrative representatives who recommend approval/disapproval of changes to a CI or baseline (e.g., Configuration Control Board (CCB), Internal Review Board (IRB)) 2. Configuration Manager: A configuration manager is responsible for the Configuration Management process and the Configuration Management Database (CMDB). He or she has the create, read, update, and delete permissions on all configuration items in the CMDB. A configuration manager is also a super user for all accounts in a multi-customer environment. Responsible for identifying configuration items. The configuration manager can also be responsible for defining the procedures for creating promotions and releases 3. Configuration Management Officer (CMO): Implements and maintains the CM system according to the project’s CM Plan. Coordinates, supports, and performs CM activities and reports those activities to the PDL
  • 5.
    4. Configuration ItemOwner: A configuration item owner has primary responsibility for a configuration item (CI). 5. Configuration Librarian: A configuration librarian is the owner of the configuration library and manager of all master copies of configuration items (CIs). In a multi-customer environment, a configuration librarian is a super user for the accounts he or she is assigned to. 6. Configuration Auditor: The configuration auditor can view, modify, or cancel audit schedules and clean up old audit output. 7. Support Manager: A support manager is responsible for managing relationships between configuration items (CIs) and users that have been assigned to a role. 8. Person in a Role: A person in a role is a user who has been assigned to a role. The assignment of a user to a role is done by modifying the ld file in LDAP.
  • 6.
    Types of roleswe thereby define are: the performing role played by the project worker the controlling role of the Quality Control Board that makes decisions regarding requested changes, approves of implemented changes and determines which choices (variants) are to be variable The registering role of the Configuration responsible person , that is a link between the performing and controlling roles, by maintaining list of change requests and making approved changes available for further development
  • 7.
  • 8.
  • 9.
    2. Configuration ManagerA configuration manager is responsible for the Configuration Management process and the Configuration Management Database (CMDB). He or she has the create, read, update, and delete permissions to on all configuration items in the CMDB. A configuration manager is also a super user for all accounts in a multi-customer environment. A configuration manager has the following responsibilities: Choose a team of people to support various roles in the process Has access to all configuration items in the CMDB Ensure the goals of the company are met through the right set of policies and procedures Ensure that the team maintains a quick turnaround of requests
  • 10.
    Tasks for theConfiguration Managers Define configuration items Define promote /release policies Define responsibilities Set up configuration management system SCMP following the IEEE 828-1990 standard
  • 11.
    Contd… Maintain anauditable process Request a set of resources to be maintained in the CMDB Configure policies and standards View reports and request Work with reports View configuration items Expand configuration management
  • 12.
    Configuration Management job– Configuration Manager Responsibilities Works to the overall objectives agreed with the IT Services Manager; implements the organization’s Configuration Management policy and standards . Evaluates existing Configuration Management systems and the design, implementation and management of new/improved systems for efficiency and effectiveness - including estimating and planning the work and resources involved , and monitoring and reporting on progress against plan. Proposes and agrees scope of the Configuration Management processes, function, the items that are to be controlled, and the information that is to be recorded. Develops Configuration Management standards, Configuration Management plans and procedures.
  • 13.
    Continued…. Mounts anawareness campaign to win support for new Configuration Management procedures . Ensures that changes to the Configuration Management methods and processes are properly approved and communicated to staff before being implemented. Plans, publicizes and oversees implementation of new Configuration Management systems. Arranges recruitment and training of staff . Trains Configuration Management specialists and other staff in Configuration Management principles, processes and procedures. Evaluates proprietary Configuration Management tools and recommends those that best meet the organization’s budget , resource, timescale and technical requirements. Creates and manages the Configuration Management plan, principles and processes and their implementation. This includes CI registration procedures; access controls and privileges. Ensures that the Correct roles and responsibilities are defined in the Configuration Management plans and procedures.
  • 14.
    “ An aggregationof hardware, software, or both, that is designated for configuration management and treated as a single entity in the configuration management process.” Software configuration items are not only program code segments but all type of documents according to development, e.g All type of code files Drivers for tests Analysis or design documents User or developer manuals System configurations (e.g. version of compiler used) In some systems, not only software but also hardware configuration items (CPUs, bus speed frequencies) exist! 3. Configuration Item Owner
  • 15.
    Finding Configuration ItemsLarge projects typically produce thousands of entities (files, documents, data ...) which must be uniquely identified. Any entity managed in the software engineering process can potentially be brought under configuration management control But not every entity needs to be under configuration management control all the time. Two Issues: What: Selection of Configuration Items What should be under configuration control? When: When do you start to place entities under configuration control?
  • 16.
    Finding Configuration Items(continued) Conflict for the Project Manager: Starting with CIs too early introduces too much bureaucracy Starting with CIs too late introduces chaos Some items must be maintained for the lifetime of the software. This includes also the phase, when the software is no longer developed but still in use; perhaps by industrial customers who are expecting proper support for lots of years. An entity naming scheme should be defined so that related documents have related names. Selecting the right configuration items is a skill that takes practice
  • 17.
    Which of theseEntities should be Configuration Items? Problem Statement Software Project Management Plan (SPMP) Requirements Analysis Document (RAD) System Design Document (SDD) Project Agreement Object Design Document (ODD) Unit tests Integration test strategy Database description Input data and data bases Source code Executable program API Specification Test plan Test data Support software (part of the product) Support software (not part of the product) Operation and installation manuals User manual Administrator manual
  • 18.
    Possible Selection ofConfiguration Items Problem Statement Software Project Management Plan (SPMP) Requirements Analysis Document (RAD) System Design Document (SDD) Project Agreement Object Design Document (ODD) Unit tests Integration test strategy Database description Input data and data bases Source code Executable program API Specification Test plan Test data Support software (part of the product) Support software (not part of the product) Operation and installation manuals User manual Administrator manual
  • 19.
    Configuration Item Tree “ The project” CI Models Subsystems Documents Object Model Dynamic Model Database User Interface . . . . Code Data Unit Test RAD ODD . . . . . . . . . . . . “ The project”
  • 20.
    Configuration Librarian Aconfiguration librarian is the owner of the configuration library and manager of all master copies of configuration items (CIs). In a multi-customer environment, a configuration librarian is a super user for the accounts he or she is assigned to. A configuration librarian has the following responsibilities: Make sure the CIs registered in the database are correct and up to date Configure discovery Create CIs Update a CI instance Delete a CI Register a new CI Transfer ownership of a CI Transition a CI state Assign or remove CIs to or from an organization Create extended attributes for a CI type View CIs Generate a configuration management report
  • 21.
    4. Configuration AuditorThe configuration auditor can view, modify, or cancel audit schedules and clean up old audit output. The audit process asks and answers the following questions: Has the change specified in the ECO been made? Have any additional modifications been incorporated? Has a formal technical review been conducted to assess technical correctness? Have software engineering standards been properly followed? Has the change been highlighted in the SCI? Have the change date and author been specified? Have SCM procedures for noting the change, recording it, and reporting it been followed? Have all related SCIs been properly updated?
  • 22.
    Types of ConfigurationAudits Physical configuration audit (PCA): An audit conducted to verify that a configuration item, as built, conforms to the technical documentation that defines it. Functional configuration audit (FCA): An audit conducted to verify that the development of a configuration item has been completed satisfactorily, that the item has achieved the performance and functional characteristics specified in the functional and allocated configuration identification, and that its operational and support documents are complete and satisfactory
  • 23.
    Configuration Audits andReviews Configuration audits consist of reviews where the CM process or a product configuration is compared to requirements to determine if those requirements are being met. CM Process Audits: The quality management office (QMO) conducts these audits Process audits confirm the CM process is being followed. They examine the manner in which the CM activities are performed against the documented procedures. CM Baseline Audit: The CMO works with the Lead Integrator and the QMO to conduct a baseline audit for each release This baseline audit verifies the release contents are complete.
  • 24.
    Operational Readiness Reviews(ORR): The CMO works with Systems Integration and Test to participate in release Operational Readiness Reviews. The ORR membership determines the status of release activities and the approval when a release will be moved into the operational environment. For each audit or review the plan has to define: Objective The Configuration Items under review The schedule for the review Procedures for conducting the review Participants by job title Required documentation Procedure for recording deficiencies and how to correct them Approval criteria
  • 25.
    5. Support ManagerA support manager is responsible for managing relationships between configuration items (CIs) and users that have been assigned to a role. The following tasks belong to the support manager: View CIs assigned to organizations and people in the organizations Restrict configuration item access by organization
  • 26.
    Person in arole A person in a role is a user who has been assigned to a role. The assignment of a user to a role is done by modifying the dif file in LDAP. A person can be assigned to one or more of the following roles: Configuration Manager Configuration Librarian Configuration Item owner Configuration Auditor Support Manager The following Configuration Management Database (CMDB) read permission is required for any person in a role that needs to perform updates to configuration items in the CMDB. The CMDB admin permission is required for any person in a role that needs to assign people in roles to CIs.
  • 27.
    Tools for SoftwareConfiguration Management Software configuration management is normally supported by tools with different functionality. Examples: RCS very old but still in use; only version control system CVS (Concurrent Version Control) based on RCS, allows concurrent working without locking http://www.cvshome.org/ CVS Web: Web Front-end to CVS Perforce Repository server; keeps track of developer’s activities http://www.perforce.com Clear Case Multiple servers, process modeling, policy check mechanisms http://www.rational.com/products/clearcase/
  • 28.
    Plastic SCM -Software Configuration Management Tool A Software configuration management solution often contains the following components: • Configuration Identification- which means that you can tell which body of source code you are working with • Configuration Control- which involves controlling the release of a product and changes to it throughout its lifecycle so that you can create consistent baselines of that product, • Status Accounting and Auditing- which means that you can record and report on the status of components and change requests to help you to measure some aspects of quality and change. • Review- to validate the completeness of a product and to help you maintain consistency among the components. • Build Management- to help you to create and maintain a repeatable construction process. • Process Management- to ensure that the organization’s development processes are followed by those developing and releasing the software. Plastic SCM.PDF
  • 29.