Вкр. ВКР (1). 1. 1 Характеристика и анализ деятельности компании 14 1 Общая информация 14
Скачать 5.75 Mb.
|
2.1.8 Источники развитияГОСТ 34.602 - 89 "Техническое задание на создание автоматизированной системы" [9];Проектная задача.2.1.9 Дополнительные условияДанное техническое задание может быть дополнено и уточнено в установленном порядке.2.2 Выбор и обоснование средств внедрения системы2.2.1 Описание и обоснование использования HTML HTML (от англ. Язык разметки гипертекста (Hypertext Markup Language) - это стандартный язык разметки документов во Всемирной паутине. Большинство веб-страниц создаются с помощью HTML (или XHTML). Язык HTML интерпретируется браузером и отображается в виде документа в удобной для людей форме. Выбор языка HTML в качестве средства программного продукта был обусловлен следующими соображениями. Язык HTML прост в освоении и имеет четкую структуру. Ни один веб-сайт не может функционировать без языка HTML. Язык HTML сегодня является стандартом для веб-страниц. Альтернативой использованию HTML является технология Flash, но она не работает даже без использования HTML. Глядя на эти утверждения, можно сделать вывод, что альтернатив HTML не существует, поэтому его выбор в качестве инструмента разработки очевиден. 2.2.2 Описание и обоснование использования PHP PHP - это скриптовый язык, используемый в основном в области различных интернет-приложений. Синтаксис базовых конструкций PHP аналогичен языку программирования C++. PHP - довольно молодой язык, который заменяет Perl, он больше ориентирован на веб-программирование, не сложен в освоении, имеет большое количество различных плагинов, расширяющих его практическое применение. Основной целью приложения PHP является создание динамического HTML-кода, который отображает различные контексты в приложении в зависимости от действий пользователя. Сегодня существует довольно большое количество языков программирования, которые можно использовать для написания CGI-приложений. Например, вы можете использовать Delphi или C++ для написания таких программ. Однако их использование неудобно, так как написанные на них программы имеют большой размер, вызывают большие нагрузки на сервер и сложны в обслуживании. Из языков сценариев для интернет-приложений можно отметить такие, как ASP.net , Perl, Java. У каждого из них есть свои преимущества и недостатки. Вот сравнительная таблица, которая обосновывает выбор языков программирования (см. таблицу 2.2): Таблица 2.2 Сравнительная характеристика средств разработки
Как видно из этой таблицы, PHP во многих отношениях превосходит своих конкурентов, что делает его отличным языком для разработки небольших интернет-приложений.2.2.3 Описание и обоснование использования CSS.CSS Каскадные таблицы стилей (CSS) – это язык, используемый для описания внешнего вида документа, написанного с использование языка разметки. Он в основном используется для форматирования веб-страниц в форматах HTML и XHTML, но может применяться к любым XML-документам, таким как SVG или XUL.На практике часто требуется исправить не только файл CSS, но и теги HTML, связанные с селекторами CSS, сложным и популярным способом, что иногда сводит на нет простое использование файлов унифицированного стиля и значительно увеличивает время редактирования и тестирования. Как видите, альтернативой использованию CSS является дизайн страниц с использованием HTML, что, конечно же, является регрессом в области программирования и затрудняет реализацию задачи. 2.2.4 Описание и обоснование использования MySQL MySQL –это бесплатная система управления базами данных (СУБД). MySQL принадлежит корпорации Oracle, которая получила его вместе с Sun Microsystems, которая разрабатывает и обслуживает приложение. Распространяется по лицензии GNU General Public или по собственной коммерческой лицензии. Кроме того, разработчики создают функции для лицензированных пользователей, благодаря такой команде механизм репликации появился практически в самых старых версиях. MySQL-это решение для малых и средних приложений. Он входит в состав серверов Wamp, портативных серверов LAMP и Денвера, сборок XAMPP. MySQL обычно используется в качестве сервера, к которому обращаются локальные или удаленные клиенты, но пакет распространения содержит внутреннюю серверную библиотеку, которая позволяет интегрировать MySQL в автономные программы. При выборе были учтены следующие альтернативные базы данных: oracle- высокая стоимость лицензии Сервер MSSQL-высокая стоимость лицензирования, отсутствие кросс-платформенности. Firebird нешироко используется, нет встроенной поддержки PHP. 2.3 Пакет мер по разработке и внедрению ИТ-системы 2.3.1 Разработка архитектур программного обеспечения Система управления реляционными базами данных MySQL обеспечивает хранение и представление информации SQL-запроса. Сервер Apache взаимодействует с компьютером по протоколу HTTP и взаимодействует с системой управления базами данных MySQL и языком программирования PHP. Общая структура взаимодействия программных элементов верхнего уровня представлена на рисунке 2.1. Рисунок 2.1 Общая структура взаимодействия программных модулей и информационных файлов 2.3.2 Разработка базы данныхАнализ предметной области показал, что в данной предметной области можно выделить следующие сущности: Должности Задачи Клиенты Объект Операции Пользователи Роль Сотрудники Субъект Типы операции Отношения между сущностями приведены в таблице 2.3. Таблицы 2.3 Отношения между сущностями
Логическая модель изображена на рис. 2.2 Рисунок 2.2. Логическая модель. Для проектирования данной программы была выбрана СУБД MS Access, которая уже имеется на предприятии и используется для хранения данных учётных системы предприятия. Структура базы – реляционная. Была спроектирована база данных, состоящая из таблиц, структура которых приведена в таблицах. Таблица 2.4 Структура таблицы «Должности»
Таблица 2.5 Структура таблицы «Задачи»
Таблица 2.6 Структура таблицы «Клиенты»
Таблица 2.7 Структура таблицы «Объект»
Таблица 2.8 Структура таблицы «Операции»
Продолжение таблицы 2.8
Таблица 2.9 Структура таблицы «Пользователи»
Таблица 2.10 Структура таблицы «Роль»
Таблица 2.11 Структура таблицы «Сотрудники»
Таблица 2.12 Структура таблицы «Субъект»
Таблица 2.13 Структура таблицы «Тип операции»
В результате работы была сформирована следующая структура базы данных (см. рис. 2.3): Рисунок 2.3. Структура базы данных. 2.3.3 Описание программных модулейПрограммный код находится в нескольких файлах и написан на языке PHP: class.php – библиотека классов интерфейса и обработчиков программного продукта. config.php – файл конфигурации приложения. fields.php – библиотека описания объектов базы данных. index.php – основной управляющий файл программы. style.css – таблица стилей программы. style_login.css - таблица стилей программы окна. BreeSerif-Regular.ttf – файл шрифта. pass-icon.png – изображение оформления. user-icon.png – изображение оформления. menu.js – оформление выпадащего меню на JavaScript. application_add.png – изображения на кнопках. application_delete.png – изображения на кнопках. application_edit.png – изображения на кнопках. Описание классов реализации Tclass – базовый класс реализации сайта. Описание класса Tclass – переменные: $conn – дескриптор соединения. $res – указатель ресурсов. Описание класса Tclass – функции: protected function addmod() – подключение к модулю чтения конфигураций. protected function connect() – соединение с базой данных. protected function disconnect() – разъединение с базой данных. protected function s_query($qer) – Выполнение SQL запросов. class TmLogin extends tclass – Класс реализующий авторизацию пользователя. Наследник класса Tclass. Описание класса TmLogin – функции: function mTmLogin_FormLoginShow() – показ окна авторизации. function mTmLogin_CheckLogin($p_username, $p_password) - проверка авторизации. function mTmLogin_Exit() – Проверка существования логина. class TmTable extends tclass – Класс реализующий запросы к таблицам базы данных. Наследник класса Tclass. Описание класса TmTable – переменные: public $fields - описание полей таблицы базы данных. public $_tdesc – описание таблицы базы данных. Описание класса TmTable – функции: function __construct($p_tdesc) – конструктор класса. function mTable_show($tspc, $addsql='') – стандартный показ таблицы. function mTable_del($ids) – удаление данных из таблицы. function mTable_save($tspc,$tnrec) – сохранение данных в таблице. function mTable_edit($tspc,$_id=0) – редактирование данных в таблице. class TmMenu extends tclass – Класс реализующий отображение меню. Наследник класса Tclass. Описание класса TmMenu – переменные: public $menu_html – сгенерированный HTML. Описание класса TmMenu – функции: function TmMenu_ShowHtml() class TmPages extends tclass – Класс реализующий отображение страниц. Наследник класса Tclass. function Page_show($id) – показ страницы по запросу и идентификатору. function Slide_show($id) – показ страницы по запросу и идентификатору. function mMapsShow () – показ карты объектов. class TmUser extends TmTable Класс реализующий работу с пользователями. Наследник класса TmTable. function mTable_edit_reg($tspc,$_id=0) – регистрация пользователя function mTable_save($tspc,$tnrec) - сохранение пользователя. Исходные структуры для конструктора классов служат связующим звеном между таблицами базы данных и программным модулем. Пример структуры для связи с таблицей пользователей приведён ниже: $col=array( "title"=>"Код", "field"=>"user_id", "type"=>"int", "sort"=>0, "summ"=>0, "tedit"=>"id" ); $sp[]=$col; $col=array( "title"=>"Имя пользователя", "field"=>"user_name", "type"=>"text", "sort"=>1, "summ"=>0, "tedit"=>"text" ); $sp[]=$col; $col=array( "title"=>"Логин", "field"=>"user_login", "type"=>"text", "sort"=>1, "summ"=>0, "tedit"=>"text" ); $sp[]=$col; $col=array( "title"=>"Пароль", "field"=>"user_pass", "type"=>"text", "sort"=>1, "summ"=>0, "tedit"=>"text" ); $sp[]=$col; $col=array( "title"=>"Роль", "field"=>"user_role", "type"=>"int", "sort"=>1, "summ"=>0, "tedit"=>"text" ); $sp[]=$col; $table_desc=array( "table_name"=>"user", "table_title"=>"Пользователи системы", "sql"=>"", "ukey"=>"user_id" ); $tUser['table_desc']=$table_desc; $tUser['fields']=$sp; 2.3.4 Тестирование программного продуктаСерверная часть приложения не имеет интерфейса и работает в автоматическом режиме, поэтому испытания будут проводиться только для клиентской части приложения. Методы испытаний приведена в таблице 2.14. Таблица 2.14 Методы испытаний клиентской части.
Продолжение таблицы 2.14
Продолжение таблицы 2.14
Продолжение таблицы 2.14
Продолжение таблицы 2.14
Основой испытаний является демонстрация корректности обработки запросов пользователя и отображения корректных данных в приложении. Испытание считается пройденным успешно, если в процессе демонстрации все данные в системе соответствуют ожидаемым, и не произошло никаких критических сбоев и падений приложения. 2.3.5 Техническая документация к информационной системеДля корректной работы данного программного продукта требуется следующее аппаратное обеспечение (со стороны клиента): Процессор: 500 МГц или более. ОЗУ: 128 МБ или больше. Дисковое пространство: не более 3 мб. Видеоадаптер: SVGA или лучше. Устройства ввода: клавиатура и манипулятор типа «мышь» или совместимый. Для корректной работы данного программного продукта требуется следующее аппаратное обеспечение для серверной части: Процессор: 1 МГц или более (зависит от нагрузки на базу данных). ОЗУ: 256 МБ или больше (зависит от нагрузки на базу данных). Дисковое пространство: 1Гб или больше (зависит от нагрузки на базу данных). Видеоадаптер: SVGA или лучше. Устройства ввода: клавиатура и манипулятор типа «мышь» или совместимый. Для корректной работы данного программного продукта требуется следующее программное обеспечение (со стороны клиента): ОС Windows XP, 2003, Vista, 7 или совместимая операционная система. Браузер MS Explorer, Opera, FierFox и т.д. Для корректной работы данного программного продукта требуется следующее программное обеспечение (со стороны сервера): ОС Windows XP, Windows 2003, Windows Vista, Windows 7\Unix, Linux или совместимая операционная система. СУБД MySQL 5. Web-сервер Apache. Интерпретатор PHP. |