Logo ČVUT
Loading...
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2011/2012

Object Modeling

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
BIK-OMO Z,ZK 5 13+4 Czech
Lecturer:
Robert Pergl (gar.)
Tutor:
Robert Pergl (gar.)
Supervisor:
Department of Software Engineering
Synopsis:

Students understand the fundamentals of the object-oriented paradigm in software development, with emphasis on modelling of data objects. Even the best object-oriented programming language cannot ensure by itself that design will meaningfully and efficiently exploit the object paradigm. Students are taught the data model design process exactly from this viewpoint. The module is not aimed at writing programs and is not tied to a single language. The explained principles are applicable in most of todays pure or hybrid object-oriented programming languages. The language used is based on Smalltalk, with a simplification towards OCL, UML, and query languages in object databases. The module is concluded with a project to implement the object structure of a specific problem, including test data, using a special computer modelling tool.

Requirements:
Syllabus of lectures:

1. Introduction into the theoretical fundamentals of programming, lambda calculus. Introduction to UML.

2. Queries over sets of objects. Basics of object-oriented approach, notions of class, collection. Polymorphism. Inheritance and composition of objects.

3. Object-based calculation model. Methods and messages. Lambda expression as a method and as a standalone object. Introduction to Smalltalk. Object protocol. Implementation of attributes using composition and using methods.

4. Example of a real-world project with data objects. Object normalizing.

5. Structural design patterns. Behavioral design patterns.

6. Refactoring. Changes to an object scheme. Object migration. Issues related to „proper“ structural design.

7. Object-oriented approach to modeling real-world processes. BORM. Implementations of object-oriented approach in mixed programming languages. Polymorphism, inheritance and composition in Java and C++.

Syllabus of tutorials:

1. Introduction to the modeling tool, practical exercises. Introduction to the programming language, practical exercises, assignment of projects. First checkpoint - problem specification, first version of data model, class description, attributes, methods, relationships among classes. Working with data of ready-made problems.

2. Second checkpoint - model verification using data and queries. Refactoring, normalizing, project consultations. Third checkpoint - detailed test data and queries, resulting document.

Study Objective:

The aim of the course is to explain the fundamentals of the object-oriented paradigm in software development, with emphasis on modeling of 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.

Study materials:
Note:
Time-table for winter semester 2011/2012:
Time-table is not available yet
Time-table for summer semester 2011/2012:
Time-table is not available yet
The course is a part of the following study plans:
Generated on 2012-7-9
For updated information see http://bilakniha.cvut.cz/en/predmet1443906.html