Faculdade de Ciências e Tecnologia

Software Quality

Code

11170

Academic unit

Faculdade de Ciências e Tecnologia

Department

Departamento de Informática

Credits

6.0

Teacher in charge

Ana Maria Dinis Moreira, Miguel Carlos Pacheco Afonso Goulão

Weekly hours

4

Total hours

56

Teaching language

Português

Objectives

Knowledge:

-Components of a quality management system (QMS)

-Techniques to support quality assurance and their automation

-Process assessment and improvement methodologies

-Product quality models and assessment of their characteristics

-Characteristics of tools to support quality assurance

Know-how:

-Reify a QMS for software development projects

-Select tools to support quality assurance

-Conduct a maturity assessment of a concrete process

-Construct a quality model for a specific product

-Select applicable standards to software development projects

Soft Skills:

-Inter-group coordination

Prerequisites

Software Engineering, Software Development Methods

Subject matter

  1. Software Quality: definition and objectives
  2. Quality planning, assurance, and control
  3. Software Quality Models
  4. Quality management, and processes certification
  5. Software maturity and improvement models (e.g. PSP, TSP, CMMI)
  6. Qualitative and Quantitative software development process evaluation
  7. Qualitative and Quantitative software (as a product) evaluation
  8. Quality management, and product certification
  9. Verification and validation concepts
  10. Inspections, reviews, and audits
  11. Software testing
  12. Software Reuse and its impact on quality
  13. Quality in software evolution
  14. Software reliability

Bibliography

  1. Linda Westfall, “The Certified Software Quality Engineer Handbook”, Quality Press, 2009
  2. Stephen K. Han, “Metrics and Models in Software Quality Engineering”, Addison-Wesley Professional, 2nd Edition, 2002.

Teaching method

The course subjects are presented in the lectures, where the theoretical concepts are illustrated by concrete examples taken from large scale software development organizations. The lab sessions focus in the usage of concrete techniques for promoting and evaluating software process and product quality. These techniques are previously introduced and contextualized in the lectures. 

Evaluation method

The evaluation process includes two projects, each worth 20%, as well as two tests, each worth 30%. The projects are carried out in groups and involve the application in practice of some of the studied software quality evaluation and promotion techniques. To be approved, students must obtain an average grade greater or equal to 9,5 points in the projects and an average grade greater or equal to 9,5 points in the tests.

Courses