Configuration Management

104
Configuration Management CMMI-DEV v1.3

description

CMMI Configuration Management

Transcript of Configuration Management

Data Centers Design Considerations

Configuration Management

CMMI-DEV v1.3

1

Who we are?

Who you are ?NameDepartment & Job positionCourse expectationsIntroduction & Expectations7/5/2013Configuration Management2

Understand Configuration Management.Understand Configuration Management functions and tools.Understand CMMI Configuration Management.Course objectives7/5/2013Configuration Management3

Contents7/5/2013Configuration Management4

Contents7/5/2013Configuration Management5

Do you allow customer to change requirements?

How do you manage discrepancies?

How do you share project docs and code files?

Who builds the system?

How do you manage releases?

7/5/2013Configuration Management6

6

From Latin ConfiguratioFrom Latin ConfigurareFrom con- together + figurare to shape (from figura shape or figure)

So configuration is a relative arrangement of parts or elementsWhat is configuration ?7/5/2013Configuration Management7

System: combination of interacting elements organized to achieve one or more stated purposes.

The configuration of a system: the functional and/or physical characteristics of hardware, or software as set forth in technical documentation and achieved in a product.

Definitions (ISO 24765)7/5/2013Configuration Management8

Configuration management (CM), is A discipline applying technical and administrative direction and surveillance to: identify and document the functional and physical characteristics of a configuration item, control changes to those characteristics, record and report change processing and implementation status, and verify compliance with specified requirements.Definitions (ISO 24765)7/5/2013Configuration Management9

Configuration identification. selecting the configuration items for a system and recording their functional and physical characteristics in technical documentation.Configuration control. the evaluation, coordination, approval or disapproval, and implementation of changes to configuration items after formal establishment of their configuration identification..Configuration status accounting. recording and reporting of information needed to manage a configuration effectively.Configuration auditing. Verifying the integrity of a system in terms of the degree to which it complies with its specification.The Four Functions of CM7/5/2013Configuration Management10

CM activities7/5/2013Configuration Management11

Contents7/5/2013Configuration Management12

CM concepts7/5/2013Configuration Management13

CM context7/5/2013Configuration Management14OrganizationProject

Organization and ResponsibilitiesResources and SchedulesTool Selection and ImplementationConfiguration Planning7/5/2013Configuration Management15

IEEE Std 828.A document with the title Software Configuration Management Plan shall exist either in standalone form or embedded in another project document.This document shall contain all SCM planning information either by inclusion or by reference to other locations, such as other documents or automated systems.A format for this document shall be defined.SCMP7/5/2013Configuration Management16

Class of informationDescriptionIntroductionDescribes the Plans purpose, scope of application, key terms, and referencesSCM management(Who?) Identifies the responsibilities and authorities for accomplishing the planned activitiesSCM activities(What?) Identifies all activities to be performed in applying to the projectSCM schedules(When?) Identifies the required coordination of SCM activities with the other activities in the projectSCM resources(How?) Identifies tools and physical and human resources required for execution of the PlanSCM plan maintenanceIdentifies how the Plan will be kept current while in effect

SCMP contents7/5/2013Configuration Management17

CM concepts7/5/2013Configuration Management18

Aggregation of work products that is designated for configuration management and treated as a single entity in the configuration management process (ISO 24765).It is anything associated with a software project (design, code, test data, document, etc.) that has been placed under configuration control.There are often different versions of a CI.CI has a unique name.CIs can be placed under different levels of control.Configuration Item (CI)7/5/2013Configuration Management19

19

Configuration example7/5/2013Configuration Management20

CIs could be placed under multiple levels of control (For example):

Fully Controlled CI: formal changes.Managed CI: informal changes.

CIs levels of control7/5/2013Configuration Management21

Relationships between CIs should be tracked.

Traceability matrix is the tool used for this purpose.CIs relationships7/5/2013Configuration Management22

CM repository7/5/2013Configuration Management23

Foo95Foo98Standard SCM Directories (IEEE 1042)

Programmers Directory (IEEE Std: Dynamic Library)Completely under control of one programmerMaster Directory (IEEE Std: Controlled Library) Central directory of all promotions

Software Repository(IEEE Std: Static Library)Externally released baselines.

Central sourcecode archive

ReleasePromotion

Codeline: a sequence of versions of source code with later versions in the sequence derived from earlier versions. Codelines normally apply to components of systems so that there are different versions of each component.A baseline: specification or product that has been formally reviewed and agreed upon, that thereafter serves as the basis for further development, and that can be changed only through formal change control procedures. The baseline therefore specifies the component versions that are included in the system plus a specification of the libraries used, configuration files, etc.Codelines and baselines7/5/2013Configuration Management25

25

Codeline & Baseline7/5/2013Configuration Management26

26

Baselines7/5/2013Configuration Management27

Functional baseline: the initial approved technical documentation for a configuration item.Allocated baseline: the initial approved specifications governing the development of configuration items that are part of a higher-level configuration itemProduct baseline: the initial approved technical documentation (including, for software, the source code listing) defining a configuration item during the production, operation, maintenance, and logistic support of its life cycle. (at the end of development/beginning of production)

Baselines7/5/2013Configuration Management28

BaselineWhen EstablishedComponentsFunctionalCompletion of software requirements reviewConcept of Operations Document, Software Requirements SpecificationAllocatedCompletion of preliminary design reviewHigh level design documents, interface control documentsDesignCompletion of design reviewDetailed design documentsAcceptance testCompletion of integration testingSource and executable code units, integration test plans, test procedures, test cases and data sets and test reportsProductCompletion of acceptance testingSource and executable code units, final system specifications, user and maintenance manuals, acceptance test plans, test procedures, test cases and data sets and test reportsOperationalCompletion of deploymentSource and executable code units, final system specifications, user and maintenance manuals, acceptance test plans, test procedures, site integration test cases and data sets and test reports

Typical Baseline Components7/5/2013Configuration Management29

Version management (VM) is the process of keeping track of different versions of software components or configuration items and the systems in which these components are used.

It also involves ensuring that changes made by different developers to these versions do not interfere with each other.

Therefore version management can be thought of as the process of managing codelines and baselines.Version Management7/5/2013Configuration Management30

30

Version and release identification

Storage management

Change history recording

Independent development (simultaneous check-out)

Project support with shared components.Version management systems7/5/2013Configuration Management31

31

Check-in & Check-out7/5/2013Configuration Management32

32

Check-in Check-out problem7/5/2013Configuration Management33

Issues:A user can lock a file and forget about it.Time is wasted while others wait to edit the file.Unnecessary serialization.Different parts of a file dont necessarily overlap.Lock-Modify-Unlock Solution7/5/2013Configuration Management34

Copy-Modify-Merge Solution7/5/2013Configuration Management35

Or conflict

Tools: KDiff3

Codeline branch & merge7/5/2013Configuration Management37

37

CM concepts7/5/2013Configuration Management38

Change management is intended to ensure that system evolution is a managed process and that priority is given to the most urgent and cost-effective changes.

The change management process is concerned with analyzing the costs and benefits of proposed changes, approving those changes that are worthwhile and tracking which components in the system have been changed.Change Management7/5/2013Configuration Management39

39

The change management process7/5/2013Configuration Management40

40

The change management process7/5/2013Configuration Management41

Evaluate and authorize formal changes.

Hierarchies of CCBs.

Evaluation process and rules.

Change Control Board (CCB)7/5/2013Configuration Management42

42

CM concepts7/5/2013Configuration Management43

Recording and reporting of information needed to manage a configuration effectively.Configuration status accounting7/5/2013Configuration Management44

A list of the CIs that comprise a baselineThe date when each version of each CI was baselinedA list of the specifications that describe each CIThe history of baseline changes including rationales for changeA list of open change requests by CIDeficiencies identified by configuration auditsThe status of works associated with approved change requests by CI.Configuration Status Report contents7/5/2013Configuration Management45

CM concepts7/5/2013Configuration Management46

Configuration auditing verifies that the product is built according to the requirements, standards, or contractual agreement.

It verifies that all product components have been produced, correctly identified, and described, and that all change requests have been resolved.Configuration auditing7/5/2013Configuration Management47

According to the IEEE-610, a FCA is an audit conducted to verify that:The development of a configuration item has been completed satisfactorilyThe item has achieved the performance and functional characteristics specified in the functional or allocated configuration identificationIts operational and support documents are complete and satisfactoryFCA7/5/2013Configuration Management48

Readiness CriteriaComplianceYesNoDoes the code implement all and only the documented software/system requirements?Can each system/software requirement be traced forward into tests (test cases, procedures, scripts) that verify that requirement?Is comprehensive system/software testing complete, including functional testing, interface testing and the testing of required quality attributes (performance, usability, safety, security, etc.)?Is the deliverable documentation consistent with the requirements and asbuilt system/software?Are the findings from peer reviews incorporated into the software deliverables (system/software and/or documentation)?Have approved corrective actions been implemented for all findings from In-Process Software Configuration Management Product Audits?Are all the anomalies reported during testing adequately resolved (or the appropriate waivers/deviations were obtained and known defects with workarounds are documented in the release notes)?

FCA check list example7/5/2013Configuration Management49

According to the IEEE, a PCA is an audit conducted to verify that each configuration item, as built, conforms to the technical documentation that defines it. A PCA verifies that:All items identified as being part of the configuration are present in the product baselineThe correct version and revision of each part are included in the product baselineThey correspond to information contained in the baselines configuration status reportPCA7/5/2013Configuration Management50

Readiness CriteriaComplianceYesNoHas each noncompliance from the FCA been appropriately resolved?Have all of the identified Configuration Items (e.g., source code, documentation, etc.) been baselined?Do all of the Configuration Items meet workmanship (coding, doc) standards?Has the software been built from the correct components and in accordance with the specification?Is the deliverable documentation set complete?Does the actual system delivery media conform to specification? Has the delivery media been appropriately marked/labeled?Do the deliverables for shipment match the list of required deliverables?Have 3rd party licensing requirements been met?Have export compliance requirements been met?

PCA check list example7/5/2013Configuration Management51

On every milestone.

Before baseline.

PCA when needed.

PCA after baseline.When to perform FCA, PCA?7/5/2013Configuration Management52

CM concepts7/5/2013Configuration Management53

Platforms: Dev, Build, Target7/5/2013Configuration Management54

54

System building7/5/2013Configuration Management55

55

A system release is a version of a software system that is distributed to customers.For mass market software, it is usually possible to identify two types of release: major releases which deliver significant new functionality, and minor releases, which repair bugs and fix customer problems that have been reported. For custom software or software product lines, releases of the system may have to be produced for each customer and individual customers may be running several different releases of the system at the same time. Release management7/5/2013Configuration Management56

56

Release trackingIn the event of a problem, it may be necessary to reproduce exactly the software that has been delivered to a particular customer. When a system release is produced, it must be documented to ensure that it can be re-created exactly in the future. This is particularly important for customized, long-lifetime embedded systems, such as those that control complex machines. Customers may use a single release of these systems for many years and may require specific changes to a particular software system long after its original release date.

Configuration Management577/5/2013

57

Release reproductionTo document a release, you have to record the specific versions of the source code components that were used to create the executable code.

You must keep copies of the source code files, corresponding executables and all data and configuration files.

You should also record the versions of the operating system, libraries, compilers and other tools used to build the software. Configuration Management587/5/2013

58

Release planningAs well as the technical work involved in creating a release distribution, advertising and publicity material have to be prepared and marketing strategies put in place to convince customers to buy the new release of the system.

Release timingIf releases are too frequent or require hardware upgrades, customers may not move to the new release, especially if they have to pay for it. If system releases are too infrequent, market share may be lost as customers move to alternative systems.

Configuration Management597/5/2013

59

Release componentsAs well as the the executable code of the system, a release may also include:configuration files defining how the release should be configured for particular installations;data files, such as files of error messages, that are needed for successful system operation;an installation program that is used to help install the system on target hardware;electronic and paper documentation describing the system;packaging and associated publicity that have been designed for that release.

Configuration Management607/5/2013

60

CM concepts7/5/2013Configuration Management61

Individual support toolsVersion control tools.Build handling tools.Change control tools.Project-related support toolsCompany-wide-process support tools, support more formal development process and include certification requirements.CM tools classification7/5/2013Configuration Management62

Microsoft Team Foundation Server (TFS)Change managementVersion managementSystem BuildingRelease management7/5/2013Configuration Management63

The Visual Studio 2010 family is made up of a central team server, and a small selection of client-side tools. The team serverTeam Foundation Server 2010is the backbone of your application lifecycle management

providing capabilities for source control management, (SCM), build automation, work item tracking and reporting. In this release weve expanded the capabilities of Team Foundation Server by adding a true test case management system

and extended it with Lab Management 2010a set of capabilities designed to better integrate both physical and virtual labs into the development process. Weve heard your feedback as well, and we have made it to be easier to set-up and maintain Team Foundation Serverin fact it can be installed, configured and ready to use in as little as 20-minutes.

On the client-side we have reduces the complexity of or IDE offerings. For developers, you can choose between Visual Studio 2010 Professional, Premium or Ultimate, with each subsequent product containing all of the features of its predecessor. For testers and business analysts we are introducing Test Professionala new integrated test environment designed with manual testers in mind.

For those people who participate in the development efforts, but for whom Visual Studiothe IDEis not appropriate, including Java developers, project managers and stakeholders the Team Foundation Server extensibility model enables us to provide alternative interfaces. These include both Team Explorera standalone tool built with the Visual Studio shelland Team Web Access. These tools enable anyone to work directly with Team Foundation Server.

In October we announced the acquisition of Teamprise, a technology similar to Team Explorer for the Eclipse IDE on Windows, Linux, Mac OS X and other Unix-based operating systems. That technology has been incorporated into the Visual Studio 2010 product line, and we will be announcing how we are productizing it very soon. The most important thing to know is that we will be releasing a Teamprise-based product, and it will also be included as an MSDN benefit for Visual Studio 2010 Ultimate customers.

Of course we are continuing our cross-product integration capabilities with Microsoft Office and Microsoft Expression. We have improved integration between Team Foundation Server and SharePoint Server with new SharePoint dashboards, and we have a new set of capabilities that make SharePoint development much easier than in the past.Across the board the features and capabilities we built into Visual Studio 2010 are a result of the great feedback we have gotten from our customers. This release continues our commitment to enabling you, our customers, to build the right software, in the right way to ensure success for your business. Throughout the rest of the day you will learn about a variety of capabilities in Visual Studio 2010 that make the process of developing software, by teams of any size, easier. Whether it is by helping you streamline your development process, find and fix bugs quicker, more easily understand existing systems or automate repetitive processes.

63

Contents7/5/2013Configuration Management64

CMMI support process areas

65

BasicConfiguration ManagementProcess and Product Quality AssuranceMeasurement and Analysis

AdvancedDecision Analysis and Resolution Causal Analysis and Resolution Support Process Areas7/5/2013Configuration Management66

66

67Basic Support Process Areas

PPQA

MA

CMAll process areas

Measurements,analysesInformation needs

Configuration items;change requestsBaselines;audit reportsProcesses and work products;standards and proceduresQuality and noncompliance issues7/5/2013Configuration Management

CMMI CM process area

68

Establish and maintain the integrity of work products using configuration identification, configuration control, configuration status accounting, and configuration audits.

Support.Level 2.

Purpose7/5/2013Configuration Management69

69

SG 1 Establish BaselinesSP 1.1 Identify Configuration ItemsSP 1.2 Establish a Configuration Management SystemSP 1.3 Create or Release BaselinesSG 2 Track and Control ChangesSP 2.1 Track Change RequestsSP 2.2 Control Configuration ItemsSG 3 Establish IntegritySP 3.1 Establish Configuration Management RecordsSP 3.2 Perform Configuration Audits

CM Specific Goals and Practices7/5/2013Configuration Management70

70

Baselines of identified work products are established.

SP 1.1 Identify Configuration ItemsSP 1.2 Establish a Configuration Management SystemSP 1.3 Create or Release Baselines

SG 1 Establish Baselines7/5/2013Configuration Management71

71

Identify configuration items, components, and related work products to be placed under configuration management.

configuration item: An aggregation of work products that is designated for configuration management and treated as a single entity in the configuration management process.work product: A useful result of a process. This result can include files, documents, products, parts of a product, services, process descriptions, specifications, and invoices. A key distinction between a work product and a product component is that a work product is not necessarily part of the end product.The selection of CI should be based on criteria established during planning.SP 1.1 Identify Configuration Items7/5/2013Configuration Management72

72

Subpractices:Select CIs based on criteria.Assign unique ID to CIs.Specify the important characteristics of each CI.Specify when each CI is placed under CM.Identify the owner responsible for each CI.Specify relationships among CIs.SP 1.1 Identify Configuration Items7/5/2013Configuration Management73

73

Establish and maintain a configuration management and change management system for controlling work products.

Example Work Products Configuration management system with controlled work products Configuration management system access control procedures Change request database SP 1.2 Establish a Configuration Management System7/5/2013Configuration Management74

74

Subpractices:Establish a mechanism to manage multiple levels of control.Provide access control to ensure authorized access to the configuration management system.Store and retrieve configuration items in a configuration management system.Share and transfer configuration items between control levels in the configuration management system.SP 1.2 Establish a Configuration Management System7/5/2013Configuration Management75

75

Store and recover archived versions of configuration items.Store, update, and retrieve configuration management records.Create configuration management reports from the configuration management system.Preserve the contents of the configuration management system.Revise the configuration management structure as necessary.SP 1.2 Establish a Configuration Management System7/5/2013Configuration Management76

76

Create or release baselines for internal use and for delivery to the customer.

Baseline: A set of specifications or work products that has been formally reviewed and agreed on, which thereafter serves as the basis for further development, and which can be changed only through change control procedures. SP 1.3 Create or Release Baselines7/5/2013Configuration Management77

77

Subpractices:Obtain authorization from the CCB before creating or releasing baselines of configuration items.Create or release baselines only from configuration items in the configuration management system.Document the set of configuration items that are contained in a baseline.Make the current set of baselines readily available.SP 1.3 Create or Release Baselines7/5/2013Configuration Management78

78

Changes to the work products under configuration management are tracked and controlled.

SP 2.1 Track Change RequestsSP 2.2 Control Configuration Items

SG 2 Track and Control Changes7/5/2013Configuration Management79

79

Track change requests for configuration items.

Subpractices:Initiate and record change requests in the change request database.Analyze the impact of changes and fixes proposed in change requests.Categorize and prioritize change requests.Review change requests to be addressed in the next baseline with relevant stakeholders and get their agreement.Track the status of change requests to closure.SP 2.1 Track Change Requests7/5/2013Configuration Management80

80

Control changes to configuration items.

Subpractices:Control changes to configuration items throughout the life of the product or service.Obtain appropriate authorization before changed configuration items are entered into the configuration management system.Check in and check out configuration items in the configuration management system for incorporation of changes in a manner that maintains the correctness and integrity of configuration items.Perform reviews to ensure that changes have not caused unintended effects on the baselines.Record changes to configuration items and reasons for changes as appropriate.SP 2.2 Control Configuration Items7/5/2013Configuration Management81

81

Integrity of baselines is established and maintained.

SP 3.1 Establish Configuration Management RecordsSP 3.2 Perform Configuration Audits

SG 3 Establish Integrity7/5/2013Configuration Management82

82

Establish and maintain records describing configuration items.

Example Work Products Revision history of configuration items Change log Change request records Status of configuration items Differences between baselines SP 3.1 Establish Configuration Management Records7/5/2013Configuration Management83

83

Subpractices:Record configuration management actions in sufficient detail so the content and status of each configuration item is known and previous versions can be recovered.Ensure that relevant stakeholders have access to and knowledge of the configuration status of configuration items.Specify the latest version of baselines.Identify the version of configuration items that constitute a particular baseline.Describe differences between successive baselines.Revise the status and history (i.e., changes, other actions) of each configuration item as necessary.SP 3.1 Establish Configuration Management Records7/5/2013Configuration Management84

84

Perform configuration audits to maintain the integrity of configuration baselines.

configuration audit: An audit conducted to verify that a configuration item or a collection of configuration items that make up a baseline conforms to a specified standard or requirement.

SP 3.2 Perform Configuration Audits7/5/2013Configuration Management85

85

Functional configuration audits (FCAs): Audits conducted to verify that the development of a configuration item has been completed satisfactorily, that the item has achieved the functional and quality attribute characteristics specified in the functional or allocated baseline, and that its operational and support documents are complete and satisfactory. Physical configuration audits (PCAs): Audits conducted to verify that a configuration item, as built, conforms to the technical documentation that defines and describes it. Configuration management audits: Audits conducted to confirm that configuration management records and configuration items are complete, consistent, and accurate. Examples of audit types include the following7/5/2013Configuration Management86

Configuration audits confirm that the resulting baselines and documentation conform to a specified standard or requirement. Audit results should be recorded as appropriate. (See the glossary for a definition of "configuration audit.")Examples of audit types include the following:Functional Configuration Audits (FCA) Audits conducted to verify that the as-tested functional characteristics of a configuration item have achieved the requirements specified in its functional baseline documentation and that the operational and support documentation is complete and satisfactory.Physical Configuration Audit (PCA) Audits conducted to verify that the as-built configuration item conforms to the technical documentation that defines it.Configuration management audits Audits conducted to confirm that configuration management records and configuration items are complete, consistent, and accurate.

Configuration audits are conducted mainly to check the compliance of the configuration mgmt processes within a project. It is mainly bifurcated into Physical and Functional configuration audits.

Physical config audits means that you are checking for the physical attributes of the config mgmt system and its elements (like documents, source codes, non-config. items etc). Normally, the checks are done to see the naming conventions as defined in the plan, physical location as mentioned in the directory structure of the CM Plan, access rights as planned in the CM plan, various repositories for various artefacts e.g. source codes in config mgmt tool, documents in drives etc.

Functional config audits means that the functional aspects of the product/ project/ work item is getting checked. Here, depending on the scope of the audit, it normally checks for the code reviews, peer reviews done, maintenance of baseline information, documented requirements, requirements tested, defects documented and fixed, release notes prepared etc.

Physical Configuration audit checklist:Are all the files for each CI correctly identified and named?Are all the CI listed in the SCMP present?Has the SCMP/ Config List documentbeen updatedto reflect the latest CI versions?Is adequate configuration management documentation (e.g. Configuration Status Accounting information, change requests,) available?Are activity log sheets being updated?Have the CI been placed in the correct repository?Are the documents that comprise the product baseline current and complete?Are all available operation and support documents complete, correct and do they match the current product baseline? Are they adequate to recreate the system?Does the configuration status accounting information correctly reflect the current and latest status of the project?Functional Configuration audit checklist:Havecode inspections or peer review been done?Havedocumentation inspections or peer reviewbeen done?Is baseline information being maintained?Were all tests identified in the test scripts/procedures actually performed?Is the set of requirements allocated to this release well defined and documented?Were all requirements allocated to this release tested?Were all tests (eventually) successful?Were all discrepancies documented and subsequently corrected?Is user documentation (User's Manual, Operator's Manual) specific for this release available, complete, and current?Is technical documentation (describing the as-built design) specific for this release available, complete, and current?Is configuration management documentation (Configuration Status Accounting Information, change records, etc.) specific for this release available, complete, and current?Is the traceability matrix updated/ modified according to the requirements?

86

Example Work ProductsConfiguration audit resultsAction itemsSubpractices:Assess the integrity of baselines.Confirm that configuration management records correctly identify configuration items.Review the structure and integrity of items in the configuration management system.Confirm the completeness, correctness, and consistency of items in the configuration management system.Confirm compliance with applicable configuration management standards and procedures.Track action items from the audit to closure.SP 3.2 Perform Configuration Audits7/5/2013Configuration Management87

87

7/5/2013Configuration Management88EstablishConfig MgmtRecords

PerformConfigurationAudits

ActionItems

Audit Results

Reports

Establish IntegrityChange RequestDatabaseConfigurationManagementSystem

ChangeRequests

Create orReleaseBaselines

Establisha Config.ManagementSystemIdentifyConfigurationItems

Establish Baselines

ControlConfigurationItems

TrackChangeRequests

Track andControlChanges

88

PlanningEstablishing CM EnvironmentMaintaining CM EnvironmentFunctional Configuration AuditPhysical Configuration AuditBaselining Change Control

CM procedures example7/5/2013Configuration Management89

Purpose: develop the required guidance for the deployment of the configuration management procedures.

This procedure involves the identification of the project configuration controller, developing the CM plan and ensuring its integration with the overall project plan.

CM Planning7/5/2013Configuration Management90

CM Planning Procedure7/5/2013Configuration Management91

Purpose: establish the configuration management system, including the storage media, system, and the tools for accessing the configuration system.

The procedure will produce the required infrastructure for the overall development project. Establishing CM Environment7/5/2013Configuration Management92

Establishing CM Environment Procedure7/5/2013Configuration Management93

Purpose: maintain the configuration management system, including the storage media, system, and the tools for accessing the configuration system.

The procedure will produce the required infrastructure for the overall development project.Maintaining CM Environment7/5/2013Configuration Management94

Maintaining CM Environment Procedure7/5/2013Configuration Management95

Purpose: guide the performance of the functional audit activities on the configuration management system including the storage media, system, and the tools for accessing the configuration system. The procedure, when performed, ensures the logical consistency between the contents of the configuration management system and approves the readiness for performing the baselining. This audit is not related to the quality assurance audit, the quality assurance audit is just seeking the compliance with predefined standards, while this audit is seeking the integrity and compliance to the requirements specification.

Functional Configuration Audit7/5/2013Configuration Management96

FCA Procedure7/5/2013Configuration Management97

Purpose: guide the physical audit activities on the configuration management system including the storage media, system, and the tools for accessing the configuration system. The procedure, when performed, ensures the physical existence and consistency between the contents of the configuration management system and approves the readiness for performing the baselining. This procedure is not only performed before the baselining, as in the functional audit case, but also can be done in any time to ensure the required level of integrity.

Physical Configuration Audit7/5/2013Configuration Management98

PCA Procedure7/5/2013Configuration Management99

Purpose: produce baselines from the identified CIs.

The procedure, when performed, ensures the existence and existences announcement of the baselines that will be considered as a starting point for further development phases in the product development life cycle. The quality of the baseline is completely dependent on the functional and physical audits done before the baselining.

Baselining7/5/2013Configuration Management100

Baselining Procedure7/5/2013Configuration Management101

Purpose: guide the performing of save changes to any stable work product.

The change control procedure starts by raising a change request, then being evaluated, implemented and verified. The impact of these changes should be estimated and then evaluated at the end of the project at the project closure phase.

Change Control7/5/2013Configuration Management102

Change Control Procedure7/5/2013Configuration Management103

CMMI Product Team. (November 2010). CMMI for Development, Version 1.3. Carnegie Mellon University.Sommerville, I. (2011). SOFTWARE ENGINEERING, Ninth Edition. Addison-Wesley.ISO 24765. (2010). Systems and software engineering Vocabulary.IEEE 828. (1990). IEEE Standard for Software Configuration Management Plans.IEEE 1042. (1987). Guide to Software Configuration Management.SECC. (2009). SPIG Product Suite Handbook V1.2.

References7/5/2013Configuration Management104

104

Thank you

7/5/2013Configuration Management105