Search programme

​Use the search function to search amongst programmes at Chalmers. The study programme and the study programme syllabus relating to your studies are generally from the academic year you began your studies.

Syllabus for

Academic year
DAT321 - Quality assurance and testing
Kvalitetssäkring och testning
 
Syllabus adopted 2021-02-17 by Head of Programme (or corresponding)
Owner: MPSOF
7,5 Credits
Grading: TH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail
Education cycle: Second-cycle
Main field of study: Computer Science and Engineering, Software Engineering
Department: 37 - COMPUTER SCIENCE AND ENGINEERING


Teaching language: English
Application code: 24114
Open for exchange students: Yes
Block schedule: D
Maximum participants: 80

Module   Credit distribution   Examination dates
Sp1 Sp2 Sp3 Sp4 Summer course No Sp
0116 Written and oral assignments 3,0 c Grading: TH   3,0 c    
0216 Examination 4,5 c Grading: TH   4,5 c   14 Jan 2022 am L,  13 Apr 2022 pm L,  18 Aug 2022 pm L

In programs

MPSOF SOFTWARE ENGINEERING AND TECHNOLOGY, MSC PROGR, Year 1 (compulsory)

Examiner:

Francisco Gomes

  Go to Course Homepage


Eligibility

General entry requirements for Master's level (second cycle)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Specific entry requirements

English 6 (or by other approved means with the equivalent proficiency level)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Course specific prerequisites

To be eligible for this course the student should have a bachelor degree in Software Engineering, Computer Science or equivalent. In addition, the student should have completed courses in:
  • programming (e.g. DAT042, DAT050, DAT055, DAT170, TDA545, TDA550 or equivalent) and
  • practical software development or software engineering project (e.g. DAT256 Software Engineering Project).

Aim

Software is prevalent in our society and mistakes or issues in software systems can lead to severe economic, environmental or even safety consequences. Therefore, identifying those issues and ensure quality in our software products is an imperative part of software engineering. The purpose of this course is to teach the fundamental and practical aspects of quality management and software testing in software development projects.

Learning outcomes (after completion of the course the student should be able to)

Knowledge and understanding
  • Explain fundamental concepts in software quality (e.g., internal / external quality, as well as quality in use) and quality assurance models.
  • Describe how sustainability can be seen as a quality attribute in software products.
  • Describe and explain definitions and activities related to software testing, such as faults, failures levels of testing and test automation
  • Explain current research trends within software quality and testing (e.g., test flakiness, search-based software testing) 
  • Explain the distinction between software verification and software validation.
  • Name and describe different testing techniques and approaches, such as mutation testing, automated test prioritisation, test case generation, exploratory testing, etc.
  • Explain the concept of continuous integration and relate them to software development processes
Skills and abilities
  • Define metrics required to monitor and analyse different quality attributes of software products
  • Measure quality of software products based on the data from development environments and tools.
  • Explain and implement test activities in connection to different levels of testing (e.g., system, integration or unit level tests)
  • Define and implement a test plan or a test scope based on quality goals.
  • Design appropriate and meaningful tests.
  • Apply automated testing technologies on realistic examples using relevant tools (e.g., automated regression testing on continuous integration pipelines)
  • Use automated measurement systems for measuring quality of software products based on the data from the modern development tools
  • Use modern tools for visualisation of trends in software quality
    Judgement and approach
    • Assess the importance of software quality in relation to time and costs in software development projects.
    • Assess the quality of sets of tests using software artefacts (e.g., execution logs, test scripts, history of test executions).
    • Relate software quality to societal aspects of software development.

    Content

    The course addresses the following content:
    • Definitions of software quality assurance, quality attributes, software metrics and models in quality management, internal quality and external quality;
    • Definitions and differences between software verification and validation approaches;
    • Definitions and practical application of software testing techniques and approaches related to test planning, design, execution and analysis.
    The course prepares the students to work as quality or test engineers (or managers) in software development organizations.

    Organisation

    The course consists of lectures where theory is explained and practical assignments that focus on the use of testing tools and approaches to enable cost-effective testing.

    Literature

    Course literature will be announced at the latest 8 weeks prior to the start of the course.

    Examination including compulsory elements

    The course is examined by an written report and an individual written examination carried out in an examination hall.
    The report is graded individually.

    The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers on educational support due to disability.


    Page manager Published: Mon 28 Nov 2016.