Варианты задания по ООАП для группы 314. 2016-17 учебный год |
«Нет проблем! Мы можем покончить с этой ерундой за выходные!» |
В каждом из предложенных вариантов требуется при помощи CASE-средства построить UML модель программного обеспечения. Процесс создания модели состоит из нескольких этапов, по окончании каждого из которых производится сдача полученных результатов:
Процесс моделирования должен проходить так, как это описано в методическом пособии (см. Visual Paradigm). Структура модели должна соответствовать структуре, предусмотренной Rational Unified Process. После выполнения первого этапа модель должна удовлетворять следующим требованиям. К ней должен быть приложен глоссарий проекта, составленный в виде таблицы. В модели должна присутствовать диаграмма вариантов использования системы. Каждое действующее лицо (actor) и вариант использования должны сопровождаться описанием. Описание действующего лица должно коротко (в одну-две строки) сообщать о роли данного лица. Три ключевых варианта использования должны быть описаны полностью, остальные -- лишь кратко. Вход в систему не может быть назначен ключевым вариантом использования. Краткое описание варианта использования состоит примерно из 2-6 предложений. В них указываются основные действия системы и действующих лиц, а также перечисляются особые случаи, соответствующие альтернативным потокам. Полное описание варианта использования должно включать в себя краткое описание, предусловие, потоки событий (основной и альтернативные -- один или более) и постусловие. Постусловие должно быть не пусто, оно составляется из двух частей: гарантии успеха (что истинно по окончании основного потока) и минимальных гарантий (что истинно всегда, в том числе при неуспехе). Глоссарий, описания действующих лиц и вариантов использования следует собрать в один текстовый файл. Описания должны быть составлены на русском языке. Для одного из ключевых вариантов использования должна быть составлена диаграмма деятельности, моделирующая его основной поток и альтернативные потоки. Диаграммы деятельности, моделирующие вход в систему, не принимаются. После выполнения второго этапа модель должна удовлетворять перечисленным ниже требованиям. В Analysis Model следует создать диаграмму KeyAbstractions, на которой отображены все классы -- ключевые абстракции и связи между ними. Следует создать пакет, названный Usecase realizations внутри Analysis Model. В этом пакете следует для каждого из трёх вариантов использования, выделенных как ключевые и описанных на первом этапе, создать отдельную кооперацию, содержащую относящиеся к реализации этого варианта использования элементы модели:
Все классы анализа следует разместить в пакете Analysis Model (на верхнем уровне). Все созданные диаграммы должны содержать необходимые пояснения в виде примечаний. В сложных потоках событий ветвления и циклы должны быть промоделированы с помощью комбинированных фрагментов на диаграммах последовательности. При работе с проектной моделью (3й этап) требуется:
|
6Б. Система материального учёта 9Б. Система учёта рабочего времени 10Б. Система учёта преподавательской нагрузки |
Система автоматизации работы ветеринарной клиники доступна для всех её сотрудников, которые с её помощью работают с данными о ветеринарах, о пациентах клиники (домашних животных) и о клиентах клиники (владельцах домашних животных). Сотрудник регистратуры при помощи системы поддерживает в актуальном состоянии данные о ветеринарных врачах (ф., и., о., дата рождения, стаж, специальность или специальности, график работы по дням недели, телефон, e-mail). Также система даёт возможность сотруднику вводить данные о новом пациенте (вид, кличка, пол, год рождения, ветеринарная карта с историей болезни) и его владельце (ф., и., о., адрес, телефон, e-mail, размер персональной скидки). Предполагается, что в одно и то же время клиент клиники не может быть владельцем разных домашних животных с совпадающими кличками. У разных клиентов клички животных могут совпадать. Врач при помощи системы отмечает оказанные пациентам медицинские услуги (обследование, прививка, процедура, операция) с указанием даты и стоимости, а также выписанные клиентам рецепты на лекарственные средства. Также при помощи системы врач ведёт истории болезней своих пациентов. Клиенты обращаются в регистратуру очно или по телефону для записи на приём к специалисту. Сведения о назначенных приёмах заносятся в систему. Архив системы содержит сведения о прошлых приёмах (давностью от полугода и более), об оказанных в прошлом услугах (полгода и древнее), о клиентах и пациентах, не обращавшихся в клинику более двух лет. Перевод данных в архив происходит автоматически в конце каждого месяца. Работник регистратуры может удалять данные из архива указывая либо период времени, либо клиента/пациента, к которому они относятся. Система ветклиники по требованию пользователя формирует и выдаёт на печать следующую справочную информацию:
В ходе выполнения задания должна быть разработана схема базы данных системы.
|
На товарном складе для каждого товара фиксируется место хранения (№ помещения, № стеллажа, № полки), количество товара и его наименование. Разные товары имеют разные единицы измерения: штуки, килограммы, коробки и др. Система складского учёта должна обеспечивать добавление информации о новом товаре, изменение или удаление информации об имеющемся товаре, хранение (добавление, изменение и удаление) информации о поставщиках и покупателях, включающей в себя название фирмы, её адрес и телефон. В системе учитывается приход товаров от поставщиков. В каждом приходе товаров могут содержаться несколько позиций, в каждой позиции указываются наименование товара и его количество. После оформления прихода товаров в системе их количество в инвентаризационной описи соответственно увеличивается и вносятся данные о том, на какие места хранения помещены пришедшие товары. Один и тот же товар может одновременно находиться на складе на разных местах хранения.
Система осуществляет поиск информации о клиенте или поставщике по части названия фирмы. Это необходимо, чтобы работники склада могли связаться с фирмой по какому-либо вопросу. В ходе выполнения задания должна быть разработана схема базы данных системы. |
Почтовый треккер -- это сайт, позволяющий своим пользователям отслеживать их почтовые отправления. Клиент с его помощью получает данные об отправлениях высланных ему или посланных им. Чтобы пользоваться системой, нужно в ней зарегистрироваться, указав логин-email, пароль, ф., и., о., адрес, мобильный номер. Если регистрация прошла успешно, пользователь может зайти на сайт и отслеживать отправления. Каждое отслеживание создаётся с указанием почтового идентификатора и почтовой службы. Список доступных почтовых служб поддерживается в актуальном состоянии администраторами сайта. По каждому не доставленному отслеживанию система в начале суток направляет запрос на сервер почтовой службы, осуществляющей отправку. Ответ на запрос либо содержит данные о том, что сведения об отправлении отсутствуют, либо о том, какие операции с отправлением зарегистрированы на сервере почтовой службы. Виды операций: принято на доставку, ожидает отправки в месте приёма, отправлено по стране (с указанием страны), прибыло на границу страны, отправлено в место транзита, прибыло в место транзита, покинуло место транзита, прибыло на территорию страны, принято на таможню, выпущено таможней, отправлено по стране, прибыло в место вручения, получено адресатом. По каждой операции её указывается дата, время и место. Данные об операциях с отправлением почтовый треккер хранит у себя, до тех пор, пока пользователь не решит удалить данные об отправлении. При получении данных о новой операции треккер посылает уведомление пользователю либо по электронной почте, либо через SMS в зависимости от настроек пользователя. Треккер отслеживает корректность последовательности операций с отправлением (например, уже полученное отправление не может быть позднее принято на таможню; отправление, посланное локально в границах страны, не проходит таможню и транзит и т. п.), а также уведомляет об истечении контрольных сроков пересылки: 30 суток для международной почты и 15 суток для междугородней и локальной. Об отправлении треккер сообщает пользователю полные сведения: тип, отправитель, адресат, адрес отправки, адрес получателя, стоимость пересылки, объявленная стоимость (если есть), сумма страховки (если есть). Эти данные система получает от сервера почтовой службы при заведении нового отправления, а затем хранит у себя. Система контролирует, что к указанным данным получает доступ либо адресат, либо отправитель, либо администратор, но никто другой. По отправлениям, прибывшим в место вручения, адресат может с помощью системы заполнить форму почтового извещения, распечатать извещение и использовать его для получения отправления. Администраторы треккера следят за настройками системы, обеспечивая её совместную работу с серверами почтовых служб. По необходимости они работают с пользователями, помогая восстановить забытые пароли, удаляя ставшие ненужными аккаунты пользователей. Следует разработать схему базы данных, хранящей сведения о пользователях, отправлениях, операциях с отправлениями, почтовых службах.
|
Онлайновая кинокасса представляет собой web-сайт службы продажи билетов на киносеансы. Войдя в систему, клиент может ознакомиться с афишей кинопоказов на интересующую его дату. Для продажи доступны сеансы, до начала которых остаётся не менее чем 30 минут. Для каждого сеанса в афише указан кинотеатр, № зала, время начала сеанса и значок о наличии/отсутствии доступных для покупки мест. Клиенту даётся возможность поиска по афише. Параметрами поиска могут быть: кинотеатр, диапазон дат, название фильма. Поиск может вестись по нескольким параметрам. Выбрав показ в афише или в результатах поиска, пользователь может купить нужное ему количество билетов. Единовременно одному клиенту система продаёт не более чем 5 билетов на один показ. Система сообщает клиенту схему расположения мест в зале, отмечает на схеме места, доступные для покупки. Цена билета зависит от кинотеатра, зала, времени сеанса и даты (в конце недели билеты дороже, чем в рабочие дни). Билеты могут быть получены клиентом до начала показа в кассе кинотеатра или в терминалах выдачи электронных билетов. Указав свободные места в зале и реквизиты своей банковской карты, клиент должен подтвердить покупку билетов. Получив сведения и подтверждение от клиента, система запрашивает списание средств у банковской системы. В ответ может придти либо подтверждение списания, либо сообщение об ошибке (недостаточно средств, неверные реквизиты, нет связи). При успешной оплате система сообщает клиенту уникальный код, который он использует для получения билета в кассе или в терминале. Соответствующие места помечаются, как выкупленные. Если возникла ошибка, система даёт клиенту возможность повторить ввод реквизитов и повторить попытку. Покупка электронного билета должна быть совершена за 5 минут. Всё это время выбранные клиентом места помечаются как недоступные для покупки другими клиентами. Система может получить сведения о том, что какие-то билеты были куплены в кассе или терминале кинотеатра. В таком случае система не допускает онлайновой продажи тех же самых билетов. Клиент может оформить полный или частичный возврат билетов за 1,5 часа до начала показа. Для этого он сообщает системе уникальный код, полученный им при покупке. Получив код, система выводит купленные билеты с указанием мест. Клиент указывает, какие именно билеты он желает вернуть. Возврат средств осуществляется через банковскую систему с использованием реквизитов, указанных при покупке. Возвращённые билеты могут быть куплены, если выполнены ограничения по времени. Сведения о возврате система может получить от касс кинотеатра. По истечении 1 месяца с момента покупки билета данные автоматически удаляются из системы. Данные о возвратах также хранятся лишь месяц. За 30 минут до начала сеанса все не проданные на него билеты передаются для реализации в кассы или терминалы кинотеатра. В системе они автоматически помечаются как "доступен только офлайн". Система ведёт учёт средств, потраченных клиентом для покупки билетов онлайн. Средства за возвращённые билеты в этой сумме не учитываются. Клиенты, потратившие более 5000, получают статус "постоянных". Клиенты, потратившие более 15000, -- vip-статус. Постоянные клиенты могут купить билеты со скидкой 5% на сеансы, участвующие в акции. Vip-клиенты могут купить билеты со скидкой 7% на любые сеансы. Следует разработать схему базы данных кинокассы.
|
Терминал кинотеатра предоставляет потенциальным зрителям сведения о расположении залов, кафе и других объектов кинотеатра, о текущих киносеансах, а также позволяет приобретать билеты либо распечатывать электронные билеты, ранее купленные онлайн. В состав терминала входят следующие устройства: сенсорный дисплей, часы, кардридер, линия связи с банком, принтер для билетов, линия связи с сервером киносети. На интерактивной схеме кинотеатра отображаются залы, магазины при кинотеатре, кафе, банкоматы, туалеты, гардероб. О каждом элементе схемы можно получить указание, как пройти к нему от места, где установлен терминал. Зритель может запросить подробную справку о каком-либо зале кинотеатра. Терминал сообщает схему мест в зале, размеры экрана, сведения о проекционном и аудио- оборудовании, цены билетов на кинопоказы в зале. Для приобретения билета зритель должен указать дату сеанса, время, название фильма, номер зала, тип билета (взрослый, детский). Цена билета зависит от формата фильма (2D, 3D, IMAX), от зала, в котором проходит сеанс, от времени (утренние сеансы дешевле дневных, а дневные дешевле вечерних), от дня недели (с пятницы по воскресенье сеансы дороже), от расположения места в зале (ближе к середине находится так называемая vip-зона). Далее терминал демонстрирует схему зала и предлагает выбрать от 1 до 5 свободных мест в зале. О том, какие места свободны, терминал узнаёт от сервера киносети. Затем зритель должен вставить в ридер банковскую карту. После вставки банковской карты зритель должен ввести четырёхзначный пин-код. Если введён неверный пин-код, приобретение билета прекращается, а карта возвращается. Если пин-код верен, терминал по линии связи с банком отправляет запрос на операцию для оплаты билетов. Варианты ответов на запрос: операция одобрена банком; операция невозможна, так как карта блокирована; операция невозможна, так как превышен кредитный баланс. Если операция одобрена, сервер киносети информируется о проданных билетах, терминал печатает билеты, указывая дату, тип билета, зал, начало сеанса, название фильма, ряд, место и цену. На этом покупка билета завершается и на экран выводится главное меню. В ходе покупки зритель может раздумать и до момента оплаты поменять тип билета и другие параметры, или отказаться от покупки. Продажа билетов через терминал прекращается в момент начала сеанса. Терминал может выдать афишу с перечнем демонстрируемых фильмов. О каждом фильме сообщается название, жанр, краткое описание, сведения о съемочной группе, режиссёре, актёрах-исполнителях главных ролей. Ознакомившись с афишей, зритель может вернуться в главное меню. Терминал может быть использован для распечатки электронных билетов, купленных онлайн. Зритель должен указать свой номер мобильного телефона и код, полученный в онлайновой кассе при покупке. Получив эти сведения, терминал обращается на сервер киносети с запросом. Если данные верны и билеты ранее не были распечатаны, то терминал выводит на экран сведения о билетах и просит зрителя подтвердить печать. Затем осуществляется печать билетов. Далее терминал сообщает серверу киносети, о том, что бумажные билеты выданы зрителю. Служитель кинотеатра, пользуясь специальной служебной картой, включает терминал в начале рабочего дня и выключает в конце рабочего дня. При включении терминал запрашивает с сервера киносети актуальные сведения о сеансах и ценах на билеты. Также он предоставляет служителю возможность зарядить в принтер бланки билетов. Терминал может быть использован для возврата электронных билетов. При возврате зритель сообщает свой номер мобильного телефона и код, полученный при покупке. Терминал получает с сервера киносети сведения о приобретённых билетах. Если эти билеты не были распечатаны, их можно вернуть. Зритель должен указать, какие именно билеты он возвращает (необязательно все). После подтверждения от зрителя терминал просит вставить а ридер банковскую карту. Процедура проверки пин-кода совпадает с описанной выше. Банковская система получает запрос на возврат средств. Если операция одобрена, то сервер киносети получает сведения о возвращённых билетах. Возврат билетов возможен не позднее чем за полчаса до начала сеанса. Следует создать схему базы данных о сеансах и билетах сервера киносети. |
Система материального учёта автоматизирует оформление документов о материальных ценностях, значащихся на балансе университета. Её основными пользователями являются материально ответственные работники подразделений университета: кафедр и лабораторий. Они с помощью системы сохраняют данные об операциях с материальными ценностями. При приёме на учёт материально ответственное лицо оформляет в системе приходный ордер. Каждый приходный ордер имеет уникальный номер и дату, указание подразделения, принимающего ценности, и поставщика, передающего их. Указываются реквизиты документа, являющегося основанием для приёма (товарного чека, счёта-фактуры). В приходном ордере может быть одна или несколько позиций, в которых указано название, единица измерения, цена за единицу, количество и сумма. Принимающим лицом в ордере указывается материально ответственное лицо, создавшее ордер в системе. Когда работа по созданию ордера завершена, он помечается как утверждённый. После этого принятые ценности автоматически получают инвентарные номера и значатся на балансе подразделения. Теперь можно ордер распечатать и/или импортировать в pdf. Утверждённый ордер нельзя изменять. Ордер, данные о котором больше не нужны, может быть удалён из системы, создавшим его лицом, либо ответственным исполнителем из бухгалтерии университета. При снятии с учёта материально ответственное лицо оформляет в системе акт о списании. Каждый акт о списании имеет уникальный номер и дату, указание подразделения, с баланса которого списываются ценности, и материально ответственного лица. По каждой позиции акта (их может быть одна или более) указывается наименование, инвентарный номер, дата принятия на учёт (совпадающая с датой приходного ордера или акта приёма-передачи), срок службы и стоимость. Когда работа по созданию акта завершена, он помечается как утверждённый. После этого его нельзя изменить. Все позиции из акта помечаются как списанные. Утверждённый акт можно распечатать и/или импортировать в pdf. Устаревшие ненужные акты могут быть удалены из системы. Сведения о списанных материальных ценностях хранятся в архиве системы и по истечении 3-х лет после даты списания автоматически удаляются. При передаче материальных ценностей между подразделениями в системе оформляется акт приёма/передачи. Он может быть оформлен любым из материальных лиц отправителя (подразделения, с баланса которого ценности снимаются) или получателя (подразделения, принимающего ценности на баланс). По содержанию акт приёма/передачи и работа с ним похожи на акт списания. Разница лишь в том, что ценности не списываются, а передаются на баланс получателя. Раз в год ответственный исполнитель из бухгалтерии при помощи системы создаёт и распечатывает сличительные ведомости. Для каждого материально ответственного лица каждого подразделения печатается отдельная ведомость. В ведомости содержится перенумерованный список позиций с указанием наименования, инвентарного номера даты принятия на учёт, единицы измерения, цены, количества, суммы. При помощи сличительных ведомостей проводятся инвентаризации, в ходе которых по каждой позиции могут быть выявлены излишки или недостачи. результаты инвентаризации ответственный исполнитель вводит в систему, после чего они утверждаются и меняется количество ценностей на балансе. Следует создать схему базы данных о материально ответственных лицах и материальных ценностях.
|
Библиометрическая система предназначена для хранения сведений о научных публикациях, ссылок между публикациями и расчёта библиометрического показателя -- индекса цитирования автора. Операторы системы добавляют в систему данные о публикациях. Научный журнал или издательство присылает им соответствующие сведения в bib-файлах программы BibTeX (см. описание в Википедии). Оператор указывает имя файла, а система считывает данные и водит внутри себя записи о публикации. Если можно однозначно установить автора (авторов), что происходит не всегда, так как могут быть полные тёзки, то система связывает публикацию и автора. Если нет однозначности, то публикация помечается как возможно принадлежащая каждому полному тезке. Если автора в системе нет, то запись о нём автоматически создаётся. Так как в систему могут быть случайно внесены данные об одной и той же публикации дважды, операторам системы доступна функция поиска дублей. В списке найденных дублей система выводит пары (тройки, n-ки) публикаций, которые она считает дублирующимися. Оператор может указать, какие дубли следует удалить из системы. Авторы могут регистрироваться в систему, чтобы получать доступ к списку своих публикаций (на экране и в формате bib-файла), помогать разрешить неоднозначность определения автора, давать сведения о цитировании, получать значения своего индекса цитирования. При разрешении неоднозначности автору высвечивается перечень публикаций, автором которых он, возможно, является. Он может подтвердить своё авторство или отказаться. Если какая-то публикация по ошибке была отнесена к неверному автору, таковой автор может удалить её из списка своих публикаций. Для исправления обратных ошибок система даёт автору возможность поиска публикаций по названию, журналу и т. п., и сообщения о своём авторстве (в случае если он обнаружил, что публикация ошибочно приписана другому). Сведения о цитировании предоставляются автором в виде bib-файла, в котором записан библиографический список из его публикации. Получив этот файл, система находит/добавляет публикации в свою базу и указывает, что публикация автора ссылается на каждую из них. Индекс цитирования автора вычисляется по формуле индекса Хирша. Разработанная модель должна содержать схему базы данных об авторах, их публикациях, цитировании публикаций.
|
Система контроля успеваемости используется в университете для отслеживания работы студентов в семестре. |
Чтобы автоматизировать учёт рабочего времени сотрудников на предприятии введена программная система учёта. В ней каждый сотрудник имеет свой собственный аккаунт для доступа к функциям системы. Сотрудники с почасовой оплатой труда при помощи системы каждую пятницу вводят часы, которые они отработали на текущей неделе. На каждый рабочий день они указывают время прихода на работу и время ухода с работы. Из этого времени вычитается час, потраченный на обед. Если сотрудник работал более 8 часов в день, сверхурочное время учитывается с коэффициентом 1,5. Сведения, поданные сотрудником, утверждаются (или отправляются на исправление) менеджером -- начальником сотрудника. По утверждённым сведениям формируется счёт на оплату, который передаётся в бухгалтерскую систему. Сумма счёта вычисляется как произведение почасового тарифа, закреплённого за сотрудником, на количество им отработанных часов. Некоторые служащие получают фиксированный оклад. Они на общих основаниях вводят в систему сведения об отработанных часах. Система должна вести учет количества отработанных ими часов, чтобы снижать выплату на 6%, если служащий отработал менее 38 или 39 часов в неделю (на 12% -- если 36 или 37 часов и т. п.). Сверхурочные служащим с фиксированным окладом оплачиваются на тех же основаниях, что и почасовикам. Расчёт выплат служащим с фиксированным окладом и передача счетов на оплату в бухгалтерскую систему осуществляется в последний рабочий день месяца. Администратор системы ведёт информацию о служащих. В его обязанности входит ввод данных о новых служащих, удаление данных и изменение любой информации о служащем, такой, как имя, адрес и способ оплаты, кадровые перестановки (начальник служащего и/или его подчинённые могут меняться). Администратор при помощи системы формует и распечатывает различные отчёты для руководства со статистикой за интересующий период времени: среднее количество отработанных часов по отделу, суммарные зарплаты по отделам, списки сотрудников регулярно недорабатывающих или перерабатывающих. Сведения об отработанных часах хранятся в системе 2 года, после чего система их автоматически удаляет, так как они не актуальны и не нужны. Сотрудники в системе имеют доступ только к своим данным и данным своих подчинённых. Если сотрудник вовремя не ввёл данные об отработанных часах, при входе в систему он получает сообщение системы с напоминанием. И так происходит всякий раз, пока он не введёт сведения. Начальники при входе в систему информируются о списках их подчинённых, не сообщивших сведения в систему. Сотрудник перестаёт включаться в такой список лишь после того, как введёт данные. Если начальник задерживает утверждение данных своих подчинённых, то он также получает об этом уведомление при входе в систему. Вариант задания предусматривает разработку схемы базы данных системы.
|
Чтобы автоматизировать учёт преподавательской нагрузки за учебный год, в университете внедрена система «Педнагрузка». Каждый преподаватель имеет в системе заведённый им аккаунт для доступа к функциям. В течение учебного года он вводит выполняемые им работы, входящие в нагрузку. Так, преподаватель может указать сведения о проведении им занятий: указывается название курса, количество студентов, слушающих курс, количество групп, количество часов лекций и/или семинаров, количество экзаменов, зачётов, контрольных, домашних работ. Система автоматически рассчитывает часы: за экзамены = 0,5 * количество студентов * количество экзаменов; за зачёты = 0,3 * количество студентов * количество зачётов; за контрольные = 0,25 * количество студентов * количество контрольных; за домашние работы = 0,2 * количество студентов * количество домашних работ; за семинары = количество часов по плану * количество групп. Также преподаватель может указать руководство практикой (по 12 часов на каждого студента); руководство курсовой работой (по 6 часов на каждого студента); руководство ВКР (по 25 часов на каждого студента); руководство диссертацией (по 50 часов на каждого аспиранта); приём вступительных экзаменов (в бакалавриат, магистратуру, аспирантуру) = 0,25 * количество проверенных работ; проверка олимпиад/универсиад = 0,3 * количество проверенных работ; рецензирование = 3 * количество рецензий. Все вычисленные часы суммируются и составляют суммарную нагрузку. Особенностью ввода нагрузки является то, что преподаватель может выполнять разные работы по одному и тому же курсу с разными или одними и теми же группами (например, читать потоковый курс всем группам потока и вести семинары по этому курсу только в одной из групп потока). Работник учебного отдела вносит в систему сведения об учебном плане. В них фиксируется перечень дисциплин, и по каждой дисциплине устанавливается количество часов лекций и/или семинаров, количество экзаменов, зачётов. Также работник распределяет ведение дисциплин в разных группах между преподавателями университета. Система обеспечивает соответствие между данными, введёнными работником учебного отдела и преподавателями. Нагрузка введённая преподавателями утверждается работником учебного отдела в конце учебного года. Затем она автоматически передаётся в систему «Справедливость» для расчёта рейтинга преподавателя. Утверждённую нагрузку скорректировать нельзя. Если преподаватель вовремя не ввёл данные о нагрузке, при входе в систему он получает сообщение системы с напоминанием. И так происходит всякий раз, пока он не введёт сведения. работник учебного отдела при входе в систему информируется о списках преподавателей, не сообщивших сведения в систему. Преподаватель перестаёт включаться в такой список лишь после того, как введёт данные. Если работник задерживает утверждение данных о нагрузке какого-либо преподавателя, то он также получает об этом уведомление при входе в систему. Сведения о нагрузке считаются актуальными за последние 5 учебных лет. Более поздние данные считаются устаревшими и автоматически удаляются из системы. Вариант задания предусматривает разработку схемы базы данных системы.
|
Онлайновая железнодорожная касса представляет собой web-сайт службы продажи билетов на пассажирские поезда. Войдя в систему, клиент может ознакомиться с расписанием поездов, указав станцию отправления, станцию прибытия и дату. Для продажи билетов доступны поезда, время до отправления которых находится в диапазоне от 6 часов до 45 суток. Для каждого поезда в расписании указаны номер поезда, начальная и конечная станция, время отправления от станции, нужной клиенту, время прибытия на станцию, нужную клиенту, время в пути и значок о наличии/отсутствии доступных для покупки билетов. Клиенту даётся возможность сортировки расписания по номеру поезда, времени отправления или прибытия, наличию билетов. Выбрав поезд в расписании, пассажир может купить нужное ему количество билетов. Единовременно одному клиенту система продаёт не более чем 4 билета на один поезд. Система сообщает клиенту перечень вагонов в поезде, где есть свободные места. После выбора вагона, система выводит схему расположения мест в поезде, отмечает на схеме места, доступные для покупки. Цена билета зависит от поезда, станций отправления и прибытия, времени года (летом билеты дороже, чем в другое время года). Билеты могут быть получены клиентом до начала отправления поезда в кассе вокзала или станции или в терминалах выдачи электронных билетов. Указав свободные места в поезде и сведения о пассажирах -- владельцах билетов (ф., и., о, № паспорта -- без этих полных сведений билеты не продаются), а также реквизиты своей банковской карты, клиент должен подтвердить покупку билетов. Получив сведения и подтверждение от клиента, система запрашивает списание средств у банковской системы. В ответ может придти либо подтверждение списания, либо сообщение об ошибке (недостаточно средств, неверные реквизиты, нет связи). При успешной оплате система сообщает клиенту уникальный код, который он использует для получения билета в кассе или в терминале. Соответствующие места помечаются, как выкупленные. Если возникла ошибка, система даёт клиенту возможность повторить ввод сведений о пассажирах, реквизитов и повторить попытку. Покупка электронного билета должна быть совершена за не более чем 7 минут. Всё это время выбранные клиентом места помечаются как недоступные для покупки другими клиентами. Допускается приобретение пассажиром нескольких билетов на своё собственное имя, если все билеты находятся в одном купе, в одном СВ, в одном люксе. Такая покупка означает, что пассажир желает ехать без попутчиков. Система может получить сведения о том, что какие-то билеты были куплены в кассе вокзала (станции) или терминале вокзала. В таком случае система не допускает онлайновой продажи тех же самых билетов. Клиент может оформить полный или частичный возврат билетов за сутки до отправления поезда. Для этого он сообщает системе уникальный код, полученный им при покупке. Получив код, система выводит сведения о купленных билетах. Клиент указывает, какие именно билеты он желает вернуть. Возврат средств осуществляется через банковскую систему с использованием реквизитов, указанных при покупке. Возвращённые билеты могут быть куплены, если выполнены ограничения по времени. Сведения о возврате система может получить от касс вокзала. По истечении года с момента покупки билета данные автоматически удаляются из системы. Данные о возвратах также хранятся лишь год. Система ведёт учёт средств, потраченных клиентом для покупки билетов онлайн. Каждые 100 рублей, таких средств приносят клиенту 1 бонусный балл после завершения его поездки по купленному онлайн билету. Бонусными баллами клиенты могут оплачивать часть стоимости приобретаемых онлайн билетов (не более 25% от их стоимости). Следует разработать схему базы данных онлайновой железнодорожной кассы.
|
Терминал предоставляет пассажирам сведения о расписании поездов, а также позволяет приобретать билеты либо распечатывать электронные билеты, ранее купленные онлайн. В состав терминала входят следующие устройства: сенсорный дисплей, часы, кардридер, линия связи с банком, принтер для билетов, линия связи с сервером железной дороги. Для приобретения билета пассажир должен указать дату, станцию отправления, станцию прибытия, тип билета (сидячий, плацкарт, купе, СВ, люкс). При желании, пассажир может указать номер поезда. Цена билета зависит от его типа, поезда, станций отправления и прибытия, времени года (летом билеты дороже, чем в другое время года). Далее терминал выводит список подходящих поездов, на которых есть незанятые места, того типа, который нужен пользователю. Эти сведения терминал получает от сервера железной дороги. Затем пассажир должен выбрать поезд. Система предлагает ему выбрать вагон. После выбора вагона она выводит схему расположения в нём свободных мест. Пассажир указывает свободные места в поезде и сведения о пассажирах -- владельцах билетов (ф., и., о, № паспорта -- без этих полных сведений билеты не продаются). Единовременно на один поезд пассажир может купить не более чем 4 билета. Допускается приобретение пассажиром нескольких билетов на своё собственное имя, если все билеты находятся в одном купе, в одном СВ, в одном люксе. Такая покупка означает, что пассажир желает ехать без попутчиков. Сообщив данные, пассажир должен вставить в ридер банковскую карту. После вставки банковской карты он должен ввести четырёхзначный пин-код. Если введён неверный пин-код, приобретение билетов прекращается, а карта возвращается. Если пин-код верен, терминал по линии связи с банком отправляет запрос на операцию для оплаты билетов. Варианты ответов на запрос: операция одобрена банком; операция невозможна, так как карта блокирована; операция невозможна, так как превышен кредитный баланс. Если операция одобрена, сервер железной дороги информируется о проданных билетах, терминал печатает билеты, указывая в каждом № билета, тип билета, № поезда, сведения об отправлении (станцию, дату и время) и прибытии (станцию, дату и время), вагон, место и цену. На этом покупка билета завершается. В ходе покупки пассажир может раздумать и до момента оплаты поменять тип билета и другие параметры, или отказаться от покупки. Продажа билетов через терминал прекращается за 1 час до отправления поезда. Покупка билета должна быть совершена за не более чем 7 минут. Терминал может выдать расписание поездов следующих в определённую дату между двумя указанными пассажиром станциями. О каждом поезде сообщается номер поезда, начальная и конечная станция, время отправления от станции, нужной пассажиру, время прибытия на станцию, нужную пассажиру, время в пути. Ознакомившись с расписанием, пассажир может вернуться в главное меню. Терминал может быть использован для распечатки электронных билетов, купленных онлайн. Пассажир должен указать свой номер мобильного телефона и код, полученный в онлайновой кассе при покупке. Получив эти сведения, терминал обращается на сервер железной дороги с запросом. Если данные верны и билеты ранее не были распечатаны, то терминал выводит на экран сведения о билетах и просит пассажира подтвердить печать. Затем осуществляется печать билетов. Далее терминал сообщает серверу железной дороги, о том, что бумажные билеты выданы пассажиру. Служитель железной дороги, пользуясь специальной служебной картой, включает терминал в начале рабочего дня и выключает в конце рабочего дня. При включении терминал предоставляет служителю возможность зарядить в принтер бланки билетов. Терминал может быть использован для возврата электронных билетов. При возврате пассажир сообщает свой номер мобильного телефона и код, полученный при покупке. Терминал получает с сервера железной дороги сведения о приобретённых билетах. Если эти билеты не были распечатаны, их можно вернуть. Пассажир должен указать, какие именно билеты он возвращает (необязательно все). После подтверждения от пассажира терминал просит вставить а ридер банковскую карту. Процедура проверки пин-кода совпадает с описанной выше. Банковская система получает запрос на возврат средств. Если операция одобрена, то сервер железной дороги получает сведения о возвращённых билетах. Возврат билетов возможен не позднее чем за сутки до отправления поезда. Вариант задания предусматривает разработку схемы базы данных сервера железной дороги, в которой хранятся сведения о расписании, тарифах, наличии мест и билетах.
|
"Огавирт" – это сайт, который помогает пользователям находить гостиничные номера, предлагаемые гостиничными сетями и посредниками в WWW. Любой пользователь сайта может выбрать город, период пребывания в гостинице, категорию номера (стандарт одноместный, стандарт двухместный, полулюкс, люкс, для новобрачных, президентский) и "звёздность" гостиницы, после чего сайт выдаёт перечень подходящих предложений, с указанием цен и веб-страниц гостиницы, в которых номера доступны для бронирования. Выданный перечень можно сортировать по неубыванию или невозрастанию цен, рейтингу гостиницы, вычисляемому по оценкам пользователей, количеству "звёзд". Представители гостиничных сетей регистрируются на сайте, после чего могут добавить в систему данные о своей гостинице или гостиницах: название, url сайта, юридический адрес и контактную информацию, url страницы с ежедневно обновляемым перечнем предлагаемых для бронирования номеров и цен. На указанной странице в формате CSV публикуются сведения о номерах: категории, описании, цене, url веб-страницы, с которой можно осуществить бронирование. Эти данные система регулярно запрашивает, чтобы поддерживать собственную базу данных в актуальном состоянии. Если сведения о номерах какой-либо гостиницы невозможно получить в течение 5 последних попыток обновления, то гостиница помечается, как недоступная. Для экономии трафика попыток обновить перечни номеров недоступных гостиниц не производятся. Менеджер может связаться с представителем недоступной гостиницы и либо деактивировать его учётную запись, а заодно убрать сведения о связанных гостиницах из системы, либо скорректировать url страницы с перечнем. В последнем случае менеджер помечает гостиницу как вновь доступную. Сайт "Огавирт" может выдать любому пользователю динамику изменения цен на номера интересующей его категории в некотором городе в течение определённого промежутка времени. При этом сообщается минимальная цена, средняя цена и максимальная цена за интересующий период. Пользователи сайта могут оставлять отзывы о пребывании в гостиницах и оценивать их по десятибалльной шкале. Для ограничения накруток одной гостинице с одного IP-адреса может быть выставлено не более одной оценки. По оценкам рассчитывается рейтинг гостиницы, используемый при ранжировании результатов поиска. Количество комментариев от пользователей не ограничено. Через сайт пользователи могут сообщать менеджеру сайта свои жалобы на работу гостиничных сетей. По жалобам пользователей менеджер может удалить сведения о гостиницах с сайта. Также менеджер может заблокировать использование сайта пользователям с определённых IP-адресов, если они оставляют спам в комментариях. Нежелательные комментарии могут быть удалены менеджером. Рядовые пользователи сайта, желающие добавлять найденные предложения гостиниц в списки "Избранного", должны завести учётную запись и выполнить "вход" на сайт. Следует разработать схему базы данных сайта "Огавирт".
|
Онлайновая авиабилетная касса представляет собой web-сайт службы авиакомпании для продажи билетов на пассажирские авиарейсы. Войдя в систему, клиент может ознакомиться с расписанием рейсов, указав город вылета, город прилёта и дату. Для продажи билетов доступны рейсы, время до вылета которых находится в диапазоне от 12 часов до 90 суток. Для каждого рейса в расписании указаны номер рейса, аэропорт вылета и аэропорт прилёта, время вылета, время прилёта, длительность рейса, модель авиалайнера и значок о наличии/отсутствии доступных для покупки билетов. Клиенту даётся возможность сортировки расписания по номеру рейса, времени вылета или прилёта, наличию билетов. Выбрав рейс в расписании, пассажир может купить нужное ему количество билетов. Единовременно одному клиенту система продаёт не более чем 3 билета на один рейс. Система сообщает клиенту перечень свободных мест. Места могут отличаться по классу обслуживания (эконом, бизнес-класс, первый класс). После выбора класса обслуживания, система выводит цена билетов, которая зависит от рейса, класса обслуживания, времени до вылета рейса (билеты, выкупаемые за 60 суток до вылета, предлагаются со скидкой 25%). Билеты могут быть получены клиентом до завершения регистрации на рейс в офлайновой кассе авиакомпании или в терминалах выдачи электронных билетов в аэропорту. Указав выбранные им места и сведения о пассажирах -- владельцах билетов (ф., и., о, № паспорта -- без этих полных сведений билеты не продаются), а также реквизиты своей банковской карты, клиент должен подтвердить покупку билетов. Получив сведения и подтверждение от клиента, система запрашивает списание средств у банковской системы. В ответ может придти либо подтверждение списания, либо сообщение об ошибке (недостаточно средств, неверные реквизиты, нет связи). При успешной оплате система сообщает клиенту уникальный код, который он использует для получения билета в кассе или в терминале. Соответствующие места помечаются, как выкупленные. Если возникла ошибка, система даёт клиенту возможность повторить ввод сведений о пассажирах, реквизитов и повторить попытку. Покупка билета должна быть совершена за не более чем 9 минут. Не допускается приобретение пассажиром нескольких билетов на своё собственное имя, если все билеты на один и тот же рейс и время вылета одинаковое. По просьбе клиента система может искать не прямые, а транзитные перелёты. Транзитный перелёт состоит из нескольких рейсов с пересадками, стыкующихся по аэропорту прилёта и вылета. Два рейса могут состыковаться, если время между прилётом и вылетом не менее чем 3 часа. Цена билета на транзитный перелёт определяется как сумма цен билетов на рейсы, из которых составлен перелёт. Система может получить сведения о том, что какие-то билеты были куплены в офлайновой кассе или терминале аэропорта. В таком случае система не допускает онлайновой продажи тех же самых билетов. Клиент может оформить полный или частичный возврат билетов за двое суток до вылета. Для этого он сообщает системе уникальный код, полученный им при покупке. Получив код, система выводит сведения о купленных билетах. Клиент указывает, какие именно билеты он желает вернуть. Возврат средств осуществляется через банковскую систему с использованием реквизитов, указанных при покупке. Возвращённые билеты могут быть куплены, если выполнены ограничения по времени. Сведения о возврате система может получить от офлайновых касс. По истечении года с момента покупки билета данные автоматически удаляются из системы. Данные о возвратах также хранятся лишь год. Система ведёт учёт "премиальных километров", начисляемых клиентам. После наступления даты прилёта за каждый километр авиаперелёта, совершённого по купленному онлайн билету, клиент зарабатывает 1 премиальный балл. По билетам, купленным на чужое имя, премиальные баллы не начисляются. Премиальными баллами клиенты могут оплачивать частично или полностью стоимости приобретаемых онлайн билетов. Следует разработать схему базы данных онлайновой авиакассы.
|
Терминал предоставляет авиапассажирам сведения о расписании авиарейсов, а также позволяет приобретать билеты либо распечатывать электронные билеты, ранее купленные онлайн. В состав терминала входят следующие устройства: сенсорный дисплей, часы, кардридер, линия связи с банком, принтер для билетов, линия связи с сервером авиакомпании. Для приобретения билета пассажир должен указать дату, город вылета, город прилёта, класс обслуживания (экономический, бизнес-класс, первый класс). При желании, авиапассажир может указать номер рейса. Цена билета зависит от класса обслуживания, номера рейса, времени покупки (билеты, приобретаемые за 60 суток до вылета, предлагаются со скидкой 20%). Далее терминал выводит список подходящих рейсов, на которых есть незанятые места, того класса обслуживания, который нужен пользователю. Эти сведения терминал получает от сервера авиакомпании. Затем авиапассажир должен выбрать рейс (если он не сделал этого ранее, указав известный ему номер). Авиапассажир указывает сведения о владельцах билетов (ф., и., о, № паспорта -- без этих полных сведений билеты не продаются). Единовременно одному клиенту система продаёт не более чем 3 билета на один рейс. На своё имя пассажир не может купить более чем один билет на один и тот же рейс, если время вылета совпадает. Допускается приобретение пассажиром нескольких билетов на своё собственное имя на разные рейсы, вылетающие в разное время. Сообщив данные, пассажир должен вставить в ридер банковскую карту. После вставки банковской карты он должен ввести четырёхзначный пин-код. Если введён неверный пин-код, приобретение билетов прекращается, а карта возвращается. Если пин-код верен, терминал по линии связи с банком отправляет запрос на операцию для оплаты билетов. Варианты ответов на запрос: операция одобрена банком; операция невозможна, так как карта блокирована; операция невозможна, так как превышен кредитный баланс. Если операция одобрена, сервер авиакомпании информируется о проданных билетах, терминал печатает билеты, указывая в каждом № билета, класс обслуживания, № рейса, сведения о прилёте и вылете (аэропорты, даты и время) и цену. На этом покупка билета завершается. В ходе покупки пассажир может раздумать и до момента оплаты поменять класс обслуживания и другие параметры, или отказаться от покупки. Продажа билетов через терминал прекращается за 2 часа до вылета рейса. Покупка электронного билета должна быть совершена за не более чем 9 минут. По просьбе клиента терминал может искать и предлагать для покупки билеты не на прямые, а на транзитные перелёты. Транзитный перелёт состоит из нескольких рейсов с пересадками, стыкующихся по аэропорту прилёта и вылета. Два рейса могут состыковаться, если время между прилётом и вылетом не менее чем 3 часа. Цена билета на транзитный перелёт определяется как сумма цен билетов на рейсы, из которых составлен перелёт. Терминал может выдать расписание рейсов на определённую дату между двумя указанными пассажиром городами. О каждом рейсе сообщается номер, аэропорт вылета, аэропорт прилёта, время вылета, время прилёта, длительность рейса. Ознакомившись с расписанием, пассажир может вернуться в главное меню. Терминал может быть использован для распечатки электронных билетов, купленных онлайн. Пассажир должен указать свой номер мобильного телефона и код, полученный в онлайновой кассе при покупке. Получив эти сведения, терминал обращается на сервер авиакомпании с запросом. Если данные верны и билеты ранее не были распечатаны, то терминал выводит на экран сведения о билетах и просит пассажира подтвердить печать. Затем осуществляется печать билетов. Далее терминал сообщает серверу авиакомпании, о том, что бумажные билеты выданы пассажиру. Работник авиакомпании, пользуясь специальной служебной картой, включает терминал в начале рабочего дня и выключает в конце рабочего дня. При включении терминал предоставляет работнику возможность зарядить в принтер бланки билетов. Терминал может быть использован для возврата электронных билетов. При возврате авиапассажир сообщает свой номер мобильного телефона и код, полученный при покупке. Терминал получает с сервера авиакомпании сведения о приобретённых билетах. Если эти билеты не были распечатаны, их можно вернуть. Пассажир должен указать, какие именно билеты он возвращает (необязательно все). После подтверждения от пассажира терминал просит вставить а ридер банковскую карту. Процедура проверки пин-кода совпадает с описанной выше. Банковская система получает запрос на возврат средств. Если операция одобрена, то сервер авиакомпании получает сведения о возвращённых билетах. Возврат билетов возможен не позднее чем за 12 часов до вылета. Вариант задания предусматривает разработку схемы базы данных авиакомпании, в которой хранятся сведения о расписании, тарифах, наличии мест и билетах.
|
Магазин компьютеров предлагает возможность приобретения своих товаров через Интернет. Клиент может выбрать компьютер на web-странице магазина. Компьютеры подразделяются на серверы, настольные, портативные и планшетные. Заказчик может выбрать подходящую стандартную конфигурацию из списка и детально ознакомиться с ней на отдельной web-странице. Если стандартная конфигурация ему не подходит, он может построить требуемую ему конфигурацию в диалоговом режиме. Компоненты конфигурации (такие, как оперативная память, процессор, жесткий диск и т. п.) представляются как список для выбора из доступных альтернатив. Для каждой новой конфигурации система может подсчитать цену. Если конфигурация неполна, т. е. в ней отсутствует важный компонент, то при заказе веб-страница оповещает об этом клиента и предлагает выбрать недостающий компонент из списка. Клиент может дополнить конфигурацию по своему выбору, либо приобрести неполную конфигурацию. Клиент может приобретать в магазине не только компьютеры, но и отдельные комплектующие и/или периферийные устройства. На странице магазина работает поиск комплектующих и периферийных устройств по их типу, производителю, названию. Результаты поиска могут быть отсортированы клиентом по цене. Вариант задания предусматривает разработку схемы базы интернет-магазина компьютерной техники.
|
Турникеты контролируют проход пассажиров в метро и взимают входную плату. Любой турникет имеет устройство, осуществляющее чтение из запись данных с бесконтактных транспортных карт или банковских карт, два набора створок из ударопрочного стекла для перекрывания прохода, таймер, оптические датчики для контроля прохода пассажира, устройство подачи звуковых сигналов, индикаторы "Проход" и "Стоп", индикатор количества оставшихся поездок, линию связи с сервером метрополитена, линию связи с банковской системой. При оплате прохода банковской картой турникет посылает запрос банковской системе на списание стоимости одной поездки. В запросе используются реквизиты, считанные с карты. Банковская система может либо подтвердить, либо отвергнуть запрос на списание. В первом случае проход осуществляется успешно, как описано выше, а индикатор поездок высвечивает списываемую сумму. Во втором случае проход блокируется. В остальном банковская карта с точки зрения турникета ничем не отличается от карты-"кошелька". Турникет заносит в свою память время всех проходов по пассажирским картам (в том числе безуспешных) и номера карт, используемых при проходах. В конце рабочего дня он передаёт всю информацию, накопленную за день, на сервер метрополитена. Работа в режиме "Выход" такова: В начальном состоянии турникета зажжён индикатор "Проход", индикатор "Стоп" потушен, передние и задние створки закрыты. Если один из датчиков, расположенных после задних створок, посылает сигнал, то турникет открывает задние створки и пассажир может пройти сквозь турникет до передних створок, которые пока закрыты. Получив от датчика между передними и задними створками сигнал, что пассажир прошёл внутрь, турникет закрывает задние створки и открывает передние створки. Когда датчик до передних створок сообщает, что пассажир вышел из турникета, передние створки закрываются, и турникет возвращается в начальное состояние. Если в начальном состоянии срабатывает датчик до передних створок, турникет подаёт предупредительный звуковой сигнал и остаётся в исходном состоянии. На использование пассажирских карт турникет в этом режиме не реагирует. Работа в режиме "Блокировка": В начальном состоянии турникета зажжён индикатор "Стоп", индикатор "Проход" потушен, передние и задние створки закрыты. Если один из датчиков, расположенных до передних створок, или после задних створок, посылает сигнал, то турникет подаёт предупредительный звуковой сигнал и остаётся в исходном состоянии.
На использование пассажирских карт турникет в этом режиме не реагирует. Переключение между режимами "Вход", "Выход", "Блокировка" осуществляется обслуживающим персоналом при помощи специальных сервисных бесконтактных карт. Считав данные с такой карты, турникет из любого режима переходит в требуемый режим. Вариант задания предусматривает разработку схемы базы данных сервера метрополитена, где хранятся сведения о поездках и картах, по которым они совершены.
|
Предупреждение |
Размещение на других ресурсах, а также коммерческое использование материалов, опубликованных в данном разделе, возможно только с разрешения авторов. По всем вопросам пишите: |
© Кафедра системного программирования ВМК МГУ. Обновлено: 13.2.2017 |