FI:PA103 OOAD Methods - Course Information
PA103 Object-oriented Methods for Design of Information SystemsFaculty of Informatics
- Extent and Intensity
- 2/0. 2 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
- RNDr. Radek Ošlejšek, Ph.D. (lecturer)
- Guaranteed by
- doc. RNDr. Eva Hladká, Ph.D.
Department of Computer Systems and Communications - Faculty of Informatics
Supplier department: Department of Computer Systems and Communications - Faculty of Informatics
- Tue 19. 2. to Tue 14. 5. Tue 8:00–9:50 D3
- Knowledge of object-oriented programming principles, core knowledge of software engineering, knowledge of UML models.
- Course Enrolment Limitations
- The course is also offered to the students of the fields other than those the course is directly associated with.
- Fields of study the course is directly associated with
- there are 23 fields of study the course is directly associated with, display
- Course objectives
- Understand object-oriented fundamentals that are used across all the levels of OO decomposition;
Ability to select and apply suitable formal models (UML, OCL) in various levels of decomposition;
Ability to select and apply suitable patters during a system decomposition;
Understand the term "software quality" in the context of code, object-oriented models, and software architectures; Application of tuning tactics for quality improvement;
- Learning outcomes
- At the end of the course, a student should be able to:
- explain fundamentals of object-oriented design and development;
- express semantic constraints on object-oriented models by means of Object Constraint Language;
- identify "bed smells" in code and apply suitable refactoring tactics;
- explain properties of analysis, design, and architectural patterns;
- apply analysis, design, and architectural patterns to system decomposition;
- describe properties and processes related to the development of component systems;
- explain qualitative aspects of software and describe their tuning tactics;
- Object-oriented paradigm, object properties, principles of abstraction and decomposition. Principles of OO analysis and design.
- Models of classes, packages and components. Interface as contract. IDL, SWDL.
- Refinement of UML semantics by means of stereotypes and OCL.
- Software re-use, software patterns at various stages of software life cycle (analysis, design, architecture, coding).
- Design patterns in detail.
- Analysis patterns, Java patterns, anti-patterns.
- Code refactoring („refactoring to patterns“).
- Software architectures, architectural patterns.
- Component systems. Qualitative attributes and their evaluation.
- Object-oriented methods for software development, application of UML models in RUP.
- Special methods and architectures: MDD, FDD, SOA, ...
- Model-Driven Architecture (MDA), employing OCL in MDA.
- ARLOW, Jim and Ila NEUSTADT. UML 2.0 and the unified process : practical object-oriented analysis and design. 2nd ed. Boston: Addison-Wesley, 2005. xxiii, 592. ISBN 9780321321275. info
- Design patterns :elements of reusable object-oriented software. Edited by Erich Gamma. Reading, Mass.: Addison-Wesley, 1995. xv, 395 p. ISBN 0-201-63361-2. info
- LARMAN, Craig. Applying UML and patterns :an introduction to object-oriented analysis and design. Upper Saddle River: Prentice Hall PTR, 1998. xix, 507 s. ISBN 0-13-748880-7. info
- FOWLER, Martin. Analysis patterns reusable object models. Menlo Park: Addison-Wesley, 1997. xxi, 357 s. ISBN 0-201-89542-0. info
- KERIEVSKY, Joshua. Refactoring to patterns. Boston: Addison-Wesley, 2005. xxvi, 367. ISBN 0321213351. info
- Teaching methods
- Theory in the form of lecturer's presentations, practical examples as the part of theoretical presentations, class discussion, reading.
- Assessment methods
- Written final exam (multiple choice test + practical UML modeling). Final assessment can be improved by solving small practical examples presented during lectures.
- Language of instruction
- Follow-Up Courses
- Further Comments
- Study Materials
The course is taught annually.
- Teacher's information