Курсовая работа столовая. курсовая работа столовая. Задачами курсового проектирования являются
Скачать 486.61 Kb.
|
Введение Любая организация нуждается в своевременном доступе к информации. Ценность информации в современном мире очень высока. Роль распорядителей информации в современном мире чаще всего выполняют базы данных. Базы данных обеспечивают надежное хранение информации, в структурированном виде и своевременный доступ к ней. Практически любая современная организация нуждается в базе данных, удовлетворяющей те или иные потребности по хранению, управлению и администрированию данных. На сегодняшний день на рынке представлено множество технологий доступа к данным и серверов баз данных, каждый, из которых имеет свои отличительные черты. Современные приложения обработки данных ориентированы на работу с большим количеством пользователей, на их удаленность от места расположения основного сервера БД. Темой данного курсового проекта является разработка информационной системы «Столовая». Для реализации данной задачи выбрана среда разработки Delphi. Среда разработки Delphi предоставляет разработчику поистине великолепный набор простых в использовании инструментов, позволяющих быстро разрабатывать сложные проекты, создавая приятный и удобный интерфейс. Клиентское приложение «Столовая» имеет доступ к таблицам на уровне файловой системы и предназначено для взаимодействия с источником данных. Взаимодействие подразумевает получение данных, их представление в определенном формате для просмотра пользователем, редактирование в соответствии с реализованными в программе бизнес-алгоритмами и возврат обработанных данных обратно в базу данных. Информационная система «Столовая» существенно упрощает работу сотрудников столовой, а также предоставляет возможность получения необходимой информации посетителям об интересующих блюдах из меню и их стоимости. Данный программный продукт позволяет автоматизировать работу кассы столовой. Задачами курсового проектирования являются: систематизация знаний, полученных при изучении дисциплины; приобретение опыта в комплексной разработке и реализации практических задач; совершенствование практических навыков в использовании и разработке современных информационных систем. 1. Техническое задание 1.1 Анализ предметной области Объект автоматизации – Столовая. Столовая – наиболее распространенный тип предприятия общественного питания. Ее назначение – обеспечить посетителей на месте разнообразными завтраками, обедами и т.д. В зависимости от места расположения и обслуживаемого контингента столовые можно подразделить на общедоступные и столовые при промышленных предприятиях, учебных заведениях. В зависимости от специализации столовые подразделяются на школьные, диетические, вегетарианские, рыбные и так далее. Кроме того, по характеру производственной деятельности различают столовые, работающие на сырье, то есть осуществляющие все процессы обработки продуктов, и столовые – доготовочные, не имеющие заготовочных цехов и работающие на полуфабрикатах. В большинстве столовых применяется метод самообслуживания с предварительной или последующей оплатой блюд, а в некоторых – обслуживание официантами. Столовая, для которой производится автоматизация, включает следующие отделы: отдел обслуживания (касса, регистрация заказов); отдел приготовления и оформления блюд; отдел составления меню; отдел контроля за персоналом. Отдел обслуживания работает с клиентами. Сотрудники столовой уточняют заказ, производят его оформление, производят денежные расчёты. Каждому клиенту выдается чек, с указанной суммой оплаты. Далее клиентам выдаются блюда, за которые они заплатили. Каждый отдел столовой выполняет свои функции. Отдел приготовления осуществляет следующие функции: расчет количества и заказ продуктов; приготовление блюд; оформление блюд; списание продуктов. Информация, подлежащая хранению: номера блюд, название блюд, номинальная цена блюд, единица измерения. В функции отделов обслуживания входит: регистрация заказов; выдача информации о блюдах; денежные расчёты. В функции отдела по составлению меню входит: составление перечня блюд, продаваемых в столовой. Информация, подлежащая хранению: номер блюда, характеристика блюда. Пользователями будущей программы будут кассир, заведующий столовой. В функции кассира входит: регистрация клиентов; ведение базы данных клиентов. В функции заведующего столовой входит: составление отчетов. 1.2 Постановка задачи На основании проведённого анализа предметной области предполагается разработать систему для улучшения качества обслуживания клиентов, обслуживания большего числа клиентов и ускорения работы кассиров и заведующих столовыми. Систему предполагается использовать на рабочем месте кассиров и заведующих столовыми для увеличения скорости обслуживания клиентов. Система позволит оперативно получать и обрабатывать информацию о заказах, сделанных клиентами, о блюдах, имеющихся в данной столовой, о количестве обслуженных покупателей определенным работником. Вследствие экономии времени, работник получает возможность обслужить большее количество клиентов. Основной целью создания системы является своевременный оперативный учёт заказов клиентов, что необходимо для быстрого поиска, обработки информации о блюдах и продуктах, используемых в них. Автоматизировав процесс, столовая сможет выявить самую покупаемую и популярную продукцию, что позволит, впоследствии, следить за изменением спроса и соответственно составлять более выгодный план закупок сырья. Следование вкусам потребителей повысит популярность организации среди потребителей и увеличит выручку. Также решаются задачи составления отчётов и других необходимых документов. Критерием оценки достижений целей системы будет уменьшение бумажной работы, уменьшение затрат времени на обработку и накопление информации и снижение финансовых затрат на обслуживание. Документы, на основании которых создается система: справочник блюд; справочник типа блюд; должностные инструкции; правила пожарной безопасности; список работников столовой. На складе работают служащие со средним и средним специальным образованием. Систему предполагается использовать на рабочих местах кассиров и заведующих столовыми. В отделах обслуживания ее предполагается использовать для регистрации заказов, выдачи информации о блюдах, оформления счетов. В отделе по составлению меню система будет использоваться для внесения информации о новых блюдах. Система должна удовлетворять следующим требованиям: надежности; безопасности; требования к защите информации от несанкционированного доступа; должна быть предусмотрена защита от несанкционированного доступа к данным, ввода данных, их удаления; данные должны хранить в соответствии с имеющимися документами; информация, хранящаяся в системе, должна быть защищена от аварийных ситуаций, влияния внешних воздействий (радиоэлектронная защита); персонал должен быть обучен правилам работы с системой, при этом не обязательно наличие специального технического образования. К функциям, реализуемым в данной задаче, относятся: – Выдача информации о блюдах, которые заказывает клиент. Без использования автоматизированной системы поиск занимает значительное время, кроме того, из-за ошибок сотрудников могут теряться данные. Восстановить эту информацию не возможно. И для хранения самих формуляров необходимы дополнительные площади. Автоматизированная система хранит эту информацию сколь угодно долго, поиск осуществляется за считанные секунды, исключены ошибки завскладом, не требуется дополнительная площадь. – Учет и регистрация количества продуктов на складе. При использовании автоматизированной системы запись клиентов будет осуществляться легко и быстро. В автоматизированной системе для поиска будет необходимо только ввести номер блюда и информация о наличии его будет готова. – Выборка блюд по наименованию и цене. – Внесение новых блюд в меню, присвоение им соответствующего номера. Для внесения новых блюд в меню завстоловой необходимо заполнить много разных документов, проверить правильность их заполнения. При использовании автоматизированной системы проверка и заполнение будет осуществляться одновременно. Автоматически будет осуществляться проверка правильности присвоенного номера. – Выдача отчетов по заданным параметрам. – Сортировка блюд по типу (закуска, горячее, салаты….). Отчетность, реализуемая при автоматизации процесса: – Формирование меню ресторана. – Составление бланка заказанных блюд, передаваемого на кухню. Программное обеспечение системы не должно зависеть от аппаратных средств компьютера. Необходимое программное обеспечение: MS Access 2007, MS Word 2007, MS SQL Server 2007. 2. Проектирование логической модели системы 2.1 Функциональная модель Контекстная диаграмма представляет собой схему организации работы столовой. Входными данными является информация о клиентах, о сотрудниках, о наличии свободных мест в столовой, а так же информация обо всех блюдах, имеющихся в столовой. Результатом функционирования являются отчеты: об имеющихся в столовой блюдах, о продажах, о количестве свободных мест и чек. Контекстная диаграмма представлена на рисунке 1. Рисунок 1 – Контекстная диаграмма В дальнейшем контекстная диаграмма детализируется на процессы. Первый уровень детализации – это диаграмма (см. рисунок 2), с помощью которой производится детализация основного процесса, находящегося на контекстной диаграмме. Контекстную диаграмму разбиваем на три процесса в соответствии с направлениями в работе. Полученные процессы также подлежат дальнейшей детализации в соответствии с функциями, которые выполняются системой (см. рисунки 3, 4, 5, 6). Рисунок 2 – Диаграмма детализации первого уровня Рисунок 3 – Диаграмма детализации процесса «Организовать работу отдела обслуживания» Рисунок 4 – Диаграмма детализации процесса «Начислить заработную плату» Рисунок 5 – Диаграмма детализации процесса «Сформировать отчет» Диаграмма дерева узлов показывает иерархию процессов в модели и позволяет рассмотреть всю модель целиком, но не показывает взаимосвязи между процессами. Она имеет вид традиционного иерархического дерева, где верхний узел (прямоугольник) соответствует работе с контекстной диаграммы, а последующие нижние узлы представляют собой дочерние уровни декомпозиции. На рисунке 6 изображена диаграмма дерева узлов проектируемой базы данных. Рисунок 6 – Диаграмма дерева узлов 2.2 Информационная модель Диаграммы «Сущность-Связь» (ER-диаграммы) применяются для разработки схемы базы данных в форме одной модели или нескольких локальных моделей. С помощью подобных диаграмм можно спроектировать базу данных для сложной системы, определить в итоге количество таблиц, число и типы полей в каждой таблице, связи между таблицами. Для отображения информационной модели рассматриваемого процесса на логической модели используются следующие сущности: – «список блюд» – для хранения информации о списке блюд; – «содержание заказа» – для хранения информации о содержании заказов; – «заказы» – для хранения информации о заказах; – «работники столовой» – для хранения информации о работниках; – «столики» – для хранения информации о столиках. В сущностях «Список блюд», «Содержание заказа», «Заказы», «Работники столовой», «Столики» определены первичные ключи для однозначного определения записей. На логическом уровне проектирования в моделируемой базе данных присутствуют один тип связей между описанными сущностями: идентифицирующие связи. Связь между сущностями «Список блюд» и «Содержание заказа» идентифицирующая один ко многим, т.к. в один список блюд может входить несколько блюд. Связь между сущностями «Заказы» и «Содержание заказа» идентифицирующая один ко многим, т.к. в одном заказе может быть несколько блюд. Связь между сущностями «Работники столовой» и «Заказы» идентифицирующая один ко многим, т.к. один работник может оформить несколько заказов. Связь между сущностями «Столики» и «Заказы» идентифицирующая один ко многим, т.к. на один столик может быть несколько заказов. На рисунке 7 изображена ER-диаграмма логического уровня. Рисунок 7 – ER – диаграмма логического уровня Одной и той же логической модели может соответствовать несколько разных физических. В физической модели важно описать всю информацию о конкретных физических объектах – таблицах, колонках, индексах, процедурах. Для нормализации разрабатываемой схемы данных приведем все имеющиеся отношения к соответствующим наборам ограничений. Первая нормальная форма требует, чтобы значения всех атрибутов отношения были атомарными. При рассмотрении информационной модели было отмечено, что значения атрибутов всех отношений логически разделить на элементы нельзя и, следовательно, они удовлетворяют условию первой нормальной формы. Вторая нормальная форма требует, чтобы отношение находилось в первой нормальной форме, и каждый не ключевой атрибут функционально полно зависел от первичного ключа. И это требование также выполняется в рассматриваемой модели. Все не ключевые атрибуты функционально полно и не транзитивно зависят от первичного ключа. Следовательно, отношение находится в БКНФ. На рисунке 8 изображена ER-диаграмма физического уровня. Рисунок 8 – ER-диаграмма физического уровня 2.3 Верификация спроектированной логической модели После разработки информационной модели ее следует связать с функциональной моделью. Такая связь гарантирует завершенность анализа, гарантирует, что есть источники данных (сущности) для всех работ. Связывание моделей способствует согласованности, корректности и завершенности анализа. Стрелки в функциональной модели обозначают некоторую информацию, использующуюся в моделируемой системе. В информационной модели на логическом уровне информация изображается в виде сущностей. Сущности состоят из совокупностей экземпляров сущностей (кортежи отношений). К информационной модели предъявляется требование нормализации, что должно обеспечить компактность и непротиворечивость хранения данных. Информация, которая моделируется одной стрелкой в функциональной модели, может содержаться в нескольких сущностях и атрибутах информационной модели. На функциональной модели могут присутствовать различные стрелки, изображающие одни и те же данные. Информация о таких стрелках находится в одних и тех же сущностях. Следовательно, одной и той же стрелке в функциональной модели могут соответствовать несколько сущностей в информационной модели и, наоборот, одной сущности может соответствовать несколько стрелок. Работы в функциональной модели могут создавать или изменять данные, которые соответствуют входящим и выходящим стрелкам. Они могут воздействовать как целиком на сущности (создавая и модифицируя экземпляры сущности), так и на отдельные атрибуты сущности. BPwin позволяет связывать элементы информационной модели, созданной с помощью Erwin, документировать влияние работ на данные и, тем самым позволяет создать спецификации на права доступа к данным для каждого процесса. На основании верификации спроектированной логической модели создан отчет представленный в таблице 1. Таблица 1 – Отчет верификации спроектированной логической модели
3. Реализация системы 3.1 Т-SQL – определение регламентированных запросов Для создания отчетов создано 5 запросов. Рассмотрим каждый запрос подробнее. Запрос «Данные для отчёта о продажах» содержит информацию о количестве товара, его цене и предназначен для формирования отчёта «Содержание заказа». Текст запроса на языке Т-SQL представлен ниже: UPDATE Заказ, [Содержание заказа] SET [Содержание заказа]. Общая Стоимость = [Количество]*[Цена]; Результат запроса содержит стобец с вычислениями общей стоимости заказанных блюд по отдельности исходя из их количества. Запрос «Данные для отчёта о свободных столиках» содержит информацию о номере столика и его статусе и предназначен для формирования отчёта «Наличие свободных мест». Текст запроса на языке Т-SQL представлен ниже: SELECT Столики. № столика FROM Столики WHERE (((Столики.Статус)="свободен")); Результат запроса содержит столбец, где перечисляются все свободные столики в данной столовой. Запрос «Данные для отчёта об имеющихся блюдах» содержит следующую информацию: название блюда, характеристику блюда, номинальное количество, единицу измерения и цену блюда. Данный запрос предназначен для формирования отчёта «Имеющиеся в продаже блюда». Текст запроса на языке Т-SQL представлен ниже: SELECT [Данные о блюдах]. Название_блюда, [Данные о блюдах]. Характеристика, [Данные о блюдах]. Номин_количество, [Данные о блюдах]. Ед_измерения, [Данные о блюдах]. Ном_цена FROM [Данные о блюдах]; В результате запрос выводит информацию обо всех имеющихся блюдах. Запрос «Данные для чека» содержит следующую информацию: номер заказа, дату заказа, время заказа, название блюда, количество выбранного блюда и цену за него, а также информацию об общей сумме заказа. Данный запрос предназначен для формирования отчёта «Чек». Текст запроса на языке Т-SQL представлен ниже: SELECT Заказ. № заказа, Заказ. Дата, Заказ. Время, [Данные о блюдах]. Название блюда, [Содержание заказа]. Количество, [Содержание заказа]. Цена, [Цена]*[Количество] AS Symma_zakaza FROM (Заказ INNER JOIN [Запрос о выставлении суммы] ON Заказ. № заказа = [Запрос о выставлении суммы]. № заказа) INNER JOIN ([Данные о блюдах] INNER JOIN [Содержание заказа] ON [Данные о блюдах].№блюда = [Содержание заказа].№блюда) ON Заказ. № заказа = [Содержание заказа]. № заказа WHERE (((Заказ. № заказа)=[Введите № заказа])); В результате запрос выводит чек, который выдаётся клиентам столовой для оплаты. Запрос о выставлении суммы содержит информацию о заказе и данные об итоговой сумме заказа. Текст запроса на языке Т-SQL представлен ниже: SELECT Заказ. № заказа, Sum([Содержание заказа]. Общая Стоимость) AS Symma_zakaza FROM Заказ INNER JOIN [Содержание заказа] ON Заказ. № заказа = [Содержание заказа]. № заказа GROUP BY Заказ. № заказа; Результат запроса содержит столбец, где указывается итоговая сумма заказа. 3.2 Описание клиентских приложений информационный автоматизация столовая запрос При разработке курсового проекта создано клиентское приложение информационной системы «Столовая». На основной форме постранично располагаются все таблицы, необходимые для составления отчетов, а также основные кнопки управления программой. Главная форма представлена на рисунке 9. Рисунок 9 – Главное окно программы В основные возможности программы входят следующие функции: добавить, редактировать и удалить запись из базы данных. Функция добавить позволяет вводить новые поля в выбранную базу данных. Функция редактировать дает возможность изменять не правильно введенные данные. Функция удалить позволяет убрать запись из базы данных. Кроме основных функций программа также осуществляет поиск данных: по названию блюда, цене блюда, номеру столика и табельному номеру. У пользователя есть возможность ввести параметры поиска, программа произведет поиск, а затем результаты поиска покажет пользователю. Если запрашиваемых данных нет, то на экране появится пустая база данных. Формы в режиме поиска представлены на рис. 10-13. Рисунок 10 – Форма в режиме поиска по названию блюда Рисунок 11 – Форма в режиме поиска по цене блюда Рисунок 12 – Форма в режиме поиска по номеру столика Рисунок 13 – Форма в режиме поиска по табельному номеру Кроме основных функций программа также осуществляет фильтрацию данных: по названию блюда, цене блюда, номеру столика, табельному номеру и фамилии. У пользователя есть возможность ввести требуемые данные, программа произведет фильтрацию, а затем результаты поиска покажет пользователю. Пример фильтрации данных по фамилии сотрудника, представлен на форме 14. Рисунок 14 – Форма в режиме фильтрации по фамилии сотрудника Также пользователь может просмотреть отчеты: об имеющихся в продаже блюдах, информацию о наличии свободных мест, данные заказа. Отчеты представлены на рисунках 15-17. Рисунок 15 – Отчет «Имеющиеся в продаже блюда» Рисунок 16 – Отчет «Информация о наличии свободных мест» Рисунок 17 – Отчет «Данные заказа» 4. Функциональное и общее тестирование системы Тестирование программного продукта проводилось по всем вариантам использования. Результаты тестирования представлены в таблице 2. Таблица 2 – Журнал тестирования
5. Энерго- и ресурсосбережения Стандарт управления энергопотреблением компьютеров описывает три различных режима работы компьютера. Эти режимы отличаются потребляемой мощностью электроэнергии. Ждущий режим – позволяет экономить энергию, за счет отключения всех периферийных устройств, кроме ЦПУ, ОЗУ и материнской платы. Спящий режим – позволяет экономить электроэнергию на 100%, так как отключаются все периферийные устройства. Основной режим – при этом режиме экономии нет. Потребляемая мощность около 400Ватт. Для нахождения количества рабочих дней, в течение которых разрабатывался программный продукт, используем формулу n = Тпк /(8-tрп), (1) где Тпк – время работы компьютера, ч; Тпк =84 ч; tрп – суммарное время регламентированных перерывов, в течение рабочего дня, ч; tрп =60 мин=1 час; n=84/(8-1)=12 часов Для нахождения суммарной продолжительности регламентированных перерывов в течение всего времени разработки программного модуля Трп=ntрп, (2) где Трп – суммарная продолжительность регламентированных перерывов в течение всего времени разработки программного модуля. Трп=121=12 часов Стоимость сэкономленной электроэнергии рассчитывается по формуле Сэн=Трп(Wпк-Wсп)Сэ, (3) где Wпк – потребляемая мощность ПК, кВт; Wсп – потребляемая мощность компьютера в «спящем» режиме; Wпк = 0,4 кВт; Wсп = 0,16 кВт; Сэ – стоимость 1 кВт электроэнергии; Сэ= 2930 кВт; Сэн=12(0,4-0,16)2930=8438,4 руб. Заключение В результате выполнения курсового проекта разработан интерфейс системы «Столовая». При реализации проекта пройдены этапы описания и постановки задачи, проектирования программного модуля, кодирования программы на алгоритмический язык и тестирования готовой программы. Данная программа легка в использовании. Все необходимые данные представлены как в виде простых таблиц, так и в виде форм. Программный продукт разработан на современном программном обеспечении, программа проста в использовании как опытному, так и простому пользователю. Список использованных источников ГОСТ ИСО/ МЭК 2382-99. Информационные технологии. Словарь. Ч. 1. Основные термины. ГОСТ ИСО/МЭК ТО 9127-2002. Документация пользователя и информация на упаковке для потребительских программных пакетов. СТУ СМК 4.04-2011. Стандарт учреждения. Общие требования к оформлению текстовых документов». Бьюли, А., Опель, Э. Изучаем SQL/ А. Бьюли, Э. Оппель – Москва: Символ, 2007. – 312 с. Фиайли К. SQL. Руководство по изучению языка/ К. Фиайли. – Москва; Питер, 2004.-451с. Жилинский, А. Самоучитель Microsoft SQL Server 2005/ А. Жилинский. – Санкт-Петербург : BHV, 2004. – 224 с. Дубейковский, В.И., Эффективное моделирование с AllFusion Process Modeler /В.И. Дубейковский. -Москва: Диалог-МИФИ, 2007, 344с. Крёнке, Д, Теория и практика построения баз данных, 8-е изд./ Д. Крёнке.– Санкт-Петербург: Питер, 2003г. Маклаков, С.В., ВPwin и ERwin. CASE – средства разработки информационных систем / С.В. Маклаков.– Москва: Диалог-МИФИ, 2004, 256с. Технологии разработки программного обеспечения. Учебное пособие. 2-е изд./С. Орлов. – Санкт-Петербург: Питер, 2003. Роб П., Коронел К. Системы баз данных: проектирование, реализация и управление. – 5-е изд., перераб. и доп.: Пер. с англ./ П.Роб, К. Коронел.– Санкт-Петербург: БХВ-Петербург, 2004. Прагг, К., Ирвин, М.. Access 2002. Библия пользователя.: Пер. с англ./ К. Прагг, М. Ирвин. – Москва: Издательский дом «Вильямс», 2003. Рамбо, Дж. UML 2.0. Объектно-ориентированное моделирование и разработка. – 2-е изд./ – Санкт-Петербург: Питер, 2007. – 554 с. (Библиотека программиста) Архангельский, А.Я, Программирование в C++ Builder 6./ А.Я. Архангельский. –Москва: ООО Бином – пресс, 2003. – 1152с. Калверт Ч., Рейсдорф К., Borland C++ Builder 6. Настольная книга программиста/ Ч. Калверт, К. Рейсдорф.– Санкт-Петербург: ООО «ДиаСофт», 2005 – 1008 с. |