|
Compatibility Maturity Model (CMM) Assessment of the Assigned Procedure |
|||||||||||||||||||||||||||||||||||||||||||||
|
Background: This assignment requires us to perform a Compatibility Maturity Model (CMM) assessment of a given process belonging to Software Service Center (SSC). This process consistent of several interactions between the contractor (Municipality) and the service center is modeled in Appendix -I and described in Appendix - II.
The Approach
Table-2 CMM level key practices Internal Structure of the CMM Each key process area is described in terms of the key practices that contribute to satisfying its goals. The key practices describe the infrastructure and activities that contribute most to the effective implementation and institutionalization of the key process area. Except for Level 1. each maturity level is decomposed into several key process areas that indicate the areas an organization should focus on to improve its software process. These are listed in Table-2. CMM Level 1
Table - 2 ISO/IEC 15504 Process Capability Levels In our given process, there are a number of questions that are left unanswered. Ideally, before we go any further with the process evaluation and assessment, we must get the answers to these questions to clarify or fill in the missing information. Some of these questions are listed in Appendix -III. However, since we do not have that freedom in our assigned procedure, we will make appropriate assumptions to fill in the missing blanks, where required. Process Evaluation and Assessment Process evaluation is achieved by identifying the missing critical practices of the key processes on the side of contractors, and evaluating the potential risk that these could cause (Zahran, 1998). Process assessment identifies the process strengths and weaknesses (relative to the CMM process definition). To perform the evaluation and assessment, we will now analyze the procedure in detail based upon the CMM key process areas as listed in Table -2. Our finding are listed in the tables below. CMM Level 2
|
Table -3 CMM level 2 key process areas of maturity
|
CMM Level 3
|
Table -4 CMM level 3 key process areas of maturity
CMM Level 4
|
Area of Maturity |
Purpose |
Application to the Service Center |
| Process Management | To control the process performance of the software project quantitatively. Software process performance represents the actual results achieved from following a software process. |
We are simply not provided with enough information to decide whether or not the focus is on identifying special causes of variation within a measurably stable process and correcting, as appropriate, the circumstances that drove the transient variation to occur. |
| Software Quality Management |
To develop a quantitative understanding of the quality of the project's software products and achieve
specific quality goals. |
Software Quality Management applies comprehensive measurement program to the software work products. In the case of SSC, we probably don't have product quality goals except the ones provided by the customer. |
Table -5 CMM level 4 key process areas of maturity
CMM Level 5
|
Area of Maturity |
Purpose |
Application to the Service Center |
| Defect Prevention |
To identify the causes of defects and prevent them from recurring. This should lead to continuous improvements of the
software process. |
No such scenario is given in the assigned procedure.
|
|
Technology Change Management
|
To identify beneficial new technologies and transfer then into the organization in an orderly manner. Innovative technologies could lead to revolutionary process improvements |
We don't have enough information to comment on its validity. No such scenario is given in the assigned procedure.
|
|
Process Change Management
|
To improve continually the software processes used in the organization with the intentions of improving software quality, increasing productivity and decreasing the cycle time. |
The focus of technology change is performing innovation efficiently in an ever changing world of the software processes used. But unfortunately, we don't have enough information to comment on its validity in the case of
SSC. |
Table -6 CMM level 5 key process areas of maturity
|
Process Improvements The CMM provides an excellent model for process redesign for improvements. The key process area specifications in the CMM documentation are used by software process improvement teams to guide organization for improving software processes. Figure -2 illustrates the process improvement template.
Figure -2 The CMM model template for software improvement |
|
We will use this model to comment on the recommendations for improvements in the process. These improvement areas are listed in Table -7 below. Recommendations
Table -7 CMM process improvement recommendations Conclusion A CMM evaluation and assessment was performed on the assigned process of a software service center. An in depth analysis of the process based upon CMM maturity levels key practices revealed that the process is in the initial stage (CMM maturity level 1). This stage is characterized as ad hoc, and occasionally even chaotic. Few processes are defined, and success depends on individual effort and heroics. To improve this process we recommended redesign in the areas of Commitment to perform, Ability to perform, Activities performed, Measurements and analysis, and Verifying implementation. APPENDIX - II "After the commercial department has obtained an OK both from the Municipality and from the management in Engineering, Max contacts the municipality and obtains the tapes and the list of additional requirements, that is, the request for personalized data treatment. Max then notifies Jupiter about the project start, and sends the tapes to Dorian. Dorian converts the data set in a format readable and processable by Engineering's internal servers with the help of Moll. In the meantime, Max has notified Jupiter that the Municipality required a personalization: in particular, the Municipality requires that on-line normalization be carried out by externally, by the Municipality itself. Jupiter is the only one that has the skills for it, so he starts working. When the archives are ready, Dorian sends them to Bruce, and then notifies Jupiter of the task completion. Bruce runs the batch procedures for normalization and upload, and notifies Jupiter when the task is complete. When Jupiter completes the personalization, he notifies Bruce and waits for him to finish. Then it converts the archives for exporting them to the Municipality, and delivers them to Max with the Municipality, which is in charge of actually delivering the data. The Municipality performs the on-line normalization, and then returns the data to Max. Max then notifies Jupiter that the data are ready, and simultaneously delivers the data to Bruce who (thanks to Jupiter's personalization) can load the data and start the automatic filtering procedure. When Bruce finishes, he notifies Jupiter, and passes the data to Frances. Frances performs the on-line filtering and when she finishes she notifies Jupiter and handles the archives to Bruce. Bruce unloads the data from the conversion program and loads them into the main software: THEBIT. He informs Jupiter about it and then starts the data calculation procedure in THEBIT. When the calculation is over. Bruce presents the results to who in turn notifies both Max and the commercial interface that the product is ready and an invoice must be sent to the Municipality." APPENDIX - III Here's a list of questions that should be asked from the Software Service Center before proceeding with the CMM assessment. 1. Is the company currently employing CMM? 2. Is the work done in a team environment with well defined projects? If so, is there a project manager? 3. Are the employee roles defined? 4. Are the company rules and regulation, code of behaviour, company vision, etc. documented? 5. Are all the daily procedures documented? Is it routinely practiced? 6. Is there a quality assurance body to enforce the company rules and regulations? 7. Is there procedures in place to test and verify the finished products for the pre-set goals? 8. How are the contracts given to the customers? Is the customer-client relationship based on common understanding? 9. Is there effective actions taken when the project's performance deviates from the software goals? 10. Is there small checks or modular testing during the progress of the software procedure to see whether the software is on track? 11.\s there formal or informal training for the staff to keep up-to-date with the new skills and technology? 12. How do the engineering groups interact with each other? On average how often does this contact take place and by what means? 13. How are the conflicts between team members, or teams resolved? Is there a quality assurance committee responsible for this? 14. Is the knowledge gained from previous projects taken into use for the future or present projects? 15. What procedures were in place in case of crisis, such as a delay in the completion date of a project? 16. What mechanisms were set up for feedback on company products from the customers or the company employees? Bibliography Zahran, Sami. Software Process Improvement. Addison Wesley Longman. Essex. England: 1998.
|
Home
| Resume
| Transcript | Documents
| My
Life | Resources
E-Books |
Code | Greeting
Cards | Galleries | My University | IEEE
© 2002 Upal.ca All rights reserved.