Общее задание и варианты предметной области
Порядок выполнения работы:
1. Построить диаграмму IDEF0
— декомпозировать изучаемые бизнес-процессы на функции
— построить функциональную модель «Как есть»
— подготовить контекстную диаграмму «Как будет» после внедрения целевой программной системы
2. Построить диаграмму DFD
-Определить границы системы, внешние источники и приемники информации.
-Построить диаграмму DFD.
-Разместить на контекстной диаграмме внешние сущности — источники и приемники информации.
-Нанести на контекстную диаграмму информационные потоки.
-Осуществить декомпозицию одного из процессов. В дочерних диаграммах нанести хранилища информации.
Требования
-Наличие диаграммы «Как есть»
-Наличие контекстной диаграммы
-Не менее трех уровней декомпозиции
-Наличие всех типов связи
-Наличие тунеллирования
-Наличие разветвления.
3. Построить диаграмму IDEF1X
Требования
-Наличие текстового описания предметной области (какие в нее входят информационные объекты и какие свойства есть у этих объектов)
-Наличие логической модели
-Наличие на модели всех типов связей (идентифицирующих/не идентифицирующих, категоризации). Модель должна быть включена с отображением мощности связей и отображением ограничений.
-Наличие физической модели. Модель должна быть включена с отображением типов данных.
4. Подготовить модель вариантов использования с применением UML
1. Определить главных или первичных и второстепенных актеров
2. Определить цели главных актеров по отношению к системе
3. Сформулировать основные варианты использования, которые специфицируют функциональные требования к системе
4. Упорядочить варианты использования по степени убывания риска их реализации
5. Рассмотреть все базовые варианты использования в порядке убывания их степени риска
6. Выделить участников, интересы, предусловия и постусловия выполнения выбранного варианта использования
7. Написать успешный сценарий реализации выбранного варианта использования
8. Определить исключения или неуспех в выполнении сценария варианта использования
9. Написать сценарии для всех исключений
10.Выделить общие варианты использования и изобразить их взаимосвязи с базовыми со стереотипом «include»
11.Выделить варианты использования для исключений и изобразить их взаимосвязи с базовыми со стереотипом «extend»
12. Проверить диаграмму на отсутствие дублирования вариантов использования и актеров
Требования
— Наличие не менее чем пяти вариантов использования на диаграмме;
— Наличие на диаграмме общих вариантов использования;
— Для 3-4 вариантов использования создать сценарии. В каждом сценарии рассмотреть все исключительные ситуации;
— Помимо отчета в электронном виде для защиты предоставляются исходные файлы диаграмм.
Литература
-UML
-Модель и диаграммы вариантов использования
-Модель реализации
-Основы унифицированного языка моделирования
-Унифицированный язык визуального моделирования Unified Modeling Language
-Практикум по UML
Варианты заданий для прохождения производственной практики
1. Страховая компания
Вы работаете в страховой компании. Вашей задачей является отслеживание ее финансовой деятельности.
Компания имеет различные филиалы по всей стране. Каждый филиал характеризуется названием, адресом и телефоном.
Деятельность компании организована следующим образом: к вам обращаются различные лица с целью заключения договора о страховании. В зависимости от принимаемых на страхование объектов и страхуемых рисков договор заключается по определенному виду страхования (например, страхование автотранспорта от угона, страхование домашнего имущества, добровольное медицинское страхование). При заключении договора вы фиксируете номер и дату заключения договора, страхователя, вид страхования, объект страхования, страховую сумму, тарифную ставку и филиал, в котором заключался договор.
Расширение постановки задачи. Нужно учесть, что договоры заключают страховые агенты. Помимо информации об агентах (фамилия, имя, отчество, адрес, телефон), нужно еще хранить филиал, в котором работают агенты. Кроме того, исходя из базы данных, нужно иметь возможность рассчитывать заработную плату агентам.
Заработная плата составляет некоторый процент от страхового платежа (страховой платеж – это страховая сумма, умноженная на тарифную ставку). Процент зависит от вида страхования, по которому заключен договор.
2. Гостиница
Вы работаете в гостинице. Вашей задачей является отслеживание финансовой стороны ее работы.
Ваша деятельность организована следующим образом: гостиница предоставляет номера клиентам на определенный срок.
Каждый номер характеризуется вместимостью, комфортностью(люкс, полулюкс, обычный) и ценой. Вашими клиентами являются различные лица, о которых вы собираете определенную информацию (фамилия, имя, отчество и некоторый комментарий). Сдача номера клиенту производится при наличии свободных мест в номерах, подходящих клиенту по указанным выше параметрам. При поселении фиксируется дата поселения. При выезде из гостиницы для каждого места запоминается дата освобождения.
Расширение постановки задачи. Необходимо не только хранить информацию по факту сдачи номера клиенту, но и осуществлять бронирование номеров. Кроме того, для постоянных клиентов, а также для определенных категорий клиентов предусмотрена система скидок. Скидки могут суммироваться.
3. Ломбард
Вы работаете в ломбарде. Вашей задачей является отслеживание финансовой стороны его работы.
Деятельность компании организована следующим образом: к вам обращаются различные лица с целью получения денежных средств под залог определенных товаров. У каждого из приходящих к вам клиентов вы запрашиваете фамилию, имя, отчество и другие паспортные данные. После оценивания стоимости принесенного в качестве залога товара вы определяете сумму, которую готовы выдать на руки клиенту, а также свои комиссионные. Кроме того, определяете срок возврата денег. Если клиент согласен, то ваши договоренности фиксируются в виде договора, деньги выдаются клиенту, а товар остается у вас. В случае если в указанный срок не происходит возврата денег, товар переходит в вашу собственность.
Расширение постановки задачи. После перехода прав собственности на товар ломбард может продавать товары по цене, меньшей или большей, чем была заявлена при сдаче. Цена может меняться несколько раз, в зависимости от ситуации на рынке(например, владелец ломбарда может устроить распродажу зимних вещей в конце зимы.) Помимо текущей цены, нужно хранить все возможные значения цены для данного товара.
4. Реализация готовой продукции
Вы работаете в компании, занимающейся оптово-розничной продажей различных товаров. Вашей задачей является отслеживание финансовой стороны ее работы.
Деятельность компании организована следующим образом: компания торгует товарами из определенного спектра. Каждый из этих товаров характеризуется наименованием, оптовой ценой, розничной ценой и справочной информацией. В вашу компанию обращаются покупатели. Для каждого из них вы запоминаете в базе данных стандартные данные (наименование, адрес, телефон, контактное лицо) и составляете по каждой сделке документ, запоминая наряду с покупателем количество купленного им товара и дату покупки.
Расширение постановки задачи. Теперь ситуация изменилась.
Выяснилось, что обычно покупатели в рамках одной сделки покупают не один товар, а сразу несколько. Также компания решила предоставлять скидки в зависимости от количества закупленных товаров и их общей стоимости.
5. Ведение заказов
Вы работаете в компании, занимающейся оптовой продажей различных товаров. Вашей задачей является отслеживание финансовой стороны ее работы.
Деятельность компании организована следующим образом: компания торгует товарами из определенного спектра. Каждый из этих товаров характеризуется ценой, справочной информацией и признаком наличия или отсутствия доставки. В вашу компанию обращаются заказчики. Для каждого из них вы запоминаете в базе данных стандартные данные (наименование, адрес, телефон, контактное лицо) и составляете по каждой сделке документ, запоминая наряду с заказчиком количество купленного им товара и дату покупки.
Расширение постановки задачи. Теперь ситуация изменилась.
Выяснилось, что доставка разных товаров может производиться способами, различными по цене и скорости. Нужно хранить информацию о том, какими способами может осуществляться доставка каждого товара, и о том, какой вид доставки (а соответственно, и какую стоимость доставки) выбрал клиент при заключении сделки.
6. Бюро по трудоустройству
Вы работаете в бюро по трудоустройству. Вашей задачей является отслеживание финансовой стороны работы компании.
Деятельность бюро организована следующим образом: бюро готово искать работников для различных работодателей и вакансии для ищущих работу специалистов различного профиля. При обращении к вам клиента-работодателя его стандартные данные (название, вид деятельности, адрес, телефон) фиксируются в базе данных. При обращении к вам клиента-соискателя его стандартные данные (фамилия, имя, отчество, квалификация, профессия, иные данные) также фиксируются в базе данных. По каждому факту удовлетворения интересов обеих сторон составляется документ. В документе указываются соискатель, работодатель, должность и комиссионные (доход бюро).
Расширение постановки задачи. Оказалось, что база данных не совсем точно описывает работу бюро. В базе фиксируется только сделка, а информация по открытым вакансиям не хранится. Кроме того, для автоматического поиска вариантов необходимо вести справочник «Виды деятельности».
7. Нотариальная контора
Вы работаете в нотариальной конторе. Вашей задачей является отслеживание финансовой стороны работы компании.
Деятельность нотариальной конторы организована следующим образом: фирма готова предоставить клиенту определенный комплекс услуг. Для наведения порядка вы формализовали эти услуги, составив их список с описанием каждой услуги. При обращении к вам клиента его стандартные данные (название, вид деятельности, адрес, телефон) фиксируются в базе данных. По каждому факту оказания услуги клиенту составляется документ. В документе указываются услуга, сумма сделки, комиссионные (доход конторы), описание сделки.
Расширение постановки задачи. Теперь ситуация изменилась.
В рамках одной сделки клиенту может быть оказано несколько услуг.
Стоимость каждой услуги фиксирована. Кроме того, компания предоставляет в рамках одной сделки различные виды скидок.
Скидки могут суммироваться.
8. Химчистка
Вы работаете в химчистке, осуществляющей прием у населения вещей для выведения пятен. Для наведения порядка вы, по мере возможности, составляете базу данных клиентов, запоминая их анкетные данные (фамилия, имя, отчество). Начиная с третьего обращения, клиент переходит в категорию постоянных и получает скидку в 3% при чистке каждой последующей вещи. Все оказываемые услуги подразделяются на виды, имеющие название, тип и стоимость, зависящую от сложности работ. Работа с клиентом первоначально состоит в определении объема работ, вида услуги и, соответственно, ее стоимости. Если клиент согласен, он оставляет вещь (при этом фиксируются услуга, клиент и дата приема) и забирает ее после обработки (при этом фиксируется дата возврата).
Расширение постановки задачи. Теперь ситуация изменилась.
У химчистки появился филиал, и вы хотели бы видеть, в том числе, и раздельную статистику по филиалам. Кроме того, вы решили делать надбавки за срочность и сложность работ.
9. Курсы повышения квалификации
Вы работаете в учебном заведении и занимаетесь организацией курсов повышения квалификации.
В вашем распоряжении имеются сведения о сформированных группах студентов. Группы формируются в зависимости от специальности и отделения. В каждую из них включено определенное количество студентов. Проведение занятий обеспечивает штат преподавателей. Для каждого из них у вас в базе данных зарегистрированы стандартные анкетные данные (фамилия, имя, отчество, телефон) и стаж работы. В результате распределения нагрузки вы получаете информацию о том, сколько часов занятий проводит каждый преподаватель с соответствующими группами.
Кроме того, хранятся сведения о типе проводимых занятий (лекции, практика), предмете и оплате за 1 час.
Расширение постановки задачи. В результате работы с базой данных выяснилось, что размер почасовой оплаты зависит от предмета и типа занятия. Кроме того, каждый преподаватель может вести не все предметы, а только некоторые.
10. Сдача в аренду торговых площадей
Вы работаете в крупном торговом центре, сдающем в аренду коммерсантам свои торговые площади.
Вашей задачей является наведение порядка в финансовой сфере работы торгового центра.
Работа торгового центра построена следующим образом: в результате планирования вы определили некоторое количество торговых точек в пределах здания, которые могут сдаваться в аренду.
Для каждой из торговых точек важными данными являются этаж, площадь, наличие кондиционера и стоимость аренды в день. Со всех потенциальных клиентов вы собираете стандартные данные (название, адрес, телефон, реквизиты, контактное лицо). При появлении потенциального клиента вы показываете ему имеющиеся свободные площади. При достижении соглашения вы оформляете договор, фиксируя в базе данных торговую точку, клиента, период (срок) аренды.
Расширение постановки задачи. В результате эксплуатации базы данных выяснилось, что некоторые клиенты арендуют сразу несколько торговых точек. Помимо этого, вам необходимо собирать информацию о ежемесячных платежах, поступающих от арендаторов.
11. Распределение учебной нагрузки
Вы работаете в высшем учебном заведении и занимаетесь распределением нагрузки между преподавателями кафедры.
В вашем распоряжении имеются сведения о преподавателях кафедры, включающие наряду с анкетными данными информацию об их ученой степени, занимаемой административной должности и стаже работы. Преподаватели вашей кафедры должны обеспечить проведение занятий по некоторым предметам. По каждому из них установлено определенное количество часов. В результате распределения нагрузки у вас должна получиться информация следующего рода: «Такой-то преподаватель проводит занятия по такому-то предмету с такой-то группой».
Расширение постановки задачи. Теперь ситуация изменилась.
Выяснилось, что все проводимые занятия делятся на лекционные и практические. По каждому виду занятий устанавливается свое количество часов. Кроме того, данные о нагрузке нужно хранить несколько лет.
12. Распределение дополнительных обязанностей
Вы работаете в коммерческой компании и занимаетесь распределением дополнительных разовых работ. Вашей задачей является отслеживание хода их выполнения.
Компания имеет определенный штат сотрудников, каждый из которых получает определенный оклад. Время от времени возникает потребность в выполнении некоторой дополнительной работы, не входящей в круг основных должностных обязанностей сотрудников.
Для наведения порядка в этой сфере деятельности вы проклассифицировали все виды дополнительных работ, определив сумму оплаты по факту их выполнения. При возникновении дополнительной работы определенного вида вы назначаете ответственного, фиксируя дату начала. По факту окончания вы фиксируете дату и выплачиваете дополнительную сумму к зарплате с учетом вашей классификации.
Расширение постановки задачи. Теперь ситуация изменилась.
Выяснилось, что некоторые из дополнительных работ являются достаточно трудоемкими и, в то же время, срочными, что требует привлечения к их выполнению нескольких сотрудников. Также оказалось, что длительность работ в каждом конкретном случае различна. Соответственно, нужно заранее планировать длительность работы и количество сотрудников, занятых ее выполнением.
13. Техническое обслуживание станков
Ваше предприятие занимается ремонтом станков и другого промышленного оборудования.
Вашей задачей является отслеживание финансовой стороны деятельности предприятия.
Клиентами вашей компании являются промышленные предприятия, оснащенные различным сложным оборудованием. В случае поломок оборудования они обращаются к вам.
Ремонтные работы в вашей компании организованы следующим образом: все станки проклассифицированы по странам- производителям, годам выпуска и маркам. Все виды ремонта отличаются названием, продолжительностью в днях, стоимостью.
Исходя из этих данных, по каждому факту ремонта вы фиксируете вид станка и дату начала ремонта.
Расширение постановки задачи. Теперь ситуация изменилась.
Несложный анализ показал, что нужно не просто подразделять станки по видам, а иметь информацию о том, сколько раз ремонтировался тот или иной конкретный станок.
14. Туристическая фирма
Вы работаете в туристической компании, продающей путевки клиентам. Вашей задачей является отслеживание финансовой стороны деятельности фирмы.
Работа с клиентами в вашей компании организована следующим образом: у каждого клиента, пришедшего к вам, собираются некоторые стандартные данные – фамилия, имя, отчество, адрес, телефон.
После этого сотрудники выясняют у клиента, где он хотел бы отдыхать. При этом ему демонстрируются различные варианты, включающие страну проживания, особенности местного климата, имеющиеся отели разного класса. Наряду с этим обсуждается возможная длительность пребывания и стоимость путевки. Всю эту информацию можно логически объединить в понятие «маршрут».
Если удалось найти для клиента приемлемый вариант, вы регистрируете факт продажи путевки по данному маршруту (или путевок, если клиент покупает сразу несколько путевок) в виде договора, фиксируя дату отправления. Иногда вы решаете предоставить клиенту некоторую скидку.
Расширение постановки задачи. Теперь ситуация изменилась.
Фирма работает с несколькими отелями в нескольких странах.
Путевки продаются на одну, две или четыре недели. Стоимость путевки зависит от длительности тура и отеля. Скидки, которые предоставляет фирма, фиксированы. Например, при покупке более одной путевки предоставляется скидка 5%. Скидки могут суммироваться.
15. Грузовые перевозки
Вы работаете в компании, занимающейся перевозками грузов.
Вашей задачей является отслеживание стоимости перевозок с учетом заработной платы водителей.
Компания осуществляет перевозки по различным маршрутам.
Для каждого маршрута вы определили некоторое название, вычислили примерное расстояние и установили некоторую оплату для водителя. Информация о водителях включает фамилию, имя, отчество и стаж. Для проведения расчетов вы храните полную информацию о перевозках (маршрут, водитель, даты отправки и прибытия). По факту некоторых перевозок водителям выплачивается премия.
Расширение постановки задачи. Теперь ситуация изменилась.
Ваша фирма решила ввести гибкую систему оплаты. Так, оплата водителям теперь должна зависеть не только от маршрута, но и от стажа. Кроме того, нужно учесть, что перевозку могут осуществлять два водителя.