Автоматизированной информационной системе (АИС) и обоснование выбора средств реализации

ОГЛАВЛЕНИЕ

[1] Общие требования

[2] Перечень программной документации


Введение

В настоящее время наличие автоматизированной системы на предприятии/фирме или где-либо в другом месте значительно упрощает жизнь, как сотрудникам, так и любому пользователю в целом.

«Под автоматизированной информационной системой (АИС) будем понимать совокупность программно-аппаратных средств, предназначенных для автоматизации деятельности, связанной с хранением, передачей и обработкой информации». [1]

Именно о создании такой системы и пойдёт речь в данном дипломном проекте. Данная система, разработкой которой я занимаюсь, необходима для внедрения в компанию заказчиков. Она значительно упростит и ускорит работу сотрудников фирмы и их клиентов и поможет в их взаимодействии друг с другом.


Глава 1. Описание предметной области и постановка задачи

  1. Назначение системы:

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

Процесс разработки состоит из:

  1. определения и разработки функциональной модели системы с помощью операционных диаграмм IDEF0;
  2. разработки базы данных для сбора и хранения информации;
  3. разработки алгоритма;
  4. написание программного кода автоматизированной информационной системы.


  1. Описание технологического процесса:

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

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

Счёт отправлялся бухгалтеру, который подсчитывал общую стоимость перелёта и проживания. Счёт и Подтверждение, подписанное менеджером, отправлялось компании-заказчику по электронной почте, в случае если заказчика устраивали предложенные условия, он подтверждал своё согласие в ответном сообщении. Менеджер, после получения этого подтверждения, бронировал билеты и номер в гостинице. Счёт подписывался бухгалтером и руководителем предприятия. Затем оба документа отправлялись заказчику по электронной почте.

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

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

1.3. Постановка задачи.

Целью проекта является: автоматизировать работу сотрудников туристической фирмы «Трио Групп».


Глава 2. Формулировка требований к Автоматизированной информационной системе (АИС) и обоснование выбора средств реализации

2.1. Требования к программному продукту.

Требования к функциональным характеристикам.

АРМ «Менеджер»:

  • Получение данных от заказчика.
  • Передача данных бухгалтеру.
  • Получение данных от бухгалтера.
  • Составление отчёта для заказчика на основе данных, предоставленных бухгалтером.
  • Отправка отчёта заказчику.
  • Получение подтверждения заказа.
  • Формирование итогового Счёта и Подтверждения.
  • Отправка итогового Счёта и Подтверждения заказчику.

АРМ «Заказчик»:

  • Ввод необходимых данных в форму.
  • Отправка данных менеджеру.
  • Получение отчёта от менеджера.
  • Отправка подтверждения заказа менеджеру.
  • Получение итогового Счёта и Подтверждения от менеджера.

АРМ «Бухгалтер»:

  • Получение данных от менеджера.
  • Отправка данных менеджеру.


Максимальное количество АРМ:

- АРМ «Бухгалтер» - 1.

- АРМ «Менеджер» - 1.

По результатам тестирования и предварительного анализа, проведённого в ходе научно-исследовательской работы, количество АРМ «Заказчик» было установлен как одно. В дальнейшем, с увеличением людей, пользующихся продуктом, число АРМ увеличится.

2.2. Требования к надежности.

Для надёжного функционирования системы должен соблюдаться следующий критерий: для того, чтобы исключить несанкционированный доступ посторонних лиц к функциям рабочих мест обслуживающего персонала (АРМ «Менеджер», АРМ «Бухгалтер»), в системе должна быть введена аутентификация.

  1. Требования к условиям эксплуатации.

К ЭВМ обслуживающего персонала выдвигаются следующие требования:

«Компьютер предназначен для работы в закрытом отапливаемом помещении при следующих условиях окружающей среды:

• температура окружающего воздуха от +10°C до +35°C.

• атмосферное давление от 630 до 800 мм ртутного столба.

• относительная влажность воздуха не более 80%.

• запыленность воздуха не более 0,75 мг/м.

• кроме этого, в воздухе не должно быть паров агрессивных жидкостей и веществ, вызывающих коррозию.

Требования к электропитанию.

Электропитание осуществляется от однофазной сети переменного тока напряжением 220 В ± 10% и частотой 50-60 Гц. Компьютер и его периферийные устройства должны подключаться к электрической сети через специальные розетки, имеющие заземляющие контакты. Заземляющие контакты должны обеспечивать надежное заземление. Сопротивление заземляющего контура должно быть не более 4 Ом.

ВНИМАНИЕ! Запрещается использовать в качестве заземления водопроводные и газовые трубы, радиаторы и другие узлы парового отопления.

От розетки, к которой подключен компьютер, не рекомендуется подавать электропитание на устройства, создающие при работе большие импульсные помехи в электрической сети (кондиционеры, пылесосы, электровентиляторы и так далее). Это может вызвать сбои в работе компьютера и привести к потере информации». [3]

2.4. Требования к составу и параметрам технических средств.

ЭВМ «Заказчика», «Менеджера», «Бухгалтера» должны выполнять следующие требования:

- Работать под управлением ОС Microsoft Windows XP (так как данная система стоит на компьютерах у заказчиков в фирме).

«Минимальные требования к оборудованию для установки Windows XP Professional:

  • Процессор Pentium с частотой 233 МГц или более быстрый (рекомендуется не менее 300 МГц).
  • Не менее 64 МБ оперативной памяти (рекомендуется не менее 128 МБ).
  • Не менее 1,5 ГБ свободного места на жестком диске.
  • Дисковод для компакт- или DVD-дисков.
  • Клавиатура, мышь Microsoft Mouse или совместимое указывающее устройство.
  • Видеокарта и монитор, поддерживающие режим Super VGA с разрешением не менее чем 800x600 точек.
  • Звуковая плата.
  • Динамики или наушники». [4]
  • Принтер для распечатки документов.
  • Доступ к интернету (наличие подключения к интернету и возможность работать в нём).

2.5. Требования к программной документации.

  1. Общие требования

Оформление документации должно быть произведено по требованиям стандартов Единой Системы Программной Документации (ЕСПД).

  1. Перечень программной документации

В состав программной документации в обязательном порядке должны быть включены следующие документы:

- Описание программы оформлено по ГОСТ 19.402-78.

- Описание применения оформлено по ГОСТ 19.502-78.

- Текст программы оформлен по ГОСТ 19.401-78.

- Программа и методика испытаний оформлено по ГОСТ 19.301-79.

- Руководство оператора оформлено по ГОСТ 19.505-79.

2.6. Выбор СУБД.

«Выбор СУБД является одним из важнейших моментов в разработке проекта БД, так как он принципиальным образом влияет на весь процесс проектирования БД и реализации системы.

Теоретически при осуществлении этого выбора нужно принимать во внимание десятки факторов. Но на практике разработчики руководствуются лишь собственной интуицией и несколькими наиболее важными критериями, к которым, в частности, относятся:

  • тип модели данных, которую поддерживает данная СУБД, адекватность модели данных структуре рассматриваемой предметной области.
  • характеристики производительности СУБД.
  • запас функциональных возможностей для дальнейшего развития системы.
  • степень оснащенности СУБД инструментарием для персонала администрирования данными.
  • удобство и надежность СУБД в эксплуатации.
  • стоимость СУБД и дополнительного программного обеспечения». [2]

В итоге было принято решение остановиться на БД Firebird.

«Firebird (FirebirdSQL) — компактная, кроссплатформенная, свободная система управления базами данных (СУБД), работающая на Linux, Microsoft Windows и разнообразных Unix платформах.

В качестве преимуществ Firebird можно отметить многоверсионную архитектуру (параллельная обработка оперативных и аналитических запросов: читающие пользователи не блокируют пишущих), компактность (дистрибутив 10Mb), высокую эффективность и мощную языковую поддержку для хранимых процедур и триггеров. Firebird используется в различных промышленных системах (складские и хозяйственные, финансовый и государственный сектора) с 2001 г. Это коммерчески независимый проект C и C++ программистов, технических советников и разработчиков мультиплатформенных систем управления базами данных, основанный на исходном коде, выпущенном корпорацией Borland 25 июля 2000 года в виде свободной версии Interbase 6.0.

Среди недостатков: отсутствие кэша результатов запросов, полнотекстовых индексов, значительное падение производительности при росте внутренней фрагментации базы.

Требования к аппаратному обеспечению.

Firebird работает на аппаратных платформах x86, x64 и PowerPC, Sparc и многих других, и поддерживает легкий переход между этими платформами. Может использоваться даже не очень мощное оборудование, особенно под Linux. И как в любой СУБД, на производительность влияют: количество памяти, скорость работы дисковой подсистемы, и т. д. Рекомендации для выбора аппаратного обеспечения зависят от требования к системе, прогнозируемого размера базы данных, количества пользователей, и т. д. Допустимо начинать с минимальной конфигурации, расширяя её по мере надобности.

Доступные операционные системы.

32-х и 64-х разрядные версии Windows, Linux, также MacOS X, HP-UX, FreeBSD, Solaris и др. Наиболее широко используемыми для серверов «Firebird» операционными системами являются Linux и Microsoft Windows (включая NT) (включая терминальные службы MS и Citrix).

Переход от одной ОС к другой весьма прост — достаточно сделать резервную копию базы в переносимом формате в одной системе и восстановить на другой». [5]

2.7. Выбор средства программирования.

Для реализации данной автоматизированной информационной системы будет использоваться NetBeans версии 7.4 и база данных Firebird версии 2.5.2. Языком программирования выбран Java SDK 7. Данных средств разработки достаточно для реализации полного функционала системы.

«NetBeans IDE — свободная интегрированная среда разработки приложений (IDE) на языках программирования Java, Python, PHP, JavaScript, C, C++ и ряда других. Проект NetBeans IDE поддерживается и спонсируется компанией Oracle, однако разработка NetBeans ведется независимым сообществом разработчиков-энтузиастов (NetBeans Community) и компанией NetBeans Org.

По качеству и возможностям последние версии NetBeans IDE не уступают лучшим коммерческим (платным) интегрированным средам разработки для языка Java, таким, как IntelliJ IDEA, поддерживая рефакторинг, профилирование, выделение синтаксических конструкций цветом, автодополнение набираемых конструкций на лету, множество предопределённых шаблонов кода.

Для разработки программ в среде NetBeans и для успешной инсталляции и работы самой среды NetBeans должен быть предварительно установлен Sun JDK или J2EE SDK подходящей версии. Среда разработки NetBeans по умолчанию поддерживала разработку для платформ J2SE и J2EE. Начиная с версии 6.0 NetBeans поддерживает разработку для мобильных платформ J2ME, C++ (только g++) и PHP без установки дополнительных компонентов». [6]

2.8. Требования к рабочим местам персонала и разработчика.

«Рабочее место – это часть пространства, в котором человек осуществляет трудовую деятельность, и проводит большую часть рабочего времени. Рабочее место, хорошо приспособленное к трудовой деятельности, правильно и целесообразно организованное, в отношении пространства, формы, размера обеспечивает ему удобное положение при работе и высокую производительность труда при наименьшем физическом и психическом напряжении.

При правильной организации рабочего места производительность труда возрастает с 8 до 20 процентов.

Согласно ГОСТ 12.2.032-78 конструкция рабочего места и взаимное расположение всех его элементов должно соответствовать антропометрическим, физическим и психологическим требованиям. Большое значение имеет также характер работы. В частности, при организации рабочего места разработчика должны быть соблюдены следующие основные условия:

- оптимальное размещение оборудования, входящего в состав рабочего места;

- достаточное рабочее пространство, позволяющее осуществлять все необходимые движения и перемещения;

- необходимо естественное и искусственное освещение для выполнения поставленных задач;

- уровень акустического шума не должен превышать допустимого значения.

Главными элементами рабочего места разработчика являются письменный стол и кресло. Основным рабочим положением является положение сидя. Рабочее место для выполнения работ в положении сидя организуется в соответствии с ГОСТ 12.2.032-78.

Рабочая поза сидя вызывает минимальное утомление. Рациональная планировка рабочего места предусматривает четкий порядок и постоянство размещения предметов, средств труда и документации. То, что требуется для выполнения работ чаще, расположено в зоне легкой досягаемости рабочего пространства.

Моторное поле – пространство рабочего места, в котором могут осуществляться двигательные действия человека.

Максимальная зона досягаемости рук – это часть моторного поля рабочего места, ограниченного дугами, описываемыми максимально вытянутыми руками при движении их в плечевом суставе.

Оптимальная зона – часть моторного поля рабочего места, ограниченного дугами, описываемыми предплечьями при движении в локтевых суставах с опорой в точке локтя и с относительно неподвижным плечом.

Рисунок 1 – Зоны досягаемости рук в горизонтальной плоскости

а – зона максимальной досягаемости;

б – зона досягаемости пальцев при вытянутой руке;

в – зона легкой досягаемости ладони;

г – оптимальное пространство для грубой ручной работы;

д – оптимальное пространство для тонкой ручной работы.

Рассмотрим оптимальное размещение предметов труда и документации в зонах досягаемости рук:

1) дисплей размещается в зоне а (в центре);

2) клавиатура – в зоне г/д;

3) системный блок размещается в зоне б (слева);

4) принтер находится в зоне а (справа);

5) документация:

- в зоне легкой досягаемости ладони – в (слева) – литература и документация, необходимая при работе;

- в выдвижных ящиках стола – литература, неиспользуемая постоянно.

При проектировании письменного стола следует учитывать следующее:

- высота стола должна быть выбрана с учетом возможности сидеть свободно, в удобной позе, при необходимости опираясь на подлокотники;

- нижняя часть стола должна быть сконструирована так, чтобы программист мог удобно сидеть, не был вынужден поджимать ноги;

- поверхность стола должна обладать свойствами, исключающими появление бликов в поле зрения программиста;

- конструкция стола должна предусматривать наличие выдвижных ящиков (не менее 3 для хранения документации, листингов, канцелярских принадлежностей, личных вещей).

Параметры рабочего места выбираются в соответствии с антропометрическими характеристиками. При использовании этих данных в расчетах следует исходить из максимальных антропометрических характеристик (М+2).

При работе в положении сидя рекомендуются следующие параметры рабочего пространства:

- ширина не менее 700 мм;

- глубина не менее 400 мм;

- высота рабочей поверхности стола над полом 700 – 750 мм.

Оптимальными размерами стола являются:

- высота 710 мм;

- длина стола 1300 мм;

- ширина стола 650 мм.

Поверхность для письма должна иметь не менее 40 мм в глубину и не менее 600 мм в ширину.

Под рабочей поверхностью должно быть предусмотрено пространство для ног:

- высота не менее 600 мм;

- ширина не менее 500 мм;

- глубина не менее 400 мм.

Важным элементом рабочего места является кресло. Оно выполняется в соответствии с ГОСТ 21.889-76. При проектировании кресла исходят из того, что при любом рабочем положении разработчика и работника его поза должна быть физиологически правильно обоснованной, т.е. положение частей тела должно быть оптимальным. Для удовлетворения требований физиологии, вытекающих из анализа положения тела человека в положении сидя, конструкция рабочего сидения должна удовлетворять следующим основным требованиям:

- допускать возможность изменения положения тела, т.е. обеспечивать свободное перемещение корпуса и конечностей тела друг относительно друга;

- допускать регулирование высоты в зависимости от роста работающего человека (в пределах от 400 до 550 мм);

- иметь слегка вогнутую поверхность;

- иметь небольшой наклон назад.

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

Создание благоприятных условий труда и правильное эстетическое оформление рабочих мест на производстве имеет большое значение как для облегчения труда, так и для повышения его привлекательности, положительно влияющей на производительность труда. Окраска помещений и мебели должна способствовать созданию благоприятных условий для зрительного восприятия, хорошего настроения. В служебных помещениях, в которых выполняется однообразная умственная работа, требующая значительного нервного напряжения и большого сосредоточения, окраска должна быть спокойных тонов – малонасыщенные оттенки холодного зеленого или голубого цветов».[7]


Глава 3. Проектирование АИС

3.1. Описание технологического процесса с использованием системы.

Менеджер:

Менеджер отвечает за все операции с данными в системе, такими как: получение, анализ, передача. Также за их сохранность и достоверность. Для начала работы менеджеру необходимо авторизоваться в системе. После этого он получает доступ к функциям системы. Он получает данные от заказчика, обрабатывает их, отправляет бухгалтеру на проверку и подпись. Также он отправляет промежуточные отчёты заказчику и получает от него подтверждение или отказ на заказ. Менеджер имеет доступ к базе данных, кроме того, может вносить в нее изменения. Также он может вести переговоры с заказчиками, информировать их о чем-либо. С помощью функции формирования итогового счета менеджер создает необходимые заказчику документы.

Заказчик:

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

Бухгалтер:

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


3.2. Разработка диаграмм вариантов использования.

«Диаграммы вариантов использования описывают функциональное назначение системы или то, что система должна делать. Разработка диаграммы преследует следующие цели:

  • определить общие границы и контекст моделируемой предметной области.
  • сформулировать общие требования к функциональному поведению проектируемой системы.
  • разработать исходную концептуальную модель системы для ее последующей детализации в форме логических и физических моделей.
  • подготовить исходную документацию для взаимодействия разработчиков системы с ее заказчиками и пользователями.

Суть диаграммы вариантов использования состоит в следующем. Проектируемая система представляется в виде множества сущностей или актеров, взаимодействующих с системой с помощью вариантов использования. При этом актером или действующим лицом называется любая сущность, взаимодействующая с системой извне. Это может быть человек, техническое устройство, программа или любая другая система, которая может служить источником воздействия на моделируемую систему так, как определит сам разработчик. Вариант использования служит для описания сервисов, которые система предоставляет актеру. Диаграмма вариантов использования может дополняться пояснительным текстом, который раскрывает смысл или семантику составляющих ее компонентов».[10]

3.2.1. Разработка функциональной модели Use Case для рабочего места «Менеджер».


3.2.2. Разработка функциональной модели Use Case для рабочего места «Заказчик».

3.2.3. Разработка функциональной модели Use Case для рабочего места «Бухгалтер».


3.3. Разработка диаграмм IDEF0.

«IDEF0 используется для создания функциональной модели, отображающей структуру и функции системы, а также потоки информации и материальных объектов, связывающие эти функции. Методология IDEF0 основана на подходе, разработанном Дугласом Т. Россом в начале 70–ых годов и получившем название SADT (Structured Analysis & Design Technique - метод структурного анализа и проектирования). Основу подхода и, как следствие, методологии IDEF0, составляет графический язык описания (моделирования) систем, обладающий следующими свойствами:

• графический язык - полное и выразительное средство, способное наглядно представлять широкий спектр деловых, производственных и других процессов и операций предприятия на любом уровне детализации.

• язык обеспечивает точное и лаконичное описание моделируемых объектов, удобство использования и интерпретации этого описания.

• язык облегчает взаимодействие и взаимопонимание системных аналитиков, разработчиков и персонала изучаемого объекта (фирмы, предприятия), т.е. служит средством «информационного общения» большого числа специалистов и рабочих групп, занятых в одном проекте, в процессе обсуждения, рецензирования, критики и утверждения результатов.

• язык прошел многолетнюю проверку и продемонстрировал работоспособность как в проектах ВВС США, так и в других проектах, выполнявшихся государственными и частными промышленными компаниями.

• язык легок и прост в изучении и освоении.

• язык может генерироваться рядом инструментальных средств машинной графики».[9]

Для проектирования было использовано программное средство BPWin версии 1.2.8.1.

Рисунок 2 – Общий функциональный блок системы.

Рисунок 3 – Декомпозиция общей диаграммы системы.

Рисунок 4 – Декомпозиция блока «Заказчик».

Рисунок 5 – Декомпозиция блока «Менеджер».

Рисунок 6 – Декомпозиция блока «Бухгалтер».


3.4. Проектирование БД.

«Инфологическая модель базы данных или модель типа «Объект-свойство-отношение» – это описание предметной области, выполненное с использованием специальных языковых средств без ориентации на используемые в дальнейшем программные средства. Инфологическое моделирование есть нечто иное как точка коммуникации как конечного пользователя, так и разработчика и системного аналитика либо проектировщика. Для её описания могут быть использованы графические языки. Большим плюсом графических языков является однозначность трактовки, а так же сжатость информации. Ведь на основе графической модели определяются логические связи, то есть строится даталогическая модель базы данных. Следует отметить, что инфологическая модель строится не для одного объекта, а для класса объектов.

Как и любой другой язык моделирования, создание инфологической модели требует для себя выполнение некоторых правил, так одно из них это:

  • адекватность отображения предметной области инфологической модели.
  • непротиворечивость данных.
  • однозначность.
  • конечность (предметная область может быть «бесконечной», и какие то ограничения проектировщик поставить будет все-таки вынужден).
  • расширяемость (возможность ввода новых данных).
  • возможность композиции и декомпозиции инфологической модели.
  • выразительность спецификации инфологической модели.

Эти требования к инфологической модели позволяют конструировать средство коммуникации разнообразных коррективов как конечных пользователей, так и разработчиков. И должна содержать необходимую и достаточную информацию, для дальнейшего проектирования информационной автоматизированной системы». [8]

3.4.1. Проектирование инфологической модели.


3.4.2. Проектирование даталогической модели.


3.4.3. Проектирование ограничений БД.

Обозначения:

V(num) - varchar(num) – текстовая строка переменной длины, содержащая не более num символов.

D – date – тип содержащий дату, с полями для года, месяца и дня.

T – time – тип содержащий время, с полями для часов, минут и часов.

Dec – decimal – числовые данные с фиксированной точностью.

S – smallint – 2-байтные целочисленные данные.

I(num) – integer – целое число фиксированной длины, содержащее num цифр.

Схема отношения Customer

Содержание поля

Имя поля

Тип, длина

Примечания

Идентификатор заказчика

ID

I(11)

Первичный ключ

Имя заказчика

NAME

V(50)

Обязательное поле

Схема отношения Destination

Содержание поля

Имя поля

Тип, длина

Примечания

Идентификатор назначения

ID

I(11)

Первичный ключ

Название города

CITY

V(30)

Обязательное поле

Схема отношения Employee

Содержание поля

Имя поля

Тип, длина

Примечания

Идентификатор работника

ID

I(11)

Первичный ключ

Фамилия работника

SURNAME

V(30)

Обязательное поле

Имя

NAME

V(20)

Обязательное поле

Отчество

FATHERNAME

V(30)

Обязательное поле

Пол

GENDER

V(1)

Обязательное поле

Серия паспорта

PASSP_SERIAL

V(5)

Обязательное поле

Номер паспорта

PASSP_NUM

V(10)

Обязательное поле

Номер телефона

PHONE

V(15)

Обязательное поле

Дисконтная карта

DISCOUNT_CARD

V(20)

Обязательное поле

Идентификатор заказчика

ID_CUSTOMER

I(11)

Внешний ключ к CUSTOMER

Схема отношения Flight

Содержание поля

Имя поля

Тип, длина

Примечания

Идентификатор рейса

ID

I(11)

Первичный ключ

Имя

NAME

V(10)

Обязательное поле

Идентификатор места отправления

ID_DEST_FROM

I(11)

Внешний ключ к DESTINATION

Идентификатор места назначения

ID_DEST_TO

I(11)

Внешний ключ к DESTINATION

Схема отношения Hotel

Содержание поля

Имя поля

Тип, длина

Примечания

Идентификатор отеля

ID

I(11)

Первичный ключ

Имя

NAME

V(100)

Обязательное поле

Индекс

INDEX

V(10)

Обязательное поле

Улица

STREET

V(50)

Обязательное поле

Дом

HOUSE

V(5)

Обязательное поле

Идентификатор города

ID_CITY

I(11)

Внешний ключ к DESTINATION

Схема отношения Login

Содержание поля

Имя поля

Тип, длина

Примечания

Идентификатор логина

ID

I(11)

Первичный ключ

Логин

LOGIN

V(20)

Обязательное поле

Идентификатор заказчика

ID_CUSTOMER

I(11)

Внешний ключ к CUSTOMER

MD5

MD5

V(100)

Обязательное поле

Тип

TYPE

S(6)

Обязательное поле

Схема отношения Order

Содержание поля

Имя поля

Тип, длина

Примечания

Идентификатор заказа

ID

I(11)

Первичный ключ

Цель

GOAL

V(200)

Обязательное поле

Идентификатор отеля

ID_HOTEL

I(11)

Внешний ключ к HOTEL

Идентификатор работника

ID_EMPLOYEE

S(6)

Внешний ключ к EMPLOYEE

Идентификатор рейса 1

ID_FLIGHT1

I(11)

Внешний ключ к FLIGHT

Идентификатор рейса 2

ID_FLIGHT2

I(11)

Внешний ключ к FLIGHT

Дата заезда

DATA_ARR

D

Обязательное поле

Дата выезда

DATA_DEP

D

Обязательное поле

Время заезда

TIME_ARR

T

Обязательное поле

Время выезда

TIME_DEP

T

Обязательное поле

Штраф

FEE

V(50)

Обязательное поле

Стоимость

COST

Dec(12,2)

Обязательное поле

Схема отношения Total_Order

Содержание поля

Имя поля

Тип, длина

Примечания

Идентификатор итогового счёта

ID

I(11)

Первичный ключ

Идентификатор заказа

ID_ORDER

I(11)

Первичный ключ

Комната

ROOM

I(11)

Обязательное поле

Статус

STATUS

I(11)

Обязательное поле


3.5. Разработка пользовательского интерфейса.

1. Сформулируем профили потенциальных пользователей программного обеспечения информационной системы.

Пользователи

Менеджер

Бухгалтер

Заказчик

Социальные характеристики

Мужчины

Женщины

Взрослые

Русскоязычные

Средний уровень владения компьютером

Мотивационно целевая среда

Прямая производственная необходимость, удобство

Мотивация к обучению: средняя

Навыки и умения

Должны иметь минимальный навык работы с программой.

Требования к ПО информационной системы

Возможность использования программы в локальной сети.

Возможность использования интернета.

Возможность получения данных от заказчика.

Обеспечение доступа к базе данных.

Обеспечение обратной связи с заказчиком.

Возможность использования локальной сети.

Обеспечение обмена информацией с другими пользователями.

Подключение к интернету.

Доступ к базе данных.

Задачи пользователя

Получение и обработка данных от заказчика.

Передача данных другим пользователям для дальнейшей обработки.

Предоставление информации и получение данных от других пользователей.

Обмен данными.

Рабочая среда

Стандартизованные ПК

Локальная сеть

Подключение к интернету

2. Сформулируем множество пользовательских сценариев.

1) Заказчик при оформлении заявки на командировку выбирает гостиницу из списка и вводит номер рейса. Менеджер на основании этих данных бронирует место в гостинице и рейс. Выставляется предварительный счет, который отправляется заказчику для подтверждения. В случае согласия заказчик получает итоговый Счёт.

2) Заказчик при оформлении заявки на командировку выбирает гостиницу из списка или вводит номер рейса (если ему необходимо что-то одно из перечисленного). Менеджер на основании этих данных бронирует место в гостинице или рейс. Выставляется предварительный счет, который отправляется заказчику для подтверждения. В случае согласия заказчик получает итоговый Счёт.

3) Заказчик при оформлении заявки на командировку выбирает гостиницу из списка и вводит номер рейса. Менеджер на основании этих данных бронирует место в гостинице и рейс. Выставляется предварительный счет, который отправляется заказчику для подтверждения. В случае отрицательного ответа заказчик пишет в комментариях, что именно его не устроило (гостиница и/или рейс). Менеджер обрабатывает эти данные и снова выставляет предварительный счет. В случае подтверждения высылает итоговый Счёт.

4) Заказчик при оформлении заявки на командировку вводит название гостиницы, которое сохраняется в списке, и номер рейса. Менеджер на основании этих данных бронирует место в гостинице и рейсе. Выставляется предварительный счет, который отправляется заказчику для подтверждения. В случае подтверждения высылает итоговый Счёт.

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

3. Определим функциональные блоки приложения, составим схему навигационной системы.

Функциональные блоки и входящие в них экранные формы:

- Заказчик

  • Форма для заполнения.
  • Форма для отчёта.
  • Форма для итогового Счёта и Подтверждения.

- Менеджер

  • Данные заказчика.
  • Данные для бухгалтера.
  • Отчёт для заказчика.

- Бухгалтер

  • Данные от менеджера.
  • Расчёты.


3.5.1. Разработка пользовательского интерфейса АРМ «Менеджер».

Рассмотрим функциональность профиля «Менеджер»:

-получение данных от заказчика (1)

-передача данных бухгалтеру (2)

-получение данных от бухгалтера (3)

-составление отчёта для заказчика на основе данных, предоставленных бухгалтером (4)

-отправка отчёта заказчику (5)

-получение подтверждения заказа (6)

-формирование итогового Счёта и Подтверждения (7)

-отправка итогового Счёта и Подтверждения заказчику (8)

3.5.2. Разработка пользовательского интерфейса АРМ «Заказчик».

Рассмотрим функциональность профиля «Заказчик»:

-ввод необходимых данных в форму (1)

-отправка данных менеджеру (2)

-получение отчёта от менеджера (3)

-отправка подтверждения заказа менеджеру (4)

-получение итогового Счёта и Подтверждения от менеджера (5)

3.5.3. Разработка пользовательского интерфейса АРМ «Бухгалтер».

Рассмотрим функциональность профиля «Бухгалтер»:

-получение данных от менеджера (1)

-отправка данных менеджеру (2)

2,3

4. Установим для отдельных функциональных блоков соответствующие им операции и объекты операций.

Операции:

1)заполнить форму.

2)отправить данные.

3)получить данные.

4)отправить отчёт.

5)получить отчёт.

6)отправить подтверждение.

7)получить подтверждение.

8)отправить итоговый Счёт и Подтверждение.

9)получить итоговый Счёт и Подтверждение.

Группа «Действия»:

Действия

Объект

Примечания

Заполнить

форма

1

Отправить

данные

отчёт

подтверждение

итоговый Счёт и Подтверждение

2

4

6

8

Получить

данные

отчёт

подтверждение

итоговый Счёт и Подтверждение

3

5

7

9

5. Составим граф состояния и проведём проверку возможных переходов по графу в соответствии с пользовательскими сценариями.

Форма для заполнения (М1)

Действия

Заполнить форму (1)

Отправить данные (2)

Форма для отчёта (М2)

Действия

Получить отчёт (5)

Отправить подтверждение (6)

Форма для итогового Счёта и Подтверждения (М3)

Действия

Получить итоговый Счёт и Подтверждение(9)

Данные заказчика (М4)

Действия

Получить данные (3)

Данные для бухгалтера (М5)

Действия

Отправить данные (2)

Отчёт для заказчика (М6)

Действия

Отправить отчёт (4)

Получить подтверждение (7)

Итоговый Счёт для заказчика (М7)

Действия

Отправить итоговый Счёт и Подтверждение (8)

Данные от менеджера (М8)

Действия

Отправить данные (2)

Расчёты (М9)

Действия

Получить данные (3)

Граф состояния

Основные экранные формы:

  • Форма для заполнения.
  • Форма для отчёта.
  • Форма для итогового Счёта и Подтверждения.
  • Данные заказчика.
  • Данные для бухгалтера.
  • Отчёт для заказчика.
  • Итоговый счет для заказчика.
  • Данные от менеджера.
  • Расчеты.

1. Форма для заполнения.

Эта форма должна обеспечивать выполнение следующих операций:

  • Заполнить форму.
  • Отправить данные.

Рассмотрим выполнение операции «Заполнить форму»:

1) Перемещение руки к мыши, В.

2) Указание на поле для заполнения ФИО, П.

3) Нажатие клавиши мыши на поле, М.

4) Перемещение руки пользователя с мыши на клавиатуру, В.

5) Нажатие клавиши клавиатуры (50 раз), К.

6) Перемещение руки пользователя к мыши, В.

7) Указание на поле для ввода серии паспорта, П.

8) Нажатие клавиши мыши на поле, М.

9) Перемещение руки пользователя с мыши на клавиатуру, В.

10) Нажатие клавиши клавиатуры (4 раза), К.

11) Перемещение руки пользователя к мыши, В.

12) Указание на поле для ввода номера паспорта, П.

13) Нажатие клавиши мыши на поле, М.

14) Перемещение руки пользователя с мыши на клавиатуру, В.

15) Нажатие клавиши клавиатуры (6 раз), К.

16) Перемещение руки пользователя к мыши, В.

17) Указание на поле для ввода номера телефона, П.

18) Нажатие клавиши мыши на поле, М.

19) Перемещение руки пользователя с мыши на клавиатуру, В.

20) Нажатие клавиши клавиатуры (11 раз), К.

21) Перемещение руки пользователя к мыши, В.

22) Указание на поле для ввода номера скидочной карты, П.

23) Нажатие клавиши мыши на поле, М.

24) Перемещение руки пользователя с мыши на клавиатуру, В.

25) Нажатие клавиши клавиатуры (16 раз), К.

26) Перемещение руки пользователя к мыши, В.

27) Указание на поле для ввода маршрута, П.

28) Нажатие клавиши мыши на поле, М.

29) Перемещение руки пользователя с мыши на клавиатуру, В.

30) Нажатие клавиши клавиатуры (20 раз), К.

31) Перемещение руки пользователя к мыши, В.

32) Указание на поле для ввода цели поездки, П.

33) Нажатие клавиши мыши на поле, М.

34) Перемещение руки пользователя с мыши на клавиатуру, В.

35) Нажатие клавиши клавиатуры (12 раз), К.

36) Перемещение руки пользователя к мыши, В.

37) Указание на поле для ввода сроков командировки, П.

38) Нажатие клавиши мыши на поле, М.

39) Перемещение руки пользователя с мыши на клавиатуру, В.

40) Нажатие клавиши клавиатуры (17 раз), К.

41) Перемещение руки пользователя к мыши, В.

42) Указание на поле для ввода номера рейса, П.

43) Нажатие клавиши мыши на поле, М.

44) Перемещение руки пользователя с мыши на клавиатуру, В.

45) Нажатие клавиши клавиатуры (6 раз), К.

46) Перемещение руки пользователя к мыши, В.

47) Указание на поле для ввода названия гостиницы, П.

48) Нажатие клавиши мыши на поле, М.

49) Перемещение руки пользователя с мыши на клавиатуру, В.

50) Нажатие клавиши клавиатуры (10 раз), К.

В-Д-П-Д-М-В-Д-К*50-В-П-М-В-Д-К*4-В-П-М-В-Д-К*6-В-П-М-В-Д-К*11-В-П-М-В-Д-К*16-В-П-М-В-Д-К*20-В-П-М-В-Д-К*12-В-П-М-В-Д-К*17-В-П-М-В-Д-К*6В-П-М-В-Д-К*10

20*В+10*П+10*М+152*К+12*Д=76,96 с.

Рассмотрим выполнение операции «Отправить данные»:

1) Перемещение руки пользователя к мыши, В.

2) Указание на раздел меню «Отправить», П.

3) Нажатие клавиши мыши, М.

В-Д-П-М=2,8с.

Р=0,4с.

2. Форма для отчета.

Эта форма должна обеспечивать выполнение следующих операций:

  • Получить отчёт.
  • Отправить подтверждение.

Рассмотрим выполнение операции «Получить отчет»:

1) Перемещение курсора мыши к окну с сообщением, П.

2) Нажатие клавиши мыши, М.

Д-П-М=1,2+1,1+0,1=2,4с.

Рассмотрим выполнение операции «Отправить подтверждение»:

1) Указание на кнопку меню «Подтверждаю»/ «Не Подтверждаю», П.

2) Нажатие клавиши мыши, М.

Д-П-М=2,4с.

Р=0,4с.

3. Форма для итогового Счёта и Подтверждения.

Эта форма должна обеспечивать выполнение следующих операций:

  • Получить итоговый Счёт и Подтверждение.

Рассмотрим выполнение операции «Получить итоговый Счёт и Подтверждение»:

1) Перемещение курсора мыши к окну с сообщением, П.

2) Нажатие клавиши мыши, М.

Д-П-М=1,2+1,1+0,1=2,4с.

4. Данные заказчика.

Эта форма должна обеспечивать выполнение следующих операций:

  • Получить данные.

Рассмотрим выполнение операции «Получить данные»:

1) Перемещение курсора мыши к фрейму с сообщением, П.

2) Нажатие клавиши мыши, М.

Д-П-М=1,2+1,1+0,1=2,4с.

5. Данные для бухгалтера.

Эта форма должна обеспечивать выполнение следующих операций:

  • Отправить данные.

Рассмотрим выполнение операции «Отправить данные»:

1) Указание на раздел меню «Составить отчет», П.

2) Нажатие клавиши мыши, М.

3) Указание на окно для ввода данных, П.

4) Нажатие клавиши мыши, М.

5) Перемещение руки пользователя на клавиатуру, В.

6) Нажатие клавиши мыши(100 раз), К.

7) Перемещение руки пользователя к мыши, В.

8) Указание на раздел меню «Отправить отчет бухгалтеру», П.

9) Нажатие клавиши мыши, М.

Д-П-М-Д-П-М-В-Д-К*100-В-Д-П-М=36,4с.

Р=0,4с.

6. Отчёт для заказчика.

Эта форма должна обеспечивать выполнение следующих операций:

  • Отправить отчёт.
  • Получить подтверждение.

Рассмотрим выполнение операции «Отправить отчет»:

1) Перемещение руки к мыши, В.

2) Перемещение курсора мыши к фрейму с сообщением от бухгалтера, П.

3) Нажатие клавиши мыши, М.

4) Перемещение руки к клавиатуре, В.

5) Нажатие клавиши Ctrl, K.

6) Нажатие клавиши A, К.

7) Нажатие клавиши Ctrl, K.

8) Нажатие клавиши С, К.

9) Перемещение руки к мыши, В.

10) Перемещение курсора мыши к фрейму для составления предварительного отчета, П.

11) Нажатие клавиши мыши, М.

12) Перемещение руки к клавиатуре, В.

13) Нажатие клавиши (49 раз), К.

14) Нажатие клавиши Ctrl, K.

15) Нажатие клавиши V, K.

16) Перемещение руки к мыши, В.

17) Указание на раздел меню «Отправить предварительный отчет заказчику», П.

18) Нажатие клавиши мыши, М.

Р=0,4с.

В-Д-П-М-В-Д-К-К-Д-К-К-В-Д-П-М-В-Д-К*49-Д-К-К-В-Д-П-М=29,4с.

Рассмотрим выполнение операции «Получить подтверждение»:

1) Перемещение руки к мыши, В.

2) Перемещение курсора мыши к фрейму с сообщением от заказчика, П.

3) Нажатие клавиши мыши, М.

4) Указание на раздел меню «Подтверждаю», П.

5) Нажатие клавиши мыши, М.

В-Д-П-М-Д-П-М=5,2с.

Р=0,4с.

7. Итоговый счет для заказчика.

Эта форма должна обеспечивать выполнение следующих операций:

  • отправить итоговый Счёт и Подтверждение.

Рассмотрим выполнение операции «отправить итоговый Счёт и Подтверждение»:

1) Указание на раздел меню «Отправить счет заказчику», П.

2) Нажатие клавиши мыши, М.

Д-П-М=2,4с.

Р=0,4с.

8. Расчеты.

Эта форма должна обеспечивать выполнение следующих операций:

  • Получить данные.

Рассмотрим выполнение операции «Получить данные»:

1) Перемещение руки к мыши, В.

2) Перемещение курсора мыши к фрейму с сообщением, П.

3) Нажатие клавиши мыши, М.

4) Указание на раздел меню «Составить отчет», П.

5) Нажатие клавиши мыши, М.

В-Д-П-М-Д-П-М=5,2с.

9. Данные от менеджера.

Эта форма должна обеспечивать выполнение следующих операций:

  • Отправить данные.

Рассмотрим выполнение операции «Отправить данные»:

1) Перемещение руки к мыши, В.

2) Перемещение курсора мыши к фрейму «Составление отчета», П.

3) Нажатие клавиши мыши, М.

4) Перемещение руки к клавиатуре, В.

5) Нажатие клавиш клавиатуры (100 раз), К.

6) Перемещение руки к мыши, В.

7) Указание на раздел меню «Отправить отчет», П.

8) Нажатие клавиши мыши, М.

В-Д-П-М-В-Д-К*100-В-Д-П-М=35,2с.

Р=0,4с.

Общее время: 76,96с+2,8с+36,4с+29,4с+5,2с+5,2с+35,2с+2,4с*5=203,16с. => 203,16с.+0,4*7=205,96с. => 205,96 + <Запись в БД данных, введенных заказчиком, 10 полей, 0,4 с на каждое поле> 0,4*10=209,96с.


3.6. Разработка алгоритмов.

3.6.1. Разработка алгоритма Окна авторизации.

ЦИКЛ

вывод окна авторизации

ввод имени пользователя и пароля

ЕСЛИ нажата кнопка "Войти" и введённые имя пользователя и пароль соответствуют аккаунту "Менеджер"

закрытие окна авторизации

вывод окна АРМ "Менеджер"

ИНАЧЕ ЕСЛИ нажата кнопка "Войти" и введенные имя пользователя и пароль соответствуют аккаунту "Бухгалтер"

закрытие окна авторизации

вывод окна АРМ "Бухгалтер"

ИНАЧЕ ЕСЛИ нажата кнопка "Войти" и введенные имя пользователя и пароль соответствуют аккаунту "Заказчик"

закрытие окна авторизации

вывод окна АРМ " Заказчик "

ИНАЧЕ вывод сообщения о неверно введённом имени пользователи или пароле

КЕСЛИ

КЕСЛИ

КЕСЛИ

ДО закрытия окна авторизации

КЦИКЛ


3.6.2. Разработка алгоритмов АРМ «Менеджер».

ЦИКЛ вывода окна АРМ "Менеджер"

ЕСЛИ выбран пункт меню "Город/Рейсы"

вывод информации о городах/рейсах

ЕСЛИ нажата кнопка "Добавить рейс"

ЦИКЛ вывод диалогового окна "Добавление рейса"

ЕСЛИ заполнены все поля формы и нажата кнопка "Добавить"

добавление новой записи в таблицу рейсов

вывод сообщения о добавлении рейса и закрытие диалогового окна "Добавление рейса"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значения полей формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Добавление рейса"

КЕСЛИ

ДО закрытие диалогового окна "Добавление рейса"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Редактировать рейс"

ЦИКЛ диалоговое окно "Редактирование рейса"

ЕСЛИ изменены некоторые/все поля формы и нажата кнопка "Обновить"

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Редактирование рейса"

КЕСЛИ

ДО закрытия диалогового окна "Редактирование рейса"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении рейса

закрытие диалогового окна "Удалить"

КЕСЛИ

ЕСЛИ нажата кнопка "Добавить город"

ЦИКЛ вывод диалогового окна "Добавление города"

ЕСЛИ заполнено поле и нажата кнопка "Добавить"

добавление новой записи в таблицу городов

вывод сообщения о добавлении города и закрытие диалогового окна "Добавление города"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значения поля формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Добавление города"

КЕСЛИ

ДО закрытие диалогового окна "Добавление города"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении города

закрытие диалогового окна "Удалить"

КЕСЛИ

КЕСЛИ

ЕСЛИ выбран пункт меню "Гостиница"

вывод информации о гостиницах

ЕСЛИ нажата кнопка "Добавить гостиницу"

ЦИКЛ вывод диалогового окна "Добавление гостиницы"

ЕСЛИ заполнены все поля формы и нажата кнопка "Добавить"

добавление новой записи в таблицу гостиниц

вывод сообщения о добавлении гостиницы и закрытие диалогового окна "Добавление гостиницы"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значения полей формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Добавление гостиницы"

КЕСЛИ

ДО закрытие диалогового окна "Добавление гостиницы"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Редактировать гостиницу"

ЦИКЛ диалоговое окно "Редактирование гостиницы"

ЕСЛИ изменены некоторые/все поля формы и нажата кнопка "Обновить"

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Редактирование гостиницы"

КЕСЛИ

ДО закрытия диалогового окна "Редактирование гостиницы"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении гостиницы

закрытие диалогового окна "Удалить"

КЕСЛИ

КЕСЛИ

ЕСЛИ выбран пункт меню "Заказ"

вывод информации о заказах

ЕСЛИ нажата кнопка "Редактировать заказ"

ЦИКЛ вывод диалогового окна "Редактирование заказа"

ЕСЛИ заполнены все поля формы и нажата кнопка "Обновить"

Обновление записей в таблице заказов

вывод сообщения о редактировании заказа и закрытие диалогового окна "Редактирование заказа"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значение полей формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Редактировать заказ"

КЕСЛИ

ДО закрытие диалогового окна "Редактировать заказ"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении заказа

закрытие диалогового окна "Удалить"

КЕСЛИ

ЕСЛИ нажата кнопка "Отправить бухгалтеру"

вывод сообщения об изменении статуса заказа и отправки заявки АРМ "Бухгалтер"

отправка заявки

закрытие диалогового окна "Отправить бухгалтеру"

КЕСЛИ

ЦИКЛ нажата кнопка "Отправить заказчику"

вывод диалогового окна "Error" и закрытие диалогового окна "Error"

ДО изменения статуса заказа на "3-Бухгалтер-менеджер"

КЦИКЛ

вывод диалогового окна с сообщением об отправке заказа

ДО закрытия окна АРМ "Менеджер"

КЦИКЛ


3.6.3. Разработка алгоритмов АРМ «Заказчик».

ЦИКЛ вывода окна АРМ "Заказчик"

ЕСЛИ выбран пункт меню "Сотрудник/Заказчик"

вывод информации о сотрудниках/заказчиках

ЕСЛИ нажата кнопка "Добавить сотрудника"

ЦИКЛ вывод диалогового окна "Добавление сотрудника"

ЕСЛИ заполнены все поля формы и нажата кнопка "Добавить"

добавление новой записи в таблицу сотрудников

вывод сообщения о добавлении сотрудника и закрытие диалогового окна "Добавление сотрудника"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значение полей формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Добавление сотрудника"

КЕСЛИ

ДО закрытия диалогового окна "Добавление сотрудника"

КЦИКЛ вывода входящих сообщений

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Редактировать сотрудника"

ЦИКЛ вывод диалогового окна "Редактировать сотрудника"

ЕСЛИ изменены некоторые/все поля формы и нажата кнопка "Обновить"

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Редактировать сотрудника"

КЕСЛИ

ДО закрытия диалогового окна "Редактировать сотрудника"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении сотрудника

закрытие диалогового окна "Удаление"

КЕСЛИ

КЕСЛИ

ЕСЛИ выбран пункт меню "Город/Рейсы"

вывод информации о городах/рейсах

ЕСЛИ нажата кнопка "Добавить рейс"

ЦИКЛ вывод диалогового окна "Добавление рейса"

ЕСЛИ заполнены все поля формы и нажата кнопка "Добавить"

добавление новой записи в таблицу рейсов

вывод сообщения о добавлении рейса и закрытие диалогового окна "Добавление рейса"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значения полей формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Добавление рейса"

КЕСЛИ

ДО закрытие диалогового окна "Добавление рейса"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Редактировать рейс"

ЦИКЛ диалоговое окно "Редактирование рейса"

ЕСЛИ изменены некоторые/все поля формы и нажата кнопка "Обновить"

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Редактирование рейса"

КЕСЛИ

ДО закрытия диалогового окна "Редактирование рейса"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении рейса

закрытие диалогового окна "Удалить"

КЕСЛИ

ЕСЛИ нажата кнопка "Добавить город"

ЦИКЛ вывод диалогового окна "Добавление города"

ЕСЛИ заполнено поле и нажата кнопка "Добавить"

добавление новой записи в таблицу городов

вывод сообщения о добавлении города и закрытие диалогового окна "Добавление города"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значения поля формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Добавление города"

КЕСЛИ

ДО закрытие диалогового окна "Добавление города"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении города

закрытие диалогового окна "Удалить"

КЕСЛИ

КЕСЛИ

ЕСЛИ выбран пункт меню "Гостиница"

вывод информации о гостиницах

ЕСЛИ нажата кнопка "Добавить гостиницу"

ЦИКЛ вывод диалогового окна "Добавление гостиницы"

ЕСЛИ заполнены все поля формы и нажата кнопка "Добавить"

добавление новой записи в таблицу гостиниц

вывод сообщения о добавлении гостиницы и закрытие диалогового окна "Добавление гостиницы"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значения полей формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Добавление гостиницы"

КЕСЛИ

ДО закрытие диалогового окна "Добавление гостиницы"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Редактировать гостиницу"

ЦИКЛ диалоговое окно "Редактирование гостиницы"

ЕСЛИ изменены некоторые/все поля формы и нажата кнопка "Обновить"

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Редактирование гостиницы"

КЕСЛИ

ДО закрытия диалогового окна "Редактирование гостиницы"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении гостиницы

закрытие диалогового окна "Удалить"

КЕСЛИ

КЕСЛИ

ЕСЛИ выбран пункт меню "Заказ"

вывод информации о заказах

ЕСЛИ нажата кнопка "Оформить заказ"

ЦИКЛ вывод диалогового окна "Оформить заказ"

ЕСЛИ заполнены все поля формы и нажата кнопка "Добавить"

добавление новой записи в таблицу заказов

вывод сообщения о добавлении заказа и закрытие диалогового окна "Оформить заказ"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значение полей формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Оформить заказ"

КЕСЛИ

ДО закрытие диалогового окна "Оформить заказ"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении заказа

закрытие диалогового окна "Удалить"

КЕСЛИ

ЕСЛИ нажата кнопка "Отправить менеджеру"

вывод сообщения об изменении статуса заказа и отправки заявки АРМ "Менеджер"

отправка заявки

закрытие диалогового окна "Отправить менеджеру"

КЕСЛИ

ЦИКЛ нажать кнопку "Отчёт по выбранному сотруднику"

вывод диалогового окна "Ошибка" и закрытие диалогового окна "Ошибка"

ДО изменения статуса заказа на "8-Итоговый счёт у заказчика"

КЦИКЛ

вывод диалогового окна "Вопрос"

ЕСЛИ нажата кнопка "Yes"

вывод диалогового окна "xls/pdf"

ЕСЛИ нажата кнопка "xls"

формирование отчёта в формате .xls и закрытие диалогового окна "xls/pdf"

КЕСЛИ

ЕСЛИ нажата кнопка "pdf"

формирование отчёта в формате .pdf и закрытие диалогового окна "xls/pdf"

КЕСЛИ

ЕСЛИ нажата кнопка "Отмена"

закрытие диалогового окна "xml/pdf"

КЕСЛИ

КЕСЛИ

ЕСЛИ нажата кнопка "No или Cancel"

закрытие диалогового окна "Вопрос"

КЕСЛИ

КЕСЛИ

ДО закрытия окна АРМ "Заказчик"

КЦИКЛ


3.6.4. Разработка алгоритмов АРМ «Бухгалтер».

ЦИКЛ вывода окна АРМ "Бухгалтер"

ЕСЛИ выбран пункт меню "Город/Рейсы"

вывод информации о городах/рейсах

ЕСЛИ нажата кнопка "Добавить рейс"

ЦИКЛ вывод диалогового окна "Добавление рейса"

ЕСЛИ заполнены все поля формы и нажата кнопка "Добавить"

добавление новой записи в таблицу рейсов

вывод сообщения о добавлении рейса и закрытие диалогового окна "Добавление рейса"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значения полей формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Добавление рейса"

КЕСЛИ

ДО закрытие диалогового окна "Добавление рейса"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Редактировать рейс"

ЦИКЛ диалоговое окно "Редактирование рейса"

ЕСЛИ изменены некоторые/все поля формы и нажата кнопка "Обновить"

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Редактирование рейса"

КЕСЛИ

ДО закрытия диалогового окна "Редактирование рейса"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении рейса

закрытие диалогового окна "Удалить"

КЕСЛИ

ЕСЛИ нажата кнопка "Добавить город"

ЦИКЛ вывод диалогового окна "Добавление города"

ЕСЛИ заполнено поле и нажата кнопка "Добавить"

добавление новой записи в таблицу городов

вывод сообщения о добавлении города и закрытие диалогового окна "Добавление города"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значения поля формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Добавление города"

КЕСЛИ

ДО закрытие диалогового окна "Добавление города"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении города

закрытие диалогового окна "Удалить"

КЕСЛИ

КЕСЛИ

ЕСЛИ выбран пункт меню "Гостиница"

вывод информации о гостиницах

ЕСЛИ нажата кнопка "Добавить гостиницу"

ЦИКЛ вывод диалогового окна "Добавление гостиницы"

ЕСЛИ заполнены все поля формы и нажата кнопка "Добавить"

добавление новой записи в таблицу гостиниц

вывод сообщения о добавлении гостиницы и закрытие диалогового окна "Добавление гостиницы"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значения полей формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Добавление гостиницы"

КЕСЛИ

ДО закрытие диалогового окна "Добавление гостиницы"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Редактировать гостиницу"

ЦИКЛ диалоговое окно "Редактирование гостиницы"

ЕСЛИ изменены некоторые/все поля формы и нажата кнопка "Обновить"

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Редактирование гостиницы"

КЕСЛИ

ДО закрытия диалогового окна "Редактирование гостиницы"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении гостиницы

закрытие диалогового окна "Удалить"

КЕСЛИ

КЕСЛИ

ЕСЛИ выбран пункт меню "Заказ"

вывод информации о заказах

ЕСЛИ нажата кнопка "Редактировать заказ"

ЦИКЛ вывод диалогового окна "Редактирование заказа"

ЕСЛИ заполнены все поля формы и нажата кнопка "Обновить"

Обновление записей в таблице заказов

вывод сообщения о редактировании заказа и закрытие диалогового окна "Редактирование заказа"

КЕСЛИ

ЕСЛИ нажата кнопка "Очистить"

вывод значение полей формы стирается

КЕСЛИ

ЕСЛИ нажата кнопка "Выход"

закрытие диалогового окна "Редактировать заказ"

КЕСЛИ

ДО закрытие диалогового окна "Редактировать заказ"

КЦИКЛ

КЕСЛИ

ЕСЛИ выбрана запись из таблицы и нажата кнопка "Удаление"

вывод сообщения об удалении заказа

закрытие диалогового окна "Удалить"

КЕСЛИ

ЕСЛИ нажата кнопка "Отправить менеджеру"

вывод сообщения об изменении статуса заказа и отправки заявки АРМ "Менеджер"

отправка заявки

закрытие диалогового окна "Отправить Менеджеру"

КЕСЛИ

ЦИКЛ нажата кнопка "Отправить менеджеру"

вывод диалогового окна "Error" и закрытие диалогового окна "Error"

ДО изменения статуса заказа на "2-Заказ у бухгалтера" или "6-Менеджер-Бухгалтер(подпись)"

КЦИКЛ

вывод диалогового окна с сообщением об отправке заказа

ДО закрытия окна АРМ "Бухгалтер"

КЦИКЛ


Глава 4. Контрольный пример работы программы

4.1. Оформление заказа.

1) Авторизация пользователя.

2) Вкладка «Сотрудник/Заказчик».

3) Добавление сотрудника.

4) Редактирование сотрудника.

5) Вкладка «Города/Рейсы».

6) Добавление рейса.

7) Редактирование рейса.

8) Добавление города.

9) Вкладка «Гостиница».

10)Добавление гостиницы.

11) Вкладка «Заказ».

12) Добавление заказа.

13) Подтверждение добавления заказа.

14) Изменение статуса заказа. Отправка менеджеру.


4.2. Обработка заказа.

1) Авторизация пользователя

2)Вкладка «Заказ».

3) Редактирование заказа.

4)Подтверждение отправки заказа бухгалтеру.

5) Подтверждение отправки отчета со стоимостью заказчику.

6) Подтверждение отправки Счета бухгалтеру на подпись.

7) Подтверждение отправки итогового счета заказчику.


4.3. Подтверждение заказа.

1) Подтверждение заказа.

4.4. Формирование итогового Счёта и Подтверждения.

1) Запрос на формирование итогового отчета.

2) Выбор формата отчета.


Заключение

Итогом проделанной работы является созданная автоматизированная информационная система работы с клиентами и составления отчётов для туристической фирмы.

В ходе выполнения данного дипломного проекта было выполнено следующее:

  • описана предметная область и сформулирована постановка задачи дипломного проекта.
  • были разработаны IDEF0 модели системы, для моделирования которых было использовано программное средство BPWin.
  • были разработаны модели нотаций UML Use-Case диаграммы.
  • модель базы данных была представлена несколькими моделями: инфологической и даталогической.
  • построены алгоритмы для каждого рабочего места системы.

Для решения поставленной задачи были использованы NetBeans версии 7.4. и база данных Firebird версии 2.5.2., языком программирования выбран Java SDK 7, прикладная программа визуального моделирования BPWin версии 1.2.8.1.

Разработанная автоматизированная информационная система значительно упростит и ускорит работу сотрудников фирмы и их клиентов, а также их взаимодействие друг с другом.


Список литературы

  1. Карпова И.П. "Основы баз данных. Учебное пособие". – М.: Московский государственный институт электроники и математики (Технический институт), 2009. – 7 с.
  2. Карпова И.П. "Основы баз данных. Учебное пособие". – М.: Московский Государственный институт электроники и математики (Технический институт), 2009. – 109 с.
  3. http://ezpc.ru/pcuslov.shtml
  4. http://support.microsoft.com/kb/314865/RU
  5. https://ru.wikipedia.org/wiki/Firebird
  6. https://ru.wikipedia.org/wiki/NetBeans
  7. http://allrefs.net/c20/14ld5/p14/
  8. http://studopedia.net/10_13298_infologicheskoe-modelirovanie-predmetnoy-oblasti.html ;

http://studopedia.net/10_127307_to-zhe-samoe-mozhno-skazat-i-ob-udalenii-dannih.html

  1. http://asu.bru.by/%D0%BA%D0%B0%D1%84%D0%B5%D0%B4%D1%80%D0%B0/%D0%A3%D1%87%D0%B5%D0%B1%D0%BD%D0%BE-%D0%9C%D0%B5%D1%82%D0%BE%D0%B4%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5%20%D0%BC%D0%B0%D1%82%D0%B5%D1%80%D0%B8%D0%B0%D0%BB%D1%8B/%D0%94%D0%B8%D1%81%D1%86%D0%B8%D0%BF%D0%BB%D0%B8%D0%BD%D1%8B%20%D0%BA%D0%B0%D1%84%D0%B5%D0%B4%D1%80%D1%8B/%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9%20%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7/idef0rus.pdf
  2. http://www.info-system.ru/designing/methodology/uml/theory/use_case_diagram_theory.html
  3. Антонов В.А. Методические указания по выполнению лабораторной работы: Низкоуровневое проектирование интерфейса: количественная оценка и построение прототипа; Метод.указания для выполнения лабораторной работы по курсу «ДСОИ» - М., 2012.
  4. Антонов В.А. Методические указания по выполнению лабораторной работы: Разработка пользовательского интерфейса: высокоуровневого проектирования; Метод.указания для выполнения лабораторной работы по курсу «ДСОИ» - М., 2012.

Автоматизированной информационной системе (АИС) и обоснование выбора средств реализации