Skip to main content
Skip header

Introduction to Software Engineering

* Exchange students do not have to consider this information when selecting suitable courses for an exchange stay.

Course Unit Code460-2009/04
Number of ECTS Credits Allocated4 ECTS credits
Type of Course Unit *Choice-compulsory type B
Level of Course Unit *First Cycle
Year of Study *Second Year
Semester when the Course Unit is deliveredSummer Semester
Mode of DeliveryFace-to-face
Language of InstructionCzech
Prerequisites and Co-Requisites Course succeeds to compulsory courses of previous semester
Name of Lecturer(s)Personal IDName
STO03Ing. Svatopluk Štolfa, Ph.D.
Summary
The subject represents the introduction to the software development. It starts with techniques used in the process of software analysis and design based on object-oriented approach and the language UML.
Learning Outcomes of the Course Unit
The goal of the course is to show students what the development of large systems is about.
Students will learn how to apply and use approaches, languages and tools, will learn how to use UML language, maintain the tractability between each development steps etc. Students then will be able to use presented approaches for the development of software product.
Course Contents
Lectures:
1. Software Processes - Software lifecycle, Waterfall, V-Model, UP
2. Software Processes – Agile, Software quality
3. Tools and Environments - Configuration management
4. Tools and Environments - Version control systems, Tool selection and use
5. Requirements Engineering - Requirements Elicitation, Functional vs. Non-functional requirements
6. Requirements Engineering - Use cases and User Stories
7. Software Design - Design principles
8. Software Design - Software architectures
9. Software Design - Design patterns
10. Software Construction – Coding standards, Implementing reliability, efficiency, robustness,
11. Software Construction – Integration strategies: top-down, bottom-up, sandwich
12. Software Verification and Validation - Verification vs. Validation, Testing types and levels: unit, integration, system, etc.
13. Software Verification and Validation - Test plan, Test Methods, Verification and Validation of non-code artifacts, Regression testing
14. Summary and consolidation
The course meets twice a week for two hours (45 min hour) each day. The course is a mixture of lecture (about 1.5 hours a week) and group project work. The course is structured around the project development where the students are constantly producing artifacts related to software development life cycle, learning and using visual modeling notation UML (Unified Modeling Language) and implementing final system.
Recommended or Required Reading
Required Reading:
Pfleeger, Shari Lawrence, and Joanne M. Atlee. 2009. Software Engineering: Theory and Practice: Prentice Hall, ISBN 0136061699.
Pressman, Roger S. 2010. Software Engineering : A Practitioner's Approach. 7th ed. New York: McGraw-Hill Higher Education, ISBN 9780073375977.
Sommerville, Ian. 2010. Software Engineering. 9th ed, International Computer Science Series. Harlow: Addison-Wesley, ISBN 978-0137035151.
Pfleeger, Shari Lawrence, and Joanne M. Atlee. 2009. Software Engineering: Theory and Practice: Prentice Hall, ISBN 0136061699.
Pressman, Roger S. 2010. Software Engineering : A Practitioner's Approach. 7th ed. New York: McGraw-Hill Higher Education, ISBN 9780073375977.
Sommerville, Ian. 2010. Software Engineering. 9th ed, International Computer Science Series. Harlow: Addison-Wesley, ISBN 978-0137035151.

Recommended Reading:
Watts Humphrey’s Introduction to the Team Software Process
Armando Fox and David Patterson ,Engineering Software as a Service: An Agile Approach Using Cloud Computing, Strawberry Canyon Publisher, 2013
Gary McGraw, Real Time UML, Third Edition.
Bruce Powel Douglass, Advances in the UML for Real-Time Systems, Addison-Wesley, 2004.
Watts Humphrey’s Introduction to the Team Software Process
Armando Fox and David Patterson ,Engineering Software as a Service: An Agile Approach Using Cloud Computing, Strawberry Canyon Publisher, 2013
Gary McGraw, Real Time UML, Third Edition.
Bruce Powel Douglass, Advances in the UML for Real-Time Systems, Addison-Wesley, 2004.
Planned learning activities and teaching methods
Lectures, Tutorials, Project work
Assesment methods and criteria
Task TitleTask TypeMaximum Number of Points
(Act. for Subtasks)
Minimum Number of Points for Task Passing
Credit and ExaminationCredit and Examination100 (100)51
        CreditCredit40 20
        ExaminationExamination60 (60)30
                Písemná zkouškaWritten examination60 30
                Ústní zkouškaOral examination