TMPA-2013 Kompan and Bui: OOP Class Diagrams
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

TMPA-2013 Kompan and Bui: OOP Class Diagrams

on

  • 482 views

TMPA-2013 Tools & Methods of Program Analysis

TMPA-2013 Tools & Methods of Program Analysis
Bui, D., Kompan, S., Taras Shevchenko National University of Kyiv
OOP Class Diagrams: Formation and Analysis

Statistics

Views

Total Views
482
Views on SlideShare
445
Embed Views
37

Actions

Likes
0
Downloads
0
Comments
0

2 Embeds 37

http://tmpaconf.org 36
https://www.google.am 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

TMPA-2013 Kompan and Bui: OOP Class Diagrams Presentation Transcript

  • 1. ДИАГРАММЫ КЛАССОВ ООП: ФОРМАЛИЗАЦИЯ И АНАЛИЗ Буй Д.Б., д.-р физ.-мат. н., профессор Киевский национальный университет имени Тараса Шевченко, Украина e-mail: buy@unicyb.kiev.ua Компан С.В., аспирант Киевский национальный университет имени Тараса Шевченко, Украина e-mail: skompan@mail.ru
  • 2. Для реляционных БД уже построена формальная модель 1. Кодд Е.Ф. Реляционная модель для больших совместно используемых банков данных // СУБД. − 1995. − N. 1. − C. 145-169. 2. Мейер Д. Теория реляционных баз данных: [пер. с англ.] / Д. Мейер. – Москва: Мир, 1987. – 608 с. 3. Ульман Дж. Основы систем баз данных: [пер. с англ.] / Дж. Ульман. – Москва: Финансы и статистика, 1983. – 334 с. 4. Кренке Д. Теория и практика построения баз данных / Д. Кренке. – СПб.: Питер, 2003. − 800 с. 5. Дейт К. Дж. Введение в базы данных / К.Дж. Дейт. – М., СПб, Киев: «Вильямс», 2001. − 1071 с. 6. Буй Д.Б. Теоретико-множественные конструкции полного образа, ограничения, конфинальности и совместности в основаниях реляционных баз данных / Д.Б. Буй, Н.Д. Кахута // Интеллектуальные системы и компьютерные науки: международная конференция, 23-27 октября 2006 г., Москва: труды. – 2006. – Т. 1. – С. 72-76. 7. Буй Д.Б. Теория мультимножеств: библиография, применение в табличных базах данных / Д.Б. Буй, Ю.А. Богатырёва // Радіоелектронні і комп’ютерні системи. – № 7(48). – 2010. – С. 56-62. 8. Буй Д.Б. Композиційна семантика рекурсивних запитів в SQL-подібних мовах / Д. Б. Буй, С.А. Поляков // Вісник Київського університету. Сер. фіз.-мат. науки. – 2010. – Вип. 1. – С. 45-56. 9. Буй Д.Б. Повнота аксіоматики Армстронга / Д.Б. Буй, А.В. Пузікова // Вісник Київського національного університету імені Тараса Шевченка. Сер. фіз.-мат. науки. – 2011. − Вип. 3. − С. 103108. 10. Редько В.Н. Реляційні бази даних: табличні алгебри та SQL-подібні мови / В.Н. Редько, Ю.Й. Брона, Д.Б. Буй, С.А. Поляков. – Київ: Видавничий дім «Академперіодика», 2001. – 196 с. 11. Buy D. Formalization of structural constraints of relationships in model «entity-relationship» / D. Buy, L. Silveystruk // Electronic Computers and Informatics’2006: international scientific conference, September 20-22, 2006. – Kosice, Slovakia: proceedings. – Kosice. – 2006.– P. 96-101. 12. Buy D. Equivalence of Table Algebras of Finite (Infinite) Tables and Corresponding Relational Calculi / D. Buy, I. Glushko // Proceedings of the Eleventh International Conference on Informatics INFORMATICS’2011, November 16-18, 2011, Rožňava, Slovakia. – P. 56-60.
  • 3. Для объектных БД так же построены формальные модели 1. Piskunov А.G. The formalization of the object-oriented programming paradigm, http://www.realcoding.net/dn/docs/machine.pdf (in Russian) 2. Piskunov A.G. The formalization of the OOP: types, sets, classes, http://agp1.hx0.ru/articles/typeSetsClasses.pdf (in Russian) 3. Chaplanova Е.B. Operating specification of object-relational data model, In: Radіoelektronіka, іnformatika, upravlіnnya, vol. 12, pp. 75-79, (2011) (in Russian) 4. Karel Richta, David Toth. Formal Models of Object-Oriented Databases. In Objekty 2008. Žilina: Žilinská univerzita v Žiline, Fakulta riadenia a informatiky, pp. 204-217, (2008), http://www.ksi.mff.cuni.cz/~richta/publications/richta-tothObjekty2008.pdf 5. Manojit Sarkar, Steven P. Reiss. A Data Model and a Query Language for ObjectOriented Database. In: Island, Department of Computer Science Brown University Providence, Rhode, CS-92-57, (1992), http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.34.4531&rep=rep1&typ e=pdf 6. Gail M. Shaw, Stanley B. Zdonik. A Query Algebra for Object-Oriented Databases. In: Island, Department of Computer Science Brown University Providence, Rhode, CS89-19, (1989) http://trac.common-lisp.net/elephant/rawattachment/wiki/RelationalAlgebra/shaw89query.2.pdf
  • 4. В статье проводится краткий сравнительный анализ работ, посвященных формальным моделям объектно-ориентированного программирования
  • 5. Предмет исследования – модель диаграммы классов (соответствующее частично упорядоченное множество). Модель класса (спецификация класса) – пара бинарных функциональных отношений, одна компонента уточняет атрибуты, вторая – методы.
  • 6. Постановка задачи Предметная область Школа Предметная область ВУЗ
  • 7. Объединение предметных областей Школа и ВУЗ
  • 8. Математические результаты
  • 9. ПОСТРОЕНИЕ ОБЪЕКТНОЙ АЛГЕБРАИЧЕСКОЙ СИСТЕМЫ  ,  ;  obj ;  spec ,  где  – множество объектов классов,  – множество спецификаций классов, obj – множество операций  spec – множество операций над над объектами, спецификациями классов, а бинарное отношение      – частичный порядок, уточняющий наследование.
  • 10. K  s,   s – функциональное бинарное отношение, которое атрибуту ставит в соответствие его тип;  – функциональное бинарное отношение, которое методу ставит в соответствие его семантику (логику работы). Отношения  и s определяют спецификацию класса.
  • 11. операция пересечения  :   для значений имеем:  s1 , 1    s2 ,  2  s1  s2 , 1   2  где  – стандартное теоретико-множественное пересечение.
  • 12. операция сочленения ∐ :     s1 , 1    s2 ,  2  s1s2 , 1 2,  где def fg  g  f (domf domg ) K1 K2 K3
  • 13. Операция сочленения уточняет множественное наследование Рассмотрим важнейшие частные случаи: а) doms1  doms2   ⋀ dom1  dom 2   Тогда получим производный класс: K 3  s1  s 2 , 1   2  б) doms1  doms2   или/и конфликт разрешается наложения. с dom1  dom 2   помощью операции
  • 14. Лемма. Для произвольных функциональных бинарных отношений f и g выполняется равенство: f  g  ( f  g ) (domf  domg ) Следствие 1. (критерий совместности функциональных бинарных отношений). Пусть f , g – произвольные функциональные def бинарные отношения, а X  domf  domg . Тогда имеют место две эквивалентности: f  g  dom( f  g )  X , ( f  g )  dom( f  g )  X .
  • 15. Следствие 2. (критерий совместности функциональных бинарных отношений). def Пусть X  domf  domg ; выполняются следующие утверждения. 1) X    f  g ⋀ f  g  f  ; 2) X  dom( f  g )  f  g ⋀ f  g  f X  g X ; 3) dom( f  g )  X  ( f  g ) ⋀ x x  X  f ( x)  g ( x)  .
  • 16. def X  domf  domg X  f  g ⋀ f  g  f означает, что у функций просто нет общих аргументов, потому они не могут конфликтовать (принимать разные значения на общем аргументе). Естественно, общая часть в этом случае пуста.
  • 17. X  dom( f  g )  f  g ⋀ f g f X gX означает, что на множестве общих аргументов функции ведут себя одинаково (принимают одинаковые значения на общих аргументах). Общая часть в этом случае может быть как пустой, так и непустой. Таким образом, первый пункт является частным случаем второго.
  • 18. dom( f  g )  X  ( f  g ) ⋀ x x  X  f ( x)  g ( x)   . Существует общий аргумент, на котором функции ведут себя по-разному. Что касается общей части, то она может быть как пустой, так и непустой.
  • 19. результаты о структуре частично упорядоченного множества F ,  – множество всех функциональных бинарных отношений (на универсальном домене D );  – обычное теоретико-множественное включение. F Буй Д.Б. Теоретико-множественные конструкции полного образа, ограничения, конфинальности и совместности в основаниях реляционных баз данных / Д.Б. Буй, Н.Д. Кахута // Материалы IX Международной конференции «Интеллектуальные системы и компьютерные науки», 23-27 октября 2006. – Т. 1, С. 72 - 76
  • 20. Предложение 1. Ч.у.м. F ,  есть нижняя полурешетка, при этом inf  f , g  f  g . Предложение 2 (структура ч. у. м. F ,  ). Выполняются следующие утверждения. 1) Всюду неопределенная функция f  – наименьший элемент («дно») ч. у. м. F ,  . 2) Наибольший элемент в ч. у. м. F ,  существует тогда и только тогда, когда универсум – одноэлементный. 3) Точная нижняя грань существует для любого непустого множества F , причем inf F   f F f
  • 21. 4) Точная верхняя грань множества F существует тогда и только тогда, когда множество F ограничено сверху, при этом sup F   f F f ; 5) Элемент является атомом тогда и только тогда, когда f – одноэлементный; F ,  является условно полным 6) Ч. у. м. ч. у. м. и полной (верхней) полурешеткой.
  • 22. Выводы Предложенная формальная модель может использоваться для анализа и модификации диаграмм классов: - нахождения компонент связности, что соответствует декомпозиции системы на подсистемы; - поиска клонов; - модификации диаграмм с помощью введенных операций пересечений и сочленения. Над классами рассматриваются операции пересечения и сочленения. Пересечение классов вводится на основе стандартного теоретико-множественного пересечения бинарных отношений, а сочленение – на основе специальной операции наложения, которая позволяет разрешить конфликт имен. Указанные операции над классами могут быть использованы при рефакторинге (refactoring) программ.
  • 23. СПАСИБО ЗА ВНИМАНИЕ