4. Листинг сгенерированного кода на языках c# и Java, выводы по работе.
Функциональные и прочие существенные требования
Требования к интерфейсу.
2.Диаграмма прецедентов
Сценарий выполнения прецедентов
Выбор PC. Раздел "Общее описание сценария"
Прецедент |
Выбор PC |
Акторы |
Клиент |
Цель |
Выбор компьютера клиента |
Краткое описание |
Клиент может выбрать компьютер на web-странице магазина. Компьютеры подразделяются на серверы, настольные, портативные и карманные. Заказчик может выбрать стандартную конфигурацию из списка и детально ознакомиться с ней на отдельной web-странице. Если стандартная конфигурация ему не подходит, он может построить требуемую ему конфигурацию в диалоговом режиме. Компоненты конфигурации (такие, как оперативная память, процессор, жесткий диск и т. п.) представляются как список для выбора из доступных альтернатив. Для каждой новой конфигурации система может подсчитать цену. |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Оформление заказа |
Действия акторов |
Отклик системы |
1. Клиент выбирает стандартную конфигурацию из списка и детально знакомиться с ней на отдельной web-странице. Исключение №1: не выбран, не один компьютер из списка
|
2. Web-страница детально знакомит с конфигурацией на отдельной web-странице. 3. Web-страница сообщает сумму заказа предлагает перейти к оформлению заказа. |
Раздел "Типичный ход событий"
Раздел "Исключения"
Действия акторов |
Отклик системы |
Исключение №1: не выбран, ни один компьютер из списка |
2.Web-страница предлагает построить требуемую ему конфигурацию в диалоговом режиме. 3. Web-страница сообщает сумму заказа предлагает перейти к оформлению заказа. |
Оформление заказа. Раздел "Общее описание сценария"
Прецедент |
Оформление заказа |
Акторы |
Клиент |
Цель |
Оформить заказ |
Краткое описание |
Чтобы оформить заказ, клиент должен заполнить электронную форму с адресами для доставки товара и отправки счета-фактуры, а также деталями, касающимися оплаты. Оплата компьютеров осуществляется наличными курьеру, осуществляющему доставку, или банковским переводом на счет интернет-магазина. После ввода заказа система отправляет клиенту по электронной почте сообщение с подтверждением получения заказа вместе с относящимися к нему деталями (стоимость, номер счета, банковские реквизиты для безналичной оплаты и т. п.). |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Раздел "Типичный ход событий"
Действия акторов |
Отклик системы |
1. Клиент заполняет электронную форму. №1: Клиент заполнил не все поля электронной формы |
2. Система отправляет клиенту по электронной почте сообщение с подтверждением получения заказа вместе с относящимися к нему деталями. 3. В базу данных вносится информация о клиенте и сделанном им заказе. |
Раздел "Исключения"
Действия акторов |
Отклик системы |
№1: Клиент заполнил не все поля электронной формы |
2. Сообщение о не заполненных полях |
Посчёт стоймости PC. Раздел "Общее описание сценария"
Прецедент |
Подсчёт стоимости PC |
Акторы |
Клиент |
Цель |
Подсчитать цену выбранной конфигурации |
Краткое описание |
Для каждой выбранной конфигурации система может подсчитать цену. |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Раздел "Типичный ход событий"
Действия акторов |
Отклик системы |
1. Клиент выбрал требуемую ему конфигурацию из списка доступных альтернатив. Исключение №1: Если конфигурация стандартная |
2. Система подсчитывает цену в диалоговом режиме.
|
Раздел "Исключения"
Действия акторов |
Отклик системы |
Исключение №1: Если конфигурация стандартная |
2. Подсчёт цены не требуется, так как стоимость уже указана. |
Отправка электронного письма. Раздел "Общее описание сценария"
Прецедент |
Отправка электронного письма |
Акторы |
Клиент |
Цель |
Отправка электронного письма |
Краткое описание |
После ввода заказа система отправляет клиенту по электронной почте сообщение с подтверждением получения заказа вместе с относящимися к нему деталями (стоимость, номер счета, банковские реквизиты для безналичной оплаты). |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Раздел "Типичный ход событий"
Действия акторов |
Отклик системы |
1. Заказ сформирован, указан адрес электронной почты клиента. |
2. На электронную почту отправляется письмо с подтверждением получения заказа вместе с относящимися к нему деталями.
|
Добавление комплектующего. Раздел "Общее описание сценария"
Прецедент |
Добавление комплектующего |
Акторы |
Работник магазина |
Цель |
Добавление компонента |
Краткое описание |
Работник магазина может добавить комплектующий |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Действия акторов |
Отклик системы |
1. Работник магазина нажимает кнопку " Добавление комплектующего " Исключение №1. Не удалось перейти на страницу добавление компонента |
2. Выполняется переход на страницу добавления компонента |
3. Работник магазина заполняет поля комплектующего. Исключение №2. Работник магазина оставил одно из полей не заполненым |
4. Обработка комплектующего 5. Сохранение комплектующего 6. Выполняется переход на страницу с комплектующим. |
Раздел "Типичный ход событий"
Раздел "Исключения"
Действия акторов |
Отклик системы |
Исключение №1. Не удалось перейти на страницу добавление компонента |
3. Сообщение об ошибке перехода на страницу редактирования сообщения 4. Предложение о повторном переходе на страницу |
Исключение №2. Работник магазина оставил одно из полей не заполненным |
5. Сообщение о не введенном поле комплектующего. 6. Предложение поле заново. |
Редактирование комплектующего. Раздел "Общее описание сценария"
Прецедент |
Редактирование комплектующего |
Акторы |
Работник магазина |
Цель |
Редактирование Работник магазина |
Краткое описание |
Работник магазина может редактировать комплектующие в любой момент |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Действия акторов |
Отклик системы |
1. Работник магазина нажимает кнопку "редактировать комплектующий" Исключение №1. Не удалось перейти на страницу редактирования комплектующего |
2. Выполняется переход на страницу редактирования комплектующего
|
3. Работник магазина редактирует поля комплектующего Исключение №2. Работник магазина оставил поле пустым |
4. Обработка запроса 5. Сохранение изменений |
Раздел "Типичный ход событий"
Раздел "Исключения"
Действия акторов |
Отклик системы |
Исключение №1: Не удалось перейти на страницу редактирования комплектующего |
3. Сообщение об ошибке перехода на страницу редактирования комплектующего 4. Предложение о повторном переходе на страницу |
Исключение №2. Работник магазина оставил поле пустым |
5. Сообщение о не введенном поле 6. Предложение ввести поле заново |
Удаление комплектующего. Раздел "Общее описание сценария"
Прецедент |
Удаление комплектующего |
Акторы |
Работник магазина |
Цель |
Удаление комплектующего |
Краткое описание |
Работник магазина может удалить комплектующий в любой момент |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Действия акторов |
Отклик системы |
1. Работник магазина нажимает кнопку "удалить комплектующий " Исключение №1. Не удалось перейти на страницу подтверждения удаления |
2. Выполняется переход на страницу с подтверждением об удалении
|
3. Работник магазина подтверждает удаление Исключение №2. Работник магазина отказал в подтверждении удаления |
4. Обработка запроса 5. Удаление комплектующего |
Раздел "Типичный ход событий"
Раздел "Исключения"
Действия акторов |
Отклик системы |
Исключение №1: Не удалось перейти на страницу подтверждения удаления |
3. Сообщение об ошибке перехода на страницу удаления комплектующего 4. Предложение о повторном переходе на страницу |
Исключение №2: Работник магазина отказал в подтверждении удаления |
5. Сообщение об отказе удаления 6. Возврат к списку комплектующих |
Оплата заказа. Раздел "Общее описание сценария"
Прецедент |
Оплата заказа |
Акторы |
Клиент, Курьер |
Цель |
Оплата заказа |
Краткое описание |
Оплата компьютеров осуществляется наличными курьеру, осуществляющему доставку, или банковским переводом на счет интернет-магазина. |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Действия акторов |
Отклик системы |
1. Выбран способ оплаты при оформлении заказа. Исключение №1: Оплата осуществляется банковским переводом |
2. Оплата осуществляется наличными курьеру, доставившему заказ.
|
Раздел "Типичный ход событий"
Раздел "Исключения"
Действия акторов |
Отклик системы |
Исключение №1: Оплата осуществляется банковским переводом |
2. Оплата осуществляется банковским переводом на счет интернет-магазина.
|
Проверка оплаты заказа. Раздел "Общее описание сценария"
Прецедент |
Проверка оплаты заказа |
Акторы |
Клиент, Работник магазина. |
Цель |
печать счет-фактуры и отправка её на склад |
Краткое описание |
Работник магазина проверяет, поступила ли оплата (в случае безналичного расчета) и делает соответствующую пометку при поступлении денег. Если деньги не поступают в течение 5 банковских дней, заказ аннулируется. После оплаты или в случае оплаты наличными работник печатает счет-фактуру и отправляет ее на склад вместе с требованием заказанной конфигурации. Заказ помечается как поставленный в очередь. |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Действия акторов |
Отклик системы |
1. Заказ оформлен и подтверждён. Исключение №1: Если деньги не поступают. |
2. После оплаты или в случае оплаты наличными работник печатает счет-фактуру и отправляет ее на склад вместе с требованием заказанной конфигурации. 3. Заказ помечается как поставленный в очередь. 4. Сделана запись в базе данных об оплате заказа. |
Раздел "Типичный ход событий"
Раздел "Исключения"
Действия акторов |
Отклик системы |
Исключение №1: Если деньги не поступают. |
2. В течение 5 банковских дней, заказ аннулируется.
|
Сборка PC. Раздел "Общее описание сценария"
Прецедент |
Сборка PC |
Акторы |
Склад |
Цель |
Сбор заказа и передача накладной в отдел доставки |
Краткое описание |
После оплаты работник печатает счет-фактуру и отправляет ее на склад вместе с требованием заказанной конфигурации. На складе заказ собирается. Собранный компьютер вместе со счетом-фактурой и накладной передается со склада в отдел доставки, при этом заказ помечается как “собранный”. |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Действия акторов |
Отклик системы |
1. Поступила оплата. Работник печатает счет-фактуру и отправляет ее на склад вместе с требованием заказанной конфигурации. |
2. На складе заказ собирается и передаётся в отдел доставки. 3. Изменение статуса заказа на “собранный”. |
Раздел "Типичный ход событий"
Проверка состояния заказа. Раздел "Общее описание сценария"
Прецедент |
Проверка состояния заказа |
Акторы |
Клиент |
Цель |
Проверка состояния заказа клиентом |
Краткое описание |
Пока клиент ожидает прибытия компьютера, он может проверить состояние заказа (поставлен в очередь / собран / отправлен). |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Действия акторов |
Отклик системы |
1. После отправки счета-фактуры на склад вместе с требованием заказанной конфигурации. |
2. Заказ помечается как поставленный в очередь.
|
3. Собранный ПК передается со склада в отдел доставки.
|
4. Заказ помечается как собранный.
|
4. Компьютер поставляется клиенту. |
5. Заказ помечается как отправлен.
|
6. По окончании работы с заказом. Исключение №1: Если заказ оплачивается наличными. |
7. Заказ помечается как выполненный.
|
Раздел "Типичный ход событий"
Раздел "Исключения"
Действия акторов |
Отклик системы |
Исключение №1: Если заказ оплачивается наличными. |
8. Курьер по возращении передает деньги работнику магазина, заказ помечается как оплаченный. |
Доставка PC. Раздел "Общее описание сценария"
Прецедент |
Доставка PC |
Акторы |
Клиент, Курьер. |
Цель |
Компьютер поставляется клиенту |
Краткое описание |
Компьютер поставляется клиенту (статус заказа – отправлен). |
Тип |
Базовый прецедент |
Ссылки на другие прецеденты |
Нет |
Действия акторов |
Отклик системы |
1. Заказ оформлен, оплачен, собран. |
2. Курьер поставляет клиенту заказ. 3. Заказ доставлен. Будет автоматически удалён через 15 месяцев. |
Раздел "Типичный ход событий"
Диаграмма классов
Диаграмма последовательностей
Диаграмма последовательности: оформление заказа и выбор PC.
Диаграмма последовательности: оплата, доставка.
Диаграмма деятельности
Диаграмма компонентов
Диаграмма компонентов отображает зависимость между программными компонентами нашей системы.
Диаграмма коммуникации
Эта диаграмма отражает взаимодействие объектов, подобно диаграмме последовательности. Данная диаграмма включает объекты и сообщения, которыми они обмениваются. Диаграмма имеет вид графа, вершины графа(прямоугольники) соответствуют линиям жизни объектов. Ребрами графа являются линии связи, возле которых расположены сообщения. Сообщения передаются в указанном стрелкой направлении, в порядке, соответствующем нумерации.
Диаграмма развертывания
В этой диаграмме представлено размещение артефактов по различным узлам системы. Все узлы соединены отношениями простой ассоциации.
Узел (<<devise>>) является ресурсом, который будет обрабатывать информацию на Web Servere, в нашем случае это Браузер который будет визуализировать нашу JSP страницу на клиентской машине.
Хранилища данных и Сервер БД и Сервер приложений будут связаны отношениями простой ассоциации.
Сервлет Controller обрабатывает входящие запросы, запуская необходимые для создания модели действия и перенаправляя запрос соответствующему представлению.
Листинг сгенерированного кода JAVA
Customer.java
import java.util.ArrayList;
public class Customer {
private String _customer_name;
private String _customer_address;
private String _phone_number;
private String _email_addres;
public CustomerWindow _newCustomer;
public ArrayList<Order> _order = new ArrayList<Order>();
public void addCustomer() {
throw new UnsupportedOperationException();
}
}
OrderPC.java
import java.util.ArrayList;
public class OrderPC {
private Object _order_number;
private Object _computer_id;
public Order _order;
public ArrayList<Catalog> _catalog = new ArrayList<Catalog>();
public void addOrder() {
throw new UnsupportedOperationException();
}
}
Payment.java
public class Payment {
private String _payment_method;
private String _date_received;
private int _amount_received;
public Order _order;
}
