OHT 2 1 Software Quality assurance SQA SWE

  • Slides: 28
Download presentation
OHT 2. 1 Software Quality assurance (SQA) SWE 333 Capability Maturity Level (CMMi) Dr

OHT 2. 1 Software Quality assurance (SQA) SWE 333 Capability Maturity Level (CMMi) Dr Khalid Alnafjan kalnafjan@ksu. edu. sa Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 2 What is a CMMi? • A Capability Maturity Model (CMMi) is

OHT 2. 2 What is a CMMi? • A Capability Maturity Model (CMMi) is a reference model of mature practices in a specified discipline, used to improve PROCESS at work • The results of adopting CMMi is a much better product or process quality. • Before we focus on CMMi we need to understand the meaning of a PROCESS so What is a PROCESS ? Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 3 What is a process • A process is a series of

OHT 2. 3 What is a process • A process is a series of actions or steps taken in order to achieve a particular end in the form of a product or service • We may not realize it, but processes are everywhere and in every aspect of our leisure and work. A few examples of processes might include: • Preparing breakfast • Placing an order • Developing a budget • Writing a computer program • Obtaining application requirements • And so on Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 4 Process Improvement • The quality of a system is highly influenced

OHT 2. 4 Process Improvement • The quality of a system is highly influenced by the quality of the process used to acquire, develop, and maintain it. • even our finest people can’t perform at their best when the process is not understood or operating at its best. ” • Everyone realizes the importance of having a motivated, quality work force and the latest technology, but even the finest people can’t perform at their best when the process is not understood or operating at its best • This premise implies a focus on processes as well as on products. Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 5 Symptoms of Process Failure Commitments consistently missed Late delivery Last minute

OHT 2. 5 Symptoms of Process Failure Commitments consistently missed Late delivery Last minute crunches Increasing costs No management visibility into progress You’re always being surprised. Quality problems Too much rework Functions do not work correctly. Customer complaints after delivery Poor morale People frustrated Is anyone in charge? Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 6 CMMI for Process Improvement The aim of CMMi is to improve

OHT 2. 6 CMMI for Process Improvement The aim of CMMi is to improve processes so they can be performed in the best manner with least cost Use CMMI in process improvement activities as a • collection of best practices • framework for organizing and prioritizing activities • support for the coordination of multi-disciplined activities that might be required to successfully build a product • means to emphasize the alignment of the process improvement objectives with organizational business objectives Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 7 Ad Hoc Processes (Not using CMMi) Processes are ad hoc and

OHT 2. 7 Ad Hoc Processes (Not using CMMi) Processes are ad hoc and improvised by practitioners and their management Process describes are not rigorously followed or enforced Performance is highly dependent on current practitioners Understanding of the current status of a project is limited Immature processes result in fighting fires: • There is no time to improve – instead, practitioners are constantly reacting • Firefighters get burned • Embers might rekindle later Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 8 Improved Processes (Using CMMi) Process descriptions are consistent with the way

OHT 2. 8 Improved Processes (Using CMMi) Process descriptions are consistent with the way work actually is done They are defined, documented and continuously improved Processes are supported visibly by management and others They are well controlled – process fidelity is evaluated and enforced There is constructive use of product and process measurement Technology is introduced in a disciplined manner Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 9 Process Improvement and Football - an example • Let us take

OHT 2. 9 Process Improvement and Football - an example • Let us take football as an example to show process improvement can increase the quality of football game. • We will compare how play is performed between a little league team and a professional football team Galin, SQA from theory to implementation © Pearson Education Limited 2004

Process Improvement and Football - an example OHT 2. 10 What happens when a

Process Improvement and Football - an example OHT 2. 10 What happens when a ball is hit to a Little League team? Everyone runs around at random. They might do the right thing, or they might not. The next time the ball is hit in the same place, they may do something different. What happens when a ball is hit to a professional team? Everyone moves in a coordinated fashion, based on practicing that play many times. Sometimes they fail to make the right play, but they almost always try to do the right thing. Galin, SQA from theory to implementation © Pearson Education Limited 2004 10

Process Improvement and Football - an example OHT 2. 11 • A professional football

Process Improvement and Football - an example OHT 2. 11 • A professional football team is more "mature" than a Little League team (not referring to age). • A professional team has self-perpetuating quality. They – Make good plays – Develop new players like themselves – Find ways to make better plays Galin, SQA from theory to implementation © Pearson Education Limited 2004 11

Process Improvement and Football - an example OHT 2. 12 • What happens when

Process Improvement and Football - an example OHT 2. 12 • What happens when the team loses a star player? – Little League team gets much worse. – Professional team often has someone waiting to fill in. • Self-improvement after a bad play… – Little League players don’t know what went wrong, or they blame each other. – Professional teams discuss their play and look for ways to improve. Galin, SQA from theory to implementation © Pearson Education Limited 2004 12

OHT 2. 13 … So what is CMMI? • In the same way, high-quality

OHT 2. 13 … So what is CMMI? • In the same way, high-quality software organizations are different from low-quality organizations. • CMMI tries to capture and describe these differences. • CMMI strives to create software development organizations that are “mature”, or more mature than before applying CMMI. Galin, SQA from theory to implementation © Pearson Education Limited 2004 13

OHT 2. 14 Capability Maturity Model® Integration (CMMI®) Capability Maturity Modeling, CMM, and CMMI

OHT 2. 14 Capability Maturity Model® Integration (CMMI®) Capability Maturity Modeling, CMM, and CMMI are registered in the U. S. Patent and Trademark Office by Carnegie Mellon University. Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 15 How CMMI Helps? CMMI provides guidance for improving an organization’s processes

OHT 2. 15 How CMMI Helps? CMMI provides guidance for improving an organization’s processes and ability to manage the development, acquisition and maintenance of products or services. CMMI places proven approaches into a structure that helps an organization: - appraise its organizational maturity or process area capability - establish priorities for improvement - implement these improvements Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 16 Five levels of maturity … Galin, SQA from theory to implementation

OHT 2. 16 Five levels of maturity … Galin, SQA from theory to implementation © Pearson Education Limited 2004 16

OHT 2. 17 Summary of levels • Level 1 – Initial. Anything at all.

OHT 2. 17 Summary of levels • Level 1 – Initial. Anything at all. Ad-hoc and chaotic. Will have some successes, but will also have failures and badly missed deadlines. • Level 2 – Repeatable. SW processes are defined, documented, practiced, and people are trained in them. Groups across an organization may use different processes. Galin, SQA from theory to implementation © Pearson Education Limited 2004 17

OHT 2. 18 Summary of levels Level 3 – Defined. SW processes are consistent

OHT 2. 18 Summary of levels Level 3 – Defined. SW processes are consistent and known across the whole organization. Level 4 – Managed. SW processes and results are measured quantitatively, and processes are evaluated with this data. Level 5 – Optimizing. Continuous process improvement. Experimenting with new methods and technologies. Change processes when find something that works better. Galin, SQA from theory to implementation © Pearson Education Limited 2004 18

OHT 2. 19 Level 1 – Initial Team tackles projects in different ways each

OHT 2. 19 Level 1 – Initial Team tackles projects in different ways each time Can have strong successes, but may not repeat Some time/cost estimates are accurate, many far off Success comes from smart people doing the right things Hard to recover from good people leaving Frequent crises and "firefighting. ” (Many believe this is standard for SW development. CMM says NO. ) Most SW development organizations are Level 1. Galin, SQA from theory to implementation © Pearson Education Limited 2004 19

OHT 2. 20 Level 2 – Repeatable • Key areas – Requirements management –

OHT 2. 20 Level 2 – Repeatable • Key areas – Requirements management – Software project planning – Project tracking and oversight – Subcontracts management – Quality assurance – Configuration management Galin, SQA from theory to implementation © Pearson Education Limited 2004 20

OHT 2. 21 Level 3 – Defined • Key areas. Level 2, plus… –

OHT 2. 21 Level 3 – Defined • Key areas. Level 2, plus… – Organization-wide process focus – Organization-wide process definition – Training program in above – Integrated software management (above applied per project) – Software product engineering (coding, etc. ) – Inter-group coordination – Peer reviews Galin, SQA from theory to implementation © Pearson Education Limited 2004 21

OHT 2. 22 Level 4 – Managed • Key areas. Level 3, plus… –

OHT 2. 22 Level 4 – Managed • Key areas. Level 3, plus… – Quantitative process management (data gathering) – Quality management (data-driven quality improvement) Galin, SQA from theory to implementation © Pearson Education Limited 2004 22

OHT 2. 23 Level 5 – Optimizing • Key areas. Level 4, plus… –

OHT 2. 23 Level 5 – Optimizing • Key areas. Level 4, plus… – Defect prevention – Technology change management (bring in new methods) – Process change management (improve processes) Galin, SQA from theory to implementation © Pearson Education Limited 2004 23

OHT 2. 24 Level 5 – Optimizing • The optimizing level (Level 5) is

OHT 2. 24 Level 5 – Optimizing • The optimizing level (Level 5) is not the destination of process management. • The destination is better products for a better price: economic survival • The optimizing level is a foundation for building an ever-improving capability. Galin, SQA from theory to implementation © Pearson Education Limited 2004 24

OHT 2. 25 Example-Requirements Management SG 1: Manage Requirements SP 1. 1 : Obtain

OHT 2. 25 Example-Requirements Management SG 1: Manage Requirements SP 1. 1 : Obtain an understanding of the requirements SP 1. 2 : Obtain commitment to requirements SP 1. 3 : Manage Requirement Changes SP 1. 4 : Maintain bi- directional trace ability of Requirements SP 1. 5 : Identify inconsistencies between project work and requirements Galin, SQA from theory to implementation © Pearson Education Limited 2004

OHT 2. 26 Time required to progress to next level Capability level transition Level

OHT 2. 26 Time required to progress to next level Capability level transition Level 1 to level 2 Mean time (months) 24 No. of organizations 125 Level 2 to level 3 21. 5 124 Level 3 to level 4 33 18 Level 4 to level 5 18 19 Source: Based on Gartner Inc. (2001) Galin, SQA from theory to implementation © Pearson Education Limited 2004 26

OHT 2. 27 Project Resources distribution Percentage of project resources CMM capability level Original

OHT 2. 27 Project Resources distribution Percentage of project resources CMM capability level Original work Reworking Testing and quality assurance 1 34 41 25 2 55 18 27 3 67 11 22 4 76 7 17 Galin, SQA from theory to implementation © Pearson Education Limited 2004 27

OHT 2. 28 Versions of CMMI (capability maturity model integration) CMMI-SE/SW System Engineering CMM

OHT 2. 28 Versions of CMMI (capability maturity model integration) CMMI-SE/SW System Engineering CMM (SE-CMM) Software engineering CMM (SW-CMM) CMMI-SE/SW/IPPD/SS System Engineering CMM (SE-CMM) Software engineering CMM (SW-CMM) Integrated Product/Process Development (IPPD-CMM) Supplier Sourcing CMMI-SE/SW/IPPD System Engineering CMM (SE-CMM) Software engineering CMM (SW-CMM) Integrated Product/Process Development (IPPD-CMM) Galin, SQA from theory to implementation © Pearson Education Limited 2004 28