Целью данной курсовой работы является проектирование информационной системы «Кафе-Ресторан». Уменьшение времени, затрачиваемого на обработку информации, путем автоматизации процессов ввода, хранения и вывода информации.
Для достижения поставленной цели необходимо решить следующие задачи:
- Исследовать предметную область;
- Обосновать выбор инструментальных средств;
- Формализовать бизнес-процессы (диаграммы IDEF-0), на базе полученных материалов обследования;
- Формализовать потоки данных (диаграммы DFD), на базе выявленных бизнес-процессов;
- Построить модель данных;
- Сгенерировать модель данных в целевую СУБД;
- Разработать прототип приложения;
- Оценить экономический эффект.
В качестве объекта исследования было выбрано типовое предприятие общественного питания — ресторан «Капитан», занимающееся организацией приятного время препровождения посетителей, предоставления им возможности культурного отдыха, а также предоставление на выбор посетителей широкого списка изысканных блюд. Ресторан содержит в своем составе следующие подразделения: «Кухня», «Главный зал», «Финансы и производство».
Рассмотрим отдельно состав работников и функции, выполняемые каждым из отделов.
Финансы и производство — отдел представляют три человека: менеджер, финансист и логист. Данный отдел отвечает за исполнение следующих операций:
- Ведение бухгалтерского учета;
- Анализ поступающей информации от отделов «Кухня» и «Главный зал»;
- Ведение взаиморасчетов с поставщиками;
- Ведение налогового учета;
- Формирование ежедневного меню;
- Формирование заявок на закупку продуктов.
Для формирования ежедневного меню от отдела «Кухня» поступает список блюд возможных для приготовления и на основе этого списка, а также внешней экономической информации формируется ежедневное меню, содержащее список блюд и цены на них.
Для управления закупкой продуктов от отдела «Кухня» поступает список необходимых продуктов для заказа и на основании это списка формируется заявка на заказ продуктов поставщику. При поступлении продуктов на кухню администратор кухни передает в отдел «Финансы и производство» документы о поступлении продуктов.
Формированием ежедневного меню занимается менеджер. Управлением закупкой занимается логист, а всеми остальными процессами занимается финансист.
Бытовая техника и химия на кухне
... качества продукции бытовой химии и альтернативных вариантов препаратов частичной замены бытовой химии из более доступных и экологически чистых продуктов - народных средств. Задачи работы: подробно представить информацию о продуктах бытовой химии. Ознакомиться с ... образуют с воздухом взрывчатые смеси. Поэтому работу с ним проводят на открытом воздухе вдали от огня. Кожа рук при соприкосновении с ...
Кухня — отдел представлен 3-4 поварами и одним администратором горячего цеха. Повара занимаются приготовлением блюд. Администратор кухни принимает заказы от официантов, анализирует их и формирует очередность приготовления блюд, как только блюдо готово администратор горячего цеха сообщает об этом официанту. Также администратор горячего цеха ведет отчетность об израсходованных продуктах, следит за их количеством и в случае необходимости формирует заявку на заказ продуктов, при поступлении продуктов администратор анализирует поступившие продукты, сравнивает поступившие продукты с заявкой и отчетные документы передает в отдел «Финансы и производство».
Главный зал — состоит из 3-4 официантов и одного администратора зала. Главная задача отдела сводится к обслуживанию посетителей. Процедура взаимодействия с посетителями выглядит следующим образом: посетитель приходит в ресторан и на основе меню формирует свой заказ, официант отправляет заказ на кухню и администратору зала, а после приготовления заказа подает его посетителю. Когда посетитель собирается уходить официант подает ему счет, который заранее подготовлен администратором зала и посетитель его оплачивает. Заказ посетителя переносится в общий журнал заказов.
Резюмируя высказанное, функции, выполняемые сотрудниками разных отделов предприятия можно представить в виде матрицы организационных проекций. Матрица организационных проекций представлена в таблице 1.
Таблица 1 — Матрица организационных проекций
Оргзвенья |
Функции |
||||||||
Отдел |
Сотрудники |
Обслуживание клиентов |
Расчет посетителя |
Управление деятельностью кухни |
Формирование меню |
Закупка продуктов |
Управление финансами |
Приготовление блюда |
|
Финансы и производство |
Финансист |
Х |
|||||||
Менеджер |
Х |
||||||||
Логист |
Х |
||||||||
Кухня |
Повара |
Х |
|||||||
Администратор горячего цеха |
Х |
||||||||
Главный зал |
Официанты |
X |
|||||||
Администратор зала |
Х |
||||||||
Анализируя рассмотренные данные деятельности ресторана, его подразделений и сотрудников можно заметить, что большинство функций выполняется в ручном виде и требует ведения бумажной документации. Целесообразным было бы произвести автоматизацию основных функций предприятия и, по возможности, сократить ведение бумажного документооборота.
Автоматизация позволит ускорить процесс обслуживания посетителей, уменьшить документооборот и сократить расходы.
Процесс проектирования необходимо организовать средствами автоматизированного проектирования. При анализе современные СП было выбрано 3 основных кандидата:
- ARIS;
- ERwin/BPwin;
- Rational Rose.
ERwin — средство концептуального моделирования БД, использующее стандарт IDEF1X. ERwin реализует проектирование схемы БД, генерацию ее описания на языке целевой СУБД (ORACLE, Informix, Ingres, Sybase, DB/2, Microsoft SQL Server, Progress и др.) и реинжиниринг существующей БД. ERwin выпускается в нескольких различных конфигурациях, ориентированных на наиболее распространенные средства разработки приложений 4GL. Версия ERwin/OPEN полностью совместима со средствами разработки приложений PowerBuilder и SQLWindows и позволяет экспортировать описание спроектированной БД непосредственно в репозитории данных средств. Для ряда средств разработки приложений (PowerBuilder, SQLWindows, Delphi, Visual Basic) выполняется генерация форм и прототипов приложений. Сетевая версия Erwin ModelMart обеспечивает согласованное проектирование БД и приложений в рамках рабочей группы. BPwin — средство функционального моделирования, реализующее методологию IDEF0-IDEF3. Методология IDEF0, являющаяся официальным федеральным стандартом США, представляет собой совокупность методов, правил и процедур, предназначенных для построения функциональной модели объекта какой-либо предметной области. Функциональная модель IDEF0 отображает функциональную структуру объекта, т.е. производимые им действия и связи между этими действиями. Методология IDEF может использоваться для моделирования широкого круга систем и определения требований и функций, а затем для разработки системы, которая удовлетворяет этим требованиям и реализует эти функции. Для уже существующих систем IDEF может быть использована для анализа функций, выполняемых системой, а также для указания механизмов, посредством которых они осуществляются [6].
Достоинство — Авторитетность (множество положительных отзывов).
«Изобразительные» средства системы соответствуют федеральному стандарту США IDEF на моделирование организационных процессов. Распространенность (99,9% проектов организационного реинжиниринга исполняются с использованием стандарта IDEF).
Возможность генерации исполняемого кода по разработанной модели информационной системы. Пожалуй одно из лучших средств проектирования баз данных. Интегрируется с многочисленным ПО компании CA-Platinum.
Недостаток — Репрезентативные свойства низки. Отсутствие стандартных объектов для описания бизнес процессов. Довольно узкие возможности для проведения экономического анализа.
Rational Rose — предназначено для автоматизации этапов анализа и проектирования ПО, а также для генерации кодов на различных языках и выпуска проектной документации. Rational Rose использует синтез-методологию объектно-ориентированного анализа и проектирования, основанную на подходах трех ведущих специалистов в данной области: Буча, Рамбо и Джекобсона. Разработанная ими универсальная нотация для моделирования объектов (UML — Unified Modeling Language) претендует на роль стандарта в области объектно-ориентированного анализа и проектирования. Конкретный вариант Rational Rose определяется языком, на котором генерируются коды программ (C++, Smalltalk, PowerBuilder, Ada, SQLWindows и ObjectPro).
Основной вариант — Rational Rose/C++ — позволяет разрабатывать проектную документацию в виде диаграмм и спецификаций, а также генерировать программные коды на С++. Кроме того, Rational Rose содержит средства реинжиниринга программ, обеспечивающие повторное использование программных компонент в новых проектах [8].
Достоинство — В наибольшей степени подходит для разработки крупных информационных систем. Реализует большую часть функций ARIS и ERwin/BPwin. Мощные функциональные возможности по генерации исполняемых кодов. В настоящее время код «сломан», а сам продукт может за 100 руб. быть приобретенным на рынке.
Недостаток — Цена. Политика разработчика непрозрачна. Отсутствие стандартных объектов для описания бизнес процессов. Очень противоречивые отзывы пользователей. Вывод — цена не соответствует потенциальному риску.
ARIS — Методология ARIS рассматривает предприятие как совокупность четырех взглядов: взгляд на организационную структуру, взгляд на структуру функций, взгляд на структуру данных, взгляд на структуру процессов. При этом каждый из этих взглядов разделяется еще на при подуровня: описание требований, описание спецификации, описание внедрения. Таким образом, ARIS предлагает рассматривать организацию с позиции 12 аспектов, отображающих разные взгляды на предприятие, а также разную глубину этих взглядов. Для описания бизнес-процессов предлагается использовать 85 типов моделей, каждая из которых принадлежит тому или иному аспекту. Среди большого количества возможных методов описания можно выделить следующие: EPC (event-driven process chain) — метод описания процессов, нашедший применение для описания процессов системы SAP R/3; ERM (Entity Relationship Model) — модель сущностей-связей для описания структуры данных; UML (Unified Modeling Language) — объектно-ориентированный язык моделирования. ARIS Toolset (ARIS Easy Design) — единая среда моделирования, которая представляет собой совокупность четырех основных компонентов — Explorer (Проводник), Designer (средство для графического описания моделей), Таблиц (для ввода различных параметров и атрибутов) и Мастеров (Wizards).
Различия двух продуктов заключается не в методологической части (ARIS Easy Design входит в ARIS Toolset), а лишь в функционале. ARIS Easy Design ориентирован на сбор информации и документирование, когда ARIS Toolset позволяет еще и проводить комплексный анализ, семантические проверки информации. Кроме того, только ARIS Toolset позволяет создавать скрипты (шаблоны) для отчетов, анализа и семантических проверок. ARIS Toolset — это средство для полноправного управления проектом ARIS. Функции управления заключаются в возможностях разграничения доступа для различных групп пользователей, а также ограничения методологи. Это необходимо, что бы избавится от избыточности методологии при реализации конкретного проекта. Помимо этого, некоторые модули, в частности ARIS ABC и ARIS Simulation, функционируют только при наличии ARIS Toolset [9].
Достоинство — «Могучая» репрезентативная графика. Наличие большого числа стандартных объектов для описание бизнес процессов. Наличие инструмента имитационного моделирования. Наличие внутреннего языка управления ARIS-Basic. Возможность тестирования проекта на соответствие требования стандарта качества ISO 9000.
Недостаток — Невозможность генерации каких-либо кодов или баз данных. Потребует очень большого времени (возможно до 5 мес.) на обучение персонала. Авторитет разработчика ПО ничем пока не подтвержден.
На основе анализа СП можно представить сравнительный анализ:
Таблица 2. Сравнительный функциональный анализ СП
№ п/п |
Функции, свойства |
ARIS |
ERwin/ BPwin |
Rational Rose |
|
1 |
Моделирование организационных функций и процессов |
+ |
+ |
+ |
|
2 |
Разработка технического задания |
+ |
+/- |
+/- |
|
3 |
Функционально-стоимостной анализ |
+ |
+ |
+/- |
|
4 |
Оптимизация бизнес процессов |
+ |
— |
— |
|
5 |
Имитационное моделирование, событийно-управляемое моделирование |
+ |
+/- |
— |
|
6 |
Генерация кода приложения |
— |
+ |
+/- |
|
7 |
Оформление проектной документации; генерация технологических инструкций для рабочих мест |
+ |
+/- |
+ |
|
8 |
Хранение моделей деятельности предприятий |
+ |
+/- |
+/- |
|
9 |
Создание концептуальных и физических моделей структуры базы данных |
+/- |
+ |
+ |
|
10 |
Генерация программного кода, SQL-сценариев для создания структуры базы данных. |
— |
+ |
+/- |
|
11 |
Стандартное представление основных бизнес процессов (более 100 типов) |
+ |
— |
— |
|
12 |
Ведение библиотеки типовых бизнес моделей |
+ |
+/- |
+/- |
|
13 |
Групповая работа над проектом |
+ |
+ |
+ |
|
14 |
Выдача встроенных отчетов по стандарту ISO9000 |
+ |
— |
— |
|
15 |
Ценовые различия |
31740 $ |
23685 $ |
40520 $ |
|
Проанализировав все представленные СП был выбран комплект ERwin/ BPwin так как он полностью удовлетворяет требованиям. ERwin/ BPwin позволяет прекрасно проводить генерацию БД, строить диаграммы бизнес-процессов и моделей данных, имеет самую низкую стоимость из представленных для анализа CASE-средств, так же ERwin/ BPwin достаточно прост в освоении и не возникает трудностей при работе с ним. Пакет ERwin/ BPwin использовался в учебном процессе и его возможности хорошо известны.
Одним из пунктов автоматизации деятельности ресторана является замена бумажного документооборота на электронный. Таким образом, для разработки прототипа будущего приложения потребуется база данных, в которой будет храниться вся информация используемая в деятельности предприятия. Так же потребуется полноценная СУБД которая возьмет на себя функций контроля целостности данных их непротиворечивости и возьмет на себя основные операции над данными.
При анализе наиболее популярных СУБД было отобрано три основных кандидата:
- Microsoft SQL Server;
- MySQL;
- Firebird.
Microsoft SQL Server — система управления реляционными базами данных, разработанная корпорацией Microsoft. Обычно используется для работы с базами данных большого размера. Лицензирование осуществляется на платной основе [3].
MySQL — свободная система управления базами данных. MySQL является собственностью компании Oracle Corporation, получившей её вместе с поглощённой Sun Microsystems, осуществляющей разработку и поддержку приложения. MySQL, является решением для малых и средних приложений. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы. MySQL — получил широкое распространение благодаря повсеместному использованию данной СУБД при создании веб-сайтов [4].
Firebird (FirebirdSQL) — компактная, кроссплатформенная, свободная система управления базами данных (СУБД), работающая на Linux, Microsoft Windows и разнообразных Unix платформах [10].
В качестве преимуществ Firebird можно отметить многоверсионную архитектуру, обеспечивающую параллельную обработку оперативных и аналитических запросов (это возможно потому, что читающие пользователи не блокируют пишущих), компактность (дистрибутив 5Mb), высокую эффективность и мощную языковую поддержку для хранимых процедур и триггеров.
Firebird используется в различных промышленных системах (складские и хозяйственные, финансовый и государственный сектора).
Это коммерчески независимый проект программистов, технических советников и разработчиков мультиплатформенных систем управления базами данных, основанный на исходном коде, выпущенном корпорацией «Borland» 25 июля 2000 года в виде свободной версии Interbase 6.0.
В результате анализа, в качестве целевой СУБД был выбран Firebird. Так как эта СУБД является бесплатной, поддерживает работу в трехзвенном приложении, а также обеспечивает необходимый уровень защиты данных.
Для разработки прототипа приложения потребуется средство разработки программного обеспечения. При анализе наиболее популярных сред разработки было отобрано три основных кандидата:
- Borland Delphi 7;
- Microsoft Visual Basic;
- C++ Builder.
Borland Delphi 7 — это продукт Borland International для быстрого создания приложений [2].
Высокопроизводительный инструмент визуального построения приложений включает в себя настоящий компилятор кода. В основе Delphi лежит язык Object Pascal, который является расширением объектно-ориентированного языка Pascal. В Delphi также входят локальный SQL-сервер, генераторы отчетов, библиотеки визуальных компонентов, и прочее хозяйство, необходимое для того, чтобы чувствовать себя совершенно уверенным при профессиональной разработке информационных систем или просто программ для Windows-среды. Система программирования Delphi отлично подходит для разработки приложений с использованием БД и предоставляет большое количество компонентов для этого.
Преимущества Borland Delphi 7
- быстрота разработки приложения;
- высокая производительность разработанного приложения;
- низкие требования разработанного приложения к ресурсам компьютера;
- наращиваемость за счет встраивания новых компонент и инструментов в среду Delphi;
- возможность разработки новых компонент и инструментов собственными средствами Delphi (существующие компоненты и инструменты доступны в исходных кодах);
- представлено много возможностей для работы с БД;
- удачная проработка иерархии объектов.
microsoft visual Basic — средство разработки программного обеспечения, разрабатываемое корпорацией Microsoft и включающее язык программирования и среду разработки. Язык Visual Basic унаследовал дух, стиль и отчасти синтаксис своего предка — языка Бейсик, у которого есть немало диалектов. В то же время Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентно-ориентированных языков программирования. Среда разработки VB включает инструменты для визуального конструирования пользовательского интерфейса. Visual Basic считается хорошим средством быстрой разработки прототипов программы, для разработки приложений баз данных и вообще для компонентного способа создания программ, работающих под управлением операционных систем семейства Microsoft Windows [11].
Основные разновидности Visual Basic:
- Классический Visual Basic (версии 5-6) — Этот язык очень сильно привязан к своей среде разработки и к операционной системе Windows, являясь исключительно инструментом написания Windows-приложений. Привязка к среде заключается в том, что существует большое количество средств, предназначенных для помощи и удобства программирования: встроенный отладчик, просмотр переменных и структур данных на лету, окно отладки, всплывающая подсказка при наборе текста программы (IntelliSense).
Все эти преимущества делают бесполезным и даже невозможным использование Visual Basic вне среды разработки, например в обычном текстовом редакторе;
- Visual Basic for Applications (VBA) — Это средство программирования, практически ничем не отличающееся от классического Visual Basic, которое предназначено для написания макросов и других прикладных программ для конкретных приложений. Наибольшую популярность получил благодаря своему использованию в пакете Microsoft Office. Широкое распространение Visual Basic for Applications в сочетании с изначально недостаточным вниманием к вопросам безопасности привело к широкому распространению макровирусов;
— Visual Basic Scripting Edition (VBScript) — Скриптовый язык, являющийся несколько усечённой версией обычного Visual Basic. Используется в основном для автоматизации администрирования систем Windows, а также для создания страниц ASP и сценариев для Internet Explorer.
Достоинства Microsoft Visual Basic:
- высокая скорость создания приложений с графическим интерфейсом для MS Windows;
- простой синтаксис, позволяющий очень быстро освоить язык;
- возможность компиляции как в машинный код, так и в P-код (по выбору программиста).
В режиме отладки программа всегда (вне зависимости от выбора) компилируется в P-код, что позволяет приостанавливать выполнение программы, вносить значительные изменения в исходный код, а затем продолжать выполнение: полная перекомпиляция и перезапуск программы при этом не требуется;
- защита от ошибок, связанных с применением указателей и доступом к памяти. Этот аспект делает Visual Basic приложения более стабильными, но также является объектом критики;
- возможность использования большинства WinAPI функций для расширения функциональных возможностей приложения.
Недостатки Microsoft Visual Basic:
- поддержка операционных систем только семейства Windows и Mac OS X;
- отсутствие механизма наследования реализации объектов. Существующее в языке наследование позволяет наследовать только интерфейсы, но не их реализацию;
- медленная скорость работы, обусловленная тем, что практически все встроенные функции языка реализованы через библиотеку времени исполнения (runtime library), которая, в свою очередь, производит много «лишней» работы по проверке и / или преобразованию типов;
- требует установленную msvbvmXX.dll для работы программы.
C++ Builder — программный продукт, инструмент быстрой разработки приложений (RAD), интегрированная среда программирования (IDE), система, используемая программистами для разработки программного обеспечения на языке C++. C++ Builder объединяет в себе комплекс объектных библиотек (STL, VCL, CLX, MFC и др.), компилятор, отладчик, редактор кода и многие другие компоненты. Цикл разработки аналогичен Delphi. Большинство компонентов, разработанных в Delphi, можно использовать и в C++ Builder без модификации, но, к сожалению, обратное утверждение не верно. C++ — чрезвычайно мощный язык, содержащий средства создания эффективных программ практически любого назначения, от низкоуровневых утилит и драйверов до сложных программных комплексов самого различного назначения [12].
Достоинства C++:
- поддерживаются различные стили и технологии программирования, включая традиционное директивное программирование, ООП, обобщённое программирование, метапрограммирование (шаблоны, макросы);
- предсказуемое выполнение программ является важным достоинством для построения систем реального времени.
Весь код, неявно генерируемый компилятором для реализации языковых возможностей (например, при преобразовании переменной к другому типу), определён в стандарте. Также строго определены места программы, в которых этот код выполняется. Это даёт возможность замерять или рассчитывать время реакции программы на внешнее событие;
- пользовательские функции-операторы позволяют кратко и ёмко записывать выражения над пользовательскими типами в естественной алгебраической форме;
- используя шаблоны, возможно создавать обобщённые контейнеры и алгоритмы для разных типов данных, а также специализировать и вычислять на этапе компиляции;
- Имеется возможность работы на низком уровне с памятью, адресами.
Недостатки C++:
- синтаксис, провоцирующий ошибки;
- препроцессор, унаследованный от Си, очень примитивен.
Это приводит с одной стороны к тому, что с его помощью нельзя (или тяжело) осуществлять некоторые задачи метапрограммирования, а с другой, вследствие своей примитивности, он часто приводит к ошибкам и требует много действий по обходу потенциальных проблем;
- плохая поддержка модульности (по сути, в классическом Си модульность на уровне языка отсутствует, её обеспечение переложено на компоновщик).
Подключение интерфейса внешнего модуля через препроцессорную вставку заголовочного файла (#include) серьёзно замедляет компиляцию при подключении большого количества модулей (потому что результирующий файл, который обрабатывается компилятором, оказывается очень велик);
- сложность и избыточность, из-за которых C++ трудно изучать, а построение компилятора сопряжено с большим количеством проблем.
Приведем небольшую сравнительную таблицу по средство разработки программного обеспечения:
Таблица 3. Сравнение средств разработки приложения
Характеристика |
С++ |
Visual Basic |
Delphi 7 |
|
Сложность изучения |
Большая(-) |
Маленькая(+) |
Маленькая(+) |
|
Восприятие кода |
Среднее(+,-) |
Плохое(-) |
Хорошее(+) |
|
Рефакторинг |
Средний(+,-) |
Средний(+,-) |
Хороший(+) |
|
Скорость работы приложения |
Хорошая(+) |
Плохая(-) |
Хорошая(+) |
|
Скорость разработки решения |
Средняя(+,-) |
Плохая(-) |
Хорошая(+) |
|
Наличие документации |
Много(+) |
Среднее(+,-) |
Много(+) |
|
Возможности для работы с БД |
Хорошие(+) |
Средние(+,-) |
Хорошие(+) |
|
Итого |
6+/4- |
4+/6- |
7+/0- |
|
Таким образом, анализирую данные сравнения, для разработки приложения был выбран — Borland Delphi 7, так как Delphi 7 наиболее полно удовлетворят требованиям для разработки, достаточно прост в использовании, имеет хорошую скорость разработки и работы приложения, а так же имеет достаточно возможностей для работы с БД. Раннее Borland Delphi 7 использовался в учебном процессе и прекрасно себя зарекомендовал как средство быстрой разработки приложений.
Таким образом в результате анализа для данной курсовой работы были выбраны следующие приложения:
1) CASE-средство BPwin+ERwin;
2) СУБД Firebird;
3) Пакет для разработки приложения Borland Delphi 7.
Требования, предъявляемые к информационной системе:
1. Эксплуатационные требования
1.1. Система должна обеспечить регистрацию порядка 100-150 операций в день (заказы посетителей, закупки, бронирование столиков, формирование меню и т.д.) с учетом ее срока эксплуатации 5 лет (моральный износ) и с учетом перспектив развития и некоторого запаса.
2. Требования к надежности
2.1. Система должна восстанавливаться после сбоя (например, отключение питания)
2.2. В программу должны быть встроены средства контроля ошибок:
- Контроль ссылочной целостности при попытках удаления записей;
- Анализ вводимой информации (запрет ввода текстовой информации в числовые поля)
3. Требования к интерфейсам
3.1. Программа должна быть сделана с использованием СУБД Firebird
3.2. Программа должна иметь стандартный интерфейс с пользователем в среде Windows (многооконность, подсказки, статусная строка)
4. Другие требования
4.1. Программа должна поддерживать работу по сети нескольких пользователей
4.2. Программа должна быть пригодной к сопровождению (модульность, понятность кода).
Моделируя деятельность ресторана, мы можем выделить как входную так и выходную информацию, так же стоит еще учесть и другие факторы, влияющие на деятельность предприятия — это законодательство, правила приготовления блюд, техническое обеспечение и другие факторы.
При анализе деятельности предприятия общественного питания было выделено три основные работы входящие в состав предприятия.
Рисунок 2 — Деятельность ресторана
Это обслуживание посетителей ресторана, это деятельность кухни, занимающаяся приготовлением блюд и управление финансами и производством, занимающаяся управлением финансами на предприятии, формировании ежедневного меню и управлением закупкой продуктов. Предметом моего исследования деятельности ресторана является процесс обслуживания клиентов. Для того чтобы лучше понять логику этого процесса, мною было принято решение декомпозировать работу по обслуживание клиентов на две подработы: обслуживание столика и расчет посетителя.
Из диаграммы следует, что работа официанта заключается в обслуживание столика, то есть это уборка столика после посетителя, подача меню новому посетителю и принятие его заказа, передача этого заказа на кухню и администратору зала для формирования счета, подача готового заказа посетителю и, в случае необходимости, принятие нового заказа, после удовлетворения посетителем своих потребностей подача ему счета за услуги и принятие денег.
Администратор зала формирует счета на оплату посетителей, следит за правильностью подачи заказа официантом и в случае несовпадения заказа посетителя и того что ему принесли улаживает неприятности.
Для того чтобы выделить потоки данных необходимо построить диаграмму DFD. При построении диаграммы мною были выделены две основные внешние сущности — поставщики и посетители.
Ресторан ведет активную деятельность и повседневно контактирует с поставщиками и посетителями. От посетителей ежедневно поступают заказы, а с поставщиками происходит обмен документаций о заказах и поступлениях товара. Обмен информацией с посетителями происходит при обслуживании клиентов, принимаются их заказы на блюда. Поставщики же напрямую контактируют с отделом управления финансами и производством, а так же с кухней при поставке продуктов. Вся работа ресторана напрямую связана с документами — первичная документация, в данную категорию относятся счета на оплату от поставщиков, акты сверок с поставщиками, так же на предприятии циркулируют такие документы как: счета на оплату заказов, ведется общий журнал заказов, меню ресторана.
Отдельное внимание стоит уделить поступающей и уходящей информации при обслуживании клиентов.
Посетитель изучает информацию из меню и на основе ее формирует свой заказ. Для расчета посетителя от персонала кухни приходит информация о готовности блюда. Далее посетителю поступает документ «Счет». Посетитель оплачивает счет и передает его официанту. На основе оплаченного счета администратор зала формирует журнал заказов и передает его в конце смены руководящему персоналу.
После того как была построена модель потоков данных, можно приступить к созданию схемы данных[5].
Анализируя данные диаграммы (Рисунок 4) можно выделить два основных хранилища данных — меню и заказы. Эти хранилища послужат каркасом схемы базы данных, информация о данных сущностях будет храниться в соответствующих таблицах («Eda», «Zakaz»).
Помимо информации о меню и заказах необходимо хранить данные о пользователях системы, необходимо хранить информацию о столиках, а так же информацию о забронированных столиках на определенную дату. Следовательно, необходимы еще как минимум три сущности, способных хранить необходимую информацию.
В результате проведенного анализа создана модель сущность-связь.
Полученная схема данных позволяет хранить всю необходимую информацию для нормального функционирования ресторана.
Современные CASE-средства охватывают обширную область поддержки многочисленных технологий проектирования информационных систем: от простых средств анализа и документирования до полномасштабных средств автоматизации, покрывающих весь жизненный цикл программного обеспечения.
Наиболее трудоемкими этапами разработки информационных систем являются этапы анализа и проектирования, в процессе которых CASE-средства обеспечивают качество принимаемых технических решений и подготовку проектной документации. При этом большую роль играют методы визуального представления информации. Это предполагает построение структурных или иных диаграмм в реальном масштабе времени, сквозную проверку синтаксических правил. Графические средства моделирования предметной области позволяют разработчикам в наглядном виде изучать существующую информационную систему, перестраивать ее в соответствии с поставленными целями и имеющимися ограничениями.
В своей курсовой работе в качестве CASE-средства был выбран программный продукт ERwin. ERwin обеспечивает генерацию схемы данных сущность-связь в физическую базу данных. Взаимодействие Case-средства и, в нашем случае, СУБД Firebird осуществляется по средствам использования драйвера ODBC («Open Database Connectivity»).
Для корректной генерации схемы данных необходимо внести изменения в тексты шаблонов, используемые ERwin при создании таблиц и триггеров в целевой БД, а именно заменить двойные кавычки на одинарные в текстах используемых шаблонов. После того, как файлы шаблонов и сама схема БД готовы, необходимо воспользоваться методом «Forward Engineer\Schema Generation» — именно этот метод и осуществляет генерацию схемы данных в физическую существующую базу данных.
Как быть, если необходимо создать приложение, которое может с одинаковым успехом работать как в локальной сети, так и на удаленном компьютере.
Очевидно, что в этом случае модель доступа к данным должна быть расширена, т.к. наличие большого числа удаленных клиентов делает традиционные схемы создания приложений БД малоэффективными.
В этом разделе будет рассмотрена модель распределенного приложения БД, которая называется многозвенной (multitiered), и, в частности, ее наиболее простой вариант — трехзвенное распределенное приложение. Тремя частями такого приложения являются [2]:
- собственно сервер базы данных;
- сервер приложений (серверная часть приложения);
- клиентская часть приложения.
Все они объединены в единое целое единым механизмом взаимодействия (транспортный уровень) и обработки данных (уровень бизнес-логики).
Компоненты и объекты Delphi, обеспечивающие разработку многозвенных приложений, объединены общим названием DataSnap.
Многозвенная архитектура приложений баз данных вызвана к жизни необходимостью обрабатывать на стороне сервера запросы от большого числа клиентов. Казалось бы, с этой задачей вполне могут справиться и приложения «клиент-сервер». Однако в этом случае при большом числе клиентов вся вычислительная нагрузка ложится на сервер БД, который обладает довольно скудным набором средств для реализации сложной бизнес-логики (хранимые процедуры, триггеры, просмотры и т.д.).
И разработчики вынуждены существенно усложнять программный код клиентского ПО, а это крайне нежелательно при наличии большого числа клиентских компьютеров. Ведь с усложнением клиентского программного обеспечения возрастает вероятность ошибок и усложняется его обслуживание.
Многозвенная архитектура приложений БД призвана исправить перечисленные недостатки.
Теперь рассмотрим составные части трехзвенного распределенного приложения в Delphi. Части трехзвенных приложений разрабатываются с использованием компонентов DataSnap, а также некоторых других специализированных компонентов, в основном обеспечивающих функционирование клиента.
Для передачи данных между сервером приложений и клиентами используется интерфейс AppServer, предоставляемый удаленным модулем данных сервера приложений. Этот интерфейс используют компоненты-провайдеры TDataSetProvider на стороне сервера и компоненты TClientDataSet на стороне клиента.
Клиентское приложение в трехзвенной модели должно обладать лишь минимально необходимым набором функций, делегируя большинство операций по обработке данных серверу приложений.
В первую очередь удаленное клиентское приложение должно обеспечить соединение с сервером приложений. Для этого используются компоненты соединений DataSnap — TSocketconnection, использующий сокеты Windows;
- Компонент TSocketConnection обеспечивает соединение клиента с сервером приложений за счет использования сокетов TCP/IP. Для успешного открытия соединения на стороне сервера должен работать сокет-сервер.
Компоненты соединения DataSnap предоставляют интерфейс IAppServer, используемый компонентами-провайдерами на стороне сервера и компонентами TClientDataSet на стороне клиента для передачи пакетов данных. Для работы с наборами данных используются компоненты TClientDataSet, работающие в режиме кэширования данных.
Компонент-провайдер TDataSetProvider представляет собой мост между набором данных сервера приложений и клиентским набором данных. Он обеспечивает формирование и передачу пакетов данных клиентскому приложению и прием от него сделанных изменений. Все необходимые операции компонент выполняет автоматически. Разработчику необходимо лишь разместить компонент TDataSetProvider и связать его с набором данных сервера приложений.
Перейдем к рассмотрению программного интерфейса клиента и сервера.
На форме сервера (рисунок 7) расположено текстовое поле, в котором отображается число подключенных в настоящий момент пользователей, ip-адрес и время подключения каждого из них.
С точки зрения насыщенности компонентами, форма клиентского приложения намного превосходит форму сервера. Детально проработаны был интерфейс и функции, выполняемые пользователем с учетной записью «Официант». При запуске приложения появляется форма аутентификации, в которой необходимо выбрать пользователя и соответствующий ему пароль.
Левую часть окна занимает список всех блюд, из которых формируется меню, имеется возможностью фильтрации этого меню по различным типам блюд (например, первое блюдо, алкоголь и т.д.), для фильтрации в правой части формы расположены соответствующие кнопки. В правом нижнем углу расположена таблица с текущими заказами посетителей, заказ формируется при нажатии на кнопку «Выбрать блюдо», при заказе необходимо ввести количество заказа, а чуть выше расположена таблица со столиками, указывающая на какой столик сформирован текущий заказ.
Под таблицей текущего заказа расположены две кнопки: «Отмена» для удаления выбранного блюда из текущего заказа и кнопка «Счет» для занесения текущего заказа в журнал заказов и распечатывания документа «Счет».
Так же на форме имеется кнопка «Забронировать столик», при нажатии на которую появляется форма с таблицей забронированных столиков и возможностью удалить бронь или сделать новую.
Кроме этого были проработаны функции других пользователей связанных с деятельностью официанта. Так для пользователя «Администратор» была проработана возможность редактирования таблицы меню (добавление, удаление, редактирование), печать меню, а так же возможность просмотра всего журнала заказов и вывод его на печать.
Для пользователя «Шеф-повар» была проработана форма просмотра текущих заказов и возможность сообщать официанту о готовности того или иного заказа.
Особое внимание стоит уделить кнопке «Update». Данная кнопка является неактивной до тех пор, пока не произошло изменений в записях таблиц БД. Как только что-то изменилось (Например: администратор изменил меню, или шеф-повар сообщил о готовности блюда), кнопка начинает «моргать», это является сигналом к нажатию с целью обновления информации.
Для расчета экономического эффекта сопоставим существующую и автоматизированную предметную технологию по затратам на выполнение. Проведем расчет стоимостных затрат на обработку информации, для этого рассчитаем абсолютные и относительные показатели оценки экономической эффективности технологических процессов.
Рассмотрим показатели, оценивающие величину эксплуатационных стоимостных затрат за год по базовому (существующему) и предлагаемому вариантам (автоматизированному).
Глядя на модели AS-IS и AS-TO BE, сразу же заметно объединение функций менеджера и логиста и передача их менеджеру. После реинжиниринга бизнес процессов происходящих на предприятии и после введения автоматизированной ИС сократились расходы предприятия, уменьшилось время затрачиваемое на обслуживание посетителя и сократился докментооборот. В результате в суммарном выражении мы получили разницу, при условии месячного функционирования организации, в десять тысяч рублей.
Теперь мы можем рассчитать абсолютный показатель снижения стоимостных затрат:
(1)
Перейдем к группе относительных показателей. Рассчитаем коэффициент снижения стоимостных затрат за год :
(2)
Коэффициент (2) показывает на какую долю или процент снижаются затраты предлагаемого варианта по сравнению с базовым.
Индекс снижения стоимостных затрат :
(3)
Индекс снижения стоимостных затрат показывает во сколько раз снижаются стоимостные затраты предлагаемого j- го варианта по сравнению с базовым.
Рассмотрим показатели, оценивающие величину трудоемкости обработки информации за год. До внедрения системы все процессы, связанные с ведением журнала заказов, формированием счета и меню, отражением поступления продуктов производились вручную, на эти процессы уходило время.
В среднем на выписку одного счета уходит от трех до пяти минут. Заработная плата официанта составляет двенадцать тысяч рублей при 21 рабочем дне. Тогда стоимость одного рабочего часа официанта составляет
(4)
Теперь мы сможем рассчитать стоимость выписки одного документа работником
(5)
Внедрение системы позволит сократить затраты, на выписку одного документа в среднем на 30%. Тогда стоимость выписки одного документа кладовщиком составит
(6)
Теперь мы можем рассчитать показатель оценки снижения трудовых затрат за год:
(7)
Найдем коэффициент снижения трудовых затрат за год, данный коэффициент показывает на какую долю или процент снижаются затраты предлагаемого варианта по сравнению с базовым, и рассчитывается как:
(8)
Подводя итог выше сказанному можно сделать вывод, что экономический эффект от проведения реинжиниринга и внедрения автоматизированной системы составит сто двадцать тысяч рублей в год при сокращении трудовых затрат на тридцать процентов.
Поставленная цель курсовой работы выполнена. В ходе курсовой работы были формализованы бизнес-процессы (Диаграммы IDEF-0 AS IS), проведен реинжиниринг бизнес-процессов. (Диаграммы IDEF-0 AS TO BE).
Средствами прямого проектирования получена БД.
Проведенная работа показала, что за счет перераспределения обязанностей сотрудников ресторана получить дополнительную прибыль. Но ощутимый эффект предприятие получило за счет введения автоматизированной ИС, были сокращены расходы предприятия, уменьшено время на обслуживание клиентов, сократился документооборот. В целом же внедрение нового программного обеспечения, сопровождаемое изменениями в структуре отделов предприятия, позволит увеличить прибыль, уменьшив количество сотрудников и сократить расходы.
Проведено проектирование и разработка приложения автоматизирующего деятельность предприятия общественного питания.
Разработанное приложение позволяет:
- Ускорить процесс оформления заказа посетителя
- Обеспечить полный контроль над формируемыми заказами
- Упростить процесс бронирования столиков
- Автоматизировать процесс расчета посетителей
1. Вендров А.М. Практикум по проектированию программного обеспечения экономических информационных систем: Учеб. пособие. — М.: Финансы и статистика, 2004. — 192 с.
2. Н. Елманова, С. Трепалин, А. Тенцлер. Delphi и технология COM — СПБ.: Питер, 2003 — 698 с.
3. Роберт Виейра. Программирование баз данных Microsoft SQL Server 2005. Базовый курс = Beginning Microsoft SQL Server 2005 Programming. — М.: «Диалектика», 2007. — С. 832. — ISBN 0-7645-8433-2 Ссылка на литру.
4. Роберт Шелдон, Джоффрей Мойе MySQL: базовый курс = Beginning MySQL. — М.: «Диалектика», 2007. — С. 880. — ISBN 0-7645-7950-9 Ссылка на литру.
5. С.В. Маклаков. Создание информационных систем с ALLFusion Modelling Suite. М., 2003.
6. С.В. Маклаков. ERwin и Bpwin. CASE-средства разработки информационных систем. М., 1999.
7. Вендров А.М. Один из подходов к выбору средств проектирования баз данных и приложений. «СУБД», 1995, №3.
8. Уэнди Боггс, Майкл Боггс. UML и Rational Rose 2002. 2004. — C. 346.
9. Ильин В.В. Designer Реинжиниринг бизнес-процессов с использованием ARIS Практика реального бизнеса. «Вильямс», 2008. — C. 456.
10. Алексей Ковязин, Сергей Востриков «Мир InterBase. 3-е издание» 2005. C. 496.
11. Гусева О.А. Visual Basic. «Кон». 2008. — С. 390.
12. Б. Страуструп. Язык программирования C++ = The C++ Programming Language / Пер. с англ. — 3-е изд. — СПб.; М.: Невский диалект — Бином, 1999. — 991 с.