Publicité
Publicité

Contenu connexe

Publicité

Lesson 01.ppt

  1. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 1 Chapter 01 Quality Management
  2. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 2 Objectives  To introduce the quality management process and key quality management activities  To explain the role of standards in quality management  To explain the concept of a software metric, predictor metrics and control metrics  To explain how measurement may be used in assessing software quality
  3. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 3 Quality Management  Managing the quality of the software process and products  That is, systems • Should meet the needs of their users, • Should perform efficiently and reliably, • Should be delivered on time and within budget
  4. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 4 Topics covered  Quality assurance and standards  Quality planning  Quality control  Software measurement and metrics
  5. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 5 Software quality management  Concerned with ensuring that the required level of quality is achieved in a software product  Involves defining appropriate quality standards and procedures and ensuring that these are followed  Should aim to develop a ‘quality culture’ where quality is seen as everyone’s responsibility
  6. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 6 What is quality?  Quality, simplistically, means that a product should meet its specification  This is problematical for software systems • Some quality requirements are difficult to specify in an unambiguous way. (maintainability, user friendliness, etc.) • It is difficult to write complete and unambiguous software requirements. Software developers and customers may interpret the requirements in different ways, and it may be impossible to reach agreement on whether or not software conforms to its specification.
  7. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 7 The quality compromise  We cannot wait for specifications to improve before paying attention to quality management  Must put procedures into place to improve quality despite imperfect specification  It is not possible for any system to be optimized for all these attributes. For example, improving security may lead to loss of performance. The quality plan should therefore define the most important quality attributes for the software that is being developed. It may be that efficiency is critical and other factors have to be sacrificed to achieve it.  If you have emphasized the importance of efficiency in the quality plan, the engineers working on the development can work together to achieve this.
  8. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 8 Quality management activities  Quality assurance • Establish organisational procedures and standards for quality  Quality control • Ensure that procedures and standards are followed by the software development team • Weed out products that are not of the required level of quality  Both quality assurance and quality control are part of quality management.
  9. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 9 Quality management and software development
  10. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 10  Because project managers have to maintain the project budget and schedule, they may be tempted to compromise on product quality to meet that schedule.  An independent QM team ensures that the organizational goals of quality are not influenced by short-term budget and schedule considerations.  In smaller companies, however, this is practically impossible. Quality management and software development are inevitably intertwined with people having both development and quality responsibilities
  11. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 11 Software standards  Product standards - These apply to the software product being developed. • the structure of requirements documents, • coding standards, etc.  Process standards - These define the processes that should be followed during software development. • design, and validation processes, • process support tools, etc.
  12. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 12 ISO 9000  International set of standards for quality management in all industries  Applicable to a range of organisations from manufacturing to service industries  ISO 9001 applicable to organisations which design, develop and maintain products including software
  13. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 13  A major revision of the ISO 9001 standard in 2000 reoriented the standard around nine core processes
  14. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 14 ISO 9000 certification  Some software customers demand that their suppliers be ISO 9001 certified.  The customers can then be confident that the software development company has an approved quality management system in place. Independent accreditation authorities examine the quality management processes and process documentation and decide if these processes cover all the areas specified in ISO 9001.  If so, they certify that a company’s quality processes, as defined in the quality manual, conform to the ISO 9001 standard.
  15. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 15 ISO 9000 and quality management
  16. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 16 Quality plan structure  Product introduction  Product plans  Process descriptions  Quality goals  Risks and risk management  Quality plans should be short, succinct documents • If they are too long, no-one will read them
  17. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 17  Encapsulation of best practice- avoids repetition of past mistakes  Framework for quality assurance process - it involves checking standard compliance  Provide continuity - new staff can understand the organisation by understand the standards applied Importance of standards
  18. ©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 24 Slide 18 Problems with standards  Not seen as relevant and up-to-date by software engineers  Involve too much bureaucratic form filling  Unsupported by software tools so tedious manual work is involved to maintain standards  There is no guarantee that ISO 9001 certified companies use the best software development practices or that their processes lead to high-quality software  Takes no account of quality as experienced by users of the software
Publicité