Podcast
Questions and Answers
Why might software engineers find standards problematic?
Why might software engineers find standards problematic?
What is a common issue associated with standards development?
What is a common issue associated with standards development?
Why is it important for engineers to understand the rationale underlying a standard?
Why is it important for engineers to understand the rationale underlying a standard?
What can reduce the credibility of standards among practitioners?
What can reduce the credibility of standards among practitioners?
Signup and view all the answers
Which aspect is considered the most significant complaint against standards?
Which aspect is considered the most significant complaint against standards?
Signup and view all the answers
Why do standards require associated tool support?
Why do standards require associated tool support?
Signup and view all the answers
What do product standards define?
What do product standards define?
Signup and view all the answers
How do process standards contribute to software development?
How do process standards contribute to software development?
Signup and view all the answers
What is the purpose of standards in software development according to the text?
What is the purpose of standards in software development according to the text?
Signup and view all the answers
What is one benefit of standards mentioned in the text regarding new staff?
What is one benefit of standards mentioned in the text regarding new staff?
Signup and view all the answers
What is one potential issue with standards mentioned in the text?
What is one potential issue with standards mentioned in the text?
Signup and view all the answers
What is the key role of quality assurance in the context of standards?
What is the key role of quality assurance in the context of standards?
Signup and view all the answers
Which of the following is NOT a key reason why software specifications are often incomplete and inconsistent?
Which of the following is NOT a key reason why software specifications are often incomplete and inconsistent?
Signup and view all the answers
What is the primary focus of quality management for smaller software systems according to the passage?
What is the primary focus of quality management for smaller software systems according to the passage?
Signup and view all the answers
What is the primary purpose of quality documentation according to the passage?
What is the primary purpose of quality documentation according to the passage?
Signup and view all the answers
What is the primary purpose of quality control according to the passage?
What is the primary purpose of quality control according to the passage?
Signup and view all the answers
Which of the following is a key challenge in software quality management according to the passage?
Which of the following is a key challenge in software quality management according to the passage?
Signup and view all the answers
What is the primary reason why quality management is particularly important for large, complex software systems according to the passage?
What is the primary reason why quality management is particularly important for large, complex software systems according to the passage?
Signup and view all the answers
Study Notes
Quality Management in Software Engineering
- Tension exists between customer quality requirements (e.g., efficiency, reliability) and developer quality requirements (e.g., maintainability, reusability).
- Quality requirements can be difficult to specify in an unambiguous way.
- Software specifications are often incomplete and inconsistent.
The Quality Compromise
- Quality management procedures are essential, despite imperfect specifications.
- Implementing quality management procedures helps improve quality in spite of imperfect specifications.
Scope of Quality Management
- Quality management is crucial for large, complex systems.
- Quality documentation supports continuity of development as the development team changes.
- For smaller systems, quality management focuses on establishing a quality culture, with less documentation.
Quality Management Activities
- Quality assurance: ensures procedures and standards are followed by the software development team.
- Quality planning: selects applicable procedures and standards for a project, and modifies them as required.
Product and Process Standards
- Product standards define characteristics that all components should exhibit (e.g., common programming style).
- Process standards define how the software process should be enacted (e.g., design review, version release process).
- Examples of product and process standards:
- Design review form
- Design review conduct
- Requirements document structure
- Submission of documents to CM
- Method header format
- Version release process
- Java programming style
- Project plan approval process
- Project plan format
- Change control process
- Change request form
- Test recording process
Problems with Standards
- Standards may not be seen as relevant and up-to-date by software engineers.
- They often involve too much bureaucratic form filling.
- If unsupported by software tools, tedious manual work is involved to maintain the documentation associated with the standards.
Standards Development
- Involve practitioners in development to ensure they understand the rationale underlying a standard.
- Review standards and their usage regularly to avoid them becoming outdated.
- Detailed standards should have associated tool support to avoid excessive clerical work.
Quality Assurance and Standards
- Standards are key to effective quality management.
- Standards may be international, national, organizational, or project standards.
- They provide a framework for quality assurance processes, ensuring compliance to standards.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Description
Test your knowledge on monitoring development processes to ensure standards compliance, reporting to project management, and avoiding inappropriate practices. This quiz is based on information from Ian Sommerville's 'Software Engineering' book, 7th edition, Chapter 27 Slide 13.