
- •Стратегии «Руководство по основным действиям и компонентам».
- •Стратегии идентификации назначения и характерных свойств системы
- •Описание примера: Магазин (приложение для торгового терминала)
- •1.4.1. Идентификация назначения системы
- •1.4.2. Идентификация характерных свойств системы
- •Определение средств регистрации важной информации
- •Определение средств ведения бизнеса
- •Определение средств анализа результатов бизнеса
- •Определение средств взаимодействия с другими системами
- •Замечания по поводу назначения и характерных свойств системы
- •1.5. Выбор объектов
- •1.5.1. Использование компонентов модели для организации работы
- •1.5.2. Выбор объектов проблемной области
- •Выбор актеров и участников
- •1.6. Применение образцов: выбор и упорядочивание объектов проблемной области
- •1.6.1. Участник-транзакция
- •1.6.2. Место-транзакция
- •1.6.3. Транзакция - следующая транзакция
- •1.6.4. Контейнер-содержимое
- •1.6.5. Транзакция-экземпляр строки транзакции
- •1.6.6. Актер-участник
- •1.6.7. Общая схема на данный момент
- •1.7. Применение стратегий для определения обязанностей объектов проблемной области
- •1.7.1. Обязанности актеров и участников Актер: человек
- •Участник: кассир
- •Участник: покупатель.
- •1.7.2. Обязанности мест Магазин
- •1.7.3. Обязанности реальных вещей
- •Экземпляр товара
- •Универсальный код товара upc
- •Описание каждого атрибута
- •Регистрирующее устройство
- •Ящик кассового аппарата
- •Важное замечание по поводу состояния операции
- •Категория налога
- •1.7.4. Обязанности транзакций проблемной области
- •Продажа
- •Экземпляр строки продажи
- •Описание каждой службы
- •Новый вариант экземпляра строки продажи
- •Что совпадает, а что отличается Оплата и ее виды
- •1.8. Применение образцов: определение обязанностей в проблемной области
- •Множество-рабочий
- •Участник-транзакция
- •Транзакция-экземпляр строки транзакции
- •Экземпляр товара-экземпляр строки
- •Общая схема на данный момент
- •1.9. Разработка динамики проблемной области с помощью сценариев
- •1.9.1. Выбор ключевых сценариев
- •1.9.2. Сценарий: вычисление общей суммы при продаже
- •1.10. Выбор объектов взаимодействия с человеком
- •1.10.1. Выбор окон
- •1.10.2. Выбор отчетов
- •1.11. Определение обязанностей для взаимодействия с человеком
- •1.11.1. Обязанности для окон
- •Окно регистрации
- •Окно продажи
- •1.11.2. Обязанности отчетов Получение денег
- •1.12. Разработка динамики взаимодействия с человеком с помощью сценариев
- •1.12.1. Поиск имеющих смысл сценариев взаимодействия с человеком
- •Сценарий: регистрация в системе
- •Сценарий: провести продажу
- •1.13.2. Взаимодействие в данной системе
- •1.13.3. Определение обязанностей для взаимодействия систем
- •1.13.4. Множество систем авторизации
- •1.13.5. Разработка динамики взаимодействия систем с помощью сценариев
- •1.14. Выбор объектов управления данными и их обязанностей
- •1.14.1. Поиск
- •1.14.2. Сохранение
- •1.14.3. Разработка динамики управления данными с помощью сценариев
- •1.15. Общая схема на данный момент
1.13.2. Взаимодействие в данной системе
Приложение торгового терминала хорошо подходит для архитектуры клиент-сервер. Однако не стоит создавать отдельные объектные модели для клиента и сервера, так как они получатся почти одинаковыми, и вы просто потратите лишние время и энергию. Лучше построить одну объектную модель.
Вы можете встретиться с различными средами клиент-сервер, в том числе:
— объектными средами на клиенте и сервере с поддержкой связи между объектами (ORВ, СOM/DСOM, ODBMS);
— объектными средами на клиенте и сервере с поддержкой необъектной связи;
— объектной средой на клиенте, но не на сервере.
При необходимости перехода к необъектной технологии (что случается часто) лучше применить следующие основные подходы:
— расположить объекты на клиенте или на сервере;
— решить, какие службы будут действовать на каких платформах;
— ввести объекты клиента и объекты сервера для перевода в объектную технологию и обратно.
Если клиент н сервер имеют объектно-ориентированную среду и в среде реализации поддерживается ORB или используется объектно-ориентированная база данных, поддерживающая модель клиент-сервер, можно вообще не изменять модель, за исключением незначительных деталей, соответствующих конкретным требованиям используемой среды.
Если клиент и сервер имеют объектно-ориентированную среду, но между ними не поддерживается объектная связь, необходимо добавить объект "сервер" для клиентской части и объект "клиент" для серверной. Нужно также решить, какие объекты располагаются по каждую сторону границы и определить объекты клиента и сервера для обеспечения линий связей, по которым направляются сообщения между объектами, расположенными на различных платформах.
Если клиент имеет объектно-ориентированную среду, а сервер — реляционную базу данных, используйте объекты DM для отображения на такой сервер и установления границы с ним.
Для разработки всего необходимого па каждом процессоре применяйте средство объектного моделирования с управлением представлениями.
Для рассматриваемого в этой книге приложения торгового терминала достаточно:
— объектно-ориентированной среды па клиенте и на сервере;
— доступа к механизму объектно-ориентированных связей.
Ни объект "клиент", ни объект "сервер" здесь не нужны.
1.13.3. Определение обязанностей для взаимодействия систем
Система авторизации и система авторизации SI
Система торгового терминала взаимодействует с некоторыми системами авторизации.
А. Определение обязанности: "что я знаю".
#56. Стратегия "Определение атрибутов взаимодействующих систем и устройства" |
• Для другой системы или устройства определите номер, имя, рабочее состояние. • Для сопутствующего объекта в компоненте взаимодействия систем определите адрес и пароль. |
Система авторизации знает:
— свой тип (чек или кредитную карточку);
— свою стоимость за одну транзакцию;
— свой номер поставщика;
— свое рабочее состояние.
Система авторизации SI знает:
— свой адрес.
Б. Определение обязанности: "кого я знаю".
Объект authorization system знает свой объект authorization system SI. Покажите это с помощью атрибута (текстуально), а не с помощью связи между объектами (графически).
В. Определение обязанности: "что я делаю".
#98. Стратегия "Определение служб взаимодействующих систем или устройств" |
• Для взаимодействующих систем или устройств определите службы: активизировать, контролировать (сопровождать), дать отчет, дезактивизировать (а также calculate for me, rate me, is <value>). • Для взаимодействующих систем или устройств в качестве множества определите службы: how many, how much, rank parts, calculate over parts. • Добавьте соответствующий объект в компонент взаимодействия систем (SI) для выделения конкретных операций взаимодействия (примеры: подключить, зарегистрироваться в системе, запросить, выйти из системы, отключить). |
Система авторизации знает, как:
— получить авторизацию (тип оплаты, денежная сумма; код авторизации).
Система авторизации SI знает, как подключиться, зарегистрироваться в системе, сделать запрос, выйти из системы и отключиться.
Добавим оба рассмотренных объекта к модели (рис.1. 58).
Рис.1. 58. Объекты для взаимодействующих систем