- •Характеристика
- •Содержание
- •Введение
- •1. Описание предметной области.
- •1.1 Описание бизнес процесса.
- •1.2 Постановка задачи.
- •2 Проектирование информационной системы
- •2.1 Модель “Как будет”.
- •2.2 Определение функционала системы.
- •2.3 Описание хранилища данных.
- •3 Средства разработки.
- •3.1 Разработка классов.
- •3.1.1 Общие сведения о классах Web-приложения.
- •3.1.2 Компоненты.
- •3.1.3 Модели.
- •3.1.4 Поведения.
- •3.1.5 Конролеры.
- •3.1.6 Действия.
- •3.1.7 Расширения
- •3.2 Архитектура приложения
- •4 Руководство пользователя.
- •4.2 Мобильное приложение.
2.3 Описание хранилища данных.
Цель создания модели отображение логических связей между сущностями в системе. Логическая модель данных в нотации UML является основной для построения физической модели, которая, в свою очередь, будет определять, в каком именно виде будут храниться данные в БД и как эти данные будут связаны между собой.
Логическая модель представляет сбой информационную модель предприятия, на основе существующих конкретных моделей данных, не зависимо от СУБД и прочих физических условий реализации. Логическая модель данных представлена на рисунках 5 - 10.
Рисунок 5. Логическая схема БД в нотации UML.
Рисунок 6. Логическая схема БД в нотации UML.
Рисунок 7. Логическая схема БД в нотации UML.
Рисунок 8. Логическая схема БД в нотации UML.
Рисунок 9. Логическая схема БД в нотации UML.
Рисунок 10. Логическая схема БД в нотации UML.
Описание сущностей приведено в приложении 1.
3 Средства разработки.
Проект разрабатывался с помощью фреймворка Yii Framework версии 1.15 веб-каркас, написанный на языке PHP, и реализующий парадигму MVC. Среда разработки “SublimeText 3.0”.
В качестве СУБД используется mysql 5.1. К достоинствам СУБД стоит отнести ее свободное распространение и скорость выдачи информации по запросу. Доступ к базе осуществляется через класс Yii Framework CDbСonnection.
В качестве веб-сервера, обрабатывающего запросы на страницы со стороны пользователя клиента, используется веб-сервер Apache. Основными достоинствами Apache считаются надёжность и гибкость конфигурации. Он позволяет подключать внешние модули для предоставления данных, использовать СУБД для аутентификации пользователей, модифицировать сообщения об ошибках и т. д.
Выбор веб-технологии обусловлен отсутствием необходимости установки программного обеспечения на персональные компьютеры заказчика и клиентов, что позволит обеспечить доступ к системе с любого компьютера при наличии веб-обозревателя и доступа в интернет. Также отсутствует необходимость поддержки устаревших версий программы, т.к. доступ осуществляется к одной копии приложения установленной на сервере, вследствие чего исчезает необходимость следить за корректной работой приложения у пользователей.
3.1 Разработка классов.
3.1.1 Общие сведения о классах Web-приложения.
Классы приложения делятся на следующие типы:
Компоненты(Component)
Модели(Model )
Модели роботы с базой.
Модели форм.
Простая модель.
Поведения(Behavior )
Контроллеры(Controller )
Действия(Action)
Расширения(Extansions)
Компоненты - базовые классы, реализующие общие свойства и методы для производных классов. Так же методы базового класса могут переопределяться в производном.
Модели - модели приложения, это класс реализующий свойства и методы объекта реального мира, а так же методы для их обработки и выполнения операций над их свойствами.
Модели работы с базой - задача таких классов, взаимодействие с конкретной таблицей базой данных и выполнение CRUD операций записей.
Модели форм - классы данного типа имеют широкое применение, основной задачей таких моделей - валидация введенных данных пользователем на форму и выполнение каких либо действий после успешной валидации.
Поведения - задача класса, предоставить функционал, который смогут использовать другие модели. Подключение поведений к другим моделям происходит через метод behaviors() базового класса Yii framework CActiveRecord и СModel.
Контроллеры - объект класса создается объектом веб-приложения в случае, когда пользователь его запрашивает. При запуске контроллер выполняет соответствующее действие, что обычно подразумевает создание соответствующих моделей и отображение необходимых представлений. В самом простом случае действие — это метод класса контроллера, название которого начинается на action.
Действия - как было упомянуто выше, действие — это метод, имя которого начинается на action(пример actionIndex() - выполнит действие index. ). Более продвинутый способ — создать класс действия и указать контроллеру создавать экземпляр этого класса при необходимости (переопределить метод actions()). Такой подход позволяет использовать действия повторно.
Расширения - как правило это один или несколько классов, решающих одну задачу. Расширения были разработаны с целью их повторного использования в нескольких проектах.
