Object Modeling

The course is not on the list Without time-table
Code Completion Credits Range Language
BIK-OMO Z,ZK 5 13KP+4KC Czech
Department of Software Engineering

Students will practically master conceptual modelling of business structures, they will learn fundamentals of OntoUML notation and methodology. Students will learn fundamentals of pure object-oriented paradigm, i.e. terms object, method, message, class, class instance, composition, inheritance, collections. Students will learn to transform a conceptual model to object-oriented implementation model and they will learn fundamentals of pure object-oriented implementation in Smalltalk and pure object database. Students will learn to formulate rules and queries upon the object database.


Abstract thinking and formalisation skills, algoritimization fundamentals

Syllabus of lectures:

1. Course introduction, introduction to conceptual modelling.

2. OntoUML basics: Classes, attributes, types, inheritance, associations

3. OntoUML: Sortals

4. OntoUML: Non-Sortals, modelling procedure

5. OntoUML: Part-Whole relations

6. OntoUML: Aspects, Relations

7. Introduction to Smalltalk

8. Smalltalk basics: VisualWorks, syntax, classes, methods

9. Smalltalk standard classes and idioms

10. Design patterns and best practice

11. OntoUML implementation 1.

12. OntoUML implementation 2.

13. Invited lecture from praxis

Syllabus of tutorials:

1. Credit requirements, semestral projects, exercising correct goals formulation

2. OntoUML exercises: Classes, attributes, types, inheritance, associations

3. OntoUML exercises: Sortals

4. OntoUML exercises: Non-Sortals, modelling procedure

5. OntoUML exercises: Part-Whole relations

6. OntoUML exercises: Aspects, Relations. Project assignment.

7. Smalltalk exercises: VisualWorks, syntax, classes, methods

8. Smalltalk exercises: basic constructs and library classes

9. Smalltalk exercises: collections, queries, Gemstone database + 1st project checkpoint

10. Exercises on implementation models and their realisation in Smalltalk

11. Projects consultations + 2nd project checkpoint

12. Projects consultations

13. Projects consultations + projects submissions, credits

Study Objective:

The aim of the course is to explain the fundamentals of the object-oriented paradigm in software development, with emphasis on modelling data objects. Even the best object-oriented programming language cannot ensure by itself that a design will meaningfully and efficiently exploit the object paradigm. Knowledge gained in this module forms the basis for correct application of the object-oriented paradigm in the follow-up modules aimed at software engineering and databases.

The goal of the subject is also to train skills of abstraction and conceptualisation, skills important in software engineering, and also a skill to maintain consistency throughout various model levels from the conceptual through implementation to the programme itself. Students are lead to accurate, correct technical and formal expression.

Study materials:

1. Giancarlo Guizzardi: Ontological Foundations for Structural Conceptual Models, Telematica Instituut Fundamental Research Series, 2005. ISBN 90-75176-81-3.

2. Merunka, V. Datové modelování. Praha: Alfa Publishing, 2006. ISBN 80-86851-54-0.

3. Merunka, V., Pícka, M., Pergl, R. Objektově orientovaná tvorba softwaru. Praha: Credit, 2004. ISBN 80-213-1159-2.

4. Merunka, V. Objektový přístup v databázových systémech. Praha: Credit, 2002. ISBN 80-213-0882-6.

5. Merunka, V., Pergl, R., Pícka, M. Objektově orientovaný přístup v projektování informačních systémů. Praha: ČZU, 2005. ISBN 80-213-1352-8.

6. Smalltalk books for free download: http://stephane.ducasse.free.fr/FreeBooks.html

7. Kent Beck: Smalltalk Best Practice Patterns, Prentice Hall, 1996. ISBN 978-0134769042. Amazon Draft for free download

8. Sherman Alpert, Kyle Brown, Bobby Woolf: The Design Patterns Smalltalk Companion, Addison-Wesley Professional, 1998. ISBN 978-0201184624. Amazon

Further information:
No time-table has been prepared for this course
The course is a part of the following study plans:
Data valid to 2020-11-29
For updated information see http://bilakniha.cvut.cz/en/predmet1443906.html