- •Технология объектно- ориентированного моделирования
- •ЦЕЛЬ КУРСА
- •ЗАДАЧИ КУРСА
- •Преимущества использования объектно- ориентированного подхода
- •Основная идея объектного подхода
- •Объект - это абстракция множества предметов реального мира, обладающих одинаковыми характеристиками и законами
- •Класс - это множество предметов реального мира, связанных общностью структуры и поведением.
- •Важнейшие понятия объектного подхода
- •Инкапсуляция -
- •Полиморфизм -
- •Наследование
- •Методология объектно- ориентированного анализа и проектирования реализуется с использованием унифицированного языка моделирования Unified
- •Унифицированный язык моделирования UML –это язык визуального моделирования для решения задач общего характера,
- •Основы UML
- •Объектно-ориентированная модель предметной области
- •Визуальное
- •Мотивация применения UML
- •Визуальное
- •Контроль качества
- •Контроль качества
- •Типы диаграмм
- •Методология Rational Unified Process
- •Обзор Rational Unified Process
- •Обзор Rational Unified Process
- •Схема организации RUP
- •Rational Unified Process: Структура жизненного цикла
- •Rational Unified Process: Структура жизненного цикла
- •Rational Unified Process.
- •Структура процесса
- •Стадии RUP
- •Основные потоки работ
- •Поток работ делового моделирования
- •Управление требованиями
- •Управление требованиями
- •Управление
- •Диаграммы UML
- •Стереотипы UML
- •Идентификация акторов
- •Идентификация прецедентов (Use Cases)
- •Назначение диаграммы Use Case
- •Разработка требований в
- •Пример модели требований в Requisite Professional
- •Диаграммы UML
- •Диаграмма классов на UML
- •Диаграмма классов
- •Атрибуты и операции класса
- •Стереотипы классов
- •Если система содержит большое количество классов, они могут быть объединены в пакеты, представляющие
- •Отношения между классами (пиктограммы)
- •Идентификация и представление сообщений
- •Отношения
- •Отношения
- •Наследование или обобщение
- •Разработка диаграмм классов (пример)
- •Диаграммы
- •Диаграмма последовательности действий (sequence diagram)
- •Диаграммы взаимодействия объектов (Sequence and Collaboration Diagrams)
- •Диаграмма последовательности
- •Диаграмма взаимодействия (Collaboration diagram)
- •Диаграмма состояний
- •Диаграмма состояний
- •Основные элементы и пиктограммы диаграммы состояний
- •Анализ поведения объекта на диаграмме состояний
- •Анализ поведения объекта на диаграмме состояний
- •Диаграмма состояний класса «Учебный курс»
- •Диаграмма состояний
- •Программные средства, реализующие нотацию Unified Modeling Language
- •Общая платформа группы
- •Поддержка потоков работ средствами
- •Инструменты для аналитиков.
- •Инструменты для разработчиков. Rational Rose (Modeler Edition)
- •Общая платформа группы.
- •Графический интерфейс пользователя Rational Rose
- •Генерация программного кода Java на основе UML-модели
- •Пример Java программы
- •От UML диаграммы классов к Java коду
- •Java UML : Пример
- •Диаграмма классов
- •Зависимость
- •Пример зависимости
- •Обобщение
- •Использование
- •Пример UML модели
- •Диаграмма требований
- •Архитектура системы
- •Диаграмма классов
- •Диаграмма
- •Диаграмма состояний
- •Диаграмма размещения
- •Автор: Л.Р. Черняховская проф. каф. технической кибернетики
Зависимость
Зависимость может быть вызвана
локальной переменной
параметром
возвращаемым значением Пример
Class A {Class B {
B Foo(B x) { …
B y = new B(); …
return y; |
… |
} } |
} |
82
Пример зависимости
Класс Driver зависит от класса Car
83
Обобщение
Обозначение наследования между классами
Laptop, Клавиатура, Дисплей |
|
наследуют состояние и поведение от |
|
Компьютер |
84 |
Использование
Обозначает, что класс наследует Java интерфейс
A «B»
A использует интерфейс B
85
Пример UML модели
В соответствии с принципами моделирования процессов управления сложными динамическими системами в проблемных ситуациях разработан комплекс метамоделей представления и обработки знаний.
86
Диаграмма требований
Разработчик ИСППР
Выбрать модель представления знаний
Разработчик
Разработать
структуру базы знаний
Разработать
алгоритмы поиска знаний
Разработать алгоритм обучения базы знаний
Наполнить базу
знаний Эксперт
Тестировать базу знаний
Объектно- ориентированная модель процесса управления
Модель
87
Архитектура системы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Существующие |
|
|
|
|
|
|
|
||||
|
|
|
|
средства управления |
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
сложными |
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
динамическими |
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
системами |
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Объекты - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
сложной |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
Тезаурус |
|
|
|
|
|
|
|
|
||||||
динамической |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
предметной |
|
|
|
|
|
|
|
|
||||||
системы |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
области |
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Системная модель Вывод решений
на основе правил
База
знаний
Правила |
Прецеденты |
Web-средства реализации ИСППР
Электронная
инструкция
Интерфейс
поиска
Интерфейс
ИСППР
Поиск
прецедентов
88
Диаграмма классов
|
<abstract> |
|
|
|
|
<<abstract>> |
|
|
|
|
|
||||||
Precedent category |
|
|
|
|
|
|
Rule |
|
|
|
|
|
|||||
category_name |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
similarity_criterion |
|
|
|
|
|
|
rule_name |
|
|
|
|||||||
categ_tipical_decision |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
restrict_time_value |
|
|
|
|
|
|
<<logic>> |
|
|||||||||
|
|
|
|
|
|
<<abstract>> |
|||||||||||
restrict_time_in_critical _situation |
|
|
|
|
|
implication |
|
|
|
|
|
FIS |
|||||
category_character_list |
|
|
Condition |
|
|
|
|
|
Conclusion |
|
|
||||||
|
|
|
|
|
|
|
|
name : String |
|||||||||
|
|
|
|
|
|
|
+ant+cons |
|
|||||||||
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
type = FIS=mamdani |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
<<logic>> |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
andMethod = "specified"=min |
|||
|
|
|
|
|
+func |
|
|
|
|
|
|
||||||
|
|
|
|
|
logical "AND" |
orMethod = "specified"=max |
|||||||||||
|
|
|
<<entity>> |
|
+arg |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
Critical situation |
|
Precedent |
|
|
|
|
|
|
|
|
|
|
|
defuzzMethod = "specified"=centroid |
|||
character_name |
|
|
|
|
|
|
|
Predicate |
|
|
impMethod = "specified"=min |
||||||
|
precedent_name |
|
|
|
|
|
|
||||||||||
description of a |
|
description _of _a |
|
|
|
|
funktor |
|
|
|
aggMethod = "specified"=max |
||||||
critical situation |
|
critical _situation |
|
|
|
|
|
|
|||||||||
situation_name |
|
precedent_name |
|
|
|
|
argument |
|
|
|
|||||||
|
|
|
decision_code |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Precedent retrieval precedent_code
initialize start_ retrieval get_ character
get_ similarity get_ solution
get _results
stop _retrieval
Similarity
character_name retrieval_result precedent
s_compare_results local_similarity global_ similarity
Decision
decision_name
decision_parameter
scenario_name implementation
Character in a critical situation description
character_name restriction_value character_value time_restriction
character_type
Type of character s
character_type : String boolean_type : Boolean real_type : Real date_type : Date primary_type_code :Integer
name : String
<<abstract>> |
|
<<abstract>> |
input |
|
output |
name : String |
|
name : String |
range |
|
range |
|
|
|
|
|
|
1..* |
|
1..* |
|
|
11
<<abstract>> mf
name : String
type params
89
Диаграмма
последовательности
CBR : Повторное |
|
|
Повторное |
|
|
|
|
|
Адаптация |
|||||||||
использование |
|
|
использование |
|
|
|
||||||||||||
|
|
|
|
|
решений |
|||||||||||||
решений |
|
|
решений : Reuse |
|
|
|||||||||||||
|
|
|
|
: Адаптация |
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
повторное |
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
инициализация () |
|
|
||||||||||
|
|
|
использование (case, dec) |
|
|
|
|
|||||||||||
|
|
|
|
|||||||||||||||
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
запустить процедуру |
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Reuse () |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
найти прецедент |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(case) |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
вычислить сходство (KS, |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
case) |
|
|
||
|
|
|
|
|
|
|
|
|
|
получить решение из |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
прецедента (case,dec) |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
адаптировать решение (dec) |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
закончить процедуру Reuse () |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90
Диаграмма состояний
|
< < а л г о р и т м > > |
|
|
О б |
р а б о т к а |
с и г н а л а т р е в о г и |
||
|
|
|
e n t r y / ч и т |
а т ь I D |
д а т ч и к а |
d o / ч и т а т |
ь п о к а |
з а н и я д а т ч и к а |
d o / ^ п о с л а т ь з н |
а ч е н и е п е р е м е н н о й |
|
e x i t / о б н о |
в и т ь с |
о с т о я н и е д а т ч и к а |
|
|
|
|
|
|
|
< < м о д и ф и к а ц и я > > |
|||||||||||||||
|
|
|
|
Б Д |
с и г н а л о в т р е в о г и |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
d |
o |
/ |
x |
1 |
: = |
" т е к |
у |
щ |
е |
е |
з |
н |
а |
ч |
е |
н |
и |
е |
x |
1 |
" |
|
d |
o |
/ |
x |
1 |
: = |
" т е к |
у |
щ |
е |
е |
з |
н |
а |
ч |
е |
н |
и |
е |
x |
n |
" |
< < а л г о р и т м > >
А н а л и з Б Д с и г н а л о в т р е в о г и
o n a l a r m ( x 1 = " в е л и |
к о " ) [ |
i f x 1 > = x 1 m a x |
& |
t > = |
t i m e 1 ] / |
|||||||
o n a l a r m ( x 1 |
= " м а л о " ) [ i f x |
1 |
< x 1 m i n & t = t i m |
e 1 |
] / |
|||||||
o n a l a r m ( x n = |
" в е л и к о " [ i f x |
n |
> = x |
n m a x & |
t n = t i m e n ] / |
|||||||
o |
n |
a l a r m ( x n = |
" м а л о |
" ) [ i f x n < |
x n m |
i n & t n = t i m e n |
] / |
|||||
d |
o |
/ ^ a l a r m |
|
|
|
|
|
|
|
|
|
|
91