27. 10. 2020  23:00 Sabína, pamätný deň - Deň černovskej tragédie
Akademický informačný systém

Sylabus predmetu PSI_B - Principles of Software Engineering (FIIT - SS 2019/2020)

     Informačný list          ECTS          Sylabus          

     Slovenčina          Angličtina          

Slovak University of Technology in Bratislava
Faculty: Faculty of Informatics and Information Technologies
Course unit code:
Course unit title:
Principles of Software Engineering
Mode of delivery, planned learning activities and teaching methods:
2 hours weekly (on-site method)
laboratory/construction practice
2 hours weekly (on-site method)
project/semestral paper1 hour weekly (on-site method)

Credits allocated:
Recommended semester/trimester:
Informatics - bachelor (compulsory), 4. semester
Informatics (conversion programme with a foundation year) - bachelor (compulsory), 6. semester
Information Security - bachelor (compulsory), 4. semester
Information Security (conversion programme with a foundation year) - bachelor (compulsory), 6. semester
Intelligent Software Systems - master (compulsory), 2. semester
Internet Technologies - bachelor (compulsory), 4. semester
Internet Technologies (conversion programme with a foundation year) - bachelor (compulsory), 6. semester
Level of study:
Prerequisites for registration:
Assesment methods:
"pass" mark for labs which requires:
- active participation in labs
- elaboration of projects documentation with defined structure (the last date is lab in last week of the semester)
- functional and data model in a CASE tool
Learning outcomes of the course unit:
The purpose of this course is to introduce the student basic principles of software engineering. Emphasis is on structured analysis and design methods. Practical work is centered around these methods. CASE tool is used. Other stages of software development such as implementation, testing, maintenance are also discussed together with basic models of software system development life cycle. This course has been designed so that, upon its completion, the serious student will have received the initial level of preparation necessary to be a successful and effective software engineer.
Course contents:
1. Background: a brief history of software engineering; software system and software engineering definition; properties of software systems; problems with software development
2. Software system life cycle: description of stages (inputs, outputs)
3. Techniques for software analysis and design: use case diagrams, data flow diagrams, entity relationship diagrams, algorithm description techniques (structured text, decision tables, decision trees), entity life histories, state-transition diagrams, interactions diagrams
4. The qualities of a good design: coupling, cohesion, design guidelines
Design principles:
5. Software architecture
6. Approaches to analysis and design:
7. Implementation: programming languages; environments; strategies of implementation (top-down, bottom-up); modular programming, structured programming; programming standards; documentation
8. Testing: static testing, dynamic testing; techniques of testing (black box, white box, program reviews, program walkthrough, program inspections); strategies of testing (bottom-up, top-down, big-bang, sandwich testing, comparison testing); acceptance testing; alfa-beta testing
9. Maintenance: types of maintenance (corrective, adaptive, perfective, preventive); maintenance problems; cost of maintenance; software configuration management; change control
10. Models of software development: waterfall model, rapid prototyping model, evolution model, exploratory model, transformation model, reuse model

Recommended or required reading:
BIELIKOVÁ, M. Softvérové inžinierstvo: Princípy a manažment. Bratislava : STU v Bratislave, 2000. 220 p. ISBN 80-227-1322-8.
SOMMERVILLE, I. Software engineering. Harlow : Pearson Education Limited, 2004. 759 p. ISBN 0-321-21026-3.
PRESSMAN, R S. Software engineering: a practitioner´s approach. New York : McGraw - Hill Book Company, 2005. 880 p. ISBN 0-07-285318-2.
BROOKS, F P. The mythical man-moth: Essays on software engineering. Reading : Addison-Wesley, 1995. 322 p. ISBN 0-201-83595-9.
PALETA, P. Co programátory ve škole neučí: aneb Softwarové inženýrství v reální praxi. Brno : Computer Press, 2003. 337 p. ISBN 80-251-0073-1.
PAGE-JONES, M. Základy objektově orientovaného návrhu v UML. Praha : Grada Publishing, 2001. 367 p. ISBN 80-247-0210-X.

Language of instruction:
slovak and english
Courses evaluation:
Assessed students in total: 2418

5,5 %
11,3 %
25,3 %25,7 %
18,0 %
14,2 %
Name of lecturer(s):
Ing. Ján Čegiň (instructor) - slovak
Ing. Július Hlaváč, PhD. (instructor) - slovak
Ing. Fedor Lehocki, PhD. (instructor) - slovak
Ing. Branislav Pecher (instructor) - slovak
Ing. Mgr. Márius Rak (instructor) - slovak
doc. Ing. Jakub Šimko, PhD. (lecturer, person responsible for course) - slovak
Last modification:
16. 7. 2020
Supervisor: doc. Ing. Jakub Šimko, PhD. and programme supervisor

Last modification made by RNDr. Marta Gnipová on 07/16/2020.

Typ výstupu: