Faculty of Information Technology, BUT

Course details

Introduction to Software Engineering

IUS Acad. year 2019/2020 Winter semester 5 credits

Software engineering and software crisis, history and goals of software engineering, characteristics of software products. Life cycle and stages of software development, introduction to key methodologies. Requirement analysis and specification, use case diagrams. Basic principles and modelling techniques of structured analysis and design (DFD, ERD). Basic notions of object-orientation (object, class, abstraction, encapsulation, inheritance, polymorphism). Modelling techniques of object-oriented analysis and design (class diagram, object diagram, design patterns). UML within software development (collaboration diagram, sequence diagram, activity diagram, statechart diagram, OCL). Implementation, verification and validation (black box and white box testing). Agile software development. Introduction to software maintenance. Management of software projects, quality assurance, intellectual property, software engineering code of ethics and professional practice.

Guarantor

Deputy Guarantor

Kočí Radek, Ing., Ph.D. (DITS FIT BUT)

Language of instruction

Czech

Completion

Credit+Examination (written)

Time span

39 hrs lectures, 6 hrs exercises, 7 hrs projects

Assessment points

60 exam, 15 exercises, 25 projects

Department

Lecturer

Instructor

Subject specific learning outcomes and competences

Student gets an overview in the area of complex software system development. Students acquaint especially with software development stages and with models of software life-time. Student makes sense of the methodics basis of the requirements analysis and the software system design. He/she learns to use chosen UML models. Student acquaints with basics of computer publishing.

Generic learning outcomes and competences

Students learn to provide analysis and design of the software systems. Students learn to create the project documentation and the program documentation. Students will be able to read and create basic UML models.

Learning objectives

To provide an overview and basics of the complex software system building. To acquaint with the process of software systems creation. This process is analyzed as an integration of system development, software quality assurance, and software project management. To acquaint with the development stages of the software lifetime. The consideration is focused on all development stages, mainly the requirements analysis, requirements specification, and methods of software design. To learn to use basic models of UML and to get familiarity with methodics of UML-based modelling.

Why is the course taught

Software development is a complex process that often fails. Thus, the main message of this course is to warn students about problems that they as software engineers will face when creating software. Students will learn basic analysis and design techniques for software development and language UML. A special attention is given to identification of data and their relationship that is an essential task of development of any information system.

Prerequisite kwnowledge and skills

This course takes place in a winter term of the first year of the bachelor's study programme. Thus, we expect that students have the high school level knowledge of using computers.

Study literature

  • Kočí, R., Křena, B.: Úvod do softwarového inženýrství. Teaching texts, Brno University of Technology, 2010. (In Czech)
  • System Modelling Based on Object-Orientation - Tutorial of UML 2.0 Language. Brno University of Technology, 2004.
  • Arlow, J., Neustadt, I.: UML and the Unified Process: Practical Object-Oriented Analysis and Design, Addison-Wesley Professional; 1st edition, 2001. ISBN 0201770601.
  • Křena, B., Kočí, R.: Zadání a vzorová řešení ER diagramů ze zkoušek. Assignments collection. VUT v Brně, 2016. (In Czech)

Fundamental literature

  • Beck, K.: Extreme Programming Explained: Embrace Change, Addison-Wesley; 1st edition, 1999. ISBN: 0201616416.
  • Page-Jones, M.: Fundamentals of Object-Oriented Design in UML, Addison-Wesley; 1st edition, 1999. ISBN: 020169946X.
  • Paleta, P.: Co programátory ve škole neučí aneb Softwarové inženýrství v reálné praxi. Computer press, 2004. ISBN 80-251-0073-1.(in Czech)
  • Pezze, M., Young, M. Software Testing and Analysis: Process, Principles, and Techniques. John Wiley & Sons, 2007. ISBN 978-0-471-45593-6.
  • Richta, K., Sochor, J.: Softwarové inženýrství I. Vydavatelství ČVUT, Praha 1996 (dotisk 1998). ISBN: 80-01-01428-2. (in Czech)

Syllabus of lectures

  1. Software engineering history, basic notions, the overview of development techniques.
  2. Software lifetime, models of software lifetime.
  3. Requirement analysis, methods of requirements specification, modelling techniques (Use Case Diagram).
  4. Structured analysis and design, methods, modelling techniques. Data-Flow Diagram (DFD) and the Entity-Relationship Diagram (ERD).
  5. Object-oriented analysis and design, methods, modelling techniques. Unified Modelling Language (UML), Class Diagram and Object Diagram.
  6. Chosen modelling means of UML (Activity, Sequence, Communication, and Statechart Diagrams).
  7. Complex modelling with UML.
  8. Design patterns.
  9. Introduction to verification, validation, and testing.
  10. Agile methods of software development, basic principles of extreme programming and prototyping.
  11. Basic principles of software operation and maintenance.
  12. Introduction to software project management.
  13. Software quality, intellectual property rights, Software Engineering Code of Ethics.

Syllabus of numerical exercises

  1. Requirements in UML - Use case diagram, Activity diagram and State diagram (4. and 5. weeks, 5 points)
  2. Data modelling - ER diagram (6. and 7. weeks, 5 points)
  3. Analysis and Design in UML - Class diagram, Object diagram, Sequence diagram and Communication diagram (8. and 9. weeks, 5 points)

Syllabus - others, projects and individual work of students

  1. Model of an information system (25 points)

Progress assessment

Students can obtain up to 15 points from three two hours long exercises (5 points in each), 25 points from the project and up to 60 points from the final exam.

Controlled instruction

Within this course, attendance on the lectures is not monitored. Monday lecture is given for lecture group 1BIA, Friday lecture for group 1BIB. Students from lecture groups 2BIA and 2BIB can choose which lecture they attend. Students from 1BIA and 1BIB lecture groups can attend the lecture given for the other group without any permission.

The knowledge of students is evaluated within exercises, by the project and its defence and by the final exam.

Points from the exercises can be obtained only for active participation (mistakes and wrong answers are fine while neither involving into the discussion and problem-solving can result in losing points).

When a student cannot attend the exercise and proves it correctly (s)he can either attend the exercise with a different group (please inform the teacher about that) or (s)he can ask his/her teacher for the alternative assignment that can compensate lost points from the exercise.

The minimal number of points which can be obtained from the final exam is 28. Otherwise, no points will be assigned to a student.

Exam prerequisites

For receiving the credit and thus for entering the exam, students have to get at least 18 points from the exercises and from the project. Plagiarism and not allowed cooperation will cause that involved students are not classified and disciplinary action may be initiated.

Schedule

DayTypeWeeksRoomStartEndLect.grpGroupsInfo
Monexerciselectures A112 08:0008:50rezerva
Monexerciselectures A112 09:0010:50 1BIA 1BIB 2BIA 2BIB xx
Monexerciselectures D0207 10:0011:50 1BIA 1BIB 2BIA 2BIB xx
Monlecturelectures D0206 D105 15:0017:50 1BIA 2BIA 2BIB xx
Monexerciselectures A112 18:0019:50 1BIA 1BIB 2BIA 2BIB xx
Tueexerciselectures A113 10:0011:50
Tueexerciselectures A112 18:0019:50 1BIA 1BIB 2BIA 2BIB xx
Wedexerciselectures A112 10:0011:50 1BIA 1BIB 2BIA 2BIB xx
Wedexerciselectures A112 12:0013:50 1BIA 1BIB 2BIA 2BIB xx
Wedexerciselectures A112 D0207 16:0017:50 1BIA 1BIB 2BIA 2BIB xx
Wedexerciselectures A113 D0207 18:0019:50 1BIA 1BIB 2BIA 2BIB xx
Thuexerciselectures A112 10:0011:50 1BIA 1BIB 2BIA 2BIB xx
Thuexerciselectures A112 12:0013:50 1BIA 1BIB 2BIA 2BIB xx
Thuexerciselectures A112 D0207 18:0019:50 1BIA 1BIB 2BIA 2BIB xx
Frilecturelectures E104 E105 E112 11:0013:50 1BIB 2BIA 2BIB xx
Friexerciselectures A112 15:0016:50 1BIA 1BIB 2BIA 2BIB xx

Course inclusion in study plans

  • Programme BIT, 1st year of study, Compulsory
  • Programme IT-BC-3, field BIT, 1st year of study, Compulsory
Back to top