63724 Testing and quality

63724 Testing and quality

  • Study programme and level: Interdisciplinary University Study Programme in Administrative Information Science - 1st Cycle
  • 6 ECTS
  • Course type: Elective
  • Lectures: 45
  • Tutorial: 30
  • Individual work: 105
  • Lecturer: Igor Rožanc, PhD

 

1. Objectives and competences

The objective of the course is the students to become acquainted with different software testing approaches, and models and standards in the field of software quality. The emphasis is on the acquisition of knowledge for practical use of testing tools, and the use of efficient approaches for software quality assurance.

General competences:

  • ability of critical thinking,
  • developing skills in critical, analytical and synthetic thinking,
  • the ability to define, understand and solve creative professional challenges,
  • the ability of professional communication in the native language as well as a foreign language,
  • the ability to apply acquired knowledge in independent work for solving technical and scientific; the ability to upgrade acquired knowledge.

Subject-specific competences:

  • knowledge of basic terminology in the field of software testing,
  • use of model-driven test design,
  • use of different criteria for effective testing: using graph, program logic, input space partition and syntax coverage,
  • knowledge of specific technologies testing specifics,
  • use of basic testing tools,
  • knowledge of basic terminology in the field of software quality,
  • knowledge of main models and standards for software quality assurance (ISO, CMMI),
  • use of  software quality assurance approach for individual use,
  • knowledge of basic terminology in the field of software metrics.

2. Content

Software testing

  • Introduction to software testing: Software defects and failures, testing principles, test planning, system testing, automated testing, testing documentation
  • Model-Driven Test Design
  • Testing using graph coverage criteria
  • Testing using logic coverage criteria
  • Input space partition coverage testing
  • Testing using syntax coverage criteria
  • Testing coverage summary
  • Testing of specific technologies
  • Testing tools

Software quality

  • Introduction to software quality
  • Models and standards: quality models, ISO standards and models, Capability Maturity Models (CMMI)
  • Team software process (TSP)
  • Personal software process (PSP)
  • Software metrics

3. Readings

  • P.Ammann, J.Offutt: Introduction to Software Testing, Cambridge University Press, 2008.
  • S.H.Kan: Metrics and Models in Software Quality Engineering, 2nd Edition, Addison Wesley, 2002.
  • N. Fenton, S. L. Pfleeger: Software Metrics, A Rigourous and Practical Approach, PWS Publishing Company, 1997.

Additional litterature is available in the form of scientific and professional papers.

4. Intended learning outcomes

Knowledge and understanding:

  • Understanding and knowledge of the properties of different types of software testing; knowledge of model-driven testing design and different testing coverage criteria; practical understanding of the meaning of disciplined process and usage of standards/models for software development quality assurance; knowledge the basic terminology in the field of software metrics.

Application:

  • Practical knowledge and approaches in software testing, practical knowledge of software metrics and properties of software quality assurance process.

Reflection:

  • Software testing presents the important part of software development process, despite the fact that its importance is often neglected. Similarly, this is also true for quality assurance. Having the theoretical and practical knowledge about the approaches and possibilities increases the acceptance rate of described methods, thus increases the quality of software.

Transferable skills – are not bound only to this course:

  • Practical knowledge in the field of software testing, practical knowledge of the quality assurance approaches, particularly metrics and models.
  •  A self-control and ability to manage limited time when preparing, planning and implementing plans and processes. Team work, writing of reports, public presentations of the results.
  • Coherent mastering of basic knowledge, gained through mandatory courses, and the ability to combine the knowledge from different fields and apply it in practice. 

5. Learning and teaching methods

Classic lectures that include the presentation of best practices. During exercises continuous study is enhanced by several home assignments and a few seminars. The latter demand the use of testing approaches and model for software quality assurance. For each seminar the students hand in report on testing results as well as PSP reports. Students get familiar with several testing tools.

6. Assessment

Type: oral (optional) and written examination, home assignments, seminars, reports.

  • Continuing: home assignments and seminars. (50 %)
  • Final: written and oral exam. (50 %)

Grading: 6-10 pass, 1-5 fail.