Задания по практике Информационные технологии 2007-2008 (ИТ ФКН ВГУ)

Варианты заданий практикума. 2007–2008 учебный год.

В каждом из предложенных вариантов требуется при помощи CASE-средства Rational Rose:
I. Построить модель программного обеспечения;
II. Создать программное средство на Delphi, VC++, C# или Java с отображением функционирования управляющего и управляемого объекта.

I. Процесс создания модели состоит из нескольких этапов:
• Составление глоссария проекта;
• Создание модели вариантов использования;
• Анализ вариантов использования;
• Проектирование системы;
• Реализация системы (промежуточная сдача задания);
После выполнения третьего подэтапа модель должна удовлетворять перечисленным ниже требованиям.
Глоссарий проекта должен иметь вид таблицы и храниться в отдельном файле. На диаграммах вариантов использования каждое действующее лицо (actor) и вариант использования должны сопровождаться описанием. Все описания должны быть составлены на русском языке. Описание действующего лица должно коротко (в одну-две строки) сообщать о роли данного лица. Описание варианта использования должно включать в себя пояснение, предусловие, потоки событий (основной и альтернативные, если таковые есть) и постусловие. Описания представляют собой либо присоединенные текстовые файлы, либо текст, введенный в поле Documentation спецификации соответствующего элемента диаграммы. Диаграммы взаимодействия, соответствующие потокам событий вариантов использования, должны содержать необходимые пояснения. Сообщения на диаграммах взаимодействия пока не должны быть соотнесены с операциями объектов.
При проектировании системы требуется:
• создать иерархию классов системы;
• разместить классы по пакетам (использовать деление: пользовательский интерфейс – управление – данные; или другое в зависимости от постановки задачи);
• связать объекты с классами, сообщения на диаграммах взаимодействия – с операциями;
• каждый класс снабдить описанием, которое должно включать в себя краткое описание (ответственность класса), описание атрибутов в виде таблицы (имя, описание, тип), таблицу с описанием операций (имя, описание, сигнатура);
• для классов указать стереотипы;
• построить диаграммы классов системы, отображающие связи между классами;
• для описания поведения экземпляров отдельных классов построить диаграммы состояний;
• разработать (если необходимо) схему базы данных и отобразить ее на диаграмме «сущность – связь».
При реализации системы необходимо построить диаграммы компонентов для каждого пакета и для системы в целом. Также следует разработать диаграмму размещения. В зависимости от варианта задания диаграмма размещения должна показывать расположение компонентов в распределенном приложении или связи между встроенным процессором и устройствами. Должна быть произведена проверка корректности модели и автоматическая генерация кода средствами Rational Rose.
II. Создание программного средства (окончательная сдача задания)
По окончании этапа должны быть представлены следующие результаты:
• практическая реализация программного средства;
• анализ данных, полученных в процессе исследования моделей и их объяснение в терминах данной прикладной области.

1. Информационная система университета. Абитуриенты.

Необходимо разработать систему по автоматизации учета информации об абитуриентах университета.
При поступлении в университет абитуриент заполняет анкету, в которой указывает данные о себе, своем образовании, факультет и специальность, на которые он хочет поступить.
Данные анкеты поступают в Отдел компьютерной обработки и вносятся в базу данных университета. Приемная комиссия осуществляет проверку введенных данных и вносит исправления в случае обнаружения ошибок.
В ходе приемной кампании возникает необходимость формировать следующие отчеты для секретарей приемной комиссии:
• списки абитуриентов по факультетам и специальностям;
• списки абитуриентов, имеющих дипломы или аттестаты с отличием;
• статистику подачи документов абитуриентами за указанный промежуток времени (в какой день какое количество заявлений было подано);
• отчет о конкурсе по факультетам (отношение количества мест на факультете к количеству поданных на этот факультет заявлений).
Отчеты формируются Отделом компьютерной обработки на основе информации из БД и публикуются на сайте университета для общего доступа.
Приемная комиссия формирует расписание экзаменов в соответствии с утвержденным перечнем для каждого факультета. Информация о наборе экзаменов и датах их проведения также вносится в базу данных по факультетам. Кроме того, приемная комиссия формирует расписание сдачи экзаменов для каждого абитуриента (абитуриенты факультета разбиваются на группы, для которых определяется дата сдачи экзамена).
Расписание сдачи экзаменов (т.е. списки студентов по группам) также публикуется на сайте университета.
При необходимости приемная комиссия может изменить расписание сдачи вступительных испытаний для абитуриента, если он предоставит документы, подтверждающие такую необходимость.
Во время проведения вступительных испытаний данные о результатах для каждого абитуриента поступают в Отдел компьютерной обработки и вносятся в базу данных, затем публикуются на сайте факультета. На этом этапе необходимо предоставлять следующие отчеты:
• списки абитуриентов по группам с результатами сдачи по выбранному экзамену;
• списки абитуриентов по группам с указанием суммы баллов по всем прошедшим на данный момент экзаменам;
• отчет о проходных баллах для каждого факультета.
Эти отчеты предоставляются секретарям приемной комиссии, деканам факультетов и публикуются на сайте университета.
После завершения вступительных испытаний приемная комиссия проводит процедуру зачисления: в Отделе компьютерной обработки формируются списки абитуриентов в порядке убывания набранных баллов, и от начала списка отсчитывается количество мест, выделенных по плану для поступления.
Результаты зачисления предоставляются деканам факультетов и публикуются на сайте университета.

2. Работа файрвола (firewall).

Система позволяет контролировать сетевую активность компьютера– определяет, какие приложения пытаются работать с сетью, и принимает решение запретить или разрешить приложению соединение.
В системе имеется список всех установленных на компьютере приложений, которым может понадобиться соединение, для приложения может быть создано одно или несколько Правил.
Правило для приложения – это условие вида:
Если удаленный адрес = ххх
И протокол = ууу
И направление = zzz (входящее/исходящее),
То действие с данными (разрешить/запретить).
Правила позволяют брандмауэру разрешать или запрещать приложению устанавливать сетевое соединение в зависимости от того, с каким сервером и по какому протоколу оно хочет соединяться.
Брандмауэр может работать в разных режимах, которые определяют его политику безопасности:
• режим разрешения (разрешаются все соединения, которые не были специально запрещены Правилами приложений);
• режим запрещения (запрещены все соединения, которые не были специально разрешены Правилами приложений. При попытке приложения установить соединение, не описанное в правилах, доступ приложения в сеть будет заблокирован);
• режим блокировки (все попытки соединения будет отклонены);
• режим обучения (при обнаружении попытки соединения брандмауэр выдает пользователю диалоговое окно, в котором сообщает, какое приложение, по какому протоколу, с каким сервером соединяется, и предлагает следующие варианты действий: разрешить данные однократно, запретить данные однократно, создать правило).
Система также предоставляет возможность контроля содержимого загружаемых веб-страниц (запретить загрузку данных с указанных адресов или страниц, содержащих указанные слова, запретить загрузку картинок, превышающих заданные размеры). Эти функции выполняются подсистемой контроля содержания.
Система предоставляет отчет о всех разрешенных и заблокированных соединениях для приложений за указанный период или за все время работы, отчет об объемах трафика для каждого приложения за указанный период или за все время работы.

3. Программное обеспечение форума.

Форум представляет собой хранилище сообщений в сети Интернет, доступ к которому осуществляется при помощи браузера. Для каждого сообщения конференции хранятся значения следующих полей: номер сообщения; автор; тема; текст сообщения; дата добавления сообщения; ссылка на родительское сообщение.
Начальной страницей форума является иерархический список сообщений. Верхний уровень иерархии составляют сообщения, открывающие новые темы, а подуровни составляют сообщения, полученные в ответ на сообщения верхнего уровня. Сообщение-ответ всегда имеет ссылку на исходное сообщение. В списке отображаются только темы сообщений, их авторы и даты добавления.
Просматривая список, пользователь выбирает сообщение и по гиперссылке открывает страницу с его текстом. Помимо текста на этой странице отображается список (иерархический) сообщений являющихся ответами, ответами на ответы и т.д. Для удобства пользователей необходимо предусмотреть поиск сообщений по автору или по ключевым словам в теме или тексте сообщения.
Сообщения добавляются в форум зарегистрированными пользователями, которые при его отправке должны указать свое имя и пароль. Регистрирует новых пользователей модератор. При регистрации пользователь заполняет специальную форму, содержимое которой затем пересылается модератору и запоминается в базе пользователей. Модератор решает, регистрировать пользователя или нет, и отправляет свой ответ.
При добавлении сообщений пользователь имеет возможность начать новую тему или ответить на ранее добавленные сообщения. После добавления сообщение доступно для чтения всем пользователям (даже незарегистрированным), и список сообщений обновляется.
Модератор имеет право по тем или иным причинам удалять сообщения любых авторов. Он также может наказывать пользователей, нарушающих правила поведения в конференции, лишая их на некоторое время возможности добавлять и редактировать сообщения.

4. Система обмена сообщениями (ICQ).

Необходимо разработать систему, которая позволяла бы пользователям обмениваться сообщениями друг с другом в режиме реального времени.
Архитектура системы выглядит следующим образом:
• сервер системы, управляющий пересылкой сообщений;
• база данных, в которой хранится информация о пользователях системы;
• приложение-клиент, установленное у каждого пользователя системы.
Каждый пользователь характеризуется уникальным идентификационным номером, который служит ему адресом в системе.
Приложение-клиент установлено на компьютере пользователя и позволяет отправлять и принимать сообщения, кроме того, поддерживает возможность хранения истории сообщений и формирования списка контактов – набора адресов пользователей, с которыми ведется обмен сообщениями. История сообщений хранится для каждого адреса из списка контактов локально на компьютере пользователя.
Для того чтобы иметь возможность работать с системой, пользователь обязан пройти процедуру регистрации, в процессе которой он указывает информацию о себе (ФИО, место жительства, возраст, род занятий), и ему присваивается идентификационный номер. Эта информация помещается в базу данных системы.
После регистрации пользователь получает возможность сформировать список контактов при помощи клиентского приложения. Приложение предоставляет две возможности поиска новых контактов:
• Поиск по заданному адресу (идентификационному номеру).
• Расширенный поиск по ключевым словам (он осуществляется Подсистемой Поиска и позволяет находить адреса пользователей по ключевым словам, которые встречаются в их личной информации).
Обмен сообщениями происходит следующим образом:
• Пользователь выбирает получателя в списке контактов и при помощи клиентского приложения пишет и отсылает сообщение.
• Клиентское приложение отправляет сообщение на сервер.
• Сервер проверяет возможность отправки сообщения получателю и в случае положительного ответа отправляет сообщение.
Клиентское приложение позволяет запретить прием сообщений от пользователей, выбранных из списка контактов, в этом случае сервер получит сообщение о невозможности доставки сообщения и передаст его отправителю.

5. Почтовый сервер.

Почтовый сервер состоит из двух компонент: POP3-сервер, который позволяет авторизованному пользователю читать почту, и SMTP-сервер, который позволяет отправлять почту. Работа почтового сервера осуществляется следующим образом:
• Один пользователь посылает почтовое сообщение другому пользователю.
• От отправителя сообщение уходит на его почтовый сервер по протоколу SMTP.
• Почтовый сервер посылает запрос DNS - серверу о местонахождении получателя почтового сообщения.
• DNS - сервер находит сервер, где зарегистрирован получатель, сообщает адрес этого сервера почтовому серверу отправителя.
• Почтовый сервер отправителя отсылает сообщение на почтовый сервер получателя по протоколу SMTP, а тот, в свою очередь, найдя получателя среди своих пользователей, кладет сообщение в его почтовый ящик.
Для получения доступа к услугам почтового сервера пользователь должен пройти процедуру авторизации, т.е. указать свое имя и пароль. Незарегистрированные пользователи должны предварительно пройти процедуру регистрации, в процессе которой указывают свои персональные данные, а также имя и пароль для входа на сервер. Если имя или пароль указаны неверно, выдается сообщение о невозможности доступа к почтовым сервисам.
После авторизации система предлагает пользователю следующие варианты действий: просмотреть входящую почту; написать новое письмо; ответить на письмо; переслать почту; удалить письма.
Почтовый ящик имеет ограниченный размер. Пользователь может запросить отчет о степени заполненности ящика. Если объем входящего сообщения больше, чем свободный объем почтового ящика, то сообщение не принимается и отправителю посылается уведомление об этом.
Система также предоставляет возможность ведения адресной книги.

6. Информационная система больницы.

Система для обработки данных о врачах, пациентах, приеме пациентов и лечении.
Перед приемом в больницу проводится встреча пациента и врача. Врач сообщает в отдел приема пациентов об ожидаемом приеме больного и передает данные о нем. У каждого пациента свой регистрационный номер и регистрационная карта, где записаны ФИО, адрес, дата рождения, номер страховки, группа крови (карта выдается пациенту уже после приема в больницу).
При приеме в больницу сохраняются данные о порядковом номере приема пациента (один человек может несколько раз быть принят в больницу), причинах приема, дата начала лечения, номер палаты. После этого врачу посылается уведомление о том, что его пациент принят.
В день приема пациент сообщает данные о себе в отдел приема пациентов (т.е. регистрируется), и там информация по необходимости корректируется. Если пациент не помнит свой регистрационный номер – выполняется соответствующий запрос. После регистрации пациент получает свою регистрационную карту.
Во время пребывания в больнице можно лечиться у нескольких врачей, каждый из которых может назначить несколько курсов лечения, но любой курс назначается только одним врачом. Данные о курсах передаются в медицинский секретариат, где регистрируются и хранятся. Данные включают номер врача, номер пациента, номер приема, название курса лечения, дату и время назначения.
При необходимости врач может запросить в медицинском секретариате историю болезни пациента, содержащую информацию о курсах лечения, полученных пациентом.
После завершения лечения врач принимает решение о выписке пациента. Когда пациент выписывается, он сообщает об этом в отдел приема пациентов, где регистрируют данные о выписке и дают справку о выписке.
Администрация больницы может запросить отчет о пациентах, которые лечились у выбранного врача в указанный период времени.

7. Система кредитования коммерческого банка.

Банк автоматизирует деятельность, связанную с кредитованием юридических и физических лиц.
Кандидат на получение кредита заполняет бумажную форму, прилагает необходимые документы (финансовый отчет, перспективную оценку финансового состояния и др.) и отправляет в банк.
Референт по кредитованию анализирует запрос на предмет ошибок и подтверждает его достоверность.
Затем референт запрашивает отчет о кредитных операциях клиента в отделе кредитования. Копия отчета просматривается банковским служащим, а референт проверяет финансовое положение и доход клиента. Служащий обращается к существующей системе управления счетами клиентов, чтобы получить необходимую информацию о состоянии счета и предыдущих кредитных операциях клиента.
Вся информация комплектуется в кредитный запрос и отправляется для оценки инспектору по кредитам. Если запрос утверждается, инспектор выбирает наилучшие условия кредитования и сообщает об этом клиенту. Если клиент согласен, кредит оформляется.

8. Система начисления зарплаты.

Система должна предоставлять служащим возможность записывать электронным способом информацию из карточки учета рабочего времени и автоматически начислять зарплату в зависимости от количества отработанных часов или объема продаж (для служащих, получающих комиссионное вознаграждение).
Система должна предоставлять служащим возможность вводить информацию из карточки учета рабочего времени, вводить заказы на поставку (для служащих, получающих комиссионное вознаграждение), изменять параметр способа оплаты за работу (наличные или перевод).
Система работает на персональных компьютерах служащих компании. Служащие должны иметь возможность доступа только к данным своей карточки учета рабочего времени и своих заказов на поставку.
Часть служащих получает почасовую оплату. Она начисляется на основе карточек учета рабочего времени, каждая из которых содержит дату и количество часов, отработанных в соответствии с заданным тарифом. Если работы ведутся сверхурочно (более 8 часов в день), то оплата за переработанные часы начисляется с коэффициентом 1,5. Служащие с почасовой оплатой труда получают зарплату каждую пятницу.
Часть служащих получает фиксированный оклад, но тоже предоставляют системе свои карточки учета рабочего времени. Благодаря этому система ведет учет количества часов, отработанных в соответствии с конкретными тарифами. Такие служащие получат зарплату в последний рабочий день месяца.
Часть служащих в дополнение к фиксированному окладу получает комиссионное вознаграждение, зависящее от объема продаж.
Администратор системы курирует информацию о служащих, добавляет данные о новых работниках, удаляет и редактирует существующие в случае необходимости.
Приложение автоматически запускает процесс расчета зарплаты в пятницу и в последний рабочий день месяца.

9. Работа оператора сотовой связи.

Работа оператора сотовой связи предоставляет услугу клиентам мобильной связи в зонах покрытия данного оператора.
Для подключения к услуге мобильной связи необходимо заключить контракт с оператором о предоставлении услуг. При подключении клиенту выдается sim-карта. Sim-карта содержит уникальный номер однозначно ее определяющий. С sim-картой связан лицевой счет клиента. Для получения услуги мобильной связи баланс лицевого счет должен быть положительным. Телефон при вставленной в него sim-карте осуществляет отправку сообщения типа «I’m alive» для определения регистрации себя в сети. Сообщение содержит уникальный номер sim-карты. В случае невозможности отправки такого сообщения считается, что телефон находится вне зоны покрытия. При поступлении звонка ретрансляторы отправляют информационный пакет о начале звонка и устанавливают соединение с телефоном. При установке контакта определяется тип звонка (входящий, исходящий) и тип соединения (роуминг с клиентом той же сети, клиент другой сети, клиент городской АТС, международный звонок). В зависимости от типа звонка и типа соединения определяется тариф оплаты. Списывание средств осуществляется посекундно, в соответствии с тарифом. При снижении баланса до нуля звонок прерывается.
Также оператор предоставляет услуги переадресации звонков в следующих случаях: свой номер занят; номер не отвечает; абонент не доступен.

10. Информационная система для детской поликлиники.

Построить модель информационной системы для детской поликлиники. Информационная система должна позволить заносить информацию о детях, их родителях, медицинских полисах детей. Данные о детях включают: фамилию, имя, отчество, дату рождения, пол, адрес, телефон, номер участка, информацию об учреждении, которое посещает ребенок (номер детского сада или школы, номер группы или класса, адрес), названия медицинских препаратов, вызывающих аллергию. Информация о родителях содержит: фамилию, имя, отчество, место работы. Данные медицинского полиса: номер, дата выдачи, название страховой медицинской организации, выдавшей полис.
Для каждого ребенка заносятся данные о сделанных прививках: дата, наименование прививки, название вакцины, ее номер и серия, а также реакция организма ребенка на вакцину, фамилия врача, осматривавшего ребенка перед прививкой. Существует рекомендуемый план прививок, включающий название прививки и возраст, в котором рекомендуют делать вакцинацию, а также временные интервалы между вакцинациями. Для каждого ребенка существует свой фактический план прививок, в котором указывается дата, название прививки. Информационная система каждую неделю должна формировать список детей, подлежащих вакцинации на неделе. Ребенок исключается из этого списка только после занесения данных о его вакцинации или при переносе срока прививки с указанием причины отсрочки, например: болезнь, отъезд, несогласие родителей и т.п.
Информационная система должна позволить регистрировать вызовы врача на дом. Данные о вызове включают: дату, фамилию ребенка, температуру, возраст, номер участка, фамилию врача, который обслуживает вызов.
Территория, обслуживаемая поликлиникой, разбита на участки. Каждый участок закреплен за участковым врачом.
Данные о медперсонале поликлиники включают: фамилию, имя, отчество, дату рождения, пол, информацию об образовании (название учебного заведения, которое он закончил, год окончания, специальность, номер документа), должность, адрес, телефон, паспортные данные, номер рабочего кабинета, часы работы.
Система должна формировать следующие отчеты:
• отчет о вызовах по врачам за указанное число;
• отчет о детях, подлежащих вакцинации в указанный срок;
• справку о вакцинации конкретного ребенка;
• план прививок конкретного ребенка;
• отчет по участкам (какие дома принадлежат какому участку).
В целях обеспечения безопасности предусмотреть следующие ограничения. Данные о вакцинации могут заносить только медсестры процедурного кабинета. Информация о пациентах заносится и корректируется только регистратором. Данные о вызовах также заносятся работником регистратуры. Информация об аллергических реакциях, реакциях на прививку вводится либо участковым врачом, либо участковой медсестрой.

11. Информационная система школы.

Построить модель информационной система школы. О сотрудниках школы известна следующая информация: фамилия, имя, отчество, дата рождения, пол, информация об образовании (название учебного заведения, которое он закончил, год окончания, специальность, номер документа), адрес, телефон, паспортные данные, информация о детях (фамилия, имя, отчество, дата рождения).
Данные об учениках включают: фамилию, имя, отчество, дату рождения, пол, класс, адрес, телефон, информацию о родителях (фамилия, имя, отчество, дата рождения, паспортные данные, признак вхождения в родительский совет).
Каждый учитель может вести один или более предметов. Имеется расписание уроков, в котором зафиксировано, в какой день недели, в какое время, в каком классе, в каком кабинете кто из учителей ведет какой предмет. Кабинет описывается номером, названием и количеством посадочных мест. Для каждого класса ведется журнал, в котором отмечается посещаемость, успеваемость, темы уроков, а также внеклассная работа. Некоторые учителя являются классными руководителями одного класса. Учителя могут вести факультативы. Имеется расписание факультативов. Известно, кто из учащихся посещает какой факультатив. Учащийся может не посещать факультативы, может посещать один и более факультативов. Существует расписание внеклассных мероприятий, в котором отражается информация о мероприятии, времени и дне его проведения, для каких классов предназначено, кто из учителей отвечает за него. В системе должна содержаться информация об учебных планах для каждого класса (название предмета, количество часов в неделю, общее количество часов за четверть, две четверти, год).
Система должна предоставлять учителям возможность вводить информацию классных журналов, информацию о своих факультативах, внеклассных мероприятиях для класса, в котором учитель является классным руководителем, а также возможность корректировать расписание внеклассных мероприятий и формировать различные отчеты по своим предметам и классам.
В целях обеспечения безопасности и аудита учителя должны иметь возможность доступа и редактирования, данных только по своим предметам, факультативам и классам, в которых ведут. Доступ к расписанию внеклассных мероприятий позволен только классным руководителям и завучам. Данные об учениках и их родителях доступны завучам и учителям. Учителя могут корректировать только данные об учениках того класса, в котором являются классными руководителями.
Завуч имеет возможность ввода и корректировки расписания уроков и внеклассных мероприятий, а также формирования различный отчетов. При составлении расписания система должна не позволять:
• вводить предметы, не указанные в учебном плане для конкретного класса;
• вводить больше уроков по предмету, чем указано в учебном плане;
• вводить в одном кабинете в одно время уроки более чем в одном классе;
• вводить уроки, преподаваемые одним учителем в одно время более чем в одном классе;
• оставлять «окна» для школьников.
Система должна рассчитывать количество отработанных часов для каждого преподавателя за произвольный промежуток времени.

12. Информационная система для службы занятости.

Построить модель информационной системы для службы занятости. Служба занятости принимает сведенья от работодателей о свободных вакансиях на работу. Данные о свободной вакансии содержат требования к работнику (образование, опыт работы, возраст, пол, требуемые знания), название вакантной должности, возможную заработную плату, график работы, название организации-работодателя. Вторая категория клиентов службы занятости – это люди, ищущие работу. Они предоставляют в службу занятости данные о себе (фамилию, имя, отчество, возраст, пол, образование, специальность, опыт работы, размер запрашиваемой заработной платы, должность и т.п.). Система должна по произвольному запросу выдавать свободные вакансии или данные об ищущих работу. В системе регистрируются дата поступления данных от клиентов, кому из клиентов были предложены какие варианты и результаты их встречи (предоставление работы, отказ, в случае отказа – причина). Если клиент, ищущий работу, сам отказывается от предложенных ему вакансий более n раз, то он перестает быть клиентом службы занятости.
Кроме этого, служба занятости время от времени формирует группы из безработных для прохождения курсов повышения квалификации. Информация о возможных курсах предоставляется организациями, осуществляющими обучение.
С системой параллельно работает несколько сотрудников службы занятости. Одни из них заносят и корректируют данные о работодателях, другие работают с соискателями, третьи отвечают за курсы повышения квалификации. В целях обеспечения безопасности и аудита необходимо разграничить права доступа.

13. Информационная система транспортного предприятия.

Построить модель информационной системы транспортного предприятия. Плановый отдел осуществляет расчет затрат и прибыли (убытков) от деятельности предприятия. В состав затрат включаются затраты на бензин, заработную плату, содержание техники и зданий. Основным документом, по которому ведется учет затрат на бензин, является путевой лист, в котором отражаются следующие данные: показание пробега автомобиля при выезде и заезде, фактический расход бензина, количество перевезенного груза, расстояние, на которое перевезен груз, фамилия водителя, номер, марка и модель автомобиля. Для каждого автомобиля известен плановый расход топлива на 100 км пробега в зависимости от времени года.
Документом для проведения взаиморасчетов с заказчиком является договор, в котором указанно количество груза, расстояние и сумма для расчетов.
Зарплата водителя состоит из двух частей: тарифной части (например: 10 руб. за час работы) и сдельной части (процент от суммы выполненных работ по договору не более 15%). В случае превышения фактического расхода бензина над плановым более, чем на значение установленного коэффициента, к водителю могут быть применены штрафные санкции. В частности, вычет из заработной платы стоимости перерасхода бензина. Данные о перерасходе бензина поступают в бухгалтерию из планового отдела.
Система должна позволять формировать стандартный набор бухгалтерских отчетов по зарплате (ведомости, расчетные листки, сводные ведомости) и договорам (по каждому заказчику) за месяц, квартал, год. Кроме бухгалтерских отчетов, система должна формировать отчеты планового отдела за любой промежуток времени как по водителям, так и по автомашинам.
В целях обеспечения безопасности и аудита бухгалтерская информация должна быть доступна только работникам отдела бухгалтерии в соответствии с их правами.
Данные о водителях доступны для корректировки и ввода только сотрудникам отдела кадров. Информация путевых листов заносится и корректируется только сотрудниками планового отдела.

14. Химический анализатор.

Разработать программное обеспечение для химического анализатора. Химический анализатор определяет количество конкретного вещества в исследуемом образце. На вход анализатора поступают реактивы (растворы химических веществ), исследуемые образцы (растворы) и контрольный образец (раствор, для которого известна концентрация заданного вещества). Оператор задает температуру и время для термостатирования, а также способ измерения. В зависимости от способа измерений результат анализа для каждого образца представляется или в виде какой-то одной единственной количественной характеристики, или в виде массива измерений. Во втором случае результат может быть оформлен в виде графика. Химический анализатор выполняет следующие действия:
• приготовление рабочих реактивов (смешивание реагентов, поступивших на входе);
• отбор исследуемого образца определенного объема (за отбор нужного объема отвечает внутреннее устройство – дозиметр);
• смешивание образца с рабочим реактивом;
• термостатирование (поддержание заданной температуры определенный промежуток времени);
• фотометрирование – измерение оптической плотности пробы;
• расчет результата анализа.
Для реализации вышеперечисленных этапов работы используются датчик температуры, таймер, фотометр.
Существует два способа получения результатов:
• по конечной точке;
• кинетический.
В первом случае фотометрирование проводится один раз, после окончания реакции. Используя второй вариант, можно наблюдать за ходом реакции благодаря тому, что фотометрирование делается несколько раз через фиксированные промежутки времени в течение заданного периода. Расчет результата ведется на основе разности интенсивностей окраски веществ, полученных в результате химической реакции из контрольного образца и исследуемых образцов.

15. Автомат по продаже напитков.

Построить модель программного обеспечения для автомата по продаже напитков. Автомат осуществляет следующие действия: прием наличных денег, запрос напитка и его ингредиентов, выдачу напитка, выдачу сдачи. Начальное состояние автомата – это состояние ожидания, на дисплее в этот момент выводится приглашение. Заказчику, ответившему на это приглашение, последовательно выдаются сообщения о действиях: в приемник внести купюру (купюры); выбрать напиток; выбрать его ингредиенты и их количество (сахар, сливки и т.п.); приготовление напитка; выдача сдачи, если требуется. После принятия денежных купюр, автомат совершает их проверку, если проверка прошла не успешно, то автомат выводит соответствующее сообщение и возвращает купюры. После задания заказчиком напитка и его ингредиентов, автомат совершает проверку, имеются ли в достаточном количестве заданные ингредиенты, если нет, то заказчику выводятся сообщение и список возможных действий (выбрать другой напиток, изменить ингредиенты и их количества, отказаться). Также автомат совершает проверку: достаточно ли денежных средств внесено за заданный напиток, если нет, то выводятся сообщение и предложения (внести не достающую сумму, изменить ингредиенты и их количество, выбрать другой напиток, отказаться). В случае отказа на любом этапе автомат возвращает внесенные деньги, и напиток не выдает.

16. Программное обеспечение пекарни.

Построить модель программного обеспечения для автоматизированной пекарни. Пекарня осуществляет следующие действия: приготовление теста по заданному рецепту; формирование изделий из теста или заполнение форм тестом; выпечка по заданному режиму. Для приготовления теста используются датчики массы и уровня подъема теста, а также дозаторы для ингредиентов. Количество составляющих задается рецептом, некоторые составляющие смешиваются предварительно друг с другом, а только затем эта смесь вводится в тесто. Если готовится дрожжевое тесто, то требуется время и определенная температура для подъема теста. В этом случае система обращается к показаниям датчиков температуры, уровня подъема теста, таймера. Если в течение определенного промежутка времени тесто не поднимается, то оператору выдается соответствующее сообщение. После формирования изделий из теста или заполнения форм тестом, тесту опять дается время на подъем и после этого начинается процесс выпечки. Выпечка осуществляется по заданному режиму. Режим представляется списком из временных интервалов и температур, соответствующих этим интервалам. Система должна учитывать время, требуемое на разогрев и остывание печи, для этого используются датчики температуры и таймер.

17. Информационная система метеорологической службы.

Построить модель информационной системы метеорологической службы. Система должна обеспечивать ввод и редактирование информации о направлении и силе ветра, об осадках, облачности, атмосферном давлении, влажности воздуха, на определенной территории, в конкретный промежуток времени, а также о перемещениях и эволюции атмосферных фронтов. Иногда информация о погодных условиях представляется на различных высотах. В базе данных системы обязательно фиксируется источник информации (метеостанция, спутник и т.п.)
Система обеспечивает поиск данных по территориальному и временному признаках.
Информационная система проводит анализ данных и формирует прогноз погоды, а также перемещениях и эволюции атмосферных фронтов на определенный временной промежуток на определенной территории и сохраняет его в базе данных.

18. Программное средство планирования и управления проектами.

Система должна обеспечивать добавление и редактирование информации о проектах менеджерами проектов. Сведения о проектах состоят из названия, уникального номера, описания, ФИО руководителя проекта, сроки исполнения проекта. Каждый проект включает группу задач. У каждой задачи есть название, описание того, в чем состоит задача, результаты, планируемые и фактические сроки ее исполнения, ФИО того, кто отвечает за исполнение задачи, а также ФИО всех, кто задействован в реализации этой задачи, Учесть, что сроки исполнения проекта, задач могут меняться, в системе должна регистрироваться информация о всех изменениях сроков с указанием причины.
Ответственный за задачу каждый день отправляет по электронной почте отчет менеджеру проекта о степени готовности задач, назначенных на текущей день. Менеджер регистрирует эту информацию в системе.
Система должна обеспечивать выдачу следующих данных:
• какие задачи не реализованы на текущую дату;
• какие задачи реализованы с опозданием;
• кто отвечает за исполнение заданной задачи;
• кто является руководителем заданного проекта;
• в каких проектах и в реализации, каких задач задействован заданный сотрудник.
С системой параллельно работает несколько сотрудников. В целях обеспечения безопасности и аудита необходимо разграничить права доступа. Добавлять и редактировать информацию о проекте и задачах проекта может только менеджер проекта и руководитель проекта. Для всех остальных информация доступна только в режиме просмотра.

19. Система управления лифтами
Необходимо разработать систему управления несколькими лифтами, по крайней мере двумя – пассажирским и грузовым. Система должна планировать работу лифтов, чтобы отвечать на запросы пользователей с разных этажей, а также управлять движением лифтов между этажами.
В каждом лифте есть:
кнопки лифта для выбора этажей назначения;
лампочки лифта, показывающие на каких этажах лифт остановится;
кнопка «стоп» для остановки лифта;
кнопка «вызов» для сообщения об аварии в случае аварийной останови лифта;
динамик или табло, сигнализирующие о принятии вызова;
мотор лифта, который управляется командами подъема, спуска и останова;
дверь лифта, которая управляется командами открывания и закрывания;
датчик перегрузки лифта, блокирующий движение в случае перегрузки лифта.
На каждом этаже есть:
кнопки этажа «вверх» и «вниз» (на нижнем и верхнем по одной кнопке);
лампочки этажа, показывающие в каком направлении вызван лифт (на нижнем и верхнем по одной лампочке);
табло, показывающее на каком этаже в данный момент находится лифт;
датчик прибытия, определяющий факт прибытия лифта на этаж.
С аппаратной точки зрения кнопки лифта, кнопки этажа и датчики прибытия и перегрузки являются асинхронными устройствами ввода/вывода, то есть при наличии у них входной информации генерируется прерывание. Все остальные устройства вво¬да/вывода пассивны. Лампочки лифта и этажа включаются аппаратно, но выключать их должна программа. Лампочки управления и включаются, и выключаются программой.
Реакция системы на вызовы должна выполняться в зависимости от текущего положения лифта, т.е. если лифт находится вблизи этажа, с которого поступил вызов, и движется в попутном направлении и отсутствует перегрузка, то система должна останавливать лифт. Если лифт находится на некотором этаже и вызовов нет, то он остается в покое с закрытыми дверями.
Программное обеспечение системы должно визуально в динамике отображать информацию о текущем положении лифтов, их загрузке и о поступающих вызовах.
В целях проверки работоспособности в программном средстве должна быть предусмотрена имитация этажных пультов управления и лифтовых пультов управления, с возможностью формирования вызовов.

20. Банковская система
Банк владеет несколькими банкоматами, по крайней мере двумя, которые находятся в разных местах и соединены глобальной сетью с центральным сервером. B каждом банкомате есть устройство считывания карточек, устройство выдачи наличных, клавиатура с дис-плеем и устройство печати чеков. Банкомат позволяет клиенту снять деньги с че¬кового или сберегательного счета, получить справку о балансе счета, а также пе¬ревести деньги с одного счета на другой. Клиент инициирует транзакцию, когда вставляет карточку в устройство считывания. На магнитной полосе на обратной стороне карточке помещены закодированный номер карточки, дата начала и дата окончания действия. Если система опознает карточку, то она проверяет, не истек ли срок действия, совпадает ли введенный клиентом ПИН-код с тем, что хранит¬ся в системе, и не числится ли данная карточка утерянной или украденной. Кли¬енту даются три попытки для ввода правильного ПИН-кода, после третьей ошибки карточка конфискуется. Также конфискуются утерянные и украденные карточки.
Если ПИН-код напечатан правильно, система предлагает клиенту выбрать одну из трех операций: снятие денег, получение справки или перевод. Прежде чем выдать наличные, система проверяет, что на указанном счету достаточно денег, что не превышен суточный лимит и что в банкомате есть требуемая сумма. Если транзакция одобрена, то выдается запрошенная сумма, печатается чек, а карточка возвращается клиенту. До начала транзакции перевода денег система проверяет, что у клиента есть хотя бы два счета и что на дебетуемом счете достаточно денег. Для одобренных транзакций получения справки и перевода денег печатается чек и карточка возвращается. Клиент может в любой момент отменить транзакцию, после чего карточка возвращается сразу. Записи о клиентах, счетах и карточках хранятся на сервере.
Оператор вправе остановить банкомат для пополнения запаса наличных и для профилактического обслуживания, а затем запустить его снова.
Программные средства для открытия и закрытия счетов, а также для создания, обновления и удаления записей о клиентах и дебетования счетов также необходимо реализовать в разрабатываемой системе.
Программное обеспечение системы должно визуально в динамике отображать информацию о текущем состоянии банкоматов.
В целях проверки работоспособности в программном средстве должна быть предусмотрена имитация пультов управления банкоматов.

21. Автомобильная система круиз-контроля и мониторинга
Данная система относится к классу встраиваемых систем реального времени.
Система автоматического круиз-контроля активизируется и управляете ручкой, расположенной справа от рулевой колонки. Ручка имеет три положения «Разгон», «Возобновление» и «Выкл».
Если ручка находится в положении «Разгон», то машина разгоняется при ненажатой педали акселератора. После отпускания ручки набранная скорость (называемая далее крейсерской) поддерживается и запоминается.
Переводом ручки в положение «Выкл» можно отключить систему круиз-кон¬троля в любой ситуации.
|Круиз-контроль автоматически отключается при нажатии на педаль тормоза.
возобновление
При переводе ручки в положение «Возобновление» восстанавливается последняя сохраненная скорость. При выключении двигателя значение, которое было запомнено ранее сбрасывается.
В системе должны быть предусмотрены функции калибровки и мониторинга.
Калибровочная константа, представляет собой число оборотов вала на пройденный километр пути. Водитель может нажатием кнопки «Начать калибровку», запустить процесс калибров¬ки на время, необходимое для прохождения одного км, а нажатием кнопки «Прекратить калибровку» в конце км окончить про¬цесса калибровки.
От системы мониторинга требуется:
• вывод средней скорости с момента начала движения на бортовой дисплей. Водитель может сбросить показатель счетчика начала измерения;
• вывод среднего расхода топлива с момента начала движения на бортовой дис¬плей. Водитель способен сбросить показатель счетчика начала измерения;
• уведомление водителя о необходимости технического обслуживания (ТО):
o через каждые 5000 км – замена масла;
o через каждые 10000 км – замена воздушного фильтра и масла;
o через каждые 15000 км – обслуживание на станции.
Следует предусмотреть три кнопки, с помощью которых механик сбросит индикаторы необходимости ТО после его проведения.
Сообщения о необходимости ТО показываются на отдельном дисплее.
Когда до момента ТО остается не более 250 км, на этот дисплей периодически выводится кратковременное напоминание. Если до ТО осталось менее 50 км, такое сообщение должно гореть постоянно. Если машина не обслуживается вовремя, может присутствовать одновременно несколько напоминаний. Не должно быть непредсказуемых взаимодействий между системой круиз-контроля и функциями мониторинга.
Функции круиз-контроля рассматриваются как задача управления процессами. Алгоритм управления скоростью включается и выключается в результате действий водителя, которые фиксируются автомобильными датчиками. У данного алгоритма есть целевое значение (требуемая крейсерская скорость) и управляемая переменная (текущая скорость машины). Алгоритм сравнивает целевое значение с управляемой переменной, чтобы уменьшать или увеличивать скорость машины, пока; она не достигнет нужной величины. С этой целью корректируется дроссельная заслонка в ту или другую сторону, т.е. производится воздействие на двигатель. Двигатель разгоняет или тормозит машину путем увеличения (или уменьшения) частоты вращения вала. При каждом полном обороте вал выдает импульс. Система определяет текущую скорость движения (управляемую переменную) по числу оборотов вала.
Программное обеспечение системы должно визуально в динамике отображать информацию о текущем состоянии автомобиля.
В целях проверки работоспособности в программном средстве должна быть предусмотрена имитация ручек, кнопок и дисплеев системы круиз-контроля.

22. Система электронной коммерции
Система электронной коммерции предназначается для WWW.
В электронной коммерции есть покупатели и поставщики. Каждый
покупатель имеет контракт на закупку с определенным поставщиком, а также
один или несколько банковских счетов, с помощью которых он расплачивается.
Каждый поставщик предоставляет каталог товаров, принимает заказы от покупа¬телей и ведет с ними расчеты.
Покупатель может просматривать размещенные в Internet каталоги поставщи¬ков с помощью браузера и отбирать нужные ему товары в заказ. Заказ покупателя необ¬ходимо сверить с хранящимися документами, чтобы убедиться в наличии контрак¬та, по которому будет производиться оплата. С каждым контрактом ассоциирован операционный лимит. Если контракт заключен и лимит не превышен, то создает¬ся заказ, который посылается поставщику. Поставщик подтверждает получение заказа и вводит планируемую дату отгрузки. Система следит за заказами и уве¬домляет поставщика и покупателя о возможных задержках. При отгрузке заказа покупателю посылается извещение. Покупатель подтверждает получение заказа, после чего его состояние обновляется. Когда товар получен, дается разрешение на выставле¬ние счета-фактуры. Счет-фактура сверяется с контрактом, лимитом средств и со¬стоянием заказа, затем производится оплата.
Предлагается, что в качестве посредни¬ков между клиентами и серверами будут применяться агенты.
Клиентские агенты действуют от имени пользователя, они взаимодействуют с серверными, посылая им запросы. Чтобы выполнить запрос, серверный агент обычно взаимодействует с серверны¬ми объектами и другими агентами.
В системе электронной коммерции есть клиентские агенты двух типов: Агент По¬купателя (один экземпляр для каждого покупателя) и Агент Поставщика (один экземпляр для каждого поставщика). Серверных агентов три, и каждый может существовать в нескольких экземплярах:
• Агент Заявок, по одному экземпляру для каждой заявки;
• Агент Заказов, по одному экземпляру для каждого заказа;
• Агент Счетов-Фактур, по одному экземпляру для каждого счета-фактуры.
Агент Покупателя – это клиентский агент, действующий от имени челове¬ка-покупателя. Он помогает покупателю, который хочет заказать товары по ката¬логу. Агент принимает запрос покупателя и взаимодействует с серверными аген¬тами, которые берут на себя дальнейшую обработку заказа и отслеживание его состояния. Покупатель может выбрать из каталога несколько товаров. Когда вы-бор сделан, Агент Покупателя инициирует определенные действия от имени покупателя, в частности посылает запрос Агенту Заявок.

Агент Заявок – это серверный агент, который обращается к различным ба¬зам данных и взаимодействует с разными агентами для обработки размещенной покупателем заявки. Точнее, он получает информацию из баз данных заявок, кон¬трактов и операционных лимитов, а также взаимодействует с Агентом Покупа¬теля. Базе данных заявок посылается сообщение с целью определить, имеется ли подходящий контракт. Из базы данных операционных лимитов серверный агент получает информацию о наличии необходимого лимита. Если ответы на оба за¬проса положительные, то Агент Заявок авторизует заявку и посылает ее статус Агенту Покупателя, который, в свою очередь, направляет запрос Агенту За¬казов.
Агент Поставщика - это клиентский агент, предназначенный для работы с поставщиком. Он получает заказ у Агента Заказов и помогает поставщику его выполнить. Агент обновляет базу данных запасов и посылает статус заказа Агенту Заказов и Агенту Покупателя. В конечном итоге покупатель подтверждает получение товара, и в заказе проставляется дата доставки.
Агент Поставщика посылает счет-фактуру Агенту Счетов-Фактур, нахо¬дящемуся на стороне покупателя, когда Агент Счетов-Фактур получает от Агента Заказов уведомление о получении товара, он обращается к базе данных контрактов и базе данных операционных лимитов. Если ответы положительны, то Агент Счетов-Фактур авторизует платеж и посылает счет-фактуру в базу данных счетов к оплате, а затем отправляет электронное платежное поручение в банк покупателя.
Программное обеспечение системы должно содержат как клиентскую, так и серверную части и давать возможность клиенту просматривать информацию о состоянии его заказа, а поставщику информацию о клиенте и его заказе.

23. Интернет-магазин
Производитель компьютеров предлагает возможность приобретения своей продукции через Internet. Клиент может выбрать компьютер на Web-странице производителя. Компьютеры подразделяются на серверы, настольные и портативные. Заказчик может выбрать стандартную конфигурацию или построить требуемую конфигурацию в диалого¬вом режиме. Компоненты конфигурации представляют¬ся как список для выбора из доступных альтернатив. Для каждой новой конфигурации система может подсчитать цену.
Чтобы оформить заказ, клиент должен заполнить информацию по доставке и оплате. В каче¬стве платежных средств допускается использование кредитных карточек или чеков. После ввода заказа система отправляет клиенту по электронной почте сообщение с подтверждени¬ем получения заказа вместе с относящимися к нему деталями. Пока клиент ожидает прибы¬тия компьютера, он может проверить состояние заказа в любое время в диалоговом режиме. Серверная часть обработки заказа состоит из заданий, необходимых для проверки кредитоспособности и способа расчета клиента за покупку, истребования заказанной конфигурации со склада, печати счета и подачи заявки на склад о доставке компьютера клиенту.
1. Для знакомства со стандартной конфигурацией выбираемого сервера, настольного или портативного компьютера клиент использует Web-страницу Internet-магазина. При этом также приводится цена конфигурации.
2. Клиент выбирает детали конфигурации, с которыми он хочет познакомиться, возможно, с намерением купить готовую или составить более подходящую конфигурацию. Це¬на для каждой конфигурации может быть подсчитана по требованию пользователя.
3. Клиент может выбрать вариант заказа компьютера по Internet либо попросить, чтобы продавец связался с ним для объяснения деталей заказа, договорился о цене и т.п. прежде, чем заказ будет фактически размещен.
4. Для размещения заказа клиент должен заполнить электронную форму с адресами для доставки товара и отправки счет-фактуры, а также деталями, касающимися оп¬латы (кредитная карточка или чек).
5. После ввода заказа клиента в систему продавец отправляет на склад электронное требование, содержащее детали заказанной конфигурации.
6. Детали сделки, включая номер заказа, номер счета клиента, отправляются по электрон¬ной почте клиенту, так что заказчик может проверить состояние заказа через Internet
7. Склад получает счет-фактуру от продавца и отгружает компьютер клиенту.

24. Запись на университетские курсы
Университет проводит набор студентов и аспирантов дневной и вечерней формы обучения для подготовки по ряду специальностей. Учебная структура унив¬ерситета состоит из факультетов. Факультет имеет в своем составе несколько кафедр. Хотя обучение по определенной специальности является прерогативой факультета, обучение по специальности может включать дисциплины, преподаваемые на других факультетах. Университет гордится свободой, предоставляемой им студентам в выборе дисциплин, изучаемых для получения специальности. Гибкость выбора учебных курсов оказывает дополнительную нагрузку на университетскую систему набора. Индивидуально подобранным программам обучения должны быть противо¬поставлены правила, регулирующие получение диплома по выбранной специальности. Такие правила можно сформулировать, например, в виде структуры дисциплин, изучение которых является обязательной предпосылкой получения диплома, так, чтобы студент мог прослушать обязательные для данной специальности курсы. Выбор студентами дисциплин может быть ограничен несоответствием расписаний, максимальной вместимостью аудиторий и т.д. Гибкость в получении образования, предлагаемого университетом, стала одной из при¬чин устойчивого роста количества студентов. Однако, для сохранения своих традицион¬но сильных сторон система набора – по-прежнему, частично ручная – должна быть за-менена новым программным решением. Предварительный поиск готовых программных пакетов не дал результатов. Университетская система набора достаточно уникальна, чтобы оправдать разработку ПО собственными силами. От системы требуется оказывать помощь в предварительной деятельности по записи на курсы и управляться с процедурами набора. Предварительная деятельность по записи должна включать рассылку оценок последнего семестра студентам наряду с инструк¬циями по записи на лекции. В период записи на курсы система должна принимать заяв¬ленные студентами программы обучения и проверять их на предмет обязательности, конфликтов расписания, вместимости аудиторий, специальных санкций и т.д. Решения по некоторым проблемам могут требовать консультаций с научными руководителями или профессорами, ответственными за преподавание дисциплин.
1. Для получения каждой университетской степени существует несколько обязатель¬ных и несколько выборочных курсов.
2. Каждому курсу соответствует заданный уровень и значение условных очков. За один курс может быть начислено несколько очков. Студент обязан набрать на данном го¬ду обучения такое число курсов, чтобы число очков за них было не ниже определен¬ного значения.
3. Курс может быть составной частью системы получения произвольного количества степеней.
4. Каждая степень определяет минимальное общее значение условных очков, требуе¬мое для получения степени (например, для степени бакалавра (вычислительные и информационные системы) требуется 68 очков, включая обязательные курсы).
5. Студенты могут составлять из дисциплин программы обучения, приспособленные к их индивидуальным нуждам и обеспечивающие им получение степени, на которую они претендуют.
6. Выбор студентами учебных курсов может быть ограничен из-за конфликтов расписания, а также за счет ограничения на количество студентов, которое может быть набрано на текущий предлагаемый курс.
7. Предлагаемая студентом программа обучения вводится в интерактивную систему записи на курсы. Система проверяет программу на непротиворечивость и сообщает о любых проблемах. Проблемы требуется решать при помощи научного руководителя. Оконча¬тельная программа является предметом научного согласования со стороны заведующего кафедрой, а затем направляется в деканат.
8. Академическая характеристика студента должна быть доступна по требованию. Характеристика должна включать информацию об оценках, полученных студентом по каждому из курсов, на которые записался студент (и которые он не покинул без взы¬скания, т.е. в первые три недели с начала семестра).
9. За каждый курс отвечает преподаватель, однако этот курс могут вести и другие преподаватели. В течение разных семестров за один курс могут отвечать разные преподаватели; кроме того, в течение разных семестров курс могут вести разные преподаватели.
10. Чтобы взять определенные курсы, студент должен сначала пройти обязательные курсы, получив требуемые оценки (простого прохождение курса может быть недостаточно). Студент, который не смог удовлетворительно пройти курс, может попы¬таться сделать это вновь. Для записи на курс в третий раз или в случае требования освобождения от обязательных курсов необходимо получить согласие представите¬ля соответствующего деканата.
11. Если студенты записываются на те учебные курсы, которые в совокупности дают за год менее чем 18 условных очков, эти студенты относятся к категории студентов «вечерней"» формы обучения.
12. Для того, чтобы получить возможность записаться на программу курсов, которые в данном семестре дают в совокупности более 14 условных очков, требуется специальное разрешение.

25. Видеомагазин
Видеомагаэин намерен предложить прокат видеокассет и дисков ши¬рокой публике. Ассортимент магазина составляет около тысячи видеокассет и пятьсот видео¬дисков. Запас уже заказан у одного поставщика, однако, для будущих заказов директор намерен прибегать к услугам большего числа поставщиков. Все видеокассеты и диски снабжены штрих-кодом, так что сканер, интегрированный в систему, может поддержи¬вать операции выдачи напрокат и возврата видеофильмов. Членские карточки клиентов также снабжены штрих-кодом. Существующие клиенты имеют возможность резервировать видео таким образом, что¬бы комплект видеофильмов был собран к определенной дате. Система должна обладать гибким поисковым механизмом для ответов на запросы клиентов, включая вопросы, ка-сающиеся фильмов, которых нет в ассортименте магазина, но которые он может зака¬зать по просьбе клиента.
1. Видеокассеты записаны в формате "VHS". Видеодиски запи-саны в формате DVD.
2. Для каждого фильма установлен конкретный период проката (исчисляемый в днях) с соответствующей платой за прокат за этот период.
3. Видеомагазин должен быть в состоянии немедленно дать ответ на любой запрос по наличию фильмов в запасе, а также количеству кассет или дисков (текущие условия по каждой ленте и диску должны: быть известны и зафиксированы).
4. Плата за прокат отличается в зависимости от видеоносителя: кассета или диск.
5. Хотя магазин держит а запасе видеодиски только одного формата — DVD, пользова¬тели желали бы расширить в будущем систему проката и на другие форматы дисков.
6. Работники видеомагазина стремятся запомнить коды наиболее популярных лент. Зачастую при идентификации фильма они используют именно код фильма, а не его название. Это полезная практика, поскольку фильм с одним названием мог выпускаться разными режиссерами.
7. Руководству видеомагазина тре¬буется знать, является ли видеокассета новой кассетой или она уже перезаписана.
8. Емкость памяти видеодиска позволяет хранить не¬сколько версий одного фильма, каждая из которых отличается языком или окончанием.
9. За кассеты и диски, возвращенные позже срока, взимается дополнительная плата за период, превышающий срок проката.
10. Фильмы заказываются у поставщика, который, в общем случае, может поставить кассеты и диски в течение одной недели. Обычно один заказ делается на несколько фильмов.
11. Забронировать можно те фильмы, которые заказаны у поставщика и/или все копии которых находятся в прокате. Можно также забронировать те фильмы, которых нет в запасе и которые не заказаны у поставщика; при этом с клиента требуется задаток за один период проката.
12. Клиент может также сделать несколько предварительных заказов, однако для каждого забронированного фильма готовится отдельный запрос на бронирование. Бронирование может быть отменено из-за отсутствия реакции со стороны клиента в течение одной недели с момента, когда клиенту было сообщено о возможности взять фильм напрокат. Если за фильм был уплачен задаток, он записывается на счет клиента.
13. База данных хранит обычную информацию о поставщиках и клиентах, т.е. адреса, телефонные номера и т.д. В каждом заказе поставщику указываются заказываемые фильмы, их количество, форматы кассеты/диска, а также дата ожидаемой доставки, отпускная цена, возможные скидки и т.д.
14. Когда кассета возвращается клиентом или поступает от поставщика, вначале удовлетворяются предварительные заказы. Работники магазина устанавливают контакт с клиентами, сделавшими предварительный заказ. Для правильной обработки бронирования фильмов информация, связанная с бронированием, обновляется дважды: после установления контакта с клиентом, когда ему сообщается, что «забронированный фильм пришел», и после сдачи фильма клиенту напрокат. Эти шаги гарантируют правильное проведение операции бронирования.
15. Клиент может взять несколько кассет или дисков, однако каждому взятому видеоносителю ставится в соответствие отдельная запись. Для каждого выдаваемого напрокат фильма фиксируются дата и время выдачи, установленный и фактический срок возврата. Позже запись о покате обновляется, чтобы отразить факт возврата видеофильма и факт окончательного платежа (или возврата денег). Кроме того, запись хранит информацию о продавце, отвечающем за прокат фильма, Детальная информация о клиенте и по прокату хранится в течение года, чтобы можно было легко определить уровень доверия к клиенту. Старая информация по прокату сохраняется в течение года в целях проведения аудита.
16. Все операции выполняются с использованием наличности, электронного перевода
денег или кредитных карточек. От клиентов требуется внести плату за прокат при выдаче кассет/дисков.
17. Если кассета/диск возвращены позже установленного срока (или не могут быть возвращены по каким-либо причинам) плата снимается либо со счета клиента, либо принимается непосредственно от клиента.
18. Если кассета/диск задержаны более чем на два дня, клиенту отправляется уведомление о задержке. После отправки двух уведомлений о задержке одной и той же кассеты/диска, клиент предупреждается о том, что он является «нарушителем» и при следующем его обращении в магазин руководство рассматривает вопрос о снятии с него статуса «нарушителя».

26. Управление контактами с клиентами
Компания, занимающаяся исследованием рынка, обладает стабильной клиентской базой организаций, которые приобретают отчеты по анализу рынка. Некоторые крупные кли¬енты приобретают у компании также специализированное ПО, предназначенное для создания отчетов. Этих клиентов компания также обеспечивает необработанной и агре¬гированной информацией для генерации их собственных отчетов. Компания постоянно ищет новых клиентов, даже если новые клиенты заинтересованы только в получении однократных, узкоспециализированных отчетов по рынку, поэтому требуется система управления контактами с клиентами (перспективными, реальными и прошлыми). Новая система управления контактами должна разрабатываться своими силами и нахо¬диться в распоряжении всех работников компании, но с предоставлением различного уровня доступа. Система должна обеспечить гибкое планиро¬вание и перепланирование видов деятельности, связанных с контактами, так чтобы со¬трудники могли успешно кооперировать свои усилия в завоевании новых клиентов и стимулировании существующих взаимоотношений с клиентами.
1. Система поддерживает функции "постоянного контакта" с наличной и потен¬циальной клиентской базой, так чтобы откликаться на ее нужды и заполучать новые контракты на приобретение товаров.
2. Система хранит имена, номера телефонов, обычные почтовые и курьерские адреса и т.д. организаций и наших контактных лиц в этих организациях.
3. Система позволяет нашим сотрудникам планировать задания и мероприятия, кото¬рые необходимо провести в отношении наших контактных лиц. Сотрудники плани¬руют задания и мероприятия для других сотрудников или для себя.
4. Задание – это группа мероприятий, которые осуществляются для достижения определенного результата. Результатом может быть превращение потенциального клиента в клиента, организация доставки товара или решение проблемы клиента. К обычным типам мероприятий относятся телефонный звонок, визит, отправка факса, устройство обучения и т.д.
5. Клиент рассматривается как наличный, если существует контракт с этим клиентом на поставку наших товаров или услуг. Однако, функции управления контрактами вы¬ходят за рамки нашей системы.
6. Система позволяет вырабатывать различные отчеты по нашим контактам на основе поч¬тового и курьерского адресов (например, находить всех клиентов по почтовому коду).
7. Дата и время создания задания фиксируются. Можно также сохранить значение «дохода», ожидаемого от осуществления задания.
8. Мероприятия для сотрудника отображаются на экране его компьютера в виде страницы календаря (один день на страницу). Приоритет каждого мероприятия (низкий, средний, высокий) визуально выделяется на экране.
9. Не со всеми мероприятиями связано понятие «срок исполнения» – некоторые из них являются «бессрочными» (они могут выполняться в любое время в течение дня, на который они запланированы).
10. Время создания мероприятия не может изменяться, а срок исполнения – может.
11. По завершении мероприятия дата и время его завершения фиксируются.
12. Система хранит отличительные признаки для сотрудников, которые создают задания и мероприятия, которым запланировано осуществление мероприятия и которые завершили мероприятие.
13. Главное окно программы должно отображать виды деятельности, запланированные на день для ра¬ботника, использующего систему. Элемент управления Календарь может отображать дея¬тельность, относящуюся как к прошлому, так и к будущему. Мероприятия, запланиро¬ванные на определенное время дня (спланированные по времени), должны отображать¬ся в левой панели окна. Однако, пользователи выдвигают также требование об отображении и обработке не спланированных по времени, просроченных («ожидаемых» в прошлом) и завершенных мероприятий.

27. Телемаркетинг
Благотворительное общество продает лотерейные билеты для пополнения своего бюджета. Пополнение бюджета осуществляется в рамках кампании, направленной на поддержку текущих важных благотворительных мероприятий. Общество хранит список благотворителей (жертвователей). Для каждой новой кампании часть этих благотворителей заранее выбирается для обращения к ним с использованием телемаркетинга, а также, возможно, с помощью прямых обращений по почте. Чтобы завоевать новых приверженцев, общество использует некоторые новейшие схемы. Эти схемы включают специальные призовые кампании для вознаграждения благотворите-лей, закупающих лотерейные билеты в массовом количестве, для привлечения новых жертвователей и т.д. Общество не обращается к случайным потенциальным благотворите¬лям с использованием телефонных справочников или других подобных средств. Для поддержки своей деятельности общество решило заключить контракт на разработ¬ку нового телемаркетингового приложения. От новой системы требуется поддерживать около пятидесяти сотрудников службы телемаркетинга, работающих одновременно. Система должна давать возможность планировать телефонные звонки в соответствии с заранее заданными приоритетами и другими известными ограничениями. От системы требуется устанавливать соединения в соответствии с запланированными телефонными звонками. В случае неудачных попыток соединения звонки должны быть перепланированы так, чтобы можно было попытаться дозвониться позже. Обратные звонки от приверженцев также должны упорядочиваться. Результаты разговора, вклю¬чая заказ лотерейных билетов и какие-либо изменения, касающиеся данных о благотворителях, должны сохраняться.
1. Кампании планируются на основе рекомендации доверенных лиц общества, которые решают, насколько являются своевременными и подобающими те или иные благотворительные мероприятия. Кампании должны быть согласованы с местными органами исполнительной власти. Разработка проекта и планирование кампании поддерживается отдельной прикладной системой – Базой данных кампаний.
2. Существует также отдельная база данных – База данных благо¬творителей, предназначенная для хранения и ведения информации обо всех благо¬творителях – прошлых и настоящих. Эта база данных используется для отбора бла¬готворителей, с которыми необходимо установить контакт в ходе конкретной кампа¬нии. Отобранный сегмент благотворителей передается для работы с ним во время кампании с использованием телемаркетинга.
3. Заявки от благотворителей на лотерейные билеты регистрируются во время сеансов те¬лемаркетинга для их анализа системой обработки заказов. Система обработки заказов отслеживает состояние заявок в базе данных благотворителей.
4. Каждая кампания имеет свое название, которое, как правило, используется при ее упоминании. Кроме того, кампания обладает уникальным внутренним кодом для внутренних ссылок. Каждая кампания проводится в течение заданного периода вре¬мени. Вскоре после закрытия кампании проводится розыгрыш призов и объявляют¬ся владельцы выигрышных билетов.
5. Все билеты пронумерованы. В рамках кампании все билеты обладают уникальными номерами. Общее количество билетов, выпущенных для кампании, количество биле¬тов, проданных до настоящего времени, и текущее состояние каждого билета из¬вестны (например, "наличный", "заказан", "оплачен", "выигрышный").
6. Для установления производительности телемаркетеров благотворительного обще¬ства фиксируется продолжительность звонков и успешные результаты звонков (т.е. звонков, завершившихся заказом билетов).
7. В системе ведется обширная информационная база, касающаяся благотворителей. Помимо обычных деталей, относящихся к контактам (адрес, телефонный номер и т.д.) эта информация включает исторические подробности, такие как дата первого и последнего участия благотворителя в кампаниях вместе с общим количеством кам¬паний, в которых они участвовали. В системе также хранятся данные обо всех из¬вестных предпочтениях и ограничениях, связанных с благотворителем {например, таких как нежелательное время для звонков и обычно используемая им при покупке билетов кредитная карточка).
8. Телемаркетинговые звонки должны обрабатываться в соответствии с определенны¬ми приоритетами. Звонки, на которые не получен ответ или зафиксирован ответ ав¬тоответчика, требуется перепланировать, чтобы попробовать дозвониться позже. Важно изменять время повторных попыток дозвониться.
9. Можно пытаться дозвониться снова и снова до тех пор, пока не будет исчерпан ли¬мит попыток. Этот лимит может отличаться для различных типов звонков. Например, лимит для обычного «звонка-приглашения» может отличаться от лимита для «звонка-напоминания» благотворителю о невыполненном платеже.
10. Возможные результаты звонков классифицируются, чтобы облегчить ввод данных в систему телемаркетерами. Типичными видами результата являются: «успех» (т.е. билеты заказаны), «неудача», «перезвонить позже», «нет ответа», «занято», «автоответчик», «факс», «неверный номер», «разъединение».

28. Измерение затрат на рекламу (Advertising Expenditure Measurement — АЕМ)
1. Организация, занимающаяся АЕМ-деятельностью, собирает данные по рекламе в отношении различных торговых точек, предлагающих средства аудиовизуальной информацию, теле- и радиостанций, газет, журналов, а также кинематографа, на¬ружной и Internet-рекламы.
2. Собранные данные позволяют охватить две области анализа, интересующие АЕМ-клиентов. Клиенты могут заказать отчет о том, действительно ли реклама, за кото¬рую они платят, появляется так, как было предусмотрено (это называется монито¬рингом рекламной кампании). Клиент может также заказать отчет, который очерчи¬вает их конкурентные позиции в отношении рекламы применительно к отрасли, в ко¬торой они работают (это называется отчетом о затратах). Отчеты о затратах касаются уровня, которого достигли затраты рекламодателя или затраты на реклам¬ный товар с точки зрения различных критериев (время, географические регионы, средства информации и т.д.).
3. Отчеты о затратах составляют основу АЕМ-деятельности. Фактически, любой АЕМ-клиент (не только клиент, занимающийся рекламой) может приобрести отчет в виде программного обеспечения для генерации отчетов, изготовленного под заказ или в виде отпечатанных отчетов. Клиентская база АЕМ-предприятия состоит из индиви¬дуальных рекламодателей, рекламных агентств, средств массовой информации, консультантов, покупающих средства информации, а также руководителей подраз¬делений сбыта и маркетинга, органов, планирующих развитие средств информации, покупателей и т.д.
4. АЕМ-предприятие заключает контракты со многими торговыми точками, предлагающими средства информации, касающиеся получения от них на регулярной осно¬ве электронных файлов журналов, которые содержат информацию по содержанию рекламы в этих торговых точках. Информация из регистрационных журналов пере¬носится в базы данных АЕМ, а затем подвергается тщательной проверке – отчасти автоматически, отчасти вручную. Задача проверки состоит в том, чтобы подтвер¬дить, что все зафиксированные детали, касающиеся рекламы, обладают достовер¬ностью и логичностью в контексте информационной среды. Существенную часть АЕМ-деятельности составляет ручной ввод (мониторинг) данных по рекламе, для ко¬торой не существует электронных учетных журналов.
5. После ввода и проверки реклама подвергается ревалоризации – процессу оценивания затрат, необходимых на ту или иную рекламу.

29. Программная система учета товаров
На складе для каждого товара фиксируется место хранения (определенная ячейка), количество товара и его поставщик. Система поддержки заказа и учета товаров должна обеспечивать добавление информации о новом товаре, изменение или удаление информации об имеющемся товаре, хранение (добавление, изменение и удаление) информации о поставщиках, включающей в себя название фирмы, ее адрес и телефон. При помощи системы составляются заказы поставщикам. Каждый заказ может содержать несколько позиций, в каждой позиции указываются наименование товара и его количество в заказе. Система учета по требованию пользователя формирует и выдает на печать следующую справочную информацию:
• список всех товаров;
• список товаров, имеющихся в наличии;
• список товаров, количество которых необходимо пополнить;
• список товаров, поставляемых данным поставщиком.

30. Система автоматизации для библиотеки
Система поддержки управления библиотекой должна обеспечивать добавление информации о читателях в регистрационный список, редактирование этой информации и удаление ее. В регистрационном списке хранятся следующие сведения: фамилия, имя и отчество читателя; номер его читательского билета и дата выдачи билета. В каталоге библиотеки хранится информация о книгах: название, список авторов, библиотечный шифр, год и место издания, название издательства, общее количество экземпляров книги в библиотеке и количество экземпляров, доступных в текущий момент. Система обеспечивает поиск книг в каталоге на основании введенного шифра или названия книги. В системе осуществляется регистрация взятых и возвращенных читателем книг. Про каждую выданную книгу хранится запись о том, кому и когда была выдана книга, и когда она будет возвращена. При возврате книги в записи делается соответствующая пометка, а сама запись не удаляется из системы. Система должна выдавать следующую справочную информацию:
• какие книги были выданы за данный промежуток времени;
• какие книги были возвращены за данный промежуток времени;
• какие книги находятся у данного читателя;
• имеется ли в наличии некоторая книга.
31. Программное обеспечение WWW-конференции
WWW-конференция представляет собой хранилище сообщений в сети Интернет, доступ к которому осуществляется при помощи браузера. Для каждого сообщения конференции хранятся значения следующих полей: номер сообщения, автор, тема, текст сообщения, дата добавления сообщения, ссылка на родительское сообщение. Начальной страницей конференции является иерархический список сообщений. Верхний уровень иерархии составляют сообщения, открывающие новые темы, а подуровни составляют сообщения, полученные в ответ на сообщения верхнего уровня. Сообщение-ответ всегда имеет ссылку на исходное сообщение. В списке отображаются только темы сообщений, их авторы и даты добавления. Просматривая список, пользователь выбирает сообщение и по гиперссылке открывает страницу с текстом сообщения. Помимо текста на этой странице отображается список (иерархический) сообщений являющихся ответами, ответами на ответы и т.д. Для удобства пользователей необходимо предусмотреть поиск сообщений по автору или по ключевым словам в теме или тексте сообщения.
Сообщения добавляются в конференцию зарегистрированными пользователями, которые при отправке сообщения должны указать свое имя и пароль. Регистрирует новых пользователей модератор конференции - ее ведущий. При регистрации пользователь заполняет специальную форму, содержимое которой затем пересылается модератору и запоминается в базе пользователей. Модератор решает, регистрировать пользователя или нет, и отправляет свой ответ.
При добавлении сообщений пользователь имеет возможность начать новую тему или ответить на ранее добавленные сообщения. После добавления сообщения оно доступно для чтения всем пользователям (даже незарегистрированным), и список сообщений обновляется.
Модератор имеет право по тем или иным причинам удалять сообщения любых авторов. Он также может наказывать пользователей, нарушающих правила поведения в конференции, лишая на некоторое время пользователя возможности добавлять и редактировать сообщения.

32. Модель системы автоматизации производства
На заводе имеется сборочная линия, вдоль которой расположены производственные рабочие станции. Лента конвейера перемещает де-тали между этими станциями. На каждой рабочей станции производятся опреде¬ленные операции с деталью. Поскольку рабочие станции программируемые, то возможно получение различных вариантов готового изделия. Обычно выпускает¬ся серия деталей одного типа, а затем – серия деталей другого типа. На каждой рабочей станции есть сборочный робот, предназначенный для сборки изделия, и подъемно-транспортный робот, который поднимает детали с конвейера и кладет их обратно. Каждый робот оснащен датчиками и приводами. Датчики используются для мониторинга рабочего состояния (например, обнару¬жения прибытия очередной детали), а приводы – для включения и выключения механизмов (например, конвейера). Первая рабочая станция является приемной, последняя – отгрузочной. Эти станции оборудованы только подъемно-транспорт¬ным роботом. Все остальные станции называются линейными, в них имеется так¬же сборочный робот. Дежурные операторы следят за состоянием станций и тре¬вожными сигналами. Шаги, необходимые для получения готового изделия из исходного сырья, опи¬сываются технологической картой процесса, подготовленной инженерами-техно¬логами. Карта определяет вид технологического процесса и последовательность производственных операций. Каждая операция выполняется на некоторой рабо¬чей станции. Обработка новых деталей начинается с того, что начальник производства со¬ставляет наряд-заказ, где указано количество деталей каждого типа.

Обработка каждой детали начинается на приемной рабо¬чей станции, где на ленту конвейера укладываются исходные компоненты. На следующей станции компоненты снимаются с конвейера подъемно-транспортным ро¬ботом и обрабатываются сборочным роботом, после чего подъемно-транспортный робот помещает частично обработанную деталь на конвейер, и она передвигается к следующей станции. Описанный процесс продолжается до тех пор, пока готовая деталь не прибудет на отгрузочную станцию, где подъемно-транспортный робот снимет ее для подготовки к отгрузке заказчику. На заводе применяется система опе¬ративной поставки. Это означает, что рабочая станция получает деталь только тог¬да, когда она готова ее обработать, так что детали никогда не накапливаются.
Необходимо разработать программное обеспечение моделирующее работу рассмотренной системы.