Автоматизация товарного учета в баре
Технология управления и автоматизация работы бара. Разработка программного продукта, позволяющего просмотреть отчет барменов и информацию о продажах, заказах и поставщиках. Требования к техническому и программному обеспечению. Алгоритмизация задачи.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 26.10.2013 |
Размер файла | 1,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Федеральное агентство по образованию РФ
Математический колледж.
Филиал в г. Обнинске
ДИПЛОМНЫЙ ПРОЕКТ НА ТЕМУ:
АВТОМАТИЗАЦИЯ ТОВАРНОГО УЧЁТА В БАРЕ
Дипломник
Тинякова Ю.С.
Руководитель проекта
Тельцова Н.Г.
г. Обнинск 2006
Содержание
Введение
1. Постановка задачи
2. Формализация
3. Описание среды программирования
3.1 Требования к техническому обеспечению
3.2 Требования к программному обеспечению
4. Методика разработки проекта
4.1 Алгоритмизация задачи
4.1.1 Описание алгоритма
4.1.2 Блок-схема
4.2 Программирование
4.3 Аномалии и защитное программирование
4.4 Тестирование и отладка
5. Анализ результатов решения
6. Инструкция пользователю
Заключение
Литература
Приложение
Введение
автоматизация бар программный алгоритмизация
ООО “Crazy Club” занимается бизнесом в сфере развлекательных мероприятий. Неотъемлемым условием успешного долгосрочного функционирования компании является высокая степень интеграции технологий управления и автоматизация работы бара, что позволит повысить продуктивность и работоспособность персонала.
Основной задачей дипломного проекта является автоматизация ведения учета в баре “Crazy” (реализующую свою деятельность по обслуживанию клиентов в баре), просмотр и печать отчетов по найденной и отобранной информации, контроль за движением товара в данный период времени.
Этот программный продукт позволит просмотреть отчет о работе барменов и информацию о поставщиках.
Благодаря этой программе появится возможность не только просмотреть и распечатать, но и добавить информацию о продажах, заказах, поставщиках и так далее.
1. Постановка задачи
Разработать приложение для автоматизированного учёта в баре, которое позволит:
· Выводить на экран и принтер информацию о товарах, поставщиках и всех заказах организации.
· Осуществлять хранение информации обо всех продажах и поставках.
· Осуществлять отбор нужной информации, производить анализ полученной информации.
С помощью этого программного продукта работник бара анализирует информацию о находящемся в наличии и проданном товаре. ПП позволяет выводить не только общие сведения о товаре, но и данные, содержащие информацию, о цене и количестве товара.
2. Формализация
Для построения, необходимо провести формализацию задачи, являющуюся необходимым этапом разработки задачи и заключающуюся в построении структуры таблиц для хранения информации, схемы их взаимосвязей и описания алгоритмов обработки.
Как правило, разработка проекта реализации задачи выполняется в несколько этапов и начинается с анализа той информации, которая является выходной (формы и отчеты для Access). Только после выяснения структуры и состава этой информации, формулировки запросов для получения отчетов можно сделать вывод о структуре и составе таблиц данных.
Необходимым этапом формализации задачи является нормализация базы данных, которая, по сути, представляет собой процесс оптимизации хранения и использования информации в таблицах.
Наиболее часто используется приведение к третьей нормальной форме (3NF). В результате устраняется избыточность данных и упрощается процесс изменения структуры БД.
Сначала производится приведение к первой нормальной форме(1NF)- каждой таблице назначается первичный ключ, обеспечивающий уникальность каждой записи. Здесь же удаляются все повторяющиеся группы (точнее создается новая таблица для повторяющихся групп).
В процессе приведения ко второй нормальной форме производится устранение избыточности данных - любое поле в таблице, которое является избыточным или всегда остается неизменным, основанным на значении другого поля, необходимо перенести в другую таблицу.
И, наконец, в 3NF все поля каждой таблицы непосредственно связаны с полем первичного ключа и не зависят от других полей. На практике это делается следующим образом - любое поле не связанное с полем первичного ключа, необходимо перенести в отдельную таблицу.
При разработке структуры данных рассматриваемой задачи изначально подразумевалось следование 3NF. В Access существует мастер анализа таблиц, позволяющий еще более упростить этот процесс.
На следующем этапе уточняется структура полей в таблицах, и определяются правила ввода.
Затем происходит возврат к проектированию запросов для форм и отчетов, проектируются собственно входные и выходные формы и отчеты.
На заключительном этапе создается меню и различные интерфейсные промежуточные формы. Затем, в процессе отладки и доработки, возможен возврат на любой этап процесса разработки.
В следующих разделах пояснительной записки все объекты задачи рассматриваются более подробно.
3. Описание среды программирования
Программный продукт «Автоматизация товарного учета в баре» разработан на СУБД Microsoft Access 2000.
Access 2000 входит в состав Microsoft Office 2000, и работает в среде Windows 98/2000 или Windows NT Workstation 4.0 и выше.
Практический минимум, предъявляемым Access 2000 к персональному компьютеру, является Pentium 166 MHz и 32 Мб оперативной памяти при работе под Windows 98/2000 или под Windows NT Workstation. При стандартной установке набора приложений: Word, Excel, Outlook, Power Point, Access, FrontPage требуется примерно 250 Мб на жестком диске. Рекомендуется монитор SVGA, возможно использование VGA.
Microsoft Access - это функционально полная реляционная СУБД. В ней предусмотрены все необходимые инструментальные средства для определения и обработки данных, а также для управления ими при работе с большими объемами информации. Что касается легкости использования, то Microsoft Access совершил здесь настоящий переворот, и многие для создания своих собственных баз данных и приложений обращаются именно к нему.
Microsoft Access предоставляет максимальную свободу в задании типа ваших данных (текст, числовые данные, даты, время, денежные значения, рисунки, звук, документы, электронные таблицы). Вы можете задать также форматы хранения (длина строки, точность представления чисел и даты времени) и предоставления этих данных при выводе на экран или печать. Для уверенности, что в базе данных хранятся только корректные значения, можно задать условия на значения различной степени сложности.
Возможности программирования в Access позволяют создавать дружественный пользовательский интерфейс и важные процедуры выявления ошибок, которые обеспечивают действительность базы данных. С помощью Access, можно выполнять вот ещё какие задачи:
· Предположим, размер БД достаточно велик, и необходимо одновременно проделать ряд изменений в большом количестве записей. Используя VBA (Visual Basic for Applications), можно быстро изменить набор записей с помощью одной операции, что исключает необходимость выполнения модифицирующих операций для каждой записи.
· Большое значение имеет действительность базы данных. Можно добавить процедуры, которые будут выявлять ошибки при вводе данных, и отображать важные сообщения для пользователя. Если ошибка не является значительной, то можно установить напоминание для последующего исправления введенных данных или запретить работу, пока ошибка не будет исправлена.
Так как Microsoft Access является современным приложением Windows, вы можете использовать все возможности DDE (Dynamic Data Exchange, динамический обмен данными) и ОLЕ (Оobject. Linking and Embedding, связь и внедрение объектов). DDE позволяет осуществлять обмен данными между Access и любым другим поддерживающим DDE приложениями.
В Access вы можете при помощи макросов или Access Basic осуществлять динамический обмен данными с другими приложениями. OLE является более изощренным средством Windows, которое позволяет установить связь с объектами другого приложения или внедрить какие-либо объекты в базу данных Access. Такими объектами могут быть картинки, диаграммы, электронные таблицы или документы из других, поддерживающих OLE приложений Windows.
Microsoft Access может работать с большим числом самых разнообразных форматов данных, включая файловые структуры других СУБД. Вы можете осуществлять импорт и экспорт данных из файлов текстовых редакторов или электронных таблиц.
СУБД позволяет работать с данными, применяя различные способы. Например, вы можете выполнить поиск информации в отдельной таблице или создать запрос со сложным поиском по нескольким связанным между собой таблицам или файлам. С помощью одной единственной команды можно обновить содержание отдельного поля или нескольких записей. Для чтения и корректировки, данных вы можете создать процедуры, использующие функции СУБД. У многих систем имеются развитые возможности для ввода данных и генерации отчетов.
В Microsoft Access для обработки данных ваших таблиц используется мощный язык SQL (Structured Query Language - Структурированный язык запросов). Используя, вы можете выделить из одной или нескольких таблиц необходимую для решения конкретной задачи информацию. Access значительно упрощает задачу обработки данных. Чтобы заставить Microsoft Access решать ваши задачи, вам совершенно не требуется знать язык SQL.
3.1 Требования к техническому обеспечению
Для работы программы персональный компьютер пользователя должен отвечать требованиям необходимым для работы установленные в п.3.2.
3.2 Требования к программному обеспечению
Для работы программы необходимо, чтобы на компьютере были установлены:
§ Операционная система WINDOWS 2000,XP;
§ Microsoft Office XP с установленным компонентом Microsoft Access
4. Методика разработки проекта
4.1 Алгоритмизация задачи
4.1.1 Описание алгоритма
Рассмотрим запросы, которые обеспечивают множество различных функций и являющихся главной составляющей базы данных.
Для этих целей были созданы запросы.
Поставки Запрос
В режиме SQL SELECT DISTINCTROW Товары. Код. Товара, [Сведения о поставках Запрос]. Марка, Sum([Сведения о поставках Запрос]. Количество) AS [Sum-Количество], Sum([Сведения о поставках Запрос]. Цена Приемки) AS [Sum-Цена. Приемки], Поставщики. Название.
FROM (Поставщики INNER JOIN [Типы товаров] ON Поставщики. Код. Поставщика=[Типы товаров]. Код. Поставщика) INNER JOIN (Товары INNER JOIN [Сведения о поставках Запрос] ON Товары.КодТовара=[Сведения о поставках Запрос]. Код. Товара) ON [Типы товаров].КодТипа=Товары. Код. Типа.
GROUP BY Товары. Код. Товара, [Сведения о поставках Запрос].Марка, Поставщики. Название.
ORDER BY [Сведения о поставках Запрос].Марка;
Поставки запрос по датам
В режиме SQL SELECT DISTINCTROW [Сведения о поставках Запрос]. Код Поставки, Format$ (Поставки. Дата. Исп,'Long Date') AS [Дата. Исп по дням], Товары. Минимальный. Запас, [Сведения о поставках Запрос]. Код. Товара, [Сведения о поставках Запрос].Количество, [Сведения о поставках Запрос]. Ед Изм, [Сведения о поставках Запрос].Марка, [Сведения о поставках Запрос]. Цена. Приемки, Поставщики. Название.
FROM (Поставщики INNER JOIN [Типы товаров] ON Поставщики. Код. Поставщика=[Типы товаров]. Код. Поставщика) INNER JOIN ((Товары INNER JOIN [Сведения о поставках Запрос] ON Товары. Код. Товара=[Сведения о поставках Запрос]. Код. Товара) INNER JOIN Поставки ON [Сведения о поставках Запрос]. Код. Поставки=Поставки. Код. Поставки) ON [Типы товаров]. Код Типа=Товары. Код. Типа;
Продажи Запрос
В режиме SQL SELECT Товары. Код. Товара, [Сведения о продажах Запрос]. Марка, Sum([Сведения о продажах Запрос]. Количество) AS [Sum-Количество], Sum([Сведения о продажах Запрос]. Отпускная. Цена) AS [Sum-Отпускная Цена]
FROM [Сведения о продажах Запрос] INNER JOIN Товары ON [Сведения о продажах Запрос]. Код Товара=Товары. Код Товара
GROUP BY Товары. Код Товара, [Сведения о продажах Запрос]. Марка
ORDER BY [Сведения о продажах Запрос].Марка;
Продажи запрос по датам
В режиме SQL SELECT [Типы товаров]. Категория, [Сведения о продажах Запрос]. Марка, [Сведения о продажах Запрос]. Ед Изм, [Сведения о продажах Запрос]. Минимальный Запас, [Сведения о продажах Запрос].Код Продажи, [Сведения о продажах Запрос]. Код Товара, [Сведения о продажах Запрос]. Количество, [Сведения о продажах Запрос].Отпускная Цена, Format$ (Продажи. Дата Исп,'Long Date') AS [Дата Исп по дням]
FROM [Типы товаров] INNER JOIN (([Сведения о продажах Запрос] INNER JOIN Товары ON [Сведения о продажах Запрос]. КодТовара= Товары. Код Товара) INNER JOIN Продажи ON [Сведения о продажах Запрос]. Код Продажи=Продажи. Код Продажи) ON [Типы товаров]. Код Типа=Товары. Код Типа.
GROUP BY [Типы товаров].Категория, [Сведения о продажах Запрос].Марка, [Сведения о продажах Запрос]. Ед Изм, [Сведения о продажах Запрос]. Минимальный Запас, [Сведения о продажах Запрос]. Код Продажи, [Сведения о продажах Запрос]. Код Товара, [Сведения о продажах Запрос]. Количество, [Сведения о продажах Запрос]. Отпускная Цена, Format$ (Продажи. Дата Исп,'Long Date')
ORDER BY [Сведения о продажах Запрос]. Код Товара;
Сведения о поставках Запрос
В режиме SQL SELECT [Сведения о поставках]. Код Товара, Товары. Марка, [Сведения о поставках]. Количество, Товары. Ед Изм, CCur (Товары. Цена Входная*[Количество]) AS Цена Приемки, Товары. Марка, [Сведения о поставках]. Код Поставки
FROM Товары INNER JOIN [Сведения о поставках] ON Товары. Код Товара=[Сведения о поставках]. Код Товара
ORDER BY Товары. Марка;
Сведения о продажах Запрос
В режиме SQL SELECT Товары. Марка, [Сведения о продажах]. Количество, Товары. ЕдИзм, Товары. Минимальный Запас, [Сведения о продажах]. Код Продажи, CCur (Товары.ЦенаПродажи*[Сведения о продажах. Количество]) AS Отпускная Цена, [Сведения о продажах]. Код Товара
FROM Товары INNER JOIN [Сведения о продажах] ON Товары. Код Товара=[Сведения о продажах]. Код Товара
ORDER BY Товары. Марка;
Товары Запрос
В режиме SQL SELECT Товары. Код Товара, Товары. Код Типа, Товары. Марка, Товары. ЕдИзм, Товары. Цена Входная, Товары. Цена Продажи, IIf(([Поставки Запрос].[Sum-Количество]) Is Null,0,[Поставки Запрос].[Sum-Количество]) AS Поставки, IIf(([Продажи Запрос].[Sum-Количество]) Is Null,0,[Продажи Запрос].[Sum-Количество]) AS Продажи, [Поставки]-[Продажи] AS Остаток, Товары .Минимальный Запас, [Типы товаров].Категория
FROM [Типы товаров] INNER JOIN ((Товары LEFT JOIN [Поставки Запрос] ON Товары. Код Товара=[Поставки Запрос]. Код Товара) LEFT JOIN [Продажи Запрос] ON Товары. Код Товара=[Продажи Запрос]. КодТовара) ON [Типы товаров]. Код Типа=Товары. Код Типа.
ORDER BY Товары. Марка, [Типы товаров]. Категория;
4.1.2 Блок схема
4.2 Программирование
В соответствии с блок-схемой, приведенной выше в пункту 4.1.2. "Блок-схема", в представленной программе разработаны модули на VBA, а также запросы на языке SQL. Тексты программных модулей приведены в пункте V. Приложение.
4.3 Аномалии и защитное программирование
Описание аномалии |
Реакции на аномалию |
Способ защиты |
|
1. Ввод в поля ввода не предусмотренных значений |
Выводит ошибку без изменения содержимого поля ввода |
Защищено с помощью Access автоматически, защищено разработчиком с помощью VBA |
|
2. Попытка перехода к следующей записи после окончания списка. |
Вывод текстового сообщения без изменения структуры. |
Защищено с помощью Access автоматически |
4.4 Тестирование и отладка
Тестирование - процесс многократного выполнения программы с целью выявления ошибок. Отладка - исправление ошибок, найденных с помощью тестирования. Необходимой частью каждого теста должно являться описание ожидаемых результатов работы программы, чтобы можно было быстро выяснить наличие или отсутствие ошибки в ней. В любой организаций, занимающийся разработкой программных продуктов имеются специальные люди (Тестеры), занимающиеся тестированием программ которые выявляют ошибки и недоработки в программе и сообщают о них программистам, которые в свою очередь их исправляют.
Но наиболее эффективно тестирование проводится при эксплуатации программы в реальных условиях и реальными пользователями, которые сообщают обо всех найденных ошибках разработчику, который в последствии занимается их исправлением.
Так как в данном случае разработкой занимается не организация, а один человек то и тестирование и исправление тоже осуществляется одним человеком, что менее эффективно и является очень длительным процессом.
Данный проект разрабатывался и тестировался одновременно, то есть каждый раз при разработки какой либо новой части программы, написанная ранее программа проверялась на работоспособность и корректировалась с учётом найденных ошибок.
5. Анализ результатов решения
В соответствии с пунктом 4.4, тестирование и отладка производились непосредственно во время разработки проекта. После завершения работы над программой было еще раз произведено полное тестирование всей программы.
Все найденные ошибки были устранены. Получившийся в результате программный продукт удовлетворяет всем предъявленным требованиям, полностью работоспособен, не требует принципиальных доработок, и готов к эксплуатации.
6. Инструкция пользователю
Общие сведения о программе
Программа служит для эффективной и быстрой работы с информацией о приходе и продаже товара, а также для автоматического составления различных отчетов (все документы составляются согласно последним стандартам) на основе информации, которая занесена в базу данных. Программа позволяет значительно повысить скорость и эффективность работы бара при рутинных операциях: учет склада, расчет доходов и расходов во время работы бара. Преимущества от использования программы особенно высоки для: товаров, численность которых на складе и в баре очень высока, программа позволяет сэкономить время, которое требуется для подсчёта прибыли; внедрение программы поможет существенно снизить нагрузку при обработке информации и оформлении необходимой документации.
Запуск программы
Запуск программы осуществляется двойным нажатием левой клавиши мыши на ярлыке программы. После запуска программного продукта на экране появится «Главная кнопочная форма», которая выглядит следующим образом:
«Главная кнопочная форма» содержит в себе формы.
Данная форма содержит информацию о реализованных товарах.
Учёт поставок и регистрация их количества ведётся в этой форме.
Категории товаров
Эта форма содержит в себе информацию о товарах имеющихся в наличии бара, поставщиков которые доставляют этот товар и естественно цену за тот или иной товар.
Данная форма содержит данные о работниках бара, с возможностью редактировать их.
Эта форма содержит в себе информацию о поставщиках
Экономический эффект от реализации и внедрения программного продукта.
Для того, чтобы данный программный продукт был реализован в кафе баре «Crazy Club», необходимо подсчитать экономический эффект от внедрения данного программного продукта, который в данном случае заключается в экономии рабочего времени сотрудника отдела.
Экономический эффект - это экономия времени и соответственно денежных средств предприятия, которая может быть достигнута за счет:
1. Сокращение времени на формирование нужных документов;
2. Снижения затрат на обработку данных;
3. Снижение затрат на поиск необходимой информации.
4. Расчет затрат на разработку.
Таблица 1
Этап разработки |
Содержание работы |
Трудоёмкость (ч.) |
|
Постановка задачи |
Предпроектное обследование.Разработка, согласование и утверждение технико-экономического обоснования. |
16 |
|
Составление технического проекта |
Уточнение структуры и формы представления входных и выходных данных. Разработка алгоритма решения задачи. Разработка структуры программы.Разработка плана мероприятий по внедрению и разработке проекта. Разработка пояснительной записки. Согласование и утверждение технического проекта. |
40 |
|
Составление рабочего проекта |
Написание программы на языке программирования, первичная отладка, тестирование.Разработка, согласование и утверждение порядка и методики испытаний, корректировка программы. |
84 |
|
Документация и внедрение |
Разработка программной документации.Подготовка к сдаче программы и программной документации. |
25 |
|
ИТОГО: |
165 часа |
Распределение трудоемкости по стадиям разработки приведено в таблице 1.
Коэффициент сложности задачи С характеризует относительную сложность программы по отношению к так называемой типовой задаче, реализующей стандартные методы решения, сложность которой принята равной единице (величина с лежит в пределах от 0,5 до 1). Для программного продукта, включающего в себя алгоритмы поиска, сложность задачи берем 0,6, так как ПО не требует знания специальных языков программирования и реализовано в среде Microsoft Visual Basic
С = 0,6 - коэффициент сложности программы,
Коэффициент коррекции программы P - увеличение объема работ за счет внесения изменений в алгоритм или программу по результатам уточнения постановок. С учетом того, что при проектировании программы я достаточно хорошо представляла себе конечный результат ПП, возьмем коэффициент = 0,2
P = 0,2 - коэффициент коррекции программы в ходе разработки.
Коэффициент увеличения затрат труда, вследствие недостаточного описания задачи, в зависимости от сложности задачи принимается от 1 до 1,5, в связи с тем, что данная задача, не потребовала уточнения и больших доработок, примем B = 1,3.
Коэффициент квалификации разработчика K определяется в зависимости от стажа работы и составляет: для работающих до двух лет - 0,8; от трех до пяти лет - 1; от пяти до восьми лет - 1,2; более восьми лет - 1,5. Так как разработчик, которому было поручено это задание, не имел опыт работы по специальности примем K = 0,8.
Исходя из данных значений коэффициентов, основная заработная плата разработчика программного продукта составит:
ЗП = 5000 руб. в месяц
ЗП осн = ЗП Ч C Ч (P + 1) Ч B Ч K = 5000 Ч 0,6 Ч (0,2+ 1) Ч 1,3 Ч 0,8 =3744 руб. в месяц.
За время написания ПО премии разработчику не выплачивались, значит дополнительной заработной платы нет.
Основная заработная плата за весь период разработки программного продукта составит:
ЗПсумм = (ЗПосн / 176) Ч Кол-во часов потраченные на разработку ПО
ЗПсумм = (3744 руб. / 176 ч.) Ч 165 ч. = 3510 рублей.
Фондовые отчисления берутся в размере 26,2 % от основной и дополнительной заработной платы:
ФО = ЗПсумм Ч 26,2 %
ФО = 3510 Ч 26,2 % =919,6 рублей.
Суммарные затраты предприятия на заработную плату с учетом ЕСН за период разработки составит:
ЗПобщ = ЗПсумм + ФО
ЗПобщ = 3510 руб. + 919,6 руб. = 4429,6 рублей.
Подсчет стоимости эксплуатации вычислительной техники.
Содержание и эксплуатация вычислительного комплекса считается следующим образом:
Свт = См-ч Ч Число_часов_отладки,
где См-ч - стоимость машинного часа.
Число часов отладки составляет: 40 + 84 + 25 = 149 часов (складываем 2,3,4 пункт из табл.1).
Стоимость машино-часа рассчитывается, как сумма составляющих:
(Ст-ть_эл_эн_в_год + Аморт_в_год + Затраты_на_ремонт_за_год) / Фвт
где Фвт - действительный фонд времени работы вычислительного комплекса.
Стоимость 1 кВт·ч. электроэнергии составляет: 2 руб.
Один компьютер потребляет 300 Вт в час.
За год отчисления за электроэнергию, потребляемую одной ЭВМ составляет: 8ч. в день Ч 22 дня в месяц Ч потребляемые ПК кВт·ч. Ч стоимость 1 кВт·ч.
8 ч. Ч 22 дня Ч 12 мес. Ч 0,3 кВт·ч.Ч2 руб. =1267.2руб.
Программный продукт писался на компьютере, который является моей собственностью, так как до этого он уже использовался в течении 2-х лет, мы будем считать амортизацию относительно половины его стоимости, т.к. срок амортизации компьютера составляет 4 года.
Стоимость компьютера составляет 22000 руб. сумма, относительно которой считается амортизация в течении 1 года.
Амортизация = Стоимость ПК / Количество лет
Амортизация = 22000 / 4 =5500рублей в год.
Фвт=Фн -Фп,
Где Фн - номинальный фонд времени работы ПК в год,
Фп - профилактическое время профилактики =5%.
Фвт=Фн -Фп= (8ч. * 22 дн. * 12 мес.) - (8ч.* 22 дн.* 12 мес.* 0,05)=2112-106=2006 ч.
Стоимость ремонта равна: 22000 * 5% = 1100 руб.
Подсчитаем все затраты за год: 1267.2 +5500+1100=7867,2руб.
Стоимость одного машинного часа равна:
7867,2/ 2006 часа = 4 руб.
Содержание и эксплуатация вычислительного комплекса составляет:
149 ч. Ч 4руб. = 596 руб. при написании программы.
Для работы программы новый ПК не требуется, т.к. имеющийся на рабочем месте сотрудника отдела отпуска медикаментов льготным группам населения, удовлетворяет требованиям к программе (данный программный продукт будет работать и на старом компьютере).
Структура затрат на разработку программного продукта приведена в таблице 2.
Таблица 2.
№ |
Наименование статьи расходов |
Затраты, руб. |
|
1 |
40 Основная заработная плата |
4429,6 |
|
2 |
Фондовые отчисления. |
919,6 |
|
3 |
Содержание и эксплуатация вычислительного комплекса. |
596 |
|
ИТОГО: |
5945,2 рублей |
Рассчитаем экономический эффект, получаемый за счет экономии рабочего времени сотрудника на введение необходимых данных, после внедрения программного продукта.
Для ведения расчетов введем следующие обозначения:
Т1 - время, затрачиваемое сотрудником отдела на ввод данных до внедрения программного продукта.
Т2 - время, затрачиваемое сотрудником на ввод данных после внедрения программного продукта.
До внедрения программного продукта на то чтобы найти нужную информацию сотрудник в среднем тратил около 5 мин.:
Т1 = 5 мин. = 0,08 часа.
После внедрения программы время сократилось и составило 3 мин.:
Т2 = 3 мин. = 0,05 часа.
После внедрения программного продукта время ввода данных сократилось на Т:
Т = Т1 - Т2 = 5 - 3 = 2 мин. = 0,03 часа.
Экономия времени достигается за счет внедрения программного продукта с более удобным интерфейсом.
Рассчитаем, сколько будет стоить 1 час работы бармена:
ЗП = 5500 руб. в месяц
РЧ - стоимость 1 часа работы.
РЧ = ЗП / 176 ч. = 5500 руб. / 176 ч. = 31,25 руб.
Фондовые отчисления берутся в размере 26,2 % от основной заработной платы:
РФО - стоимость экономического фондоотчислеия
РФО = (ЗП Ч 26,2%) / 176 ч. = (5500 руб. Ч 26,2%) / 176 ч. = 8,2 руб.
Суммарная стоимость 1 часа работы сотрудника:
РСУММ = РЧ + РФО = 31,25 руб. + 8,2 руб. = 39,45 руб.
Рассчитаем экономию времени за год - ТГОД из расчета числа операций в день Q = 20 и экономии времени за операцию Т = 0,03 часа:
ТГОД = (Т Ч Q) Ч 22 дня Ч 12 мес. = (0,03 Ч 20) Ч 22 дня Ч 12 мес. = 158,4 часов
Рассчитаем годовой экономический эффект - ЭФГОД:
С - затраты из табл.2
ЭФГОД = ТГОД Ч РСУММ =158,4 ч. Ч 39,45 руб. = 6248,80 руб. в год.
Итак, общий экономический эффект при внедрении программного продукта в кафе баре «Crazy Club» составит 6248,8 руб. в год.
Отсюда рассчитаем период окупаемости программного продукта - Т:
Т = С / ЭФГОД = 5945,2. / 6248,8 руб. = 0,9 года
Следовательно, если кафе бар «Crazy Club», захочет установить у себя данную программу, она окупится приблизительно за 9 месяцев.
Заключение
Разработан программный продукт, позволяющий осуществлять контроль за движением товара в данный период времени, быстро находить необходимую информацию по любому виду товара, а также выводить на печать необходимую информацию, находящуюся в базе данных.
Написанная программа полностью соответствует п. 1 “постановка задачи”.
Была произведена экономическая оценка эффективности внедрения программного продукта, которая показала, что проект экономически эффективен.
При незначительных доработках эта программа может быть использована и в других организациях.
Литература
1. Microsoft Access.
2. Благодатских В.А. и др. Экономика, разработка и использование программного обеспечения ЭВМ. М.: Финансы и статистика, 1995.
3. Голосов А.А., Охрименко П.В. «Введение в информационный бизнес». Учебное пособие для ВУЗов. М.: Финансы и статистика, 1997 г.
4. Бойко В.В., Савенков В.М. Проектирование баз данных информационных систем.
5. С.Симонович - Новейший самоучитель работы на компьютере.
Приложение
Форма: Бармены
1 VERSION 1.0 CLASS
2 BEGIN
3 MultiUse = -1 'True
4 END
5 Attribute VB_Name = "Form_Бармены"
6 Attribute VB_GlobalNameSpace = False
7 Attribute VB_Creatable = True
8 Attribute VB_PredeclaredId = True
9 Attribute VB_Exposed = False
10 Option Compare Database
11 Private Sub Имя_BeforeUpdate(Cancel As Integer)
12 End Sub
13 Private Sub ОбластьДанных_Click()
14 End Sub
Форма: Кнопочная форма
Программы
1 VERSION 1.0 CLASS
2 BEGIN
3 MultiUse = -1 'True
4 END
5 Attribute VB_Name = "Form_Кнопочная форма"
6 Attribute VB_GlobalNameSpace = False
7 Attribute VB_Creatable = True
8 Attribute VB_PredeclaredId = True
9 Attribute VB_Exposed = False
10 Option Compare Database
11 Private Sub Form_Open(Cancel As Integer)
12 ' Minimize the database window and initialize the form.
13 ' Move to the switchboard page that is marked as the default.
14 Me.Filter = "[ItemNumber] = 0 AND [Argument] = 'По умолчанию"
15 Me.FilterOn = True
16 End Sub
17 Private Sub Form_Current()
18 ' Update the caption and fill in the list of options.
19 Me.Caption = Nz(Me![ItemText], "")
20 FillOptions
21 End Sub
22 Private Sub FillOptions()
23 ' Fill in the options for this switchboard page.
24 ' The number of buttons on the form.
25 Const conNumButtons = 8
26 Dim con As Object
27 Dim rs As Object
28 Dim stSql As String
29 Dim intOption As Integer
30 ' Set the focus to the first button on the form,
31 ' and then hide all of the buttons on the form
32 ' but the first. You can't hide the field with the focus.
33 Me![Option1].SetFocus
34 For intOption = 2 To conNumButtons
35 Me("Option" & intOption).Visible = False
36 Me("OptionLabel" & intOption).Visible = False
37 Next intOption
38 ' Open the table of Switchboard Items, and find
39 ' the first item for this Switchboard Page.
40 Set con = Application.CurrentProject.Connection
41 stSql = "SELECT * FROM [Switchboard Items]"
42 stSql = stSql & " WHERE [ItemNumber] > 0 AND [SwitchboardID]=" &
43 stSql = stSql & " ORDER BY [ItemNumber];"
44 Set rs = CreateObject("ADODB.Recordset")
45 rs.Open stSql, con, 1 ' 1 = adOpenKeyset
58 ' If there are no options for this Switchboard Page,
59 ' display a message. Otherwise, fill the page with the items.
60 If (rs.EOF) Then
61 Me![OptionLabel1].Caption = "На странице кнопочной формы нет элементов"
62 Else
63 While (Not (rs.EOF))
64 Me("Option" & rs![ItemNumber]).Visible = True
65 Me("OptionLabel" & rs![ItemNumber]).Visible = True
66 Me("OptionLabel" & rs![ItemNumber]).Caption = rs![ItemText]
67 rs.MoveNext
68 Wend
69 End If
71 ' Close the recordset and the database.
72 rs.Close
73 Set rs = Nothing
74 Set con = Nothing
76 End Sub
78 Private Function HandleButtonClick(intBtn As Integer)
79 ' This function is called when a button is clicked.
80 ' intBtn indicates which button was clicked.
82 ' Constants for the commands that can be executed.
83 Const conCmdGotoSwitchboard = 1
84 Const conCmdOpenFormAdd = 2
85 Const conCmdOpenFormBrowse = 3
86 Const conCmdOpenReport = 4
87 Const conCmdCustomizeSwitchboard = 5
88 Const conCmdExitApplication = 6
89 Const conCmdRunMacro = 7
90 Const conCmdRunCode = 8
91 Const conCmdOpenPage = 9
93 ' An error that is special cased.
94 Const conErrDoCmdCancelled = 2501
95
96 Dim con As Object
97 Dim rs As Object
98 Dim stSql As String
100 On Error GoTo HandleButtonClick_Err
101
102 ' Find the item in the Switchboard Items table
103 ' that corresponds to the button that was clicked.
104 Set con = Application.CurrentProject.Connection
105 Set rs = CreateObject("ADODB.Recordset")
106 stSql = "SELECT * FROM [Switchboard Items] "
107 stSql = stSql & "WHERE [SwitchboardID]=" & Me![SwitchboardID] & " AND
[ItemNumber]=" & intBtn
108 rs.Open stSql, con, 1 ' 1 = adOpenKeyset
110 ' If no item matches, report the error and exit the function.
111 If (rs.EOF) Then
112 MsgBox "Ошибка при чтении таблицы Switchboard Items."
113 rs.Close
114 Set rs = Nothing
115 Set con = Nothing
116 Exit Function
117 End If
119 Select Case rs![Command]
121 ' Go to another switchboard.
122 Case conCmdGotoSwitchboard
123 Me.Filter = "[ItemNumber] = 0 AND [SwitchboardID]=" & rs![Argument]
125 ' Open a form in Add mode.
126 Case conCmdOpenFormAdd
127 DoCmd.OpenForm rs![Argument],,,, acAdd
129 ' Open a form.
130 Case conCmdOpenFormBrowse
131 DoCmd.OpenForm rs![Argument]
133 ' Open a report.
134 Case conCmdOpenReport
135 DoCmd.OpenReport rs![Argument], acPreview
137 ' Customize the Switchboard.
138 Case conCmdCustomizeSwitchboard
139 ' Handle the case where the Switchboard Manager
140 ' is not installed (e.g. Minimal Install).
141 On Error Resume Next
142 Application.Run "ACWZMAIN.sbm_Entry"
143 If (Err <> 0) Then MsgBox "Команда недоступна."
144 On Error GoTo 0
145 ' Update the form.
146 Me.Filter = "[ItemNumber] = 0 AND [Argument] = 'По умолчанию"
147 Me.Caption = Nz(Me![ItemText], "")
148 FillOptions
150 ' Exit the application.
151 Case conCmdExitApplication
152 CloseCurrentDatabase
154 ' Run a macro.
155 Case conCmdRunMacro
156 DoCmd.RunMacro rs![Argument]
158 ' Run code.
159 Case conCmdRunCode
160 Application.Run rs![Argument]
162 ' Open a Data Access Page
163 Case conCmdOpenPage
164 DoCmd.OpenDataAccessPage rs![Argument]
166 ' Any other command is unrecognized.
167 Case Else
168 MsgBox "Неизвестная команда."
170 End Select
172 ' Close the recordset and the database.
173 rs.Close
174
175 HandleButtonClick_Exit:
176 On Error Resume Next
177 Set rs = Nothing
178 Set con = Nothing
179 Exit Function
181 HandleButtonClick_Err:
182 ' If the action was cancelled by the user for
183 ' some reason, don't display an error message.
184 ' Instead, resume on the next line.
185 If (Err = conErrDoCmdCancelled) Then
186 Resume Next
187 Else
188 MsgBox "Ошибка при выполнении команды.", vbCritical
189 Resume HandleButtonClick_Exit
190 End If
192 End Function
194 Private Sub Выход_Click()
195 On Error GoTo Err_Выход_Click
198 DoCmd.Quit
200 Exit_Выход_Click:
201 Exit Sub
203 Err_Выход_Click:
204 MsgBox Err.Description
205 Resume Exit_Выход_Click
207 End Sub
Форма: Поставки
1 VERSION 1.0 CLASS
2 BEGIN
3 MultiUse = -1 'True
4 END
5 Attribute VB_Name = "Form_Поставки"
6 Attribute VB_GlobalNameSpace = False
7 Attribute VB_Creatable = True
8 Attribute VB_PredeclaredId = True
9 Attribute VB_Exposed = False
10 Option Compare Database
12 Private Sub Удалить_Click()
13 On Error GoTo Err_Удалить_Click
16 DoCmd.DoMenuItem acFormBar, acEditMenu, 8,, acMenuVer70
17 DoCmd.DoMenuItem acFormBar, acEditMenu, 6,, acMenuVer70
19 Exit_Удалить_Click:
20 Exit Sub
22 Err_Удалить_Click:
23 MsgBox Err.Description
24 Resume Exit_Удалить_Click
26 End Sub
27 Private Sub Кнопка11_Click()
28 On Error GoTo Err_Кнопка11_Click
31 DoCmd.GoToRecord,, acPrevious
33 Exit_Кнопка11_Click:
34 Exit Sub
36 Err_Кнопка11_Click:
37 MsgBox Err.Description
38 Resume Exit_Кнопка11_Click
40 End Sub
41 Private Sub Кнопка12_Click()
42 On Error GoTo Err_Кнопка12_Click
45 DoCmd.GoToRecord,, acNext
47 Exit_Кнопка12_Click:
48 Exit Sub
50 Err_Кнопка12_Click:
51 MsgBox Err.Description
52 Resume Exit_Кнопка12_Click
53
54 End Sub
Форма: Продажи
Программы
1 VERSION 1.0 CLASS
2 BEGIN
3 MultiUse = -1 'True
4 END
5 Attribute VB_Name = "Form_Продажи"
6 Attribute VB_GlobalNameSpace = False
7 Attribute VB_Creatable = True
8 Attribute VB_PredeclaredId = True
9 Attribute VB_Exposed = False
10 Option Compare Database
12 Private Sub Удалить_Click()
13 On Error GoTo Err_Удалить_Click
16 DoCmd.DoMenuItem acFormBar, acEditMenu, 8,, acMenuVer70
17 DoCmd.DoMenuItem acFormBar, acEditMenu, 6,, acMenuVer70
19 Exit_Удалить_Click:
20 Exit Sub
22 Err_Удалить_Click:
23 MsgBox Err.Description
24 Resume Exit_Удалить_Click
25
26 End Sub
Форма: Сведения о поставках подчиненная форма
Программы
1 VERSION 1.0 CLASS
2 BEGIN
3 MultiUse = -1 'True
4 END
5 Attribute VB_Name = "Form_Сведения о поставках подчиненная форма"
6 Attribute VB_GlobalNameSpace = False
7 Attribute VB_Creatable = True
8 Attribute VB_PredeclaredId = True
9 Attribute VB_Exposed = False
10 Option Compare Database ' Способ сравнения строк задается в базе данных.
11 Option Explicit ' Требует обязательного описания переменных.
13 Private Sub КодТипа_AfterUpdate()
14 On Error GoTo Err_КодТипа_AfterUpdate
16 Dim strFilter As String
18 strFilter = "КодТипа = " & Me!КодТипа
20 Me!Марка = DLookup("Марка", "Товары", strFilter)
22 Err_КодТипа_AfterUpdate:
23 MsgBox Err.Description
24 End Sub
26 Private Sub Марка_AfterUpdate()
27 On Error GoTo Err_Марка_AfterUpdate
29 Dim strFilter As String
31 ' Определяет фильтр перед его передачей в функцию DLookup.
32 strFilter = "Марка = " & Me!Марка
34 ' Ищет поле "Цена" и присваивает его значение элементу управления "Цена".
35 Me!Цена = DLookup("ЦенаПродажи", "Товары", strFilter)
37 Exit_КодТовара_AfterUpdate:
38 Exit Sub
40 Err_Марка_AfterUpdate:
41 MsgBox Err.Description
42 Resume Exit_Марка_AfterUpdate
44 End Sub
46 End Sub
47 Private Sub Кнопка19_Click()
48 On Error GoTo Err_Кнопка19_Click
51 DoCmd.GoToRecord,, acPrevious
53 Exit_Кнопка19_Click:
54 Exit Sub
56 Err_Кнопка19_Click:
57 MsgBox Err.Description
58 Resume Exit_Кнопка19_Click
60 End Sub
61 Private Sub Кнопка20_Click()
62 On Error GoTo Err_Кнопка20_Click
65 DoCmd.GoToRecord,, acNext
67 Exit_Кнопка20_Click:
68 Exit Sub
70 Err_Кнопка20_Click:
71 MsgBox Err.Description
72 Resume Exit_Кнопка20_Click
73
74 End Sub
Форма: Сведения о продажах подчиненная форма
Программы
1 VERSION 1.0 CLASS
2 BEGIN
3 MultiUse = -1 'True
4 END
5 Attribute VB_Name = "Form_Сведения о продажах подчиненная форма"
6 Attribute VB_GlobalNameSpace = False
7 Attribute VB_Creatable = True
8 Attribute VB_PredeclaredId = True
9 Attribute VB_Exposed = False
10 Option Compare Database ' Способ сравнения строк задается в базе данных.
11 Option Explicit ' Требует обязательного описания переменных.
13 Private Sub КодТипа_AfterUpdate()
14 On Error GoTo Err_КодТипа_AfterUpdate
16 Dim strFilter As String
18 strFilter = "КодТипа = " & Me!КодТипа
20 Me!Марка = DLookup("Марка", "Товары", strFilter)
22 Err_КодТипа_AfterUpdate:
23 MsgBox Err.Description
24 End Sub
26 Private Sub Марка_AfterUpdate()
27 On Error GoTo Err_Марка_AfterUpdate
29 Dim strFilter As String
31 ' Определяет фильтр перед его передачей в функцию DLookup.
32 strFilter = "Марка = " & Me!Марка
34 ' Ищет поле "Цена" и присваивает его значение элементу управления "Цена".
35 Me!Цена = DLookup("ЦенаПродажи", "Товары", strFilter)
37 Exit_КодТовара_AfterUpdate:
38 Exit Sub
40 Err_Марка_AfterUpdate:
41 MsgBox Err.Description
42 Resume Exit_Марка_AfterUpdate
44 End Sub
46 End Sub
Форма: Типы
Программы
1 VERSION 1.0 CLASS
2 BEGIN
3 MultiUse = -1 'True
4 END
5 Attribute VB_Name = "Form_Типы товаров"
6 Attribute VB_GlobalNameSpace = False
7 Attribute VB_Creatable = True
8 Attribute VB_PredeclaredId = True
9 Attribute VB_Exposed = False
10 Option Compare Database
12 Private Sub Кнопка6_Click()
13 On Error GoTo Err_Кнопка6_Click
16 DoCmd.GoToRecord,, acPrevious
18 Exit_Кнопка6_Click:
19 Exit Sub
21 Err_Кнопка6_Click:
22 MsgBox Err.Description
23 Resume Exit_Кнопка6_Click
25 End Sub
26 Private Sub Кнопка7_Click()
27 On Error GoTo Err_Кнопка7_Click
30 DoCmd.GoToRecord,, acNext
32 Exit_Кнопка7_Click:
33 Exit Sub
35 Err_Кнопка7_Click:
36 MsgBox Err.Description
37 Resume Exit_Кнопка7_Click
39 End Sub
40 Private Sub Кнопка8_Click()
41 On Error GoTo Err_Кнопка8_Click
43 Dim stDocName As String
45 stDocName = ChrW(1058) & ChrW(1086) & ChrW(1074) & ChrW(1072) &
ChrW(1088) & ChrW(1099) & ChrW(32) & ChrW(1080) & ChrW(32) &
ChrW(1094) & ChrW(1077) & ChrW(1085) & ChrW(1099)
46 DoCmd.OpenReport stDocName, acPreview
48 Exit_Кнопка8_Click:
49 Exit Sub
51 Err_Кнопка8_Click:
52 MsgBox Err.Description
53 Resume Exit_Кнопка8_Click
55 End Sub
Форма: Товары
Программы
1 VERSION 1.0 CLASS
2 BEGIN
3 MultiUse = -1 'True
4 END
5 Attribute VB_Name = "Form_Товары"
6 Attribute VB_GlobalNameSpace = False
7 Attribute VB_Creatable = True
8 Attribute VB_PredeclaredId = True
9 Attribute VB_Exposed = False
10 Option Compare Database
12 Private Sub Найти_Click()
13 On Error GoTo Err_Найти_Click
16 Screen.PreviousControl.SetFocus
17 DoCmd.DoMenuItem acFormBar, acEditMenu, 10,, acMenuVer70
19 Exit_Найти_Click:
20 Exit Sub
22 Err_Найти_Click:
23 MsgBox Err.Description
24 Resume Exit_Найти_Click
26 End Sub
27 Private Sub Фильтр_Click()
28 On Error GoTo Err_Фильтр_Click
31 DoCmd.DoMenuItem acFormBar, acRecordsMenu, 0, 2, acMenuVer70
33 Exit_Фильтр_Click:
34 Exit Sub
36 Err_Фильтр_Click:
37 MsgBox Err.Description
38 Resume Exit_Фильтр_Click
End Sub
Размещено на Allbest.ru
Подобные документы
Разработка и тестирование конфигурации программного обеспечения на платформе среды "1С: Предприятие 7.7." для автоматизации учета поступления и расхода товаров в баре бильярдного клуба "Пирамида". Экономическая оценка эффективности от его внедрения.
дипломная работа [3,2 M], добавлен 18.07.2014Требования к аппаратному и программному обеспечению, требуемому для разработки программного модуля. Критерии приемлемости разрабатываемого программного продукта. Разработка удобного пользовательского интерфейса программы. Алгоритм и листинг программы.
курсовая работа [2,6 M], добавлен 23.11.2011Разработка конфигурации программы в среде "1С:Предприятие 7.7" для учета клиентов. Автоматизация процедуры учета заработной платы. Описание среды программирования, требования к техническому и программному обеспечению. Методика разработки проекта.
дипломная работа [349,2 K], добавлен 17.07.2014Общая характеристика и основные требования к техническому и программному обеспечению, методика проектирования и алгоритмизация поставленной задачи. Принципы тестирования и отладка разработанного приложения по автоматизации учета налоговых проверок.
курсовая работа [3,0 M], добавлен 18.07.2014Разработка программного обеспечения, позволяющего вести автоматизированный учет продукции на складе. Требования к техническому и программному обеспечению. Методика разработки проекта, описание алгоритма, структурная схема, тестирование и отладка.
дипломная работа [1,5 M], добавлен 19.07.2014Задачи автоматизированного учета компьютерной техники на предприятии ГУ НПО Тайфун. Описание среды программирования, требования к техническому и программному обеспечению. Описание алгоритма, структурная схема. Аномалии и защитное программирование.
дипломная работа [1,1 M], добавлен 30.06.2014Информационная модель системы. Требования к техническому, программному обеспечению и интерфейсам информационной системы. Инсталляция и запуск программного продукта. Руководство пользователя системы с правами дознавателя. Макеты входных документов.
дипломная работа [1,1 M], добавлен 18.01.2013Создание автоматизированного учета клиентов в туристическом агентстве "Отпуск". Вывод данных о клиентах и заключенных с ними договорах. Требования к программному и техническому обеспечению. Описание алгоритма и структурная схема. Тестирование и отладка.
курсовая работа [2,2 M], добавлен 25.06.2014Разработка программного продукта "Автоматизация учета правонарушений в УВД Миноблисполкома". Требования к аппаратному обеспечению и конфигурации, пользовательскому интерфейсу. Принципы инсталляции программного средства, порядок проведения его испытаний.
дипломная работа [1,1 M], добавлен 09.09.2010Разработка программного продукта для спирографического обследования. Структура базы данных программы "СпирографОтдел". Выбор программного продукта и руководство пользователя. Минимальные рекомендуемые требования к техническому и программному обеспечению.
дипломная работа [1,0 M], добавлен 13.04.2014