DEVELOPMENT AND QUALITY OF SYSTEM SOFTWARE

Objectives and outcomes

Students gain a broader and deeper insight into the problems of developing complex software systems
while ensuring a high level of quality of the designed and implemented software systems. Moreover,
students understand and master advanced methods and techniques of quality assurance and
control, testing and maintenance of system software. The research component of the course is aimed at
improving existing and shaping new methods for the development of high-quality system software. The
course is based on contemporary literature and scientific papers, as well as on practical work. Students
acquire theoretical, methodological and practical knowledge of the development of high-quality complex
software systems and are ready for further training and independent research work.

Lectures

Ideas and techniques for designing, developing and modifying large software systems. Software project
management with emphasis on the process of software quality assurance – quality models, quality
measurement, effort and cost assessment. Conventional methods of software engineering: analysis,
design, software metrics. Object-oriented software engineering. Reengineering. Development based on
software components. Different software development methodologies with emphasis on agile
methodologies, software quality measurement and prediction (CMMI and TMM improvement models).
System software testing – strategies, types of testing techniques (classes). Levels of testing according to
the stages of software development (in development and delivery). Verification and validation as testing
techniques. A set of software testing techniques. Tools for developing quality system software. Real-time
system testing and security critical system testing (IEEE 1228-94). Selection and combination of testing
techniques.

Research work

Analysis of system software development and testing in different domains. Operating systems, program
translators, network distribution software for application in medicine, industry, military, communications,
aviation, business, science. Operating specifications and user requirements analysis. Specifics of
implementation design. Reliability and availability. Critical and secure systems software. System software
for dedicated systems.