Course details

Software Engineering

PPS Acad. year 2004/2005 Summer semester 5 credits

Current academic year

Course is not open in this year
Concept of "software engineering". Software process models. Requirements specification. Fundamentals of computer-based system analysis and software requirements analysis. Fundamental concepts of object orientation. OO analysis: UML modelling language, survey of OO methods. Tools and modelling techniques of structured analysis. Methods of structured analysis. Software design. Software quality assurance. Software maintenance. Introduction to software project management. A project oriented to requirements analysis by means of a CASE system.


Language of instruction

Czech, English


Examination (written)

Time span

39 hrs lectures, 8 hrs exercises, 18 hrs projects

Assessment points

50 exam, 15 half-term test, 35 projects




Švec Jaroslav, Ing. (DIFS FIT BUT)

Subject specific learning outcomes and competences

Students know fundamentals of essential stages in software system development at a level, which is further evolved in specialized subjects. They are able to develop suitable models during analysis and design, mainly in the UML language.

Learning objectives

To give the students knowledge of essential stages in software system development and to give more detailed knowledge of requirements analysis with an emphasise to modelling techniques of object-oriented (OO) and structured analysis, and to learn using these techniques.

Study literature

  • Zendulka, J.: Software Engineering. Lecture notes in an electronic form.
  • UML documentation.

Fundamental literature

  • Pressman R.: Software Engineering. A Practitioner's Approach. Fourth Edition.  McGraw-Hill Book Company, 1996, 852 p.
  • Sommerville A.: Software Engineering. Fifth Edition. Addison-Wesley, 1996, 742 p.
  • Fowler M., Scott K.: UML Destilled. Second Edition. A Brief User Guide to the Standard Object Modeling Language. Addison Wesley Longman Inc., 1999, 185 p.
  • Rational Rose on-line help and documentation.

Syllabus of lectures

  • Introduction, concepts. Software process models.
  • Object-oriented (OO) and structured software development. Computer-based system engineering. Introduction to project management. Fundamentals of requirements analysis. The role of modelling in analysis and design.
  • Fundamental concepts of the OO paradigm.
  • Classification of OO methods and models. The UML modelling language - introduction.
  • The UML - basic behavioural modelling (use case model). Object structure modelling (class and object diagram).
  • The UML - object structure modelling (extension).
  • The UML - behavioural modelling (interaction diagrams, activity diagram, state diagram).
  • Survey of OO methods with emphasis on the analysis stage.
  • Modelling techniques of structured analysis - functional and data modelling, behavioural modelling, data dictionary.
  • Methods of structured analysis.
  • Introduction to software design - concepts, effective modular design. Introduction to software architectures - layers and sections, client/server, multi-tier architectures, components. Architectural modelling in UML.
  • Software quality assurance - formal review, verification, validation. Testing methods and strategies.
  • Introduction to software maintenance. Introduction to project planning - software metrics, estimating.

Syllabus of computer exercises

  • Selection of a project topic. Discussion of the topic.
  • Introduction to the Rational Rose.
  • UML use case model development in Rational Rose.
  • UML class diagram development in Rational Rose.
  • UML interaction diagrams development in Rational Rose.
  • UML state diagram development in Rational Rose.

Syllabus - others, projects and individual work of students

  • Informal specification for a selected application.
  • Documentation in UML developed in Rational Rose as a result of requirements analysis for the application.
  • Design of tests.

Progress assessment

A mid-term test, submitting project results and defence of the second project result (models in UML) in due dates.

Controlled instruction

A mid-term test, realization of projects.
Back to top