PA103 Object-oriented Methods for Design of Information Systems

Fakulta informatiky
podzim 2019
Rozsah
2/0. 2 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Radek Ošlejšek, Ph.D. (přednášející)
Garance
doc. RNDr. Radek Ošlejšek, Ph.D.
Katedra počítačových systémů a komunikací – Fakulta informatiky
Dodavatelské pracoviště: Katedra počítačových systémů a komunikací – Fakulta informatiky
Rozvrh
Po 8:00–9:50 D3
Předpoklady
Knowledge of object-oriented programming principles, core knowledge of software engineering, knowledge of UML models.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 52 mateřských oborů, zobrazit
Cíle předmětu
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 patterns 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;
Výstupy z učení
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 "bad 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;
Osnova
  • 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.
Literatura
  • ARLOW, Jim a 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
Výukové metody
Theory in the form of lecturer's presentations, practical examples as the part of theoretical presentations, class discussion, reading.
Metody hodnocení
Written final exam (multiple choice test + practical UML modeling). Final assessment can be improved by solving small practical examples presented during lectures.
Vyučovací jazyk
Angličtina
Navazující předměty
Informace učitele
http://www.fi.muni.cz/~oslejsek/PA103
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Nachází se v prerekvizitách jiných předmětů
Předmět je zařazen také v obdobích jaro 2003, jaro 2004, jaro 2005, jaro 2006, jaro 2007, jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015, jaro 2016, jaro 2017, jaro 2018, jaro 2019, podzim 2020, podzim 2021, podzim 2022, podzim 2023.