Упражнение
Постановка проблемы.
- Опять! – сказал Мордик, повесив телефонную трубку.
Лихачева взглянула на него, оторвавшись от компьютера:
- В чем дело?
- Четвертый раз за этот месяц один из наших клиентов жалуется, что не получил своего заказа. Если так будет продолжаться и дальше, мы вылетим из дела.
- Остынь, - ответила Лихачева. – Мы просто слишком быстро растем. Обработка всех заказов на бумаге проходила прекрасно, когда наша компания состояла из пяти человек. Нельзя ожидать от нее такой работы теперь. Давай поговорим с Проценко, может быть, мы сумеем спроектировать систему, которая поможет нам управиться со всем этим.
РПЗ «10» - это маленькая компания, специализирующаяся на производстве стандартных и нестандартных кухонных шкафов. Компания сформировалась три года назад. Тогда поступало слишком мало заказов, и с ними вполне можно было управляться на бумаге.
Но теперь уже нельзя полагаться на обработку заказов вручную. Владельцы фирмы Мордик и Лихачева решили поговорить с Проценко, чтобы решить эту проблему. Проценко – специалист по компьютерам.
Мордик пошел звонить Проценко:
- Совершенно очевидно, что нам требуется система по обработке заказов. Мы столкнулись с серьезным риском потерять клиентов.
- Согласен.
- Можешь ли ты разработать программу, которая отслеживала бы заказы?
- Давайте решим, чего вы хотите от системы.
- Она должна отслеживать заказы.
- Не мог бы ты быть более конкретным? Давай рассмотрим нынешний процесс.
- Хорошо. Получив звонок, мы заполняем форму заказа и передаем ее Львову в магазин. Львов заполняет все необходимые документы и готовит отправку товара клиенту. Копию формы мы отдаем Буйвит в бухгалтерию. Она вводит ее в бухгалтерскую систему и выписывает счет.
- И вы хотите, чтобы новая система поддерживала весь этот процесс?
- Точно.
Из этого разговора Проценко смог понять, что система должна обеспечивать возможность добавления новых заказов, изменения старых, выполнения заказов, проверки и возобновления инвентарных описей. При получении заказа система должна послать сообщение бухгалтерской системе, которая выписывает счет. Если требуемого товара нет на складе, заказ должен быть отклонен. Затем Проценко преобразовал требования в диаграмму Вариантов Использования, с помощью которой начал моделировать систему.
Создание диаграммы Вариантов Использования
Итак, создайте диаграмму Вариантов Использования для системы обработки заказа.
Этапы выполнения:
1. Дважды щелкнув мышью на Главной диаграмме Вариантов Использования (Main) в браузере, откройте ее.
2. С по мощью кнопки Use Case (Вариант использования) панели инструментов поместите на диаграмму новый вариант использования.
3. Назовите его «Ввести новый заказ».
4. Повторив этапы 2 и 3, поместите на диаграмму остальные варианты использования:
Изменить существующий заказ
Напечатать инвентарную опись
Обновить инвентарную опись
Оформить заказ
Отклонить заказ
5. С помощью кнопки Actor (Действующее лицо) панели инструментов поместите на диаграмму новое действующее лицо.
6. Назовите его «Продавец».
7. Повторив шаги 5 и 6, поместите на диаграмму остальных действующих лиц:
Управляющий магазином
Клерк магазина
Бухгалтерская система
Создание абстрактного варианта использования
1. Щелкните правой кнопкой мыши на варианте использования «Отклонить заказ» на диаграмме.
2. В открывшемся меню выберите пункт Open Specification (Открыть спецификацию).
3. Установите флажок Abstract (Абстрактный), чтобы сделать этот вариант использования абстрактным.
Добавление ассоциаций(стрелок)
1. С помощью кнопки Unidirectional Association (Однонаправленная ассоциация) панели инструментов нарисуйте ассоциацию между действующим лицом Продавец и вариантом использования «Ввести новый заказ».
2. Повторив шаг 1, поместите на диаграмму остальные ассоциации.