Правда, я бы доработал немного вот эту фразу : "Второй диспетчер обеспечивает взаимодействие с водителями, например распределением заказов между водителями." Так как она может неоднозначно трактоваться.
Примерно так: "Второй диспетчер обеспечивает взаимодействие с водителями, например, распределяет заказы водителям на выполнение."?
фраза: "Договор с водителем оформляет бухгалтерия", кажется мне несколько искуственной. Все-таки не дело это бухгалтерии принимать и оформлять договоры. Но пусть будет, для неувеличения сложности.
Во многих мелких фирмах невыгодно иметь отдельного кадровика, и его функции зачастую выполняет бухгалтерия.
вот это: "По информации о длине маршрута система расчитывает стоимость проезда, которая сообщается водителю." это уже усложнение imho. Проще использовать счетчики.
Естественно, это добавление надуманное. Но оно не усложняет задачу, а упрощает. Так как со счетчиками добавляется куча вопросов. Как бухгалтерия узнает выручку по заказам? Надо организовывать процесс сбора и ввода в систему информации со счетчиков. Как сопоставлять информацию со счетчиков заказам, существующим в системе?
Но вот какая мысль пришла мне в голову. Зачем изменять формулировку? Может изменить вопрос?
Нарисовать диаграмму вариантов использования (use case diagram) системы автоматизации работы службы диспетчерской такси.
Как Вы думаете, в этом случае достаточно было бы старой формулировки?
Если мы хотим ограничить систему именно обработкой заказов, то вопрос стоит сформулировать так: "Нарисовать диаграмму вариантов использования (use case diagram) системы автоматизации обработки заказов диспетчерской службой такси." Кроме того из формулировки надо выкинуть предложение о расчетах бухгалтерии с водителями на основании отчетов из системы. Так как данный отчет в такой формулировке не может содержать необходимой для расчетов информации. Количество выполненных заказов недостаточно. Один на 20-ти заказах заработал 100 рублей, а другой на одном заказе - 1000 рублей. Эта нелогичность будет запутывать студентов (особенно думающих студентов, которые до нее докопаются). А так как формулировка не содержит информации для ее разрешения, то скорее всего студент просто зря потеряет время и провалит экзамен. С другой стороны недумающий студент нарисует вариант использования "сформировать отчет по водителям" с актером-бухгалтером и будет формально прав. Но система работать не будет
Тут вопрос о границе очень важен. Смотрите, имеет ли смысл вносить бухгалтерию в службу такси? Если понимать под службой такси, именно, получение заказа и его выполнение? Не является в данном контексте бухгалтерия лишней и той ловушкой, по которой будут проверяться студенты?
Согласен. Вопрос о границе первостепенен. Но, как я показал выше, в данной формулировке его нельзя решить. Упомянутый отчет автоматически вводит бухгалтерию в круг пользователей системы. А указанная цель формирования отчета автоматически требует наличия в системе информации о выручке в разбивке по водителям. Откуда эта информация в системе должна появляться - неясно. А ловушки хороши, если из них можно выбраться
Если заменить предложение "Бухгалтерия анализирует отчеты о заказах, выполненных каждым водителем, и на основании их проводит денежные расчеты с водителями." на "Бухгалтерия проводит денежные расчеты с водителями.", то и ловушка останется (упомянута бухгалтерия, но для системы она не нужна), и нелогичности не будет. Правда остается вопрос с зарплатой диспетчеров...
Я задаюсь вопросом, поскольку формулировка задачи не МОЯ. Безусловно задача вырвана из контекста, в реальности вообще такой постановки как нарисовать ДВИ не было бы. Безусловно был бы анализ и создание модели вариантов использования.
Разумеется, такие задачи должны быть упрощены до искусственности. В задаче по физике вполне приемлемо упоминание сферического коня в вакууме. Иначе студент до утра будет пытаться расчитатьь объем коня, пока не поймет, что задача не содержит необходимых исходных данных
В полном объеме эта задача (проектирования системы) потянула бы на курсовик, пожалуй
Меня до сих пор волнует вопрос, а как отображать на таких ДВИ факт участия того же клиента или водителя. Читая книги (в первую очередь создателей UML) я однозначно читаю, что клиент или водитель показываться не должен, ну нет у них варианта использования нашей системы автоматизации, хотя он и участник.
Я думаю, правильно считаете. Все эти диаграммы нужны для анализа конкретной системы. Если мы рассматриваем систему автоматизации, то актеры - диспетчера и бухгалтер. Если систему диспетчерской службы, то актеры - клиент и водитель. Диспетчера и бухгалтер уже внутри системы. Если рассматриваем систему службы такси, то и водитель оказывается внутри.
По большому счету, если бы в формулировке задачи не упоминался клиент, а было бы написано, что диспетчер при поступлении звонка регистрирует заказ, вводя в систему телефон звонившего, то варианты использования системы не изменились бы. Информация о том, что есть такой субьект, как клиент, важна будет для построения диаграммы классов. Так как в системе будут обрабатываться объекты типа "Клиент".
Далее. В реальной практике, во время обучения, я никогда не предлагаю нарисовать студентам ДВИ, я всегда прелагаю провсети предварительный анализ, используя в качестве рекомендаций рекомендации Коберна. Возможно я интуитивно полагал, хотя наверняка не знал, что просто построить ДВИ малозначимо
ДВИ не малозначима. Это основа, та печка, от которой пляшет весь дальнейший анализ. Именно она опеределяет границы системы, ее функциональную наполненность.
Или вы имеете ввиду малозначимость именно графического представления? Так какая разница. Можно описать и в текстовом виде, просто графически - нагляднее.
Для маленьких систем она может казаться малозначимой, так как ее можно целиком удержать в голове. Но для больших систем гораздо проще один раз вынести эту существенную информацию в ДВИ и легко ее там находить, чем каждый раз листать тома регламентов, записей интервью и прочей неорганизованной исходной информации, что бы определить, например, необходимый набор состояний какого-либо класса.
, потому мой вопрос фурммулируется примерно так:
Построить диаграмму вариантов использования,
Хм, а разве можно построить ДВИ, не выполнив предварительно это:
определив действующих лиц, участников задачи, границы системы и выделив возможные варианты использования уровня цели пользователя.
По-моему, Вы просто расшифровываете студенту суть его задачи. Но он это и так должен знать из курса обучения.