Проектирование и разработка автоматизированного рабочего места 'Платные образовательные услуги'

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,16 Мб
  • Опубликовано:
    2013-06-10
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Проектирование и разработка автоматизированного рабочего места 'Платные образовательные услуги'

Содержание

Введение

1. Аналитическая часть

1.1 Анализ предметной области

2. Проектная часть

2.1 Проектирование структуры WEB-приложения

2.2 Технология создания макета WEB-приложения

2.3 Информационное обеспечение

3. Разработка программного продукта

3.1 Функциональность работы WEB-приложения

3.2 CSS верстка

3.3 Разработка программного кода

3.3.1 Обеспечение безопасности

3.3.2 Блок актуализации

3.3.3 Функции WEB-интерфейса

4. Экономическая часть

Заключение

Список используемых источников

Введение


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

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

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

-       возможность оперативного контроля над достоверностью информации;

-       уменьшение числа возможных ошибок при генерировании производных данных;

-       возможность быстрого доступа к любым данным;

-       возможность быстрого формирования отчетов;

-       экономия трудозатрат и затрат времени на обработку информации.

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

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

приложение интерфейс программный код

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

Исходя из вышеперечисленного, целью дипломного проекта является разработка автоматизированного рабочего места (АРМ) в виде WEB-приложения "Платные образовательные услуги" для отделения дополнительного образования Нижнетагильского строительного техникума (НТСТ).

Для реализации цели были поставлены следующие задачи:

-       исследование предметной области;

-       анализ WEB-приложений аналогичной тематики;

-       проектирование структуры приложения;

-       разработка программного продукта;

-       обеспечение безопасности;

-       расчет экономической эффективности проекта.

Актуальность работы заключается в экономии времени, а также быстром и удобном доступе к информации.

Объектом автоматизации является деятельность сотрудников отделения дополнительного образования Нижнетагильского строительного техникума.

Предметом работы является процесс разработки АРМ в виде WEB-приложения "Платные образовательные услуги".

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

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

1. Аналитическая часть


1.1 Анализ предметной области


Автоматизированное рабочее место, или, в зарубежной терминологии, "рабочая станция" (work-station), представляет собой место пользователя-специалиста той или иной профессии, оборудованное средствами, необходимыми для автоматизации выполнения им определенных функций. Такими средствами, как правило, является ПК, дополняемый по мере необходимости другими вспомогательными электронными устройствами, а именно: дисковыми накопителями, печатающими устройствами, оптическими читающими устройствами или считывателями штрихового кода, устройствами графики, средствами сопряжения с другими АРМ и с локальными вычислительными сетями и т.д.аибольшее распространение в мире получили АРМ на базе профессиональных ПК с архитектурой IBM PC.

АРМ в основном ориентированы на пользователя, не имеющего специальной подготовки по использованию вычислительной техники. Основным назначением АРМ можно считать децентрализованную обработку информации на рабочих местах, использование соответствующих "своих" баз данных при одновременной возможности вхождения в локальные сети АРМ и ПК, а иногда и в глобальные вычислительные сети, включающие мощные ЭВМ.

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

Однако принципы создания любых АРМ должны быть общими:

-       системность;

-       гибкость;

-       устойчивость;

-       эффективность.

Системность. АРМ следует рассматривать как системы, структура которых определяется функциональным назначением.

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

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

Эффективность АРМ следует рассматривать как интегральный показатель уровня реализации приведенных выше принципов, отнесенного к затратам на создание и эксплуатацию системы.

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

После анализа поставленной задачи стало необходимо изучить предметную область, в которой решалась задача создания АРМ "Платные образовательные услуги". Для этого первым этапом стало изучение и понимание основных принципов построения автоматизированных рабочих мест как таковых. Как выяснилось в ходе изучения этой области, проработке интерфейса стоит уделить немалое внимание. Плохо продуманный интерфейс может свеcти на нет желание работать с программой независимо от примененных аппаратно-программных средств для ее реализации.

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

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

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

Исходя из проведенного исследования предметной области (ПО), были выявлены следующие необходимые функции, выполняемые приложением:

-       оформление договоров и дополнительных соглашений;

-       автоматическое формирование счетов на оплату в виде направления в кассу;

-       обеспечение отражения в системе оплаты за обучение;

-       формирование отчетности о состоянии взаиморасчетов со студентами.

Структура АРМ включает совокупность подсистем - технической, информационной, программной и организационной.

К указанному ранее набору технических средств, непосредственно образующему АРМ, надо еще добавить средства связи с другими АРМ, работающими в общей сети объекта, а также другие средства связи (телефон, телекс, телефакс).

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

Программное обеспечение включает операционные системы, сервисные программы, стандартные программы пользователей и пакеты прикладных программ, выполненные по модульному принципу и ориентированные на решение определенного класса задач, обусловленного назначением АРМ.

2. Проектная часть


2.1 Проектирование структуры WEB-приложения


АРМ "Платные образовательные услуги"имеет следующую структуру (рис.1):

Рисунок 1 - структурная схема web-приложения

2.2 Технология создания макета WEB-приложения


Процесс создания макета web-приложения можно разделить на 3 этапа:

.        Проектирование общего макета web-приложения, пользовательского интерфейса.

2.      Создание или поиск подходящего фреймворка.

.        Создание макета web-приложения с помощью созданного или найденного фрэймворка.

При проектировании общего макета web-приложения и пользовательского интерфейса был использован метод построения изображения на обычном листе бумаги, с помощью обычной синей шариковой ручки. Такой подход позволил спроектировать несколько вариантов макета, и методом объединения лучших частей выбрать наилучший получившийся вариант.

В качестве фреймворка для создания дизайна и пользовательского интерфейса был использован CSS фреймворк MetroUICSS, проект с открытым исходным кодом, распространяемый под лицензией MITLicense.

Фреймворк (англ. framework, Каркас) - в информационных системах структура программной системы; программное обеспечение, облегчающее разработку и объединение разных компонентов большого программного проекта. В отличие от библиотек, которые объединяют набор подпрограмм близкой функциональности, фреймворк содержит в себе большое количество разных по назначению библиотек. Употребляется также слово "каркас", а некоторые авторы используют его в качестве основного. Можно также говорить о каркасном подходе как о подходе к построению программ, где любая конфигурация программы строится из двух частей: первая, постоянная часть - каркас, не меняющийся от конфигурации к конфигурации и несущий в себе гнезда, в которых размещается вторая, переменная часть - сменные модули (или точки расширения).

Лицензия MIT (англ. MITLicense) - лицензия свободного программного обеспечения разработанная Массачусетским технологическим институтом (МТИ). Она является разрешительной лицензией, т.е. позволяет программистам использовать лицензируемый код в закрытом ПО при условии, что текст лицензии предоставляется вместе с этим ПО. Лицензия является GPL-совместимой, т.е. разрешает программистам комбинировать и распространять GPL продукты с софтом, который использует MITLicense.

В результате был разработан следующий дизайн (рис.2):

Рисунок 2 - Общий вид главной страницы приложения.

Визуально макет разделен на 5 частей:

Верхняя часть - шапка (рис.3). Включает в себя логотип и блок навигационных ссылок.

Рисунок 3 - Шапка

Под шапкой находится блок поиска (рис.4), который виден на каждой странице приложения.

Рисунок 4 - блок поиска

Следующий блок - главное содержимое (рис.5), в котором находятся ссылки на функции приложения, а также блок "Последний договор", который отображает краткую информацию о последнем заполненном и занесенном в базу данных (БД) договоре.

Данный блок можно разделить на 2 подблока:

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

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

Рисунок 5 - блок содержимого

Последний блок - подвал (или колонтитул) (рис.6), содержит информацию о разработчике приложения, а также дополнительную правую информацию.

Рисунок 6 - блок footer (подвал)

2.3 Информационное обеспечение


На основе исследования предметной области был проведен анализ, в результате которого была построена DFD диаграмма (рис.7) потоков данных 0 уровня в приложении BPwin.является мощным средством моделирования и документирования бизнес-процессов. Этот продукт использует технологию моделирования IDEF0 (Inte-gration Definition for Function Modeling) - наиболее распространенный стандарт, который принят для моделирования бизнес-процессов.

Рисунок 7 - DFDдиаграмма 0 уровня

Также представлена DFD диаграмма 1-го уровня (рис.8).

Рисунок 8 - DFDдиаграмма 1-го уровня

После построения DFD диаграмм, была создана ERDдиаграмма (рис.9).

Рисунок 9 - ERDдиаграмма

На основе ERD диаграммы была сгенерирована база данных в системе управления базами данных (СУБД) MySQL, состоящая из трёх таблиц (рис.10).

Рисунок 10 - База данных

-       Таблица bills, содержит следующие поля: id, student, group_number, subject, teacher, sum, date_day, date_month, date_year, file_name;

-       Таблица docs, содержит следующие поля: id, number, date_day, date_month, date_year, customer, client, group_number, edu_type, period, name, home_address, tel, sum, sum_rub_1, sum_kop_1, file_name;

-       Таблица journal, содержит следующие поля: id, type, number, name, date, study_year, group_number, qualification, paid, teacher, subject, period, date_of_delivery.

Структура таблицы biils представлена на рисунке 11:

Рисунок 11 - структура таблицы bills

Подробная структура с описанием полей:

-       id - порядковый номер, первичный ключ;

-       student - ФИО студента;

-       group_number - номер группы;

-       subject - предмет;

-       teacher - преподаватель;

-       sum - сумма;

-       date_day - дата (день);

-       date_month - дата (месяц);

-       date_year - дата (год);

-       file_name - имя файла.

Структура таблицы docsпредставлена на рисунке 12:

Рисунок 12 - структура таблицы docs

Подробная структура с описанием полей:

-       id - порядковый номер, первичный ключ;

-       number - номер договора;

-       date_day - дата (день);

-       date_month - дата (месяц);

-       date_year - дата (год);

-       customer - заказчик;

-       client - потребитель;

-       group_number - номер группы;

-       edu_type - тип курсов;

-       period - период обучения;

-       name - ФИО;

-       home_address - домашний адрес;

-       tel - номер телефона;

-       sum - сумма;

-       sum_rub_1 - сумма в рублях прописью;

-       sum_kop_1 - сумма копеек прописью;

-       file_name - имя файла.

Структура таблицы journalпредставлена на рисунке 13:

Рисунок 13 - структура таблицы journal

Подробная структура с описанием полей:

-       id - порядковый номер, первичный ключ;

-       type - тип курсов;

-       number - номер договора;

-       name - ФИО;

-       date - дата;

-       study_year - год обучения;

-       group_number - номер группы;

-       qualification - квалификация;

-       paid - оплачено;

-       teacher - преподаватель;

-       subject - предмет;

-       period - период обучения;

-       date_of_delivery - датавыдачи.

3. Разработка программного продукта


3.1 Функциональность работы WEB-приложения


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

На странице заполнения договора, пользователь - оператор ПК, вводит предоставленные ему студентом данные, в специально отведенные поля. В процессе ввода, перед отправкой данных на обработку и в базу данных (БД), происходит проверка правильности заполненных полей на предмет соответствия значений полям. После нажатия кнопки Оформить, данные уходят на обработку и заносятся в БД.

В результате происходит переход на результирующую страницу, где отображаются введенные данные в целях их повторной проверки и ссылка на заполненный договор в виде документа Microsoft Office Word 2007 (docx), готовый к дальнейшим выводу на печать и подписи сторон.

Оформленный договор, как и данные в БД хранятся бессрочно, до востребованного удаления.

Соответствие файлов функционалу приложения отображено в таблице 1:

Таблица 1 - соответствие файлов функционалу web-приложения

Файл

Соответствующая функция

index. php

Главная страница, доступ к функциям

header. php

Шапка страницы, доступ к поиску

footer. php

Подвал страницы

config. php

Подключение к БД

new_doc. php

Оформление нового договора

new_bill. php

Оформление нового счета

new_record. php

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

done. php

Результирующая страница

bill_done. php

Результирующая страница

record_done. php

Результирующая страница

manage. php

Центр управления договорами

search. php

Поиск

adv_search. php

Расширенный поиск

record_book. php

Журнал регистрации договоров


3.2 CSS верстка

(англ. CascadingStyleSheets - каскадные таблицы стилей) - формальный язык описания внешнего вида документа, написанного с использованием языка разметки.используется создателями WEB-страниц для задания цветов, шрифтов, расположения отдельных блоков и других аспектов представления внешнего вида этих WEB-страниц. Основной целью разработки CSS являлось разделение описания логической структуры WEB-страницы от описания внешнего вида этой WEB-страницы (которое теперь производится с помощью формального языка CSS). Такое разделение может увеличить доступность документа, предоставить большую гибкость и возможность управления его представлением, а также уменьшить сложность и повторяемость в структурном содержимом.

Вся CSS-верстка приложения вынесена в отдельный файл, именуемый Style. css. Содержимое этого файла представлено ниже:

@font-face {family: Segoe NI;: url('../inc/segoeui.ttf');

}

{family: 'Segoe UI', 'Segoe NI', Tahoma, Helvetica, sans-serif;

}

{:0;:0;

}

#wrapper {: 0 auto;:0;: hidden;: 100%;

}

#nav {: 100%;:50px;color: rgb(44, 44, 44);:0;:0;

}

#navbar {: 0 auto;: 800px;

}

#navlinks {: table-cell;align: middle;align: right;:50%;: 50px;

}

#navlinks a:link {: 1px;: #fff;decoration: none;

}

#navlinks a:hover {color: rgb(0, 100, 205);

}

#navlinks a:visited {: rgb(210, 210, 210);decoration: none;

}

#logo {: 50%;: 50px;:left;

}

#logo img {: 48px;: 48px;: 0;

}

#search {: 0 auto;: 800px;

}

#search input[type=text] {: 675px;: 25px;: 10px 0 0 0;: relative;color: rgb(210, 210, 210);: 2px solid rgb(210, 210, 210);size: 11pt;

}

#search input[type=text]:focus {color: #fff;

}

#search button {decoration: none;: 2px #e2e2e2 solid;: 5px 20px;: 10px 0 0 10px;: #fff;: none repeat scroll 0% 0% rgb(0, 130, 135);: pointer;width: 50px;: inline-block;: relative;align: center;

}

#search button:hover {: #219297;

}

#content {: 0 auto;: 800px;

}

#footer {: 0 auto;: 5px 0 0 0;: 800px;top: 1px rgb(44, 44, 44) solid;align: center;size: 8pt;: both;

}

.section h1 {transform: uppercase;

}

.last {: right;: 385px;: 270px;: #e2e2e2 url('/img/docs.png') no-repeat 0% 0%;: 2px #e2e2e2 solid;

}

.last h2 {transform: uppercase;

}

.last p {: 0 0 0 5px;

}

.tile1 {: 390px;: 135px;: 5px 0 5px 0;color: rgb(0, 100, 205);

}

.tile1:hover {: 3px #e2e2e2 solid;color: rgb(0, 50, 205);

}

.tile2 {: right;: 390px;: 135px;color: rgb(0, 100, 205);

}

.tile2:hover {: 3px #e2e2e2 solid;color: rgb(0, 50, 205);

}

.tile3 {: 390px;: 135px;: 5px 0 5px 0;color: rgb(0, 82, 0);

}

.tile3:hover {: 3px #e2e2e2 solid;color: rgb(1, 100, 28);

}

.tile4 {: right;: 390px;: 135px;color: rgb(0, 82, 0);

}

.tile4:hover {: 3px #e2e2e2 solid;color: rgb(1, 100, 28);

}

.tile1 a, .tile2 a, .tile3 a, .tile4 a {decoration: none;

}

.tile1-img, .tile2-img, .tile3-img, .tile4-img {: 100%;align: center;

}

.tile1-span, .tile2-span, .tile3-span, .tile4-span {: 0 0 0 20px;: #fff;

}

.tile1 img, .tile2 img, .tile3 img, .tile4 img {: 96px;: 96px;: 0;

}

.labels {: 50%;

}

.text_field {: 50%;: right;

}

.text_field p {top: -8px;

}

.text_field_data {: left;

}

.text_field_data  input[type=text] {: 10px;: 25px;: 2px solid rgb(210, 210, 210);size: 11pt;

}

.text_fieldinput[type=text], select {: 300px;: 25px;: 2px solid rgb(210, 210, 210);size: 11pt;

}

.button_div {: both;align: center;bottom: 15px;

}

.button_div button {decoration: none;: 2px #e2e2e2 solid;: 5px 20px;: 10px 0 0 10px;: #fff;: none repeat scroll 0% 0% rgb(0, 130, 135);: pointer;width: 50px;

}

.warning {: 2px #e2e2e2 dashed;: red;align: center;: 5px 0;

}

3.3 Разработка программного кода


Для разработки основного скрипта web-приложения был использован язык web - программирования PHP.(англ. PHP: Hyper text Preprocessor - "PHP: препроцессор гипертекста"; первоначально Personal Home Page Tools - "Инструменты для создания персональных WEB-страниц") - скриптовый язык программирования общего назначения, интенсивно применяемый для разработки WEB-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков программирования, применяющихся для создания динамических WEB-сайтов.является языком программирования с динамической типизацией, не требующим указания типа при объявлении переменных, равно как и самого объявления переменных. Преобразования между скалярными типами зачастую осуществляются неявно без дополнительных усилий (впрочем, PHP предоставляет широкие возможности и для явного преобразования типов).- это серверный язык создания сценариев. Конструкции PHP, вставленные в HTML-текст, выполняются сервером при каждом посещении страницы. Результат их обработки вместе с обычным HTML-текстом передается браузеру. Одним из преимуществ такого подхода является тот факт, что клиенты не зависят от конкретной операционной системы пользователя, поэтому WEB-приложения являются кроссплатформенными сервисами.

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

В ходе разработки АРМ была использована сторонняя библиотека PHPWordс открытым исходным кодом, распространяющаяся под лицензией GNU Library General Public License (LGPL). Данная библиотека производит конечную генерацию документа в формате Microsoft Office - . docx.LGPL позволяет линковать с данной библиотекой или программой программы под любой лицензией, несовместимой с GNU GPL, при условии, что такая программа не является производной от объекта, распространяемого под (L) GPL, кроме как путём линкования.

3.3.1 Обеспечение безопасности

Так как приложение является однопользовательским (рассчитано на работу только одного пользователя, оператора ПК) и посторонний доступ к нему исключен мерами и инструкциями безопасности НТСТ, система авторизации отсутствует.

Для предотвращения перехвата данных во время их добавления и/или обработки возможно использование протокола HTTPS.(Hyper text Transfer Protocol Secure) - расширение протокола HTTP, поддерживающее шифрование. Данные, передаваемые по протоколу HTTPS, "упаковываются" в криптографический протокол SSL или TLS, тем самым обеспечивается защита этих данных. В отличие от HTTP, для HTTPS по умолчанию используется TCP-порт 443. HTTPS не является отдельным протоколом. Это обычный HTTP, работающий через шифрованные транспортные механизмы SSL и TLS. Он обеспечивает защиту от атак, основанных на прослушивании сетевого соединения - от снифферских атак и атак типа man-in-the-middle при условии что будут использоваться шифрующие средства и сертификат сервера проверен и ему доверяют.

Также, используется обратимое шифрование встроенными средствами СУБД MySQL. При обратимом шифровании зашифрованный текст может быть подвергнут дешифровке.

3.3.2 Блок актуализации

Пользователь АРМ имеет возможность добавлять, редактировать, а также удалять договоры из базы данных.

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

Пример проверки представлен ниже:

functionvalidate_form_delete ( )

{

         valid = true;

         message="Введите номер договора для удаления!\n";( document.delete_form.delete_id.value == "" )

       {                         = false;

       }( isNaN(document.delete_form.delete_id.value) )

{

message+="Номер договора должнен быть числом\n";

valid = false;

       }

                   if (valid == false )

       {(message);

       }valid;

}

Функция проверки написана на языке JavaScript.

Пример операции добавления изображен на рисунке 14:

Рисунок 14 - операция добавления

Программный код операции добавления представлен ниже:

<?_once('config.php');

$title='Оформление договора - Шаг 1';('header.php');

?>

         <div id="content">

         <divclass="section">

         <h1>Оформление нового договора</h1>

         <divclass="warning">

                   <p>Все поля обязательны для заполнения!</p>

                   <p>Перед оформлением договора ДВАЖДЫ проверьте правильность введенных данных!</p>

         </div>

         <form name="new_doc" method="POST" action="doc_done.php" onsubmit="return validate_form_doc ( );">

         <h2>Общая информация</h2>

                  

         <div>

                   <p><input type="text" name="number" maxlength=8></p>

         <?    

                   $day=date(d);

                   $month=date(n);

                   $year=date(Y);

                   $arr[$month]='selected';

                   echo "

                   <p><input type='text' name='date_day' maxlength=2 value='".$day."'></p>

                   <p><select name='date_month'><option value='января' ".$arr[0].">Январь</option><option value='февраля'

".$arr[1].">Февраль</option><option value='марта' ".$arr[2].">Март</option><option value='апреля' ".$arr[3].">Апрель</option><option value='мая' ".$arr[4].">Май</option><option value='июня' ".$arr[5].">Июнь</option><option value='июля' ".$arr[6].">Июль</option><option value='августа' ".$arr[7].">Август</option><option value='сентября' ".$arr[8].">Сентябрь</option><option value='откября' ".$arr[9].">Октябрь</option><option value='ноября' ".$arr[10].">Ноябрь</option><option value='декабря' ".$arr[11].">Декабрь</option></select></p>

                   <p><input type='text' name='date_year' maxlength=4 value='".$year."'></p>

                   ";

         ?>

                   <p><input type="text" name="customer"></p>

                   <p><input type="text" name="client"></p>

                   <p><input type="text" name="group_number"></p>

         <divclass="labels">

                   <p>Номер договора:</p>

                   <p>Дата (день):</p>

                   <p>Дата (месяц):</p>

                   <p>Дата (год):</p>

                   <p>Заказчик:</p>

                   <p>Потребитель:</p>

                   <p>Группа:</p>

         </div>

         <div><h2>Предмет договора</h2></div>

         <divclass="text_field">

         <p><selectname="edu_type"><optionvalue="Подготовительные курсы">Подготовительные курсы</option><optionvalue="Выравнивающие курсы">Выравнивающие курсы</option><optionvalue="Профессиональная подготовка">Проф. подготовка</option><optionvalue="Курсовая подготовка">Курсовая подготовка</option></select></p>

                   <p><input type="text" name="period"></p>

         </div>

         <divclass="labels">

                   <p>Типкурсов:</p>

                   <p>Срок обучения (час/месяц):</p>

         </div>

                  

         <div><h2>Адреса и реквизиты сторон</h2></div>

                  

         <div>

                   <p><input type="text" name="name"></p>

                   <p><input type="text" name="home_address"></p>

                   <p><input type="text" name="tel"></p>

         </div>

         <div>

                   <p>ФИО:</p>

                   <p>Домашний адрес:</p>

                   <p>Контактный телефон:</p>

         </div>

                  

         <div><h1>Приложение №1</h1></div>

                  

         <div>

                   <p><input type="text" name="sum"></p>

                   <p><input type="text" name="sum_rub_1"></p>

                   <p><input type="text" name="sum_kop_1"></p>             

         </div>

         <div>

                   <p>Сумма:</p>

                   <p>Сумма прописью(рублей):</p>

                   <p>Сумма прописью (копеек):</p>                

         </div>

         <div>

                   <button type="submit" name="confirm">Оформить</button>

         </div>

         </form>

         </div>

         </div>

<?('footer.php');

?>

Пример операции редактирования изображен на рисунке 15:

Рисунок 16 - операция редактирования

Программный код операции редактирования представлен ниже:

<?_once('config.php');

$title='Редактированиедоговора';('header.php');

?>

         <div id="content">

         <divclass="section">

                   <h1>Редактирование договора</h1>

         <div>

                   <form name="new_doc" method="POST" action="doc_done.php" onsubmit="return validate_form_doc ( );">

<?

                   $query="SELECT * FROM docs WHERE number='".$_POST['edit_id']."'";

                   $query_result=mysql_query($query) or die(mysql_error());

                   $query_data=mysql_fetch_array($query_result);

                   echo "

                   <p><input type='text' name='number' value='".$query_data['number']."' maxlength=8></p>

                   <p><input type='text' name='date_day' maxlength=2 value='".$query_data['date_day']."'></p>

                   <p><select name='date_month'><option value='января' >Январь</option><option value='февраля' >Февраль</option><option value='марта' >Март</option><option value='апреля' >Апрель</option><option value='мая' >Май</option><option value='июня' >Июнь</option><option value='июля' >Июль</option><option value='августа' >Август</option><option value='сентября' >Сентябрь</option><option value='откября' >Октябрь</option><option value='ноября' >Ноябрь</option><option value='декабря' >Декабрь</option></select></p>

                   <p><input type='text' name='date_year' maxlength=4 value='".$query_data['date_year']."'></p>

                   <p><input type='text' name='customer' value='".$query_data['customer']."'></p>

                   <p><input type='text' name='client' value='".$query_data['client']."'></p>

                   <p><input type='text' name='group_number' value='".$query_data['group_number']."'></p>

         </div>

         <divclass='labels'>

                   <p>Номер договора:</p>

                   <p>Дата (день):</p>

                   <p>Дата (месяц):</p>

                   <p>Дата (год):</p>

                   <p>Заказчик:</p>

                   <p>Потребитель:</p>

                   <p>Группа:</p>

         </div>

                  

         <div><h2>Предмет договора</h2></div>

         <divclass='text_field'>

         <p><selectname='edu_type'><optionvalue='Подготовительные курсы'>Подготовительные курсы</option><optionvalue='Выравнивающие курсы'>Выравнивающие курсы</option><optionvalue='Профессиональная подготовка'>Проф. подготовка</option><optionvalue='Курсовая подготовка'>Курсовая подготовка</option></select></p>

                   <p><input type='text' name='period' value='".$query_data['period']."'></p>

         </div>

         <divclass='labels'>

                   <p>Типкурсов:</p>

                   <p>Срок обучения (час/месяц):</p>

         </div>

         <div><h2>Адреса и реквизиты сторон</h2></div>

                  

         <div>

                   <p><input type='text' name='name' value='".$query_data['name']."'></p>

                   <p><input type='text' name='home_address' value='".$query_data['home_address']."'></p>

                   <p><input type='text' name='tel' value='".$query_data['tel']."'></p>

         </div>

         <div>

                   <p>ФИО:</p>

                   <p>Домашний адрес:</p>

                   <p>Контактный телефон:</p>

         </div>

         <div><h1>Приложение №1</h1></div>

         <div>

                   <p><input type='text' name='sum' value='".$query_data['sum']."'></p>

                   <p><input type='text' name='sum_rub_1' value='".$query_data['sum_rub_1']."'></p>

                   <p><input type='text' name='sum_kop_1' value='".$query_data['sum_kop_1']."'></p>              

         </div>

         <div>

                   <p>Сумма:</p>

                   <p>Сумма прописью(рублей):</p>

                   <p>Сумма прописью (копеек):</p>                

         </div>

                   ";

?>

         <div>

                   <button type="submit" name="confirm">Сохранить</button>

         </div>

         </form>

         </div>

         </div>

<?('footer.php')

?>

Пример операции удаления изображен на рисунке 16:


Программный код операции удаления представлен ниже:

<?_once('config.php');

$title='Удаление записи';('header.php');

?>

         <div id="content">

         <div>

         <h1>Удаление</h1>

<?(isset($_POST['yes']))

{

        

         $delete_number=$_POST['delete_id'];

         $query="DELETE FROM docs WHERE number='".$delete_number."'";

         mysql_query($query) or die(mysql_error());

         echo "

         <p>Договор был удален.</p>

         <p><a href='/'>Вернуться на главную страницу</a>

         <p><a href='/manage.php'>Вернуться к списку договоров</a>

         ";

}(isset($_POST['no']))

{

         echo "

         <p>Удалениеотменено.</p>

         <p><a href='/'>Вернуться на главную страницу</a>

         <p><a href='/manage.php'>Вернуться к списку договоров</a>

         ";

}

?>

         </div>

         </div>

<?('footer.php')

?>

}

?>

         </div>

         </div>

<?('footer.php')

?>

3.3.3 Функции WEB-интерфейса

WEB-интерфейс (или клиентская часть) предоставляет доступ к основным функциям АРМ посредством активных гиперссылок. Используя визуальный интерфейс приложения, пользователь может производить добавление, редактирование и удаление данных, а также генерировать отчеты и получать доступ к оформленным договорам и выпискам.

4. Экономическая часть


После завершения работ по проектированию необходимо рассчитать экономическую эффективность проекта. Произведем расчет экономической эффективности проекта. Калькуляция себестоимости разработки осуществляется по следующим статьям:

-       Материалы;

-       Расчет трудоемкости;

-       Стоимость машинного времени;

-       Амортизация;

-       Себестоимость ПО.

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

Калькуляция расходов по статье "Материалы" приведена в таблице 2:

Таблица 2 - Калькуляция расходов по статье "Материалы"

Материалы

Единицы измерения

Количество (шт.)

Цена (руб.)

Сумма (руб.)

1

Бумага для принтера

пачка

1

156

156

2

Картридж для принтера

шт.

1

1400

1400

3

CD-R диск

шт.

2

15

30

4

Ручка, шариковая

шт.

2

15

30

Итого:

1616

Транспортно - заготовительные расходы 10%

161,6

Всего:

1777,6


Для расчета трудоемкости определим временные затраты на различных стадиях проекта.

Этап технического задания - рассматриваемую задачу можно отнести к комплексу задач управления, поэтому с учётом степени новизны задачи определим временные затраты на этой стадии равные 10 человеко-дней.

Этап эскизного проекта - с учётом степени новизны, класса задачи и видов используемой информации получаем 20 человеко-дней.

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

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

Этап внедрения - учитывает класс проекта, специфику продукта и отрасли применения. Длительность этого этапа определяется в 9 человеко-дней. Фактическая трудоемкость по стадиям проектирования представлена в виде таблицы (табл.3).

Таблица 3 - Фактическая трудоемкость по стадиям проектирования.

Этап работы

Трудоемкость (чел/дней)

1

Техническое задание

7

2

Эскизный проект

5

3

Технический проект

10

4

Рабочий проект

12

5

Внедрение

3

Итого:

37


Общая фактическая трудоемкость разработки ПО составляет формула (4.1):

, (4.1)

где  - общая трудоемкость разработки, дни;

 - трудоемкость по стадиям, чел. /дни.

Основная заработная плата при выполнении НИР включает зарплату всех сотрудников, принимающих непосредственное участие в разработке ПО. В данном случае необходимо учитывать основные зарплаты разработчика (студента), руководителя дипломного проекта, консультанта по экономической части.

Таким образом, основная заработная плата Зосн при выполнении НИР рассчитывается по формуле (4.2):

, (4.2)

Где

Зср. дн. j - среднедневная зарплата j-го сотрудника, руб. /день;

Тоб. j - общая трудоемкость проекта j-го сотрудника, дни;- количество сотрудников, принимающих непосредственное участие в разработке ПО.

Основная зарплата разработчика определена из расчета 8000 руб. в месяц при среднем количестве рабочих дней, равных 21 (формула 4.3):

 (4.3)

Заработная плата дипломного руководителя составляет 350 руб. /час, причем на консультацию запланировано 16 часов.

Следовательно, основная зарплата руководителя дипломного проекта за весь период разработки равна (формула 4.4):

 (4.4)

Заработная плата консультанта по экономической части составляет 150 руб. /час, причем на консультацию запланировано 3 часа.

Следовательно, основная зарплата консультанта по экономике за весь период разработки равна (формула 5):

 (4.5)

В итоге основная заработная плата при выполнении НИР равна (формула 4.6):

 (4.6)

Дополнительная заработная плата равна 12% от основной (формула 4.7):

 (4.7)

Итого основная и дополнительная заработная плата составляют (формула 4.8):

 (4.8)

Отчисления на социальные нужды составляют на сегодняшний день 30% от общего фонда заработной платы, следовательно (формула 4.9):

 (4.9)

К статье накладные расходы относятся расходы на управление и хозяйственное обслуживание. Накладные расходы рассчитываются по формуле 10, где αнр=15% (формула 4.10):

 (4.10)

К основным статьям расходов относится и районная надбавка - =15%

Районная надбавка рассчитывается по формуле 4.11:

 (4.11)

Стоимость всего необходимого оборудования и годовых сумм амортизации приведены в таблице 4.

Таблица 4 - Расчет стоимости и амортизационных отчислений оборудования.

Наименование

Количество (шт.)

Цена (руб.)

Стоимость (руб.)

Норма амортизации (%)

Аморт. отчисления (руб.)

Персональный компьютер (ПК) на базе процессора AMDPhenomII

1

19000

19000

25

4750

Принтер Canon LBP-1120

1

5768

5768

25

1442

Итого:

24768


6192


Время работы на ЭВМ и принтере равны соответственно (формула 4.12):

 (4.12)

Затраты на электроэнергию (формула 4.13):

 (4.13)

Стоимость инструментальных средств включает стоимость системного программного обеспечения (СПО), использованного при разработке проекта в размере износа за этот период. Расчет производить аналогично расчету амортизационных отчислений оборудования, представим его в таблице 5.

Таблица 5 - Стоимость СПО.

Наименование

Стоимость (руб.)

1

Microsoft Windows 7 Professional (Профессиональная)

6996

2

MicrosoftOffice для Дома и Бизнеса 2010

6300

3

Paint.net

-

4

Notepad++

-

5

Apache/MySQL/PHP

-

Итого:

13296


Затраты на оборудование, амортизационные отчисления (формула 4.14):

 (4.14)

Где АМ - амортизационные отчисления, руб.;

Оф - стоимость ЭВМ и оборудования, руб.;

Нам - норма амортизации, %;

Тм - время использования оборудования, дни.

Затраты на амортизацию инструментальных средств (формула 4.15):

 (4.15)

Где АМ - амортизационные отчисления, руб.;по - стоимость СПО, руб.;

Нам - норма амортизации, %;

Тм - время использования, дни.

На основании полученных данных по отдельным статьям затрат составляется калькуляция себестоимости разработки в целом (таблица 6).

Таблица 6 - Калькуляция себестоимости разработки

Статья затрат

Сумма (руб.)

Материалы

1777,6

Основная заработная плата

14097

Дополнительная заработная плата

2417,64

Отчисления на социальные нужды

7671

Накладные расходы

3492,77

Районная надбавка

3384

Амортизация оборудования

322,32

207,63

Итого:

33370


Вывод: данный раздел дипломного проекта был посвящен расчёту экономической части. В результате всех проведенных расчетов была получена сумма в 33 370 рублей.

Заключение


В процессе работы над дипломным проектом была поставлена цель разработки АРМ (далее программно-информационная система или просто система) в виде WEB-приложения "Платные образовательные услуги".

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

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

Система была разработана на основе бесплатного программного обеспечения в виде WEB-сервера, образуемого связкой: WEB-сервер Apache, СУБД MySQL и интерпретатора языкаPHP, что значительно снизило стоимость разработки.

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

-       возможность оперативного контроля над достоверностью информации;

-       уменьшение числа возможных ошибок при генерировании производных данных;

-       возможность быстрого доступа к любым данным;

-       возможность быстрого формирования отчетов;

-       экономия трудозатрат и затрат времени на обработку информации.

В ходе выполнения работы все цели были достигнуты, все поставленные задачи были решены.

АРМ "Платные образовательные услуги" планируется использовать в Нижнетагильском строительном техникуме в отделении дополнительного образования.

Список используемых источников


1. ГОСТ 34.003-90 ЕСКД. Информационная технология. Комплекс стандартов на автоматизированные системы. Автоматизированные системы. Термины и определения.

. ГОСТ 2.105-95 ЕСКД. Общие требования к текстовым документам.

. Коггзолл, Джон. PHP 5. Полное руководство/ ред.Ю. Артеменко, пер.Д. Иваненко, В. Лебедев, А. Маркушина/Джон Коггзолл - М.: Вильямс, 2006. - 752 c.

. Пейтон, Кристина. PHP 5 &MySQL 5/пер. Сергей Молявко / Кристина Пейтон, Андре Меллер - M.: Бином-Пресс, 2009. - 366 c.

5.htmlbook.ru - Для тех, кто делает сайты: портал [Электронный ресурс]. - Режим доступа: <http://htmlbook.ru>. - 2002.

. PHP - Руководство по PHP - Manual: портал [Электронный ресурс]. - Режим доступа: http://php.net/manual/ru/index. php. - 2001.

Похожие работы на - Проектирование и разработка автоматизированного рабочего места 'Платные образовательные услуги'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!