Title:

Software Engineering

Code:PPS
Ac.Year:ukončen 2003/2004
Term:Summer
Study plans:
ProgramBranchYearDuty
EI-BC-3VTB1st Stage/2nd YearCompulsory
EI-MSC-5VTI1st Stage/2nd YearCompulsory
Language:Czech, English
Credits:5
Completion:examination (written)
Type of
instruction:
Hour/semLecturesSem. ExercisesLab. exercisesComp. exercisesOther
Hours:3980018
 ExaminationTestsExercisesLaboratoriesOther
Points:50150035
Guarantee:Zendulka Jaroslav, doc. Ing., CSc., DIFS
Lecturer:Zendulka Jaroslav, doc. Ing., CSc., DIFS
Instructor:Švec Jaroslav, Ing., DIFS
Faculty:Faculty of Information Technology BUT
Department:Department of Information Systems FIT BUT
Follow-ups:
Data Modelling and Database Design (DSI), FIT
 
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.
Description:
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.
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.
Syllabus of lectures:
  1. Introduction, concepts. Software process models.
  2. 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.
  3. Fundamental concepts of the OO paradigm.
  4. Classification of OO methods and models. The UML modelling language - introduction.
  5. The UML - basic behavioural modelling (use case model). Object structure modelling (class and object diagram).
  6. The UML - object structure modelling (extension).
  7. The UML - behavioural modelling (interaction diagrams, activity diagram, state diagram).
  8. Survey of OO methods with emphasis on the analysis stage.
  9. Modelling techniques of structured analysis - functional and data modelling, behavioural modelling, data dictionary.
  10. Methods of structured analysis.
  11. 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.
  12. Software quality assurance - formal review, verification, validation. Testing methods and strategies.
  13. Introduction to software maintenance. Introduction to project planning - software metrics, estimating.
Syllabus of computer exercises:
  1. Selection of a project topic. Discussion of the topic.
  2. Introduction to the Rational Rose.
  3. UML use case model development in Rational Rose.
  4. UML class diagram development in Rational Rose.
  5. UML interaction diagrams development in Rational Rose.
  6. UML state diagram development in Rational Rose.
Syllabus - others, projects and individual work of students:
  1. Informal specification for a selected application.
  2. Documentation in UML developed in Rational Rose as a result of requirements analysis for the application.
  3. Design of tests.
Fundamental literature:
  1. Pressman R.: Software Engineering. A Practitioner's Approach. Fourth Edition. McGraw-Hill Book Company, 1996, 852 p.
  2. Sommerville A.: Software Engineering. Fifth Edition. Addison-Wesley, 1996, 742 p.
  3. 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.
  4. Rational Rose on-line help and documentation.
Study literature:
  1. Zendulka, J.: Software Engineering. Lecture notes in an electronic form.
  2. UML documentation.
Controlled instruction:
A mid-term test, realization of projects.
Progress assessment:
A mid-term test, submitting project results and defence of the second project result (models in UML) in due dates.