Разработка программного обеспечения для автоматизации работы отдела кадров ЗАО "Арно"
Описание предметной области, обзор программ-аналогов и разработка технического задания для создания программы для отдела кадров ЗАО "Арно". Разработка архитектуры программной системы, структуры данных, конструирование пользовательского интерфейса.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 20.06.2017 |
Размер файла | 2,1 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
СОДЕРЖАНИЕ
- ВВЕДЕНИЕ
- ГЛАВА 1 ТЕОРЕТИЧЕСКОЕ ОБОСНОВАНИЕ РАЗРАБАТЫВАЕМОГО ПРОГРАММНОГО ПРОДУКТА
- 1.1 Описание предметной области
- 1.2 Обзор программ-аналогов
- 1.3 Моделирование проектируемой системы
- 1.4 Разработка технического задания
- ГЛАВА 2 РАЗРАБОТКА ПРОГРАММНОГО ПРОДУКТА
- 2.1 Разработка архитектуры программной системы
- 2.2 Разработка структуры данных
- 2.3 Конструирование пользовательского интерфейса
- 2.4 Обработка событий и ошибок ввода данных
- 2.5 Разработка программного алгоритма
- 2.6 Организация интерфейса хранения данных.
- 2.7 Тестирование программы
- 2.8 Экономическое обоснование проекта
- ЗАКЛЮЧЕНИЕ
- СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ
- ПРИЛОЖЕНИЯ
ВВЕДЕНИЕ
В наше время информационные технологии развиваются гораздо быстрее, чем компетенции среднего руководителя или сотрудника компании в области применения современных вычислительных средств и программного обеспечения. Под давлением жизненной необходимости для конкурентоспособности бизнеса количество и качество современных информационных технологий в компаниях возрастет с каждым днем.
Программное обеспечение является неотъемлимым инструментом отдела кадров предприятия, учреждения или организации. Оно необходимо для более быстрого набора востребованных сотрудников, что положительно сказывается на финансовой состовляющей предприятия. Каждый руководитель, заинтересованный в процветании и успехе своего дела имеет качественное ПО. Через него производится продажа товаров, услуг, привлечение новых клиентов, набор и учет новых сотруднииков. Поэтому создание своего ПО для отдела кадров -- большая возможность обеспечить необходимой информацией сотрудников отдела кадров.
Целью дипломного проекта является создание программного обеспечения для автоматизации работы отдела кадров ЗАО «Арно».
Для достижения поставленной цели необходимо решить следующие задачи:
- описать предметную область;
- исследовать программы-аналоги для выявления имеющихся недостатков;
- создать модель проектируемой системы;
- разработать архитектуру программной системы;
- разработать структуру данных;
- разработать пользовательский интерфейс;
- разработать программный продукт на основе созданной модели;
- разработать документацию на программное обеспечение.
Разрабатываемый программный продукт должен удовлетворять следующим требованиям:
- хранить данные о сотрудниках, вакансиях, больничных и отпусках;
- редактировать данные (добавление, изменение, удаление записей) о сотрудниках, вакансиях, больничных и отпусках;
- выполнять фильтрацию данных по таблице пользователи;
- выполнять поиск данных в таблице сотрудники по имени, фамилии и должности;
- выводить информацию на печать;
- иметь журнал операций, выполняемых пользователем над данными;
- иметь сетевой доступ к базе данных;
- иметь разграничение прав доступа к программе.
Для организации базы данных использовано приложение Microsoft SQL Server.
Для написания программного кода использована среда Microsoft Visual Studio.
Пояснительная записка содержит следующие разделы: теоретическое обоснование разрабатываемого программного продукта и разработка программного продукта.
В теоретическом обосновании разрабатываемого программного продукта представлено описание предметной области, обзор программ-аналогов и разработка технического задания.
В разработке программного продукта описана разработка архитектуры программной системы, разработка структуры данных, конструирование пользовательского интерфейса, обработка событий и оштбок ввода данных, разработка программного алгоритма, организация интерфейса хранения данных, тестирование программы, экономическое обоснование проекта.
программа интерфейс отдел кадров
ГЛАВА 1. ТЕОРЕТИЧЕСКОЕ ОБОСНОВАНИЕ РАЗРАБАТЫВАЕМОГО ПРОГРАММНОГО ПРОДУКТА
1.1 Описание предметной области
Система кадровой документации достаточно специфична. В работе с личным составом создаётся большой объём однотипных документов, легко поддающихся формализации. [3]
Создание унифицированных форм этих документов и их электронных версий, использование специальных компьютерных программ значительно облегчает работу всех, кто работает с кадровыми документами. Применение компьютера делает возможным даже силами одного специалиста выполняющего функции кадровика, вести документацию по личному составу средних и даже крупных организаций. [5]
Служба кадров сегодня оснащена современной оргтехникой, специализированными программами, обеспечивающими однократный ввод информации по личному составу и её использование всеми подразделениями.
Внедрение компьютерной техники позволяет накапливать массивы информации (базы данных) и документы в электронной форме по всем сотрудникам организации, кадровому резерву, быстро находить и эффективно обрабатывать всю необходимую информацию по личному составу. [6]
Кадровая документация - непременная часть документов любой организации. Она ведётся кадровой службой (отделом, департаментом по работе с персоналом). [7]
Использование автоматизированных технологий позволяет существенно повысить эффективность работы кадровой службы. Документы по личному составу - это специфическая документация, требующая специализированных программ для работы с ней. А для составления списка требований к системе автоматизации службы кадров, выбора в наибольшей степени, подходящей для неё системы программного обеспечения (ПО) необходимы усилия именно специалистов самой кадровой службы. Поэтому работники службы кадров должны хорошо ориентироваться в возможностях современных автоматизированных систем, в первую очередь - для определения потребностей своего подразделения и составлении оптимального задания для IT-служб на приобретение, установку, настройку и последующее обслуживание средств автоматизации, необходимых в работе с документацией по личному составу. [10]
Системы учета кадров были разработаны на основании программ расчета заработной платы. В дальнейшем функционал этих программ значительно расширился. Это было связано с осознанием руководителей предприятий необходимости качественных изменений в работе отдела кадров. [12]
Оптимизация работы персонала, рост профессионализма специалистов по работе с персоналом приводит к тому, что деятельность по управлению кадрами становится все более технологичной, системной и качественной. Успех любой компании зависит часто от того, насколько эффективным будет работа отдела кадров, задача которого - найти и удержать нужных специалистов, а также правильно распределить имеющиеся трудовые ресурсы. Иногда при этом приходится вносить коррективы в структуру компании. Соответственно растут и потребности в эффективных инструментах управления потоками информации. В связи с этим разработчики автоматизированных систем должны уделять больше внимания развитию программных продуктов по управлению человеческими ресурсами, искать пути объединения необходимых функций в единую информационную систему управления кадрами. [20]
Программный продукт позволит:
- оперативно получать аналитическую информацию и принимать обоснованные управленческие решения;
- организовать бизнес-процессы по управлению персоналом, исключить многократный ввод одних и тех же данных в учетную систему и оптимизировать ежедневную работу сотрудников различных служб компании;
- наладить эффективный учет всей информации, относящейся к персоналу компании, создавая тем самым основу для анализа и планирования затрат на персонал;
- вести учет в соответствии с законодательством и минимизировать риск финансовых санкций со стороны фискальных органов.
- правильно продуманное программное обеспечение будет простым и доступным для пользователей. Освоить автоматизированный процесс сможет даже студент, не имеющий опыта работы и необходимой квалификации.
Наличие подобных программ доказывает преимущество применения информационных технологий с точки зрения использования ресурса времени, экономического и социального эффекта. Программа должна содержать как можно больше автоматизированных элементов, чтобы упростить работу с ней, различные сортировки, фильтры, поиск, отчеты, формы, благодаря которым будет обеспечена максимальная эффективность при работе сотрудников.
1.2 Обзор программ-аналогов
При проектировании программного продукта были рассмотрены существующие программные продукты аналогичной тематики. Ниже представлены некоторые из них.
Кадры плюс - эта программа предназначена для автоматизации деятельности отдела кадров и других задач, которые можно гибко настроить.
Достоинства:
- книга учета движения трудовых книжек и вкладышей в них, а также ведение трудовых книжек;
- экспорт любых сведений о сотрудниках в формат Microsoft Excel.
- учет рабочего времени сотрудников;
- общий и личные журналы документов;
- расчет всех видов стажа;
Недостатки:
- сложность в обучении;
- высокая стоимость;
Рисунок 1.1- Окно программы «Кадры плюс»
1С:Зарплата и управление персоналом 8 - эта программа проста и удобна в использовании, имеет красивый интерфейс, полностью подходит под данную организацию, но есть и свои минусы. Достоинства:
- фонд оплаты труда
- кадровый учет
- расчет заработной платы
- отчетность
Недостатки:
- высокая стоимость;
- программа имеет сложный для понимания интерфейс;
Рисунок 1.2 - Окно программы «1С:Зарплата и управление персоналом 8»
Отдел кадров 6.0 - позволяет систематизировать и сконцентрировать задачи работника отдела кадров и информацию, необходимую для их выполнения, в одном месте и быстро ориентироваться в объеме накопленных данных. Достоинства:
- Расчёт общего, непрерывного стажа, а также стажа работы на данном предприятии.
- удобная сортировка;
- фильтрация;
- группировка контактов по существенным признакам и категориям;
- экспорт данных в форматы Excel, txt, csv и xml.
- низкая стоимость.
Недостатки:
- не предоставляет информацию о семейном положении;
- отсутствуют сведения о трудовой книжке;
- требует обязательное наличие соединения с интернетом, что так же не всегда доступно для многих мелких предприятий.
Рисунок 1.3 - Окно программы «Отдел кадров 6.0»
Experium - это готовое приложение для отдела кадров. Все необходимые данные по каждому сотруднику в одной системе, позволяющей не только систематизировать их. Достоинства:
- составление отчетности;
- электронное согласование;
- удобный поиск;
- возможность работать с социальными и профессиональными сетями.
Недостатки:
- программа перегружена ненужными для работы функциями, что будет мешать малоопытному оператору и затрачивать дополнительные ресурсы компьютера и время на выполнение работы;
Рисунок 1.4 - Окно программы «Сomindware»
Сравнительные характеристики программ аналогов приведены в таблице 1.1.
Таблица 1.1 - Сводная таблица программ аналогов
Кадры плюс |
1С:Зарплата и управление персоналом 8 |
Отдел кадров 6.0 |
Experium |
||
Наличие демо-версии |
свободный доступ |
свободный доступ |
по запросу на e-mail |
свободный доступ |
|
Сетевая работа |
да |
да |
да |
да |
|
Стоимость |
20500 руб. |
25000 руб. |
19300 руб. |
22800 руб. |
|
Обновления |
платно |
платно |
платно |
платно |
|
Техническая поддержка |
платно |
платно |
платно |
бесплатно |
|
Руководство пользователя |
нет |
да |
да |
нет |
|
Генератор отчетов |
да |
да |
да |
да |
Уровень доступа |
нет |
нет |
да |
да |
|
Лицензия |
платно |
платно |
платно |
платно |
|
Проверка правильности входных данных |
нет |
да |
нет |
нет |
Результат сравнительного анализа программ-аналогов показал, что разрабатываемый программный продукт должен учитывать недостатки программ аналогов, иметь приятный и удобный интерфейс, уровни доступа, и иметь не дорогую стоимость. Программ-аналогов с такими чертами не удалось обнаружить. Поэтому необходима разработка нового программного продукта, который будет отличаться от имеющихся уже на рынке программ.
1.3 Моделирование проектируемой системы
Для рассматриваемой предметной области построена функциональная модель нулевого уровня IDEF0 (Рисунок 1.5.). На данной модели показаны входная информация в виде штатного расписания, заявления об увольнении с работы, заявление о приеме на работу и иных заявлений; выходная информация представляет собой сформированный отчет о движении документов сотрудника, новое штатное расписание, отчет по выбранному сотруднику; ограничениями являются трудовой кодекс РФ и распоряжение от выше стоящего руководста; управляют процессами информационная система и сотрудник отдела кадров. На рисунке 1.6. показана функциональная модель первого уровня, представляющая собой декомпозицию процесса «работа отдела кадров» на четыре достаточно крупных функциональных блока:
- формирование штатного расписания;
- укомплектованность штата;
- учет движения кадров;
Рисунок 1.5 - Моделируемая схема данных IDEF0.
Функциональный блок «сформировать штатное расписание» использует входные данные ввиде штатного расписания на основе распоряжения от выше стоящего начальства по работе штата.
Функциональный блок «укомплектовать штат» использует заявление о принятии на работу, заявление об увольнении с работы, соответствии с трудовым кодексом РФ, распоряжение от вышестоящего руководства.
Функциональный блок «учет движения кадров» предназначен для формирования нового штатного расписания и отчете о проделанной работе, выполняемой сотрудником отдела кадров при помощи информационной системы, на основе распоряжение от вышестоящего руководства использующий результат укомплектовки.
Рисунок 1.6 - IDEF0 модель - первый уровень
1.4 Разработка технического задания
Основание для разработки:
Разработка программного продукта ведется на основе задания, выданного на дипломную работу приказом по БГТУ №1 от 23.03.2017 г.
Тема разработки: «Программное обеспечение для автоматизации работы отдела кадров ЗАО «Арно».
Назначение разработки:
Программный продукт предназначен для максимального упрощения работы сотрудников отдела кадров.
Требования к программному изделию:
К программному продукту предъявляются следующие требования:
Функциональные характеристики программы:
Основными функциями являются:
- хранение данных о сотрудниках, вакансиях, рабочем графике;
- (добавление, изменение, удаление) данных о сотрудниках, вакансиях, рабочем графике;
- возможность фильтрации данных по полям в таблице сотрудники (Имя, Фамилия, Должность), пользователи;
- осуществление поиска данных по фамилии, имени и должности сотрудника;
- возможность сортировки данных по всем столбцам таблиц.
- вывод на печать анкеты, содержащую информацию о выбранном сотруднике (фамилия, имя, отчество, дата рождения, образование, воинская обязанность, адрес, телефон, должность, подпись сотрудника)
- журналирование действий пользователей;
Требования к организации входных и выходных данных.
Входными данными являются:
- данные пользователя (логин, пароль);
- данные о сотрудниках (фамилия, имя, отчество, дата рождения, образование, воинская обязанность, адрес, телефон, должность);
- данные о вакансиях (должность, название, дата начала, дата окончания);
- данные о рабочем графике (сотрудник, отпуск/больничный, дата начала, дата окончания);
- параметры фильтрации данных по полям в таблицах сотрудники (Имя, Фамилия, Должность), пользователи;
- параметры сортировки данных по всем столбцам таблиц.
- параметры поиска данных в таблицах по выбранному критерию;
Выходными данными являются:
- данные пользователя (логин, пароль);
- данные о сотрудниках (фамилия, имя, отчество, дата рождения, образование, воинская обязанность, адрес, телефон, должность);
- данные о вакансиях (должность, название, дата начала, дата окончания);
- данные о рабочем графике (сотрудник, отпуск/больничный, дата начала, дата окончания);
- результаты фильтрации данных по полям в таблицах сотрудники (Имя, Фамилия, Должность), пользователи;
- результаты сортировки данных по всем столбцам таблиц.
- результаты поиска данных по выбранному критерию;
- вывод на печать анкеты, содержащую информацию о выбранном сотруднике (фамилия, имя, отчество, дата рождения, образование, воинская обязанность, адрес, телефон, должность, подпись сотрудника);
Требования к временным характеристикам:
- программный продукт должен быстро реагировать на действия пользователя.
- задержка при создании отчетов не должна превышать 30 сек.
- запуск программы должен происходить не более чем за 15 сек.
Требования к пользовательскому интерфейсу:
- быстрая и удобная навигация (главное меню на основной форме, в каждой таблице присутствует полоса прокрутки);
- легкость освоения (наличие справки, разбитой на главы с использованием иллюстраций);
- интерфейс администратора позволяет пользоваться такими вкладками как: пользователи, справка, журналирование;
- интерфейс пользователя позволяет пользоваться такими вкладками как: сотрудники, вакансии, отпуски, больничные, справка;
- поле Телефон содержит маски ввода 00-00-00, 0-000-0000000;
- в числовые поля нельзя вводить знаки, буквы, символы, так же нельзя оставлять поля незаполненными;
- максимальная длина полей совставляет 32 символа.
Интерфейс программы должен быть оформлен в модальном режиме, c различными компонентами, обеспечивающими быстрый и удобный доступ к таблицам базы данных.
Требования к надежности:
Программный продукт должен быть надежно организован в области хранения данных. Для того чтобы обеспечить наилучшую надёжность при работе системы необходимо следить за следующими ограничениями:
- В поля, предназначенные для записи текста нельзя вводить числовые значения и наоборот, если же будут введены неверные данные, тогда должно появляться сообщение об ошибке.
- Разграничить доступ к данным;
- Запретить ввод некорректных символов в программу (#;$;*;);
- Для поддержания целостности БД необходимо:
- Использование первичного ключа;
- Приведение к 3 нормальной форме;
Условия эксплуатации:
Для эксплуатации одного экземпляра программы необходим один человек (оператор ПК), который будет запускать программу и вносить данные в нее. Для этого необходимо умение владения персональным компьютером на уровне пользователя.
Требования к составу и параметрам технических средств: Минимальными системными требованиями для нормальной работы приложения являются:
- операционная система Windows XP/Vista/7/8/10
- процессор 1 GHz и выше;
- оперативная память 512 Мб;
- свободное место на жестком диске: 250 Мб.
Требования к информационной и программной совместимости
Программный продукт должен стабильно работать на операционных системах семейства Windows. Программа должна взаимодействовать с MS SQL Server.
Требования к программной документации
Программная документация должна иметь в наличии:
- Руководство пользователя, в котором должны быть подробно изложены все основы работы с программой.
- Руководство программиста, в котором должны быть подробно изложены принципы внесения изменений в программный продукт без потери функциональной способности последнего.
Технико-экономические показатели
Анализируя предложенные дипломные проекты выполнение по аналогичной тематике с расчетом экономического эффекта можно получить оценку экономической эффективности от одного экземпляра программы в пределах 10-20 тысяч рублей.
Этапы разработки
Можно выделить следующие этапы разработки:
- сбор информации и анализ литературных источников,
- разработка метода решения задачи и составления алгоритма решения (проектирование),разработка и отладка программы (реализация).
ГЛАВА 2. РАЗРАБОТКА ПРОГРАММНОГО ПРОДУКТА
2.1 Разработка архитектуры программной системы
Работа всего программного продукта построена на работе взаимосвязанных модулей, каждый из которых отвечает за работу конкретной части программного продукта.
Программный комплекс состоит из 9 модулей, каждый из которых выполняет определенную функцию программы. Все эти модули представлены и описаны ниже.
Рисунок 2.1 - Архитектура программной системы
«Модуль управления пользователями». Данный модуль предоставляет возможности создавать группы пользователей, которые, в зависимости от делегированных им прав, могут управлять контентом программного продукта.
«Модуль журналирования». Данный модуль предназначен для контроля всех действий которые совершаются пользователями или скриптами через стандартный функционал.
«Модуль отчетов». Данный модуль предоставляет возможности доступа ко всем доступным отчетам. Использует данные из имеющихся таблиц.
«Модуль справки». Данный модуль предоставляет возможности доступа ко всем доступным справкам.
«Модуль управления работниками». Данный модуль предоставляет данные таблицы «Сотрудники», а также средства их редактирования. Использует данные из таблицы Staff, Position, Education, MilitaryDuty.
«Модуль управления вакансиями». Данный модуль предоставляет данные таблицы «Вакансии», а также средства их редактирования. Использует данные из таблицы Vacancy, Position, Department.
«Модуль управления графиком работы». Данный модуль предоставляет данные таблицы «График работы», а также средства их редактирования. Использует данные из таблицы TypesScheduls, Staff.
«Модуль обработки ошибок». Данный модуль предназначен для описания реагирования программы на ошибки выполнения и другие возможные проблемы, которые могут возникнуть при выполнении некорректных действий приводящих к невозможности дальнейшей не работоспособности программного продукта.
«Модуль авторизации». Данный модуль представляет возможность определения имени пользователя пользующегося продуктом, а также аутентификации пользователя.
2.2 Разработка структуры данных
Создание логической модели данных является одной из наиболее важных задач при проектировании любой программы. Поэтому особое внимание было уделено организации хранения данных, таблиц. Это позволяет сохранить данные в целостности и эффективно их использовать.
В процессе моделирования была построена следующая концептуальная модель БД.
При разработке программного продукта выделены сущности:
- Staff (Сотрудники)
- Post (Должность)
- Vacancy (Вакансии)
- StaffsScheduls (График сотрудников)
В выделенных сущностях выявлены следующие связи:
- «Должность» содержит «Вакансии»
- «Должность» содержит «Сотрудников»
- «Сотрудники» имееют «График»
Построим диаграммы ER-типа:
«Должность» содержит «Сотрудников»
Рисунок 2.2 - Диаграмма ER-типа
Связь «один ко многим»: одна запись должности соответствует нескольким записям сотрудников.
Класс принадлежности сущности «Сотрудники» обязательный, т.к. Сотрудник не может не иметь должность.
Класс принадлежности сущности «Должность» необязательный, т.к. может и не быть связанных с должностью сотрудников.
«Должность» содержит «Вакансии»
Рисунок 2.3 - Диаграмма ER-типа
Связь «один ко многим»: одна запись должности соответствует нескольким записям вакансий.
Класс принадлежности сущности «Вакансии» обязательный, т.к. Вакансий не может быть без должностей.
Класс принадлежности сущности «Должность» необязательный, т.к. может и не быть связанных с вакансиями.
«Сотрудники» имееют «График»
Рисунок 2.4 - Диаграмма ER-типа
Связь «один ко многим»: одна запись сотрудника соответствует нескольким записям графика.
Класс принадлежности сущности «Сотрудник» обязательный, т.к. график не может быть без сотрудника.
Класс принадлежности сущности «График» обязательны, т.к. сотрудник не может быть без графика.
Рисунок 2.5 - Структура данных
Для лучшей организации хранения данных была разработана структура данных. Ниже приведено описание имеющихся полей таблиц и их функциональное назначение.
Связь между элементами реализована внутренними функциями программы Microsoft SQL Server и обеспечивает целостность базы данных, а также уникальность ключевых полей.
Программный продукт состоит из следующих таблиц.
Таблица 2.1 - Education (Образование)
Имя поля |
Тип данных |
Значение |
|
Id |
Int |
Ключевое поле с счетчиком |
|
Name |
nvarchar(200) |
Содержит строку |
|
Description |
nvarchar(MAX) |
Содержит строку |
Таблица 2.2 - Staff (Сотрудники)
Имя поля |
Тип данных |
Значение |
|
Id |
Int |
Ключевое поле с счетчиком |
|
Surname |
nvarchar(50) |
Содержит строку |
|
Patronymic |
nvarchar(50) |
Содержит строку |
|
Name |
nvarchar(50) |
Содержит строку |
|
BirthDay |
Date |
Содержит дату |
|
IdEducation |
Int |
Содержит число |
|
IdMilitaryDuty |
Int |
Содержит число |
|
Address |
nvarchar(MAX) |
Содержит строку |
|
Phone |
nvarchar(MAX) |
Содержит строку |
|
IdPosition |
Int |
Содержит число |
Таблица 2.3 - Department (Отдел)
Имя поля |
Тип данных |
Значение |
|
Id |
Int |
Ключевое поле с счетчиком |
|
Name |
nvarchar(100) |
Содержит строку |
|
Description |
nvarchar(MAX) |
Содержит строку |
Таблица 2.4 - Position (Позиция)
Имя поля |
Тип данных |
Значение |
|
Id |
Int |
Ключевое поле с счетчиком |
|
Name |
nvarchar(200) |
Содержит строку |
|
IdDepartment |
Int |
Содержит число |
|
IdPost |
Int |
Содержит число |
|
Description |
nvarchar(MAX) |
Содержит строку |
Таблица 2.5 - Post (Должность)
Имя поля |
Тип данных |
Значение |
|
Id |
int |
Ключевое поле с счетчиком |
|
Name |
nvarchar(100) |
Содержит строку |
|
Description |
nvarchar(MAX) |
Содержит строку |
Таблица 2.6 - Vacancy (Вакансии)
Имя поля |
Тип данных |
Значение |
|
Id |
int |
Ключевое поле с счетчиком |
|
IdPosition |
int |
Содержит число |
|
Name |
nvarchar(100) |
Содержит строку |
|
StartSearchDate |
date |
Содержит дату |
Продолжение таблицы 2.6
EndSearchDate |
date |
Содержит дату |
Таблица 2.7 - MilitaryDuty (Воинская обязанность)
Имя поля |
Тип данных |
Значение |
|
Id |
int |
Ключевое поле с счетчиком |
|
Name |
nvarchar(100) |
Содержит строку |
|
Description |
nvarchar(MAX) |
Содержит строку |
Таблица 2.8 - StaffsScheduls (График работы сотрудников)
Имя поля |
Тип данных |
Значение |
|
Id |
int |
Ключевое поле с счетчиком |
|
IdStaff |
int |
Содержит число |
|
IdTypesScheduls |
int |
Содержит число |
|
StartSearchDate |
date |
Содержит дату |
|
EndSearchDate |
date |
Содержит дату |
|
Description |
nvarchar(MAX) |
Содержит строку |
2.3 Конструирование пользовательского интерфейса
Одной из главных задач при разработке программного комплекса было создание простого и наглядного пользовательского интерфейса, рассчитанного на любого неопытного пользователя и простого в освоении.
Программное обеспечение имеет простой и удобный интерфейс для работы с основной базой данных (ввод, поиск, удаление данных).
Все функции управления окнами, работа с системой меню, ввод и редактирование информации, осуществляется стандартными методами Windows, поэтому знание принципов работы в ней освобождает пользователя от изучения этих средств.
Рассмотрим интерфейс данного программного продукта:
- Button1 - кнопка для авторизации пользователя;
- TextBox1 - компонент для ввода логина;
- PasswordBox - компонент для ввода пароля;
- TextBlock1, TextBlock2 - отображение надписей.
Рисунок 2.6 - Форма «Авторизация»
Форма «Администратора» содержит следующие компоненты:
- MenuItem1, MenuItem2, MenuItem3, MenuItem4 - кнопки управления, предназначены для выполнения конкретных действий;
Рисунок 2.7 - Форма «Администратора»
Форма «Пользователи» содержит следующие компоненты:
- DBGrid-сетка для отображения информации о пользователях из набора данных базы данных;
- TextBlock - отображение надписей;
- Button1, Button2, Button3 - командные кнопки используются для реализации в программе необходимых команд.
Рисунок 2.8 - Форма «Пользователи»
Форма «Добавление пользователя» содержит следующие компоненты:
- Button1, Button2 - кнопки управления, предназначены для выполнения конкретных действий;
- TextBox1, TextBox2, TextBox3 - поля ввода данных;
- PasswordBox1, PasswordBox2 - поля для вводу пароля;
- ComboBox1 - компонент для выбора определенных значений;
- TextBlock1, TextBlock2, TextBlock3, TextBlock4, TextBlock5, TextBlock6 - отображение надписей;
Рисунок 2.9 - Форма «Добавление пользователя»
Форма «Пользователя» содержит следующие компоненты:
- MenuItem1, MenuItem2 - кнопки управления, предназначены для выполнения конкретных действий;
Рисунок 2.10 - Форма пользовательского интерфейса
Форма «Сотрудники» содержит следующие компоненты:
- DataGrid1 - сетка для отображения информации о сотрудниках из набора данных базы данных;
- Button1, Button2, Button3, Button4 - командные кнопки используются для реализации в программе необходимых команд.
Рисунок 2.11 - Форма «Сотрудники»
Форма «Добавление сотрудника» содержит следующие компоненты:
- Button1, Button2 - кнопки управления, предназначены для выполнения конкретных действий;
- TextBox1, TextBox2, TextBox3, TextBox4, TextBox5 - поля ввода данных;
- DatePicker1 - компонент для установки даты;
- ComboBox1, ComboBox2, ComboBox3 - компонент для выбора определенных значений;
- TextBlock1, TextBlock2, TextBlock3, TextBlock4, TextBlock5, TextBlock6, TextBlock7, TextBlock8, TextBlock9 - отображение надписей;
Рисунок 2.12 - Форма «Добавление сотрудника»
Форма «Вакансии» содержит следующие компоненты:
- DataGrid1 - сетка для отображения информации о сотрудниках из набора данных базы данных;
- Button1, Button2 - кнопки управления, предназначены для выполнения конкретных действий;
Рисунок 2.13 - Форма «Вакансии»
Форма «Добавление вакансии» содержит следующие компоненты:
- Button1, Button2 - кнопки управления, предназначены для выполнения конкретных действий;
- TextBox1 - поле ввода данных;
- DatePicker1, DataPicker2 - компонент для установки даты;
- TextBlock1, TextBlock2, TextBlock3, TextBlock4 - отображение надписей;
Рисунок 2.14 - Форма «Добавление вакансии»
Форма «Рабочий график» содержит следующие компоненты:
- DataGrid1 - сетка для отображения информации о сотрудниках из набора данных базы данных;
- Button1, Button2, Button3 - кнопки управления, предназначены для выполнения конкретных действий;
Рисунок 2.15 - Форма «Рабочий график»
Форма «Добавление вакансии» содержит следующие компоненты:
- Button1, Button2 - кнопки управления, предназначены для выполнения конкретных действий;
- TextBox1 - поле ввода данных;
- DatePicker1, DataPicker2 - компонент для установки даты;
- TextBlock1, TextBlock2, TextBlock3, TextBlock4 - отображение надписей;
Рисунок 2.16 - Форма «Добавление отгула»
2.4 Обработка событий и ошибок ввода данных
В разработанном приложении существуют следующие обработчики:
- обработчик, который не позволяет вводить числовые значения в текстовое поле для ФИО и аналогичных полей.
private void tbName_KeyDown(object sender, KeyEventArgs e)
{
if ((e.Key >= Key.D0 && e.Key <= Key.D9) || (e.Key >= Key.NumPad0 && e.Key <= Key.NumPad9))
{
e.Handled = true;
CommonMethods.ErrorMessageWindow("Поле Имя поддерживает ввод только букв");
}}
- обработчик, который позволяет вводить только цифры, в поля для ввода телефона.
private void tbPhone_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Back || (e.Key >= Key.D0 && e.Key <= Key.D9) || (e.Key >= Key.NumPad0 && e.Key <= Key.NumPad9))
{
// The user deleted a character
}
else
{
e.Handled = true;
CommonMethods.ErrorMessageWindow("Поле Телефон поддерживает ввод только цифр");
}
}
- обработчик, выполняющий проверку вводимой информации на её корректность, при вводе неверной информации просит проверить данные или убедиться в их наличии.
{
CommonMethods.ErrorMessageWindow("Указанный логин уже существует");
return false;
}
При вводе пустого поля фамилия, имя, логин, пароля будет отображено соответствующее предупреждение об ошибке.
private bool ValidInfoUser(string name, string surname, string login, string role, string password,string confirmPassword)
{
if (name.Length <= 0)
{
CommonMethods.ErrorMessageWindow("Поле Имя не заполнено");
return false;
}
else if (surname.Length <= 0)
{
CommonMethods.ErrorMessageWindow("Поле Логин не заполнено");
return false;
}
else if (LoginExist(login))
{
CommonMethods.ErrorMessageWindow("Поле Должность не заполнено");
return false;
}
else if (password.Length > 0 && password.Length < 6)
{
CommonMethods.ErrorMessageWindow("Пароль содержит менее 6 символов");
return false;
}
else if (confirmPassword != password)
{
CommonMethods.ErrorMessageWindow("Пароли не совпадают");
return false;
}
else
{
return true;
}
}
Аналогичная проверка осуществляется и для других полей во всех модулях программы.
2.5 Разработка программного алгоритма
Реализация функционального назначения программного продукта была осуществлена путем использования различных процедур.
Интерфейс - позволяет пользователю производить операции над сотрудниками, включающий следующие функции: добавление, удаление данных.
Таблица 2.9 - описание процедур и функций разработки программного алгоритма
Функция/ Процедура |
Название процедуры/функции |
Функциональное назначение |
|
procedure |
private void btLogin_Click(object sender, RoutedEventArgs e) |
Открытие данных в соответствии с правами пользователя |
|
procedure |
private void LoadContent() |
Загрузка данных в элементы управления |
|
procedure |
public static void CurrentUser(string login) |
Сохранение логина текущего пользователя для последующего логирования |
|
procedure |
public static void ErrorMessageWindow(string message) |
Вызов окна с сообщением о ошибке |
|
procedure |
public static string EncryptionPassword(string password) |
Шифрование пароля пользователя |
|
procedure |
public static DataTable sp_valid_credentials(string login, string password) |
Проверка наличия введенных данных |
|
procedure |
public static void sp_add_auth_log(string login) |
Запись об успешной авторизации пользователя |
|
procedure |
public static DataTable sp_get_full_logs() |
Отображение действий всех пользователей |
|
procedure |
public static DataTable sp_valid_login(string login) |
Проверка существования логина |
|
procedure |
public static DataTable sp_get_role(string login) |
Возвращает роль пользователя в программе |
|
procedure |
public static DataTable sp_get_logs_user(string) |
Отображает действия пользователей в диапозоне |
2.6 Организация интерфейса хранения данных
Любой программный продукт, преобразующий информацию должен уметь также и сохранять ее. Для данных целей были разработаны соответствующие процедуры.
При подключении к базе данных с указанием логина и пароля происходит проверка прав доступа, а также происходит настройка отображения главного окна программы в соответствии с ними.
Таблица 2.10 - Процедуры и функции организации интерфейса хранения данных
Процедура/ функция |
Название процедуры/функции |
Функциональное назначение процедуры/функции |
|
procedure |
public static void sp_add_new_user(string name, string surname, string login, string role, string password) |
Добавление нового пользователя в таблице пользователи |
|
procedure |
public static void sp_delete_users(int id) |
Удаление пользователя из программы |
|
procedure |
public static void sp_add_vacancy(string position, string name, string startDate, string endDate) |
Добавление вакансии в таблице вакансии |
|
procedure |
public static void sp_delete_vacancy(int id) |
Удаление выбранной вакансии |
|
procedure |
public static void sp_add_staff(string surname, string name) |
Добавление сотрудника в таблице сотрудники |
|
procedure |
public static void sp_delete_staff(int id) |
Удаление выбранного сотрудника |
|
procedure |
private void btFilter_Click(object sender, RoutedEventArgs e) |
Фильтрация данных в таблице пользователи |
|
procedure |
private void btFilter_Click(object sender, RoutedEventArgs e) |
Фильтрация данных в таблице сотрудники |
|
procedure |
private void btFilter_Click(object sender, RoutedEventArgs e) |
Фильтрация данных в таблице вакансии |
|
procedure |
private void btFilter_Click(object sender, RoutedEventArgs e) |
Фильтрация данных в таблице график сотрудников |
|
procedure |
private void btSearch_Click(object sender, RoutedEventArgs e) |
Поиск данных в таблице сотрудники |
|
procedure |
private void btSearch_Click(object sender, RoutedEventArgs e) |
Поиск данных в таблице вакансии |
|
procedure |
private void btSearch_Click(object sender, RoutedEventArgs e) |
Поиск данных в таблице график сотрудников |
|
procedure |
private void btSorted_Column(object sender, RoutedEventArgs |
Сортировка данных по всем столбцам в таблице сотрудники |
|
procedure |
private void btSorted_Column(object sender, RoutedEventArgs e) |
Сортировка данных по всем столбцам в таблице вакансии |
|
procedure |
private void btSorted_Column(object sender, RoutedEventArgs e) |
Сортировка данных по всем столбцам в таблице график сотрудников |
|
procedure |
public static void sp_add_staff_schedul(string staff, string typeSchedul, string startDate, string endDate) |
Добавление графика сотрудка в таблицу график сотрудников |
|
procedure |
public static void sp_delete_schedul(int id) |
Удаление выбранного графика |
|
procedure |
public static DataTable sp_get_staff_id(int id) |
Вывод всей информации о выбраном сотруднике |
2.7 Тестирование программы
Целью тестирования системы является выявление ошибок работы программы, связанных с обработкой данных, общего функционирования программы; проверка функциональных характеристик программы.
Весь процесс тестирования программного продукта разбит на три этапа:
- проверка в нормальных условиях;
- проверка в экстремальных условиях;
- проверка в исключительных ситуациях.
Проверка программы в нормальных условиях:
Тестирование программы в нормальных условиях проводилось с целью определения её соответствия требованиям технического задания и подтверждения корректности работы программы в характерных ситуациях.
При запуске программа открывает основную форму не выдавая сообщений об ошибке или сбое. (Рисунок 2.17)
Рисунок 2.17 - Главное окно администратора.
Программа надежно защищена от постороннего вмешательства. Для этого в ней реализована обязательная авторизация для входа. (Рисунок 2.18)
Рисунок 2.18 - Окно авторизации.
Проверка в нормальных условиях рассматривается на примере добавления пользователя с корректным вводом информации.
Рисунок 2.19 - Форма добавление пользователя.
Результат добавления пользователя можно увидеть на Рисунке 2.20
Рисунок 2.20 - Результат добавления пользователя.
Проверка программы в экстремальных условиях
Проверка в экстремальных условиях предполагает оценку работоспособности программы при граничных объемах исходных данных.
Не удалось протестировать программу при огромном количестве информации в связи с ограниченным временем тестирования.
При добавлении записи с пустыми полями программа выдает сообщение об ошибке.
Рисунок 2.21 - Сообщение об ошибке
В программе предусмотрен запрет на ввод цифр в символьные поля и букв в числовые поля. Программа не выдает сообщений, но блокирует действия пользователя.
Программа корректно добавляет и обрабатывает записи с большим количеством информации.
Проверка программы в исключительных ситуациях
Испытание работоспособности программы в исключительных ситуациях основывалось на применении некорректных, неполных или неточных исходных данных, проверке работоспособности в случае сбоев, провокационных или злоумышленных действиях пользователя.
В случае неполных данных в настройках (неверные адрес сервера, логин, пароль, порт подключения, наименование БД) будет показано окно с ошибкой.
В случае, когда прерывается связь по сети, программа так же выдает сообщение.
Рисунок 2.22 - Ошибка подключения к БД
2.8 Экономическое обоснование проекта
Организационная часть
Объектом исследования является отдел кадров на предприятии ЗАО «Арно».
В структуре предприятия ЗАО «Арно» отдел кадров занимает одну из наиболее важных и значимых позиций.
Кадровая работа состоит в целом комплексе организационных мер и грамотных шагов, направленных на максимальное использование профессиональных способностей персонала.
К основным функциям отдела кадров на предприятии относятся:
– определение потребности предприятия в кадрах и подбор персонала совместно с начальниками подразделений;
– анализ текучести кадров, поиск методов борьбы с высоким уровнем текучести;
– подготовка штатного расписания предприятия;
– оформление личных дел сотрудников, выдача по требованию работников справок и копий документов;
– комплекс операций с трудовыми книжками (прием, выдача, заполнение и хранение документов);
– ведение учета отпусков, составление графиков и оформление отпусков в соответствии с действующим трудовым законодательством;
– организация аттестаций сотрудников, составление планов карьерного движения персонала;
– подготовка планов повышения квалификации трудящихся.
Рисунок 2.23 - Организационная структура предприятия ЗАО «Арно»
Для оптимизации деятельности в отделе кадров предприятия ЗАО «Арно» в штатном расписании предусмотрена должность программиста.
Должностные обязанности программиста:
– разработка технологии решения задач по всем этапам обработки информации;
– определение информации, подлежащей обработке средствами вычислительной техники, ее объемы, структуру, макеты и схемы ввода, обработки,хранения и вывода, методы ее контроля;
– выполнение работы по подготовке программ к отладке и их отладке;
– определение объема и содержания данных контрольных примеров, обеспечивающих наиболее полную проверку соответствия программ их функциональному назначению;
– осуществление запуска отлаженных программ и ввод исходных данных, определяемых условиями поставленных задач;
– проведение корректировки разработанной программы на основе анализа выходных данных;
– определение возможности использования готовых программных продуктов;
– разработка инструкций по работе с программами, оформление необходимой технической документации;
– осуществление сопровождения внедренных программ и программных средств.
Экономическая часть
Организация плановых работ по созданию программного продукта.
Руководствуясь международным стандартом, регламентирующий жизненный цикл программного обеспечения, а также плана на выполнение дипломного проекта, определяем порядок разработки программного продукта. Разработка программного продукта включает в себя основные этапы:
- анализ, сбор информации и анализ литературных источников;
- проектирование, разработка метода решения задачи и составление алгоритма решения;
- реализация, разработка и отладка программы;
- тестирование, анализ результатов.
Общее время на создание программы складывается из различных компонентов.
Таблица 2.11 - Структура общего времени на создание программного продукта
Обозначение времени данного этапа |
Содержание этапа |
|
Тп.о. |
Подготовка описания задачи. |
|
То |
Описание задачи. |
|
Та |
Разработка алгоритма. |
|
Тб.с. |
Разработка блок-схемы алгоритма. |
|
Тн |
Написание программы на языке Visual Studio. |
|
Тп |
Набивка программы. |
|
То.т. |
Отладка и тестирование программы. |
|
Тд |
Оформление документации, инструкций пользователю, пояснительной записки. |
Время рассчитывается в человеко-часах, причем Тп.о. берется по фактически отработанному времени, а время остальных этапов определяется расчетом по условному числу команд Q.
Условное число команд Q определяется по формуле:
, (1)
где q - коэффициент, учитывающий условное число команд в зависимости от типа задачи.
Таблица 2.12 - Значение условного числа команд для различных видов решаемых программных средством задач (значение коэффициента q).
Тип задачи |
Пределы изменений коэффициента |
|
Задачи учета |
от 1400 до 1500 |
|
Задачи оперативного управления |
от 1500 до 1700 |
|
Задачи планирования |
от 3000 до 3500 |
|
Многовариантные задачи |
от 4500 до 5000 |
|
Комплексные задачи |
от 5000 до 5500 |
Для данной задачи коэффициент q = 1430, так как была разработана программа учета сотрудников, вакансий, больничных, отпусков.
С - коэффициент, учитывающий новизну и сложность программы.
Программные продукты по степени новизны могут быть отнесены к одной из четырёх групп:
- группа А - разработка принципиально новых задач;
- группа Б - разработка оригинальных программ;
- группа В - разработка программ с использованием типовых решений;
- группа Г - разовая типовая задача.
Для данной задачи степень новизны группы В, так как в программе используются типовые решения учета сотрудников, вакансий, больничных и отпусков.
По степени сложности программный продукт может быть отнесен к одной из трёх групп:
- алгоритмы оптимизации и моделирования систем;
- задачи учета, отчетности и статистики;
- стандартные алгоритмы.
Данная задача может быть отнесена ко второй группе сложности, так как в программе используются алгоритмы, обеспечивающие учет данных.
Язык программирования, на котором была разработана программа, является языком программирования высокого уровня.
Данная задача может быть отнесена ко второй группе сложности. Коэффициент С определяется из таблицы 2.13 на пересечении групп сложности и степени новизны.
Таблица 2.13 - Значение коэффициента степени новизны и сложности программы (С).
Язык программирования |
Группа сложности |
Степень новизны |
||||
А |
Б |
В |
Г |
|||
Высокого уровня |
1 |
1,38 |
1,26 |
1,15 |
0,69 |
|
2 |
1,30 |
1,19 |
1,08 |
0,65 |
||
3 |
1,20 |
1,10 |
1,00 |
0,60 |
||
Низкого уровня |
1 |
1,58 |
1,45 |
1,32 |
0,79 |
|
2 |
1,49 |
1,37 |
1,24 |
0,74 |
||
3 |
1,38 |
1,26 |
1,15 |
0,69 |
Для данной задачи коэффициент C = 0,60
Исходя из формулы 1, можно определить условное число команд Q.
Q = 1430 * 0,60 = 858
Определяем время, затраченное на каждый этап создания программного продукта:
Тп.о. (время на подготовку описания задачи), берется по факту и составляет: Тп.о. = 5 чел./час.
То (время на описание задачи) определяется по формуле:
, (2)
где В - коэффициент учета изменений задачи, коэффициент В в зависимости от сложности задачи и числа изменений выбирается в интервале от 1,2 до 1,5.
Для данной задачи В = 1,3
К - коэффициент, учитывающий квалификацию программиста.
Таблица 2.14 - квалификация программиста
Стаж программиста |
Значение коэффициента К |
|
до 2-х лет |
0,8 |
|
от 2 до 3 лет |
1,0 |
|
от 3 до 5 лет |
1,1 - 1,2 |
|
от 5 до 10 лет |
1,2 - 1,3 |
|
свыше 10 лет |
1,3 - 1,5 |
В данном случае коэффициент К = 1.
То = (858*1,3) / (50*1) = 22,31 чел./час
Та (время на разработку алгоритма) рассчитываем по формуле:
, (3)
Та = 858 / (50*1) = 17,16 чел./час
Тб.с. (время на разработку блок - схемы) определяется аналогично Та по формуле 3 и составляет:
Тб.с. = 858 / (50*1) = 17,16 чел./час
Тн (время написания программы на языке программирования) определяется по формуле:
(4)
Тн = (858*1,5) / (50*1) = 25,74 чел./час
Тп (время набивки программы) определяется по формуле:
(5)
Применяя формулу 5, определяем время набивки программы.
Тп = 858 / 50 = 17,16 чел./час
То.т. (время отладки и тестирования программы) определяется по формуле:
(6)
Подставляем значения в формулу и получаем:
То.т. = (858*4,2) / (50*1) = 72,07 чел./час
Тд (время на оформление документации, инструкции пользователю, пояснительной записки), берется по факту и составляет:
Тд = 20 чел. / час.
Теперь, зная время, затраченное на каждом этапе, можно подсчитать общее время на создание программного продукта:
Т = Тп.о. + То + Та + Тб.с + Тн + Тп + То.т + Тд = 5 + 22,31 + 17,16 + 17,16
+ 25,74 + 17,16 + 72,07 + 20 = 196,6 (чел./час) (7)
Рисунок 2.24 - Затраты времени на разработку программного продукта.
Таким образом, максимальное время разработки программного продукта для предприятия ЗАО «Арно» затрачено на этапах написания программы и набивки (42,9 ч/часов, что соответствует 22%) ,отладки и тестирования программы (72,07 ч/часов, что соответствует 37%), от общих временных затрат 196,6 ч/часов или 25 рабочих дней.
Методика расчета затрат на разработку программы
Расчет себестоимости создания включает следующие составляющие, с последующим их графическим представлением виде круговой диаграммы:
- расчет заработной платы исполнителя работ по созданию программного продукта, т.е. программиста со стажем от 2 до 3 лет без категории;
- расчет начислений на заработную плату (отчислений во внебюджетные фонды);
- прочие расходы.
Расчет заработной платы исполнителя работ по созданию программного продукта.
Заработная плата работников предприятия ЗАО «Арно» выплачиваются за выполнением функциональных обязанностей и работ, предусмотренных трудовым договором (контрактом). Выполнение работником предприятия других работ и обязанностей оплачивается по дополнительному договору, за исключением случаев, предусмотренных законодательством РФ. На предприятии имеется простая повременная оплата труда установленная в штатном расписании.
Основная ЗП определяется по формуле:
(8)
где Ро - оклад программиста (руб).
Т - общее время на создание программного продукта (чел./час);
Чр - число рабочих дней в месяце;
t.p.д. - продолжительность рабочего дня в часах.
Чр = 25 дней;
t.p.д. = 8 часов;
Ро = 9800 руб;
Т = 196,6 чел/час;
При своевременном и качественном выполнении работ возможна выплата премии по дополнительному соглашению.
Таким образом определяем основную заработную плату исполнителя работ по созданию программного продукта.
(9)
ЗПосн.= (9800 * 196,6)/(25 * 8) = 9633,4 (руб.)
Дополнительная заработная плата берется в размере 15 % от основной.
ЗПдоп. = 9633,4 * 0,15 = 1445 (руб.) (10)
Общая заработная плата будет равна сумме основной и дополнительной:
ЗПобщая = ЗПосн. + ЗПдоп = 9633,4 + 1445 = 11078,4 (руб.) (11)
Расчет начислений на заработную плату
Рассчитываем величину отчислений во внебюджетные фонды в размере 30% от общей заработной платы. Структура отчислений представлена в таблице 2.15.
Направленность отчислений |
Процент от ЗПобщ. |
Сумма (руб.) |
|
Отчисления на соц. страх. |
2,9% |
321,27 |
|
Отчисления на мед.страх. |
5,1% |
565 |
|
Отчисления в пенсионный фонд. |
22% |
2437,25 |
|
Итого: |
30% |
3323,52 |
Таблица 2.15 - Структура отчислений во внебюджетные фонды
Нзп = ЗПобщ * 30% (руб.) (12)
Нзп = 11078,1 * 30% = 3323,52 (руб.)
Расчет себестоимости программного продукта.
Себестоимость продукции это стоимостная оценка используемых в процессе производства продукции (работ, услуг) трудовых ресурсов и других затрат на её производство и реализацию.
В себестоимость программного продукта входят следующие элементы:
- основная заработная плата исполнителя работ по созданию программного продукта;
- начисления на заработную плату (отчисления во внебюджетные фонды);
- прочие расходы.
Первые 2 элемента нам уже известны, а прочие расходы составляют 10% от суммы первых 2-х элементов.
Пр.р. = (ЗПобщ.+Нзп.)*10% = (11078,1+3323,52) * 0,1 = 1440,2 руб. (13)
Сложив все элементы, можно определить себестоимость программного продукта.
Сп.п. = ЗПобщ.+Нзп+Пр.р=11078,1+3323,52+1440,2 = 15841,8 руб. (14)
Таблица 2.16 Структура себестоимости программного продукта
Элементы себестоимости |
Сумма (руб.) |
% в общ. сумме себестоимости |
|
Общая заработная плата исполнителя |
11078,1 |
69,9% |
|
Начисления на заработную плату |
3323,52 |
21% |
|
Прочие расходы |
1440,2 |
9,1% |
|
Итого: |
15841,8 |
100% |
Рисунок 2.25 - затраты на разработку ПП.
Суммарные затраты на разработку и отладку программы S равны 15841,8 рублей.
Расчет цены программного продукта
В условиях рынка цена выступает связующим звеном между разработчиком программного продукта и потребителем, обеспечивает равновесие спроса и предложения.
Цена это денежное выражение стоимости товара.
Подобные документы
Анализ предметной области. Технико-экономическое обоснование разработки программного обеспечения информационной системы отдела кадров. Проектирование пользовательского интерфейса. Оптимизация параметров микроклимата помещений, оборудованных ПЭВМ.
дипломная работа [6,8 M], добавлен 16.01.2015Использование информационной системы отдела кадров предприятия для уменьшения времени выполнения функций, автоматического создания документации, проставления дат и табельных номеров, простоты поиска. Интерфейс программы и структура базы данных приложения.
курсовая работа [254,7 K], добавлен 25.03.2011Постановка задачи проектирования и описание предметной области. Выбор состава технических и программных средств. Составление физической структуры базы данных отдела кадров предприятия. Экспорт физической структуры в систему управления базой данных.
курсовая работа [296,6 K], добавлен 07.05.2015Организация документооборота корпоративного отдела. Описание состава задач, подлежащих автоматизации, входной и выходной информации. Разработка состава и структуры базы данных, описание пользовательского интерфейса. Экономический эффект автоматизации.
дипломная работа [2,9 M], добавлен 05.12.2011Разработка концептуальной и логической моделей базы данных "Отдела кадров (института)". Примеры построения запросов для получения данных по различным критериям выборки, описание получения отчетных документов. Формы для ввода и редактирования данных.
курсовая работа [1,8 M], добавлен 16.12.2015Создание программного средства для реализации работы отдела кадров, построенное на основах ООП и STL. Доступный и простой интерфейс для занесения данных о рабочих и местах их прошлых работ. Алгоритм функционирования программы, ее характеристика.
курсовая работа [319,6 K], добавлен 19.06.2012Этапы разработки технического задания. Спецификация программного обеспечения при структурном подходе. Дерево диаграмм, базовые понятия сетевой модели данных. Разработка пользовательского интерфейса. Разработка сценария диалога на основе экранных форм.
курсовая работа [2,0 M], добавлен 24.06.2012Анализ предметной области. Проектирование структуры базы данных в среде case-средства ERWIN в виде инфологической и даталогической моделей. Общие сведения о AllFusion Process Modeler 7. Требования к надежности, информационной и программной совместимости.
курсовая работа [3,4 M], добавлен 25.11.2013Анализ и сбор сведений по предметной области. Исследование программ-аналогов для выявления имеющихся недостатков. Создание структуры данных. Разработка пользовательского интерфейса и сопроводительной документации. Отладка и тестирование программы.
отчет по практике [2,2 M], добавлен 28.04.2015Анализ состояния и способов автоматизации складского хозяйства. Управление и оптимизация материальных запасов. Обзор современного состояния программ для торговли и склада. Разработка структуры базы данных информационной системы. Описание интерфейса.
дипломная работа [1,2 M], добавлен 16.06.2015