РПЗ (1094832), страница 2
Текст из файла (страница 2)
4 ВЫБОР СРЕДСТВ РЕАЛИЗАЦИИ
Структура данного проекта предполагает одновременную работу множества пользователей с единой базой данных, для реализации этого необходимо объединение рабочих мест в единую сеть. С целью сокращения материальных затрат на обслуживание, для работы с данным программным обеспечением используется уже имеющееся интернет-подключение. Чтобы исключить необходимость дополнительной установки и настройки ПО, было принято решение адаптировать проект под современный веб-браузер.
Для разработки программных обеспечений с интерфейсом адаптированным под веб-браузер необходимы языки программирования HTML – страниц, с возможностью сбора информации, подгрузки для выдачи данных, загрузки данных уже имеющихся в БД; исходя из требований необходимо использование нескольких языков программирования. Для решения данной задачи были выбраны языки:
-
HTML – для разметки HTML страниц при помощи тегов;
-
JavaScript – для доступа к конткретным элементам страницы, для дальнейшей обработки информации в этих элементах;
-
PHP – для обработки информации, работы с сервером: записи информации, выгрузки уже существующей; так же данный язык используется для создания отчетов путем подключения библиотека PHPExcel;
4.1 HTML
HTML (теговый язык разметки HTML страниц) - это основной язык, с помощью которого создаются веб-страницы. Страница, которую пользователь видит в своем браузере, может состоять из множества разных файлов — например, изображений, анимационных роликов, сценариев JavaScript, апплетов и т. д. - но основой страницы практически всегда является документ HTML. Другие языки разметки (прежде всего многочисленные приложения XML) пока еще слабо поддерживаются браузерами и поэтому не вытесняют HTML на компьютерах обычных пользователей.
Для оформления разрабатываемых веб-страниц, её внешнего вида используется каскадные таблицы стилей CSS. Так как стили нескольких страниц одинаковы, имеетсмысл разделить стили обработки страниц CSS и основные файлы кода HTML страниц, тогда для установки определённого стиля используется подключение файлов CSS редактирования в файле основного кода HTML страницы.
Язык HTML предназначен в первую очередь для структурной разметки, т. е. для обозначения каждого элемента в соответствии с его местом и ролью в структуре документа. Для обработки элементов HTML – страниц необходимо использование скриптов на языке JavaScript.
4.2 JavaScript
JavaScript — прототипно-ориентированный сценарный язык программирования
JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам.
Помимо управления элементами веб- страниц, JS используется в данном проекте для:
-
системных диалогов,
-
управление адресом открытой страницы,
-
ограниченное управление историей просмотра страниц,
JavaScript используется в клиентской части веб-приложений: клиент-серверных программ, в котором клиентом выступает браузер, а сервером — веб-сервер, имеющих распределённую между сервером и клиентом логику. Обмен информацией в веб-приложениях происходит по сети. Одним из преимуществ такого подхода является тот факт, что клиенты не зависят от конкретной операционной системы пользователя, поэтому веб-приложения являются кроссплатформенными сервисами. Они позволяют автоматически заполнять формы, переформатировать страницы, скрывать нежелательное содержимое и встраивать желательное для отображения содержимое, изменять поведение клиентской части веб-приложений, добавлять элементы управления на страницу и т. д.
Для соединия проекта с сервером и обработки информации полученной со страницы (или для выдачи на страницу)используются файлы «переходники» и файлы «обработчики», написанные на языке PHP.
4.3 PHP
PHP-скрипт выполняется на сервере, а клиенту передается результат работы.
Возможности PHP в том, что в PHP включена поддержка многих баз данных, что делает написание Web-приложений с использованием БД до невозможности простым.
Синтаксис PHP очень похож на синтаксис C или Perl. В этом языке нет строгой типизации данных и нет необходимости в действиях по выделению/освобождению памяти.
Программы, написанные на PHP, достаточно легкочитаемы. Написанный PHP - код легко зрительно прочитать и понять
Недостатки PHP
PHP является интерпретируемым языком, и, вследствие этого, не может сравниться по скорости с компилируемым С. Однако при написании небольших программ, что, в общем-то, присуще проектам на PHP, когда весь проект состоит из многих небольших страниц с кодом, вступают в силу накладные расходы на загрузку в память и вызов CGI-программы, написанной на С.
5 разработка программного обеспечения
5.1 Архитектура программного обеспечения
Программное обеспечение модуля АИСУ «Университет» для отдела аспирантуры построено по двух уровневой архитектуре, показанной на рисунке 5.1. На верхнем уровне располагается клиентское приложение, на нижнем – сервер базы данных под управлением FireBird 2.1.
Взаимодействие между уровнями происходит следующим образом:
-
Клиент отправляет запрос на сервер БД;
-
Сервер БД обрабатывает запрос и отправляет результат клиенту.
Запрос и ответ обрабатываются PHP кодами:
-
Интерфейс страницы в браузере:
-
http://abit.lan/AspirAdd.php
-
http://abit.lan/AspirList.php
-
http://abit.lan/AspirView.php
-
Работа с базой данных запрос через файлы php:
-
aspirFac.php
-
aspirSpec.php
-
city.php
-
country.php
-
eduNameAsp.php
-
facult.php
-
gridAspirData.php
-
kafedra.php
-
director.php
-
region.php
-
Отчеты PDF и Exel форматов - библиотека PHPexcel
Рисунок 5.1 - Архитектура ПО
По виду предоставляемой информации пользователю программное обеспечение состоит из 3 страниц.
Таблица 5.1 - Список страниц программного обеспечения
Модуль | Описание |
AspirAdd.php | Страница регистрации аспиранта (соикателя), имеет автоматический переход на страницу AspirList.php после сохранения аспиранта (соискателя) |
AspirList.php | Страница со списком аспирантов для печати отчетов (справок заявлений и др.) |
AspirView.php | Так же как и AspirList.php имеет возможность печати отчетов по каждому из аспирантов, но в отличии от AspirList.php имеет более объемное информационное наполнение и возможность создания отчетов по группе аспирантов. Список данных и группы аспирантов регулируются фильтрами данных |
По функциональным возможностям модули разложены на подсистемы:
-
Подсистема администрирования;
-
Подсистема регистрации аспиранта (соискателя);
-
Подсистема журнала аспирантов (соискателей)
-
Подсистема отчетности.
5.2 Подсистема администрирования
Подсистема администрирования управляет аутентификацией и авторизацией пользователей программного обеспечения, а так же используется для редактирования данных и отчетов, для поиска ошибок пользователей и их устранения.
Аутентификация проходит с использованием учетной записи базы данных. Вход в программу происходит с использованием имени пользователя и пароля учетной записи. Заведение и удаление пользователей осуществляется администратором базы данных.
До аутентификации пользователь может просмотреть новостную ленту об обновлениях программного продукта и общую информацию о программе. После при успешной аутентификации пользователи могут дополнять данными базу, оперировать с уже существующими данными доступными им, диапазон доступа данных определяется администратором.
Блок-схема алгоритма авторизации представлена на рисунке 5.2.
Рисунок 5.2 - Блок-схема алгоритма авторизации
5.3 Подсистема регистрации аспиранта (соискателя)
Подсистема регистрации аспиранта необходима для заполнения БД информацией об аспиранте (соискателе), с целью оперирования полученными данными в различных формах отчетов. Регистрация аспиранта (соискателя) производится на странице abit.lan/AspirAdd.php.
Форма для регистрации аспиранта (соискателя) состоит из 3 таблиц (вкладок):
-
персональные данные;
-
данные об образовании;
-
данные о поступлении;
каждая вкладка состоит из обязательных и необязательных полей.
5.3.1 Вкладка «Персональные данные»
Данная вкладка содержит 5 массивов полей, которые боле подробно рассмотрим ниже.
Таблица 5.2 – Персональные данные
Поле | Формат данных | Обязательное поле |
Фамилия | текст | + |
Имя | текст | + |
Отчество | текст | + |
Дата рождения | дд.мм.гггг (возможность набора с помощью календаря) | + |
Пол | чекбокс м/ж | + |
Семейное положение | селект женат/холост и замужем/не замужем | - |
Таблица 5.3 – Паспортные данные
Поле | Формат данных | Обязательное поле |
Серия | текст, цифры | + |
Номер | цифры | + |
Дата выдачи | дд.мм.гггг (возможность набора с помощью календаря) | + |
Кем выдан | тескт, цифры | + |
Гражданство | селект: список стран | + |
Нуждается в общежитии | чекбокс | - |
Таблица 5.4 – Место рождения
Поле | Формат данных | Обязательное поле |
Страна | селект: список стран | + |
Регион | селект: список регионов | - |
Тип нас. пункта | селект: список типов населённых пунктов | - |
Название | селект: список названий населённых пунктов | + |
Район | текст, цифры | - |
Таблица 5.5 – Адрес прописки
Поле | Формат данных | Обязательное поле |
Индекс | цифры | - |
Страна | селект: список стран | + |
Регион | селект: список регионов | - |
Название | селект: список названий населённых пунктов | + |
Тип нас. пункта | селект: список типов населённых пунктов | - |
Район | текст, цифры | - |
Улица | текст, цифры | - |
Дом (корпу/строение) | текст, цифры | - |
Квартира | цифры | - |
Телефон | цифры | - |
Телефон мобильный | цифры | + |
| текст, цифры | + |
Пятый массив полей – «Адрес фактического проживания» имеет тот же формат, что и адрес прописки, так же есть возможность копирования данных из адреса прописки в адрес фактического проживания по нажатию кнопки «».