Разработка системы управления Интернет-приложениями

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

Разработка системы управления Интернет-приложениями

Введение

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

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

Таким образом, разработка собственной CMS является актуальной темой, решающей многие проблемы, возникающие при разработке интернет ресурсов.

Целью дипломной работы является проектирование и разработка системы управления контентом.

Пояснительная записка дипломной работы выполнена в соответствии с ГОСТ 7.9-95, ГОСТ 7.32-2001, ГОСТ 15.101-98, ГОСТ 19.105-78, ГОСТ 19.404-79, СТП КубГТУ 1.9.2-2003, МР КубГТУ 4.4.3-2004.

В первом разделе отражен результат анализа области разработки, а именно: приведены общие сведения о CMS, архитектура CMS, критерии оценки CMS, обоснование целесообразности создания CMS, а также техническое задание на разработку CMS. Данный раздел выполнен в соответствие с ГОСТ Р 1.5-2004, ГОСТ Р ИСО 9000-2008, ГОСТ Р ИСО 9001-2008.

Во втором разделе представлены результаты проектирования CMS: эскизный проект, включающий в себя use-case диаграммы для каждого типа пользователей компонента для CMS и диаграммы классов и диаграммы последовательности, результаты проектирования БД CMS и результаты проектирования GUI. Данный раздел выполнен в соответствии с ГОСТ 19.102-77, ГОСТ 19.104-78, ГОСТ 19.202-78, ГОСТ 19.402-78, ГОСТ 19.701-90, Р-50-77-88.В третьем разделе представлено руководство пользователя и руководство программиста, выполненные в соответствие с ГОСТ 19.503-79, ГОСТ 19.504-79, 19.505-79.

В четвертом разделе представлено технико-экономическое обоснование эффективности CMS «SiteONas», выполненное в соответствие с ГОСТ 19.502-78.

В пятом разделе произведена оценка соответствия производственного помещения санитарным нормам. Данный раздел выполнен в соответствие с ГОСТ 8.417-2002.

В конце пояснительной записки к дипломному проекту приведен список используемой литературы, включая электронные ресурсы, оформленный в соответствие с ГОСТ 7.1-2003, ГОСТ 7.12-93, ГОСТ 7.80-2000, ГОСТ 7.82-2011.

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

.1 Общие сведения о CMS

- ИС, используемая для обеспечения и организации совместного процесса создания, редактирования и управления контентом.

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

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

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

Управление - хранение контента в едином информационном пространстве (репозитории). Это позволяет следить за версиями документов, контролировать, кто и когда их изменял, убеждаться, что каждый пользователь может изменить только тот раздел, за который он отвечает. Кроме того, обеспечивается интеграция с существующими информационными источниками и ИТ-системами. CMS поддерживает контроль над рабочим потоком документов, т.е. контроль за процессом их одобрения. Таким образом, управление контентом включает в себя хранение и редактирование данных, отслеживание версий, контроль за доступом, интеграцию с другими ИС и управление потоком документов.

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

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

Использование CMS предоставляет следующие преимущества:

оперативное обновление информации - информацию публикует сотрудник, владеющий информацией, без дополнительных посредников в виде технических специалистов;

снижение стоимости поддержки - обновление информации производится самостоятельно, нет необходимости оплачивать труд собственного или внешнего web-мастера;

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

уменьшение сроков и стоимости разработки - наиболее востребованная функциональность уже реализована в CMS и может быть сразу использована;

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

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

1.2 Модели представления данных в CMS

Существует классификация CMS, основанная на модели представления данных - объектной, сетевой или модульной.

Объектная модель. Основные понятия объектной модели - это класс и объект. В такой модели структура данных определяется классами, которые представляют собой различный набор атрибутов (число, текст, изображение и пр.). Объекты же являются представителями класса и имеют свою определенную структуру. Они также могут содержать и другие объекты, наследовать их свойства, поведение и содержание. Классы же хранят в себе реальные данные, они находятся в объектах, которые в свою очередь являются экземплярами класса. Соответственно, определив класс, появляется возможность создавать множество объектов, которые будут его представителями.

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

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

Модульная модель. В подобных системах контент разделен на отдельные модули по типам содержимого. Структура данных зависит от модуля, и вся работа с контентом сосредоточена внутри модуля. Модули независимы и полностью отвечают за работу с документами данного типа. Документы описываются с помощью фиксированного набора характеристик - типы документов строго фиксированы. Расширять функциональность можно за счет добавления нового модуля, замены или редактирования существующего кода. Стандартный набор типов контента (модулей) таков: ссылки, статьи, файлы, новости, разделы, форум.

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

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

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

Большинство современных фреймворков используют объектно-ориентированный подход при построении архитектуры приложения.

1.3 Критерии оценки CMS

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

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

Функциональность CMS, определяется функциями, реализованными в CMS. В общем случае CMS должна позволять:

редактировать контент страниц, включая добавление/удаление графики;

добавлять новые страницы;

изменять структуру сайта и различные метаданные;

настраивать регистрационные формы;

управлять опросами, голосованиями и форумами;

вести статистику посещений;

задавать URL страниц в форме, легко читаемой поисковыми роботами и понятной посетителям;

управлять дизайном.;

распределять права по управлению сайтом среди пользователей.

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

Безопасность CMS второй по важности после функциональности критерий. Надо учитывать как надёжность системы со стороны внешних атак, так и от неосторожных действий пользователей системы.

Гибкость системы определяется трудоёмкостью и необходимой квалификацией сотрудников для адаптации системы под свои требования - дизайн, структура, правовая политика и др.

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

Технические требования. Необходимо чтобы система не требовала специфических настроек хостинга, которые может предоставить очень ограниченное число хостинг провайдеров. Очень важный критерий - потребность в ресурсах системы, её «жадность» к месту на диске, процессорной частоте и оперативной памяти. Если первое не особо важно, и при этом его не составляет особого труда узнать, то вторые два наоборот крайне важны и найти достоверные сведения о них крайне трудно.

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

Ниже представлено краткое сравнение наиболее популярных в настоящее время CMS 1C-Битрикс, Joomla! и Wordpress.

Расширяемость

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

Безопасность

С-Битрикс - система признана экспертами в области защиты информации безопасной.- В связи с тем, что исходный код Joomla! доступен широкой аудитории, это создает угрозу безопасности, так как имеется возможность изучить уязвимости системы, однако с каждым обновлением Joomla! выходит и обновление безопасности.- Каждый новый шаг в обновлении сопровождается обновлением системы безопасности.

Стоимость

С-Битрикс - стоимость варьируется от 5 000 до 250 000 руб, в зависимости от функциональности.- свободно распространяемый ПП. - свободно распространяемый ПП.

Документация

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

Таким образом, CMS 1С-Битрикс характеризуется высоким уровнем безопасности, большой функциональностью и наличием русскоязычной документации. К недостаткам можно отнести высокую стоимость, сложность документации и высокими техническими требованиями к хостингу.Joomla! обладает такими преимуществами как бесплатное распространение, огромное количество расширений и большое количество русскоязычной документации. Недостатки у этой CMS следующие: большое занимаемое дисковое пространство на сервере и высокая вероятность угрозы безопасности.Wordpress имеет такие преимущества как бесплатное распространение, большое количество готовых шаблонов и наличие большого количество интернет-ресурсов, посвященных данной CMS. Однако в Wordpress существуют такие недостатки как ограниченная функциональность и открытость кода множеству людей, что создает угрозу безопасности CMS. [2]

1.4 Преимущества разработки собственной CMS

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

На рисунке 1 отражена статистика распределения популярных сайтов между CMS за 1 квартал 2011 г. с сайта itrack.ru, построенная на основе данных, полученных при анализе более 1000 сайтов из списка «TOP-100» сайта Liveinternet, выбранных из десяти тематик: авто, медицина, новости и сми, недвижимость, банки, развлечения, путешествия, работа, товары и услуги [3].

Рисунок 1 - Статистика использования CMS в популярных проектах

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

Таким образом, подавляющее большинство крупных интернет-проектов разработано на собственной CMS веб-студий.

Большинство CMS обладают следующими недостатками:

избыточное число настроек, доступных для рядового пользователя, что создает в итоге сложный для пользователя интерфейс - главный механизм взаимодействия пользователя с CMS;

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

низкий уровень безопасности CMS с открытым исходным кодом;

низкая производительность на сервере, являющаяся следствием избыточного функционала CMS;

большое занимаемое дисковое пространство, которое увеличивает время установки и стоимость виртуального хостинга, отведенного под сайт;

недостаточное разделение логики и визуального представления;

низкая документированность по функциональным возможностям и возможностям создания модулей к системе;

высокая стоимость готового продукта и неприемлемые условия лицензионного соглашения.

При разработке собственной CMS учитываются все вышеперечисленные недостатки, и в итоге CMS имеет следующие преимущества перед «коробочными» CMS:

простота разработки собственных модулей, что обеспечивается открытостью архитектуры, которую разработчик CMS знает очень хорошо;

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

высокий уровень безопасности, связанный с ограниченным доступом к исходному коду CMS;

высокая производительность CMS, полученная за счет устранения избыточных связей и функций;

правовые гарантии использования CMS принадлежат исключительно разработчику.

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

1.5 Средства, используемые для разработки CMS

При разработке CMS могут быть использованы такие технологии как LAMP или ASP.NET. Рассмотрим эти технологии подробнее:(аббревиатура Linux, Apache, MySQL, PHP) - популярный набор серверного ПО, используемый для разработки интернет-ресурсов. Данная технология предоставляется подавляющим большинством хостинговых компаний и является наиболее распространенной в сети Интернет. LAMP включает в себя следующие компоненты:5 - мощный серверный язык, позволяющий создавать скрипты, использующиеся в динамических сайтах; [4]- популярная СУБД, обеспечивающая хранение данных на сервере; [5,6,7]- распространенный web-сервер, достоинствами которого являются надёжность и гибкость конфигурации;- бесплатная ОС, имеющая большой набор сетевых утилит. [8].NET в связке с IIS и MSSQL. Данная технология использует языки программирования, входящие в комплект.NET Framework. Преимущественно скрипты ASP.NET используют веб-сервер IIS. На сегодняшний день ограниченное число хостингов предлагает услуги для ASP-приложений. [9]

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

модель. Предоставляет данные для представления, а также реагирует на запросы контроллера, изменяя своё состояние.

представление (вид). Отвечает за отображение информации пользователю (пользовательский интерфейс), обычно в виде HTML кода или визуальных компонентов.

контроллер (поведение). Интерпретирует данные, введённые пользователем, и информирует модель и представление о необходимости соответствующей реакции. [10, 11, 12]

1.6 Техническое задание на разработку CMS

.6.1 Введение

Наименование программы: CMS SiteONas.

Цель: повышение эффективности управления контентом Интернет-ресурсов.

Областью применения CMS является создание корпоративных сайтов компаний, рекламно-информационных сайтов, СМИ и тематических интернет-изданий, торговых систем (Интернет-магазинов).

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

.6.2 Основания для разработки

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

Использованные ГОСТы:

ГОСТ 34.602-89. Техническое задание на создание автоматизированной системы;

ГОСТ 19.201-78. Техническое задание. Требования к содержанию и оформлению.

Организация, утвердившая этот документ: Армавирский механико-технологический институт (филиал) ФГБОУ ВПО «Кубанский Государственный технологический университет».

Ниже приведены должностные обязанности при работе с CMS.

Суперадминистратор. Пользователь, авторизованный с ролью «Суперадминистратор», имеет следующие должностные обязанности:

управление конфигурацией CMS;

управление пользователями CMS;

управление сайтами пользователей CMS;

управление лицевыми счетами пользователей CMS;

оповещение пользователей CMS о технических работах, окончании срока оплаты и т.п.

Администратор. Пользователь, авторизованный с ролью «Администратор», имеет следующие должностные обязанности:

добавление модуля CMS на сайт;

удаление модуля CMS с сайта;

публикация материала на сайте;

доступ к документации CMS;

смена шаблона дизайна сайта;

управление стилями CSS;

управление балансом лицевого счета;

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

управление структурной разметкой сайта.

.6.3 Назначение разработки

CMS предназначена для:

добавления, удаления, редактирования информации в БД CMS;

добавления, удаления дополнительных модулей;

публикации информации на сайте;

изменения структурной разметки сайта;

изменения дизайна сайта.

.6.4 Требования к CMS

Требования к функциональным характеристикам.

Архитектура разрабатываемой CMS приведена на рисунке 2.

Рисунок 2 - Архитектура CMS «SiteONas»

Разрабатываемая CMS строится согласно шаблону проектирования MVC. Кодировкой, используемой при разработке CMS, является UTF-8.

Базовая комплектация CMS включает в себя:

ядро CMS;

базовый набор модулей;

базовый набор шаблонов;

документацию.

Ниже описаны компоненты, включенные в базовую комплектацию CMS:

а) Ядро CMS. Управляет модулями CMS. Обеспечивает взаимодействие между классами CMS. Обрабатывает запросы пользователей. В ядро CMS входят следующие компоненты:

библиотека базовых классов (фреймворк);

подсистема управления личными счетами пользователей;

подсистема управления модулями CMS;

подсистема управления пользователями CMS;

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

подсистема управления CSS стилями;

файлы конфигурации.

б) Библиотека базовых классов (фреймворк).

В качестве библиотеки базовых классов для CMS был выбран PHP фреймворк Yii. Данный фреймворк обладает такими преимуществами как:

простая установка;

большое количество документации;

высокая производительность;

поддержка ООП;

лицензия New BSD, позволяющая свободно использовать этот фреймворк в коммерческих и open-source проектах.включает в себя такие классы, необходимые для разработки CMS, как класс взаимодействия с БД, шаблонизатор, классы валидации и обработки ошибок и др.

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

Шаблонизатор. Компонент системы, ответственный за формирование содержимого страниц сайта на основе шаблонов дизайна.

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

Класс обработки ошибок. Предоставляет методы, обрабатывающие возникающие ошибки в CMS, выдающий соответствующие сообщения об ошибках.

Класс обеспечения безопасности запросов. Предоставляет методы, обрабатывающие входные данные, полученные от пользователя. Осуществляет проверку на наличие SQL-Injection и XSS.

Система распределения прав доступа. Осуществляет проверку уровня прав пользователя для осуществления определенных действий с CMS. Реализуется на уровне контроллера.

в) Подсистема управления личными счетами пользователей. Позволяет администратору CMS оплачивать сайт через API различных платежных систем, просматривать и распечатывать финансовую отчетность по оплате сайта.

г) Подсистема управления модулями CMS. Предназначена для добавления модулей на сайт, удаления модулей с сайта, редактировании содержимого модулей, настройки параметров модулей.

д) Подсистема управления пользователями CMS. Предназначена для регистрации, редактирования, удаления пользователей CMS. Позволяет редактировать личную информацию пользователей.

е) Подсистема управления структурой сайта. Предназначена для построения структурной разметки сайта в виде набора строк, столбцов и модулей. Включает в себя возможность перемещения структурных элементов на сайте с помощью технологии «drag-and-drop», позволяющей пользователю выполнять действия по перемещению структурных элементов сайта при помощи манипулятора «мышь».

ж) Подсистема управления CSS стилями. Предназначена для «тонкой» настройки дизайна сайта. Позволяет задавать набор правил CSS для использующихся на сайте элементов структурной разметки.

з) Файлы конфигурации. Файлы настроек, хранящие базовые настройки CMS.

и) Базовый набор модулей. В базовый комплект CMS входят следующие модули:

создание, редактирование и публикация статических страниц;

меню. Позволяет создавать иерархическое многоуровневое меню;

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

новости. Позволяет вывести на страницу 5 последних новостей. Организует подробный просмотр текста новости;

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

видеогалерея. Позволяет создавать видеогалерею, используя популярные сервисы видеохостинга;

поиск по сайту. Организует поиск информации по контенту, имеющемуся на сайте;

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

обратная связь. Позволяет отправлять e-mail администратору сайта.

к) Базовый набор шаблонов.

л) Документация. Онлайн документация, поясняющая основные моменты использования CMS для пользователей и поясняющая архитектуру CMS разработчикам модулей. Включает в себя текстовый материал и видеоматериал.

Требования к надежности

Надежное (устойчивое) функционирование CMS должно быть обеспечено выполнением Заказчиком совокупности организационно-технических мероприятий, перечень которых приведен ниже:

а) организацией бесперебойного питания технических средств;

б) использованием лицензионного ПО;

в) ограничение доступа пользователей к БД с целью предотвращения несанкционированного доступа;

г) обеспечение целостности БД;

д) периодическое, не реже одного раза в неделю, резервирование информации, находящейся в БД.

Отказы CMS возможны вследствие некорректных действий оператора (пользователя) при взаимодействии с CMS. Во избежание возникновения отказов по указанной выше причине следует обеспечить работу конечного пользователя без предоставления ему административных привилегий.

Условия эксплуатации

Климатические условия эксплуатации должны соответствовать условиям эксплуатации технических средств.

Минимальное количество персонала, требуемого для работы CMS, должно составлять не менее 1 штатной единицы - администратора.

Администратор должен обладать основными навыками работы с компьютером, администрирования БД, знать основы языка HTML.

В перечень задач, выполняемых администратором, должны входить:

задача администрирования БД;

задача создания резервных копий БД;

систематическое обновление информации.

Требования к составу и параметрам технических средств

В состав технических средств должен входить Интернет-сервер, поддерживающий передачу данных по FTP, включающий в себя процессор Pentium IV с частотой не менее 1 GHz, оперативную память объемом не менее 256 Мегабайт, свободное место на сервере не менее 50 Мегабайт, ОС Linux или Windows.

Требования к информационной и программной совместимости

Базовый язык программирования CMS - PHP версии 5.2.должна работать на основе сервера БД, работающим под управлением MySQL Server. Необходимо выбрать виртуальный хостинг, или выделенный сервер, на котором установлена следующая конфигурация:

ОС Linux не ниже версии 2.6;

веб-сервер Apache не ниже версии 1.3.41;

сервер БД MySQL не ниже версии 5.0;интерпретатор не ниже версии 5.1.

дополнительные модули (cron и т.п.)

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

Форматы данных, используемые в CMS:

файлы серверных скриптов, включая файлы настройки CMS, имеют расширение.php;

изображения элементов управления CMS имеют расширение.png;

подключаемые шаблоны и модули CMS хранятся в архивах с расширениями.rar,.tar,.zip;

файлы журналов событий имеют расширение.log;

файл «тонкой» настройки web-сервера имеет расширение.htaccess.

Для доступа к CMS на ПК клиента должен быть доступ к сети интернет и установлен браузер Internet Explorer (не ниже версии 6.0), Opera, Safari, Mozilla Firefox или Google Chrome.

Требования к эргономике

Интерфейс CMS должен поддерживать русский язык. Интерфейс должен быть прост, нагляден, интуитивно понятен и легок в освоении. Для обращения к функциям системы должны использоваться ссылки. Интерфейс пользователя должен быть ориентирован на использование клавиатуры и «мыши» с минимизацией количества нажатий для выполнения стандартных действий. Все элементы управления (пункты меню, кнопки и т.д.), выполняющие одинаковые действия должны выглядеть и называться одинаково. Система должна отображать на экране пользователя анимацию ожидания при длительных процессах обработки.

При разработке дизайна CMS должны быть использованы преимущественно светлые стили. Фон CMS должен обеспечивать читабельность и не должен быть ярким.

Экранные формы CMS должны быть рассчитаны на разрешение экрана 1280*768. Дизайн системы должен быть разработан так, чтобы все поля экранной формы были доступны без дополнительной горизонтальной прокрутки и, по возможности, вертикальной прокрутки.

При возникновении ошибки, связанной с неправильными действиями пользователя (ввод некорректных данных, отсутствие обязательного значения), ему должно выдаваться сообщение с пояснениями, достаточными для понимания и исправления ошибки (рисунок 2).

Рисунок 2 - Оповещение пользователя о вводе обязательных данных

Также должен вестись файл протоколирования ошибок системы (log-файл), доступный для чтения пользователям CMS с ролью «Суперадминистратор».

.6.5 Требования к программной документации

В комплект документации в обязательном порядке должны входить:

техническое задание;

программная документация в виде пакета диаграмм;

текст программы;

руководство пользователя;

руководство программиста.

Программная документация должна быть оформлена в соответствии с ЕСПД (ГОСТ 19).

.6.6 Технико-экономические показатели

В разделе 4 «Технико-экономическое обоснование эффективности программного обеспечения» данной пояснительной записки дается техническое и экономическое обоснование целесообразности реализации данного проекта. Рассчитываются затраты на разработку ПО и приобретение аппаратных программных средств. Отражается экономический эффект от внедрения проекта, срок окупаемости и затраты на сопровождение проекта после его реализации.

.6.7 Стадии и этапы разработки

Стадии разработки

Разработка CMS «SiteONas» должна быть проведена в следующие стадии:

анализ требований к системе;

проектирование системы;

разработка системы;

тестирование;

внедрение;

сопровождение и эксплуатация.

Этапы разработки

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

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

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

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

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

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

1.6.8 Порядок контроля и приемки

Приемо-сдаточные испытания должны проводиться на объекте Заказчика в оговоренные сроки, представленных в таблице 1. Ход проведения приемо-сдаточных испытаний Заказчик и Исполнитель документируют в Протоколе проведения испытаний. На основании Протокола проведения испытаний Исполнитель совместно с Заказчиком подписывает Акт приемки-сдачи программы в эксплуатацию.

Таблица 1 - Этапы и сроки сдачи проекта

Этапы

Сроки

Анализ требований к системе

15 декабря 2011 г. - 8 января 2012 г.

Проектирование системы

9 января 2012 г. - 15 февраля 2012 г.

Разработка системы

16 марта 2012 г. - 8 мая 2012 г.

Тестирование

9 мая 2012 г. - 20 мая 2012 г.

Внедрение

21 мая 2012 г. - 30 мая 2012 г.

Сопровождение и эксплуатация

с 1 июня 2012 г. - 15 июня 2012 г.

2. Проектирование CMS

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

Выделяют такие преимущества UML как:объектно-ориентирован, в результате чего методы описания результатов анализа и проектирования семантически близки к методам программирования на современных объектно-ориентированных языках;позволяет описать систему практически со всех возможных точек зрения и разные аспекты поведения системы;

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

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

В настоящее время UML широко распространен при проектировании информационных систем и продолжает динамично развиваться. [13, 14, 15, 16, 17]

2.1 Проектирование функций пользователей CMS «SiteONas» с ролью «Суперадминистратор»

Диаграмма вариантов использования для пользователя с ролью «Суперадминистратор» приведена на рисунке 3.

Рисунок 3 - Диаграмма вариантов использования для пользователя c ролью «Суперадминистратор»

Диаграмма вариантов использования для пользователя Суперадминистратор включает следующие варианты использования:

Вариант использования Авторизация

Краткое описание. Данный вариант использования описывает авторизацию пользователя в административном разделе CMS.

Основной поток событий

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

) Появляется форма авторизации, содержащая поля ввода имени и пароля.

) После ввода имени и пароля, пользователь нажимает кнопку ОК.

) Система авторизует пользователя.

Альтернативные потоки

Неправильные имя/пароль

) Система выдает сообщение об ошибке

) Пользователь повторяет попытку ввода имени и пароля.

Предусловия

Регистрация в системе.

Постусловия

Если вариант использования закончится успешно, пользователь зайдет в административный раздел с назначенной ролью.

Вариант использования Регистрация нового пользователя

Краткое описание. Данный вариант использования описывает регистрацию нового пользователя в административном разделе CMS.

Основной поток событий

Данный вариант использования начинает выполняться, когда суперадминистратор выбирает соответствующий пункт меню в разделе «Управление пользователями» административного раздела CMS.

) Появляется форма регистрации нового пользователя.

) После ввода обязательных данных о новом пользователе (логин, e-mail, тариф), пользователь нажимает кнопку ОК.

) В систему добавляется новый пользователь CMS.

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

) После подтверждения регистрации, в системе пользователь отмечается как «активный».

Альтернативные потоки

Ввод некорректного e-mail или уже существующего e-mail.

) Система выдает сообщение об ошибке

) Пользователю выводится форма регистрации нового пользователя.

Отсутствие подтверждения регистрации пользователя.

Пользователь, помеченный как «ожидающий активации», удаляется из системы.

Предусловия

Авторизация в системе с ролью «Суперадминистратор».

Постусловия

Если вариант использования закончится успешно, в системе появится новый пользователь с ролью «Администратор».

Вариант использования Блокирование пользователя CMS

Краткое описание. Данный вариант использования описывает блокирование пользователя в административном разделе CMS.

Основной поток событий

Данный вариант использования начинает выполняться, когда суперадминистратор выбирает соответствующий пункт меню в разделе «Управление пользователями» административного раздела CMS для выбранных пользователей CMS.

) Появляется форма подтверждения блокировки пользователя.

) После подтверждения блокировки нажатием кнопки «ОК», в системе пользователь отмечается как «заблокированный», сайты, связанные с этим пользователем, блокируются.

Альтернативные потоки

Выбор кнопки «Отмена» в форме подтверждения блокировки пользователя.

) Форма подтверждения блокировки пользователя закрывается.

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

Предусловия

Авторизация в системе с ролью «Суперадминистратор».

Постусловия

Если вариант использования закончится успешно, статус выбранного пользователя и статус принадлежащих ему сайтов сменится на «заблокированный».

Вариант использования Удаление пользователя CMS

Краткое описание. Данный вариант использования описывает удаление пользователя в административном разделе CMS.

Основной поток событий

Данный вариант использования начинает выполняться, когда суперадминистратор выбирает соответствующий пункт меню в разделе «Управление пользователями» административного раздела CMS для выбранных пользователей CMS.

) Появляется форма подтверждения удаления пользователя.

) После подтверждения удаления нажатием кнопки «ОК», пользователь и связанные с ним сайты удаляются из системы.

Альтернативные потоки

Выбор кнопки «Отмена» в форме подтверждения удаления пользователя.

) Форма подтверждения удаления пользователя закрывается.

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

Предусловия

Авторизация в системе с ролью «Суперадминистратор».

Постусловия

Если вариант использования закончится успешно, пользователь и связанные с ним сайты будут удалены из системы.

Вариант использования Зачисление средств на лицевой счет пользователя CMS.

Краткое описание. Данный вариант использования описывает процесс зачисления средств на лицевой счет пользователя CMS.

Основной поток событий

Данный вариант использования начинает выполняться, когда суперадминистратор выбирает соответствующий пункт меню в разделе «Управление лицевыми счетами» административного раздела CMS для выбранного пользователя CMS.

) Появляется форма зачисления средств на счет пользователя CMS.

) Суперадминистратор вводит сумму, требуемую к зачислению на счет пользователя.

) Сумма подтверждается нажатием кнопки «ОК» формы зачисления средств.

Альтернативные потоки

Выбор кнопки «Отмена» в форме зачисления средств на счет пользователя CMS.

) Форма зачисления средств на счет пользователя CMS закрывается.

) Баланс лицевого счета выбранного пользователя остается без изменения.

Предусловия

Авторизация в системе с ролью «Суперадминистратор».

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

Вариант использования Снятие средств с лицевого счет пользователя CMS.

Краткое описание. Данный вариант использования описывает процесс снятия средств с лицевого счета пользователя CMS.

Основной поток событий

Данный вариант использования начинает выполняться, когда суперадминистратор выбирает соответствующий пункт меню в разделе «Управление лицевыми счетами» административного раздела CMS для выбранного пользователя CMS.

) Появляется форма списания средств со счета пользователя CMS.

) Суперадминистратор вводит сумму, требуемую к списанию на счет пользователя.

) Сумма подтверждается нажатием кнопки «ОК» формы списания средств.

Альтернативные потоки

Выбор кнопки «Отмена» в форме списания средств со счета пользователя CMS.

) Форма списания средств со счета пользователя CMS закрывается.

) Баланс лицевого счета выбранного пользователя остается без изменения.

Предусловия

Авторизация в системе с ролью «Суперадминистратор».

Постусловия

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

Вариант использования Изменение конфигурации CMS

Краткое описание. Данный вариант использования описывает изменение настройки CMS.

Основной поток событий

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

) Открывается окно настройки СMS.

) Пользователь выбирает соответствующие настройкам переключатели.

) После ввода настроек нажимается кнопка Сохранить и настройки сохраняются в БД CMS.

Альтернативные потоки

Нажатие кнопки Отмена прерывает изменение настроек CMS.

Предусловия

Авторизация в системе с ролью «Суперадминистратор».

Постусловия

Если вариант использования закончится успешно, настройки CMS будут изменены.

Вариант использования Рассылка уведомлений пользователям CMS.

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

Основной поток событий

Данный вариант использования начинает выполняться, когда суперадминистратор выбирает соответствующий пункт меню в разделе «Управление рассылками» административного раздела.

) Появляется форма рассылки уведомлений пользователя CMS.

) Суперадминистратор вводит текст электронного письма.

) Суперадминистратор выбирает пользователей, которым предназначена рассылка, из списка пользователей CMS или выбирает «Выбрать всех».

) После нажатия кнопки «Отправить», электронные письма отправляются на выбранные электронные адреса.

Альтернативные потоки

Альтернативные потоки отсутствуют.

Предусловия

Авторизация в системе с ролью «Суперадминистратор».

Постусловия

Если вариант использования закончится успешно, выбранным пользователям придут электронные письма с текстом рассылки.

Классы, участвующие в вариантах использования пользователя с ролью «Суперадминистратор», представлены в таблице 2.

Таблица 2 - Классы, участвующие в вариантах использования пользователя с ролью «Суперадминистратор»

Вариант использования

Классы

Авторизация в системе

CWebApplication, UserIdentity, Users, CUserIdentity, CActiveRecord

Регистрация нового пользователя

CWebApplication, CController, UsersController, Users, CMailer, CActiveRecord

Блокирование пользователя CMS

CWebApplication, CController, UsersController, Users, Sites, CMailer, CActiveRecord

Удаление пользователя CMS

CWebApplication, CController, UsersController, Users, CActiveRecord

Зачисление средств на лицевой счет пользователя CMS

CWebApplication, CController, BillingController,Billing, Users, CActiveRecord

Снятие средств с лицевого счета пользователя CMS

CWebApplication, CController, BillingController,Billing, Users, CActiveRecord

Изменение конфигурации CMS

CWebApplication, CActiveRecord

Рассылка уведомлений пользователям CMS

CWebApplication, CController, MailerController, Mailer, CMailer

Выход из системы

CWebApplication, Sites, UserIdentity


В таблице 3 приведена спецификация классов для вариантов использования пользователя с ролью «Суперадминистратор».

Таблица 3 - Спецификация классов вариантов использования пользователя с ролью «Суперадминистратор»

Класс

Описание

Свойства и методы

CWebApplication

Класс фреймворка. Представляет собой контекст выполнения web-приложения.

run(), processRequest(), runController()

CUserIdentity

Класс фреймворка. Предназначен для авторизации и аутентификации пользователей

authenticate()

UserIdentity

Наследник CUserIdentity. Предназначен для управления пользователями CMS

user, authenticate(), getUserId(), getSiteId(), checkPermission()

CActiveRecord

Класс фреймворка. Предназначен для работы с БД посредством модели ORM. Реализует модель паттерна MVC.

db, validators, model(), find(), findAll(), findByPk(), save(), insert(), update(), delete(), validate()

Users

Наследник CActiveRecord. Модель MVC. Представляет собой объект таблицы «users».

model(), tableName(), relations(), search(), getFullName()

Sites

Наследник CActiveRecord. Модель MVC. Представляет собой объект таблицы «sites».

model(), tableName(), relations(), search_user_sites(), getSiteTitleLink(), denyDomains()

Billing

Наследник CActiveRecord. Модель MVC. Представляет собой объект таблицы «billing».

model(), tableName(), relations(), search(), getCurrentUserBalance(),getLogSum(), getIsPagesLimit()

CController

Класс фреймворка. Предназначен для реализации бизнес-правил приложения. Реализует контроллер MVC.

layout, id, redirect(), render(), runAction(), filterAccessControl(), run()

UsersController

Наследник CController. Контроллер MVC. Реализует основные методы для управления пользователями CMS.

actionRegister(), actionProfile(), actionUpdate(), loadModel(), actionAdmin()

BillingController

Наследник CController. Контроллер MVC. Реализует основные методы для управления личными счетами пользователей CMS.

actionInputsum(), actionDeposit(), actionDebit(), actionPayment(), actionYamoney(), actionBank(), actionInvoice(), actionAdmin()

MailerController

Наследник CController. Контроллер MVC. Реализует основные методы для рассылки электронных писем.

actionCreate(), actionUpdate(), loadModel(), actionAdmin(), actionDelete()


2.2 Спецификация варианта использования «Регистрация нового пользователя»

На рисунке 4 представлена диаграмма классов для варианта использования «Регистрация нового пользователя».

Рисунок 4 - Диаграмма классов для варианта использования «Распределение прав доступа»

Класс DFX_Administrator предназначен для реализации интерфейса административной панели CMS.

Класс DFX_User предназначен для управления пользователями CMS.

Класс CActiveRecord предназначен для работы с БД CMS согласно модели ORM.

В таблице 4 представлено описание атрибутов и методов класса DFX_Administrator

Таблица 4 - Описание атрибутов и методов класса DFX_Administrator

Атрибут / метод

Тип

Описание

users

DFX_User[]

Массив пользователей данной CMS

showUsers()

void

Метод, предназначенный для вывода на экран всех пользователей CMS

renderView()

void

Метод, предназначенный для вывода формы добавления нового пользователя

showMessage()

void

Метод, предназначенный для вывода сообщения о результате добавлении информации в БД


В таблице 5 представлено описание атрибутов и методов класса DFX_User.

Таблица 5 - Описание атрибутов и методов класса DFX_User

Атрибут / метод

Тип

Описание

user_name

string

Атрибут, представляющий имя пользователя CMS, указанное при регистрации

user_type

int

Атрибут, представляющий тип пользователя CMS

authorization()

boolean

Метод, предназначенный для авторизации пользователя в CMS. В случае авторизации возвращает true, в противном случае - false

getUserList

DFX_User[]

Метод, возвращающий массив объектов, представляющих пользователей CMS

saveUser

void

Метод, предназначенный для сохранения пользователя в БД CMS

В таблице 6 представлено описание атрибутов и методов класса CActiveRecord

Таблица 6 - Описание атрибутов и методов класса CActiveRecord

Атрибут/метод

Тип

Описание

db

CDbConnection

Атрибут, представляющий ссылку на текущее активное соединение с БД CMS

insert()

boolean

Метод, вставляющий запись в БД CMS. В случае успешной вставки записи возвращает true, в противном случае - false

save()

boolean

Метод, сохраняющий изменения, внесенные в БД CMS. В случае сохранения возвращает true, в противном случае - false


Диаграмма последовательности для варианта использования «Регистрация нового пользователя» для пользователя с ролью «Суперадминистратор» изображена на рисунке 5.

Рисунок 5 - Диаграмма последовательности варианта использования «Регистрация нового пользователя»

Опишем поток событий для диаграммы последовательности.

Вариант использования «Регистрация нового пользователя»

Краткое описание. Данный вариант использования описывает регистрацию нового пользователя с ролью «Администратор» в административном разделе CMS.

Основной поток событий

Данный вариант использования начинает выполняться, когда суперадминистратор выбирает пункт меню «Управление пользователями» в панели администрирования.

) В классе DFX_Administrator вызывается метод класса DFX_User getUserList(), который возвращает список пользователей CMS.

) Метод showUsers() выводит список пользователей на экран.

) Пользователь выбирает пункт меню «Добавить нового пользователя».

) Метод renderView() отображает на экране форму добавления нового пользователя с необходимыми полями.

) Пользователь вводит в поля требуемую информацию и нажимает кнопку «Сохранить», инициируя метод saveUser()

) Метод saveUser() класса DFX_User получает ссылку на объект класса ActiveRecord и вызывает методы insert() - вставляющий новые данные в таблицу и save() - сохраняющий таблицу в БД CMS.

) В случае успешного сохранения информации в БД CMS пользователю выводится сообщение об успешном добавлении нового пользователя. В противном случае - сообщение об ошибки.

Предусловия

Авторизация в системе с ролью «Суперадминистратор». Для авторизации в системе необходимо:

) Ввести адрес панели администрирования в адресной строке браузера.

) В появившемся окне авторизации ввести логин и пароль.

) В методе Autorization() класса DFX_User выполняется проверка введенного логина и пароля, в случае успешной авторизации пользователя, открывается панель администрирования.

Постусловия

Если вариант использования закончится успешно, в системе будет создан новый пользователь с ролью «Администратор».

2.3 Проектирование функций пользователей CMS «SiteONas» с ролью «Администратор»

На рисунке 6 изображена диаграмма последовательности для пользователя с ролью «Администратор».

Рисунок 6 - Диаграмма вариантов использования для пользователя с ролью «Администратор»

Диаграмма вариантов использования для пользователя Суперадминистратор включает следующие варианты использования:

Вариант использования Доступ к документации CMS

Краткое описание. Данный вариант использования описывает доступ к документации в административном разделе CMS.

Основной поток событий

Данный вариант использования начинает выполняться, когда администратор выбирает пункт меню «Документация» в административном разделе CMS.

) На экране появляется список доступных текстовых и видео материалов.

) Администратор выбирает необходимый материал

Альтернативные потоки

Альтернативные потоки отсутствуют.

Предусловия

Авторизация в системе с ролью «Администратор».

Постусловия

Если вариант использования закончится успешно, на экране отобразится содержимое справочного материала.

Вариант использования Привязка домена к сайту

Краткое описание. Данный вариант использования описывает привязку домена второго уровня к сайту в административном разделе CMS.

Основной поток событий

Данный вариант использования начинает выполняться, когда администратор выбирает пункт меню «Настройка сайта» в административном разделе CMS.

) На экране появляется список доступных настроек сайта.

) В поле «Домен сайта» пользователь вводит домен второго уровня, приобретенный у регистратора.

) Пользователь нажимает «Сохранить» для сохранения домена в настройках сайта.

Альтернативные потоки

Нажатие кнопки «Отмена».

Пользователь возвращается в главное окно административного раздела. Домен сайта остается без изменения.

Предусловия

Авторизация в системе с ролью «Администратор». Регистрация домена второго уровня в зоне ru, com и т.д. Указание в качестве DNS сервера (A-запись) IP-адреса сайта CMS «SiteONas» 46.254.21.179.

Постусловия

Если вариант использования закончится успешно, в течение суток сайт будет доступен по адресу добавленного домена.

Вариант использования Добавление модуля CMS на сайт

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

Основной поток событий

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

) На экране появляется всплывающее окно со списком доступных модулей.

) Администратор выбирает необходимый тип модуля и перетаскивает его на сайт в требуемое место.

) Открывается диалоговое окно, в котором пользователь выбирает добавление существующего содержимого или создание нового содержимого.

) После выбора переключателя «Добавить существующее содержимое», пользователь выбирает из списка контента, уже созданного на сайте.

) Пользователь выбирает настройки для модуля данного типа, включая настройки CSS.

) Пользователь подтверждает добавление модуля нажатием кнопки «Добавить».

Альтернативные потоки

Выбор переключателя «Добавить новое содержимое»

Появляется форма добавления нового содержимого выбранного типа.

Пользователь заполняет поля, необходимые для данного типа модуля.

Пользователь выбирает настройки для модуля данного типа, включая настройки CSS.

Пользователь подтверждает добавление модуля нажатием кнопки «Добавить».

Нажатие кнопки «Отмена».

Пользователь возвращается на страницу сайта.

Модуль не добавляется.

Предусловия

Авторизация в системе с ролью «Администратор».

Постусловия

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

Вариант использования Удаление модуля CMS с сайта

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

Основной поток событий

Данный вариант использования начинает выполняться, когда администратор выбирает элемент управления модуля «Переместить модуль» и начинает перетаскивать модуль.

) На экране появляется полупрозрачное очертание выбранного модуля.

) Администратор перетаскивает модуль на пиктограмму корзины в левой стороне экрана.

) Открывается диалоговое окно, в котором пользователь подтверждает удаление модуля.

Альтернативные потоки

Нажатие кнопки «Отмена».

) Пользователь возвращается на страницу сайта.

) Модуль не удаляется.

Предусловия

Авторизация в системе с ролью «Администратор».

Постусловия

Если вариант использования закончится успешно, выбранный модуль удалится с сайта.

Вариант использования Смена шаблона дизайна сайта

Краткое описание. Данный вариант использования описывает смену шаблона дизайна в административном разделе CMS.

Основной поток событий

Данный вариант использования начинает выполняться, когда администратор выбирает пункт меню «Управление темами» в административном разделе CMS.

) На экране появляется список доступных шаблонов дизайна сайта.

) Администратор выбирает переключатель, соответствующий требуемой теме.

) Администратор нажимает «Сохранить» для применения выбранного шаблона к сайту.

Альтернативные потоки

Альтернативные потоки отсутствуют.

Предусловия

Авторизация в системе с ролью «Администратор».

Постусловия

Если вариант использования закончится успешно, оформление сайта изменится в соответствии с выбранным шаблоном дизайна.

Вариант использования Редактирование структурной разметки сайта

Краткое описание. Данный вариант использования описывает смену расположения структурных блоков (строк, столбцов и модулей) на сайте.

Основной поток событий

Данный вариант использования начинает выполняться, когда администратор выбирает элемент управления модуля «Переместить модуль», «Переместить столбец» или «Переместить строку» и начинает перетаскивать структурный элемент.

) На экране появляется полупрозрачное очертание выбранного модуля, столбца или строки.

) Администратор перетаскивает модуль, столбец или в новое место на сайте.

Альтернативные потоки.

Отпускание модуля, столбца или строки при перетаскивании.

) Полупрозрачное очертание модуля, столбца или строки пропадает.

) Модуль не перемещается на новое место.

Предусловия

Авторизация в системе с ролью «Администратор».

Постусловия.

Если вариант использования закончится успешно, выбранный модуль, столбец или строка переместятся на новое место.

Вариант использования Создание правила CSS.

Краткое описание. Данный вариант использования описывает создание правила CSS в административном разделе CMS.

Основной поток событий.

Данный вариант использования начинает выполняться, когда администратор выбирает соответствующий пункт меню «Создать правило» в разделе «Стили CSS» административного раздела CMS.

) На экране появляется форма создания правил CSS.

) Администратор заполняет поля «Селектор» и «Правила».

) Администратор нажимает «Сохранить» для создания правила CSS.

Альтернативные потоки

Альтернативные потоки отсутствуют.

Предусловия

Авторизация в системе с ролью «Администратор».

Постусловия

Если вариант использования закончится успешно, для сайта создастся новее правило CSS.

Вариант использования Удаление правила CSS.

Краткое описание. Данный вариант использования описывает удаление правила CSS в административном разделе CMS.

Основной поток событий.

Данный вариант использования начинает выполняться, когда администратор выбирает одно из правил CSS из списка в разделе «Стили CSS» административного раздела CMS.

) Администратор нажимает кнопку «Удалить правило».

) Появляется окно подтверждения удаления правила.

) Администратор нажимает «Удалить» для удаления правила CSS.

Альтернативные потоки

Нажатие кнопки «Отмена» в окне подтверждения удаления правила.

) Пользователь возвращается к списку правил CSS.

) Правило CSS не удаляется.

Предусловия

Авторизация в системе с ролью «Администратор».

Постусловия

Если вариант использования закончится успешно, выбранное правило CSS удалится из системы.

Вариант использования Пополнение баланса лицевого счета.

Краткое описание. Данный вариант использования описывает процесс пополнения баланса лицевого счета администратора CMS.

Основной поток событий

Данный вариант использования начинает выполняться, когда администратор выбирает пункт меню «Пополнить счет» в административном разделе CMS.

) Появляется форма выбора суммы для оплаты пользователя CMS.

) Суперадминистратор вводит сумму, требуемую к зачислению на счет.

) Сумма подтверждается нажатием кнопки «ОК» формы зачисления средств.

) Администратор выбирает варианты оплаты CMS (Яндекс.Деньгами, Webmoney, квитанцией).

) При выборе варианта оплаты «Яндекс.Деньги», администратор перенаправляется на страницу Яндекс.Деньги сайта yandex.ru, где он завершает оплату сайта.

Альтернативные потоки

Выбор кнопки «Отмена» в форме зачисления средств на счет пользователя CMS.

) Форма зачисления средств на счет пользователя CMS закрывается.

) Баланс лицевого счета выбранного пользователя остается без изменения.

Выбор варианта оплаты «Оплата квитанцией».

) На экран выдается квитанция с заполненными данными из профиля администратора.

) Администратор нажимает кнопку «Распечатать» для печати квитанции.

Выбор варианта оплаты «Webmoney».

Администратор перенаправляется на сайт webmoney.com, где он завершает оплату сайта.

Предусловия

Авторизация в системе с ролью «Суперадминистратор».

Постусловия

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

Вариант использования Печать истории оплаты.

Краткое описание. Данный вариант использования описывает процесс печати оплаченного счета администратора CMS.

Основной поток событий

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

) Появляется список платежей, совершенных администратором CMS.

) Администратор переходит в раздел «Счета», в котором для каждого платежа имеется соответствующий оплаченный счет.

) Администратор выбирает счет за определенное число для просмотра.

) Администратор нажимает кнопку «Распечатать» для печати счета.

Альтернативные потоки

Альтернативные потоки отсутствуют.

Предусловия

Авторизация в системе с ролью «Суперадминистратор».

Постусловия

Если вариант использования закончится успешно, выбранная история оплаты будет распечатана.

Вариант использования Пошаговое создание сайта при помощи мастера.

Краткое описание. Данный вариант использования описывает процесс пошагового создания нового сайта при помощи мастера создания сайтов.

Основной поток событий

Данный вариант использования начинает выполняться, когда администратор выбирает пункт меню «Создать сайт» в разделе «Панель управления» административного раздела CMS.

) Появляется форма первого шага создания сайта.

) Администратор вводит в поля формы название создаваемого сайта, локальный адрес сайта и тариф и нажимает кнопку «Создать».

) Появляется форма второго шага создания сайта.

) Появляется форма третьего шага создания сайта.

) Администратор выбирает шаблон дизайна создаваемого сайта и нажимает кнопку «Дальше».

) Администратор перенаправляется в панель администрирования нового сайта по адресу, указанному в первом шаге.

Альтернативные потоки

Альтернативные потоки отсутствуют

Предусловия

Авторизация в системе с ролью «Суперадминистратор».

Постусловия

Если вариант использования закончится успешно, в системе создастся новый сайт.

Классы, участвующие в вариантах использования пользователя с ролью «Администратор», представлены в таблице 7.

Таблица 7 - Классы, участвующие в вариантах использования пользователя с ролью «Администратор»

Вариант использования

Классы

Привязка домена к сайту

CWebApplication, CController, Sites, CActiveRecord

Добавление модуля на сайт

CWebApplication, ModulesJoinPage, CActiveRecord, ModulesJoinPageController, CController, UserIdentity, ModulesJoinContent, Modules, WStaticPagesContent, WVideoContent, WContactFormContent, WNewsCategories, WFilesManagerCategories, WCatalogCategories, WNewsCategories, WFilesManagerCategories, WCatalogCategories, Rows, Cols

Удаление модуля с сайта

CWebApplication, CController, ModulesJoinPageController, ModulesJoinPage, CActiveRecord

Смена шаблона дизайна сайта

CWebApplication, CController, Templates, CActiveRecord

Редактирование структурной разметки сайта

CWebApplication, CController, ModulesJoinPageController, ModulesJoinPage, Rows, Cols, CActiveRecord

Создание правила CSS

CWebApplication, CController, SiteCssController, SiteCss, CActiveRecord

Удаление правила CSS

CWebApplication, CController, SiteCssController, SiteCss, CActiveRecord

Пополнение баланса лицевого счета

CWebApplication, CController, BillingController, Billing, CActiveRecord

Пошаговое создание сайта при помощи мастера

CWebApplication, CController, Sites, ModulesJoinPage, ModulesJoinContent, Rows, Cols, CActiveRecord


В таблице 8 приведена спецификация классов для вариантов использования пользователя с ролью «Суперадминистратор».

Таблица 8 - Спецификация классов вариантов использования пользователя с ролью «Суперадминистратор»

Класс

Описание

Свойства и методы

ModulesJoinPage

Наследник CActiveRecord. Представляет собой объект таблицы «modules_join_page»

model(), tableName(), relations(), search(),getModuleName(),getModuleContent(), getModuleWidth(), getMaxAvailableWidth()

ModulesJoinPageController

Наследник CController. Реализует основные методы для управления структурой страницы сайта и управления модулями

actionDeleteBlock(), actionM_MoveAndSave(), actionC_MoveAndSave(), actionR_MoveAndSave(), actionCreate(), actionUpdate(), actionDelete(), actionDeleterow(), actionAdmin(), actionAjaxContent()

ModulesJoinContent

Наследник CActiveRecord. Представляет собой объект таблицы «modules_join_content».

model(), tableName(), relations(), search(), getModulesList(), getJoinContent(), copyJoinContent()

Modules

Наследник CActiveRecord. Представляет собой объект таблицы «modules».

model(), tableName(), relations(), search(),

WStaticPagesContent

Наследник CActiveRecord. Представляет собой объект таблицы «wstaticpages_content».

model(), tableName(), relations(), search(),

WVideoContent

Наследник CActiveRecord. Представляет собой объект таблицы «wvideo_content».

model(), tableName(), relations(), search(),

WContactFormContent

Наследник CActiveRecord. Представляет собой объект таблицы «wcontactform_content».

model(), tableName(), relations(), search(),

WNewsCategories

Наследник CActiveRecord. Представляет собой объект таблицы «wnews_categories».

model(), tableName(), relations(), search(),

WCatalogCategories

Наследник CActiveRecord. Представляет собой объект таблицы «wcatalog_categories»

model(), tableName(), relations(), search(),

WNewsContent

Наследник CActiveRecord. Представляет собой объект таблицы «wnews_content».

model(), tableName(), relations(), search(),

WFilesContent

Наследник CActiveRecord. Представляет собой объект таблицы «wfiles_content».

model(), tableName(), relations(), search(),

WCatalogContent

Наследник CActiveRecord. Представляет собой объект таблицы «wcatalog_content».

model(), tableName(), relations(), search(),

Rows

Наследник CActiveRecord. Представляет собой объект таблицы «rows».

model(), tableName(), relations(), search(),

Cols

Наследник CActiveRecord. Представляет объект таблицы «cols».

model(), tableName(), relations(), search(),

SiteCssController

Наследник CController. Реализует основные методы для управления стилями CSS

actionCreate(), actionUpdate(), actionDelete (), actionAdmin()

SiteCss

Наследник CActiveRecord. Представляет собой объект таблицы «cols».

model(), tableName(), relations(), search(),


2.4 Спецификация варианта использования «Добавление модуля на сайт»

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

Рисунок 7 - Диаграмма классов для варианта использования «Добавление модуля на сайт»

Класс ModulesJoinPageController предназначен для реализации контроллера, осуществляющего взаимодействие с пользователем. Используется для связи модели с видом.

Класс ModulesJoinPageModel предназначен для работы c таблицей modules_join_page БД CMS SiteONas.

Класс ModulesJoinPageView предназначен для представления HTML кода пользователю.

Класс UserIdentity предназначен для разделения прав доступа к методам контроллера.

В таблице 9 представлено описание атрибутов и методов класса ModulesJoinPageController

Таблица 9 - описание атрибутов и методов класса ModulesJoinPageController

Атрибут / метод

Тип

Описание

page_id

int

Атрибут, представляющий собой идентификатор страницы, на которую добавляется модуль

module_id

int

Атрибут, представляющий собой идентификатор модуля, добавляемого на сайт

actionCreate(pageId)

void

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

renderView(nameView)

Void

Метод, предназначенный для подключения вида к контроллеру и вывода содержимого вида пользователю. Параметр nameView содержит название подключаемого вида.

model()

ActiveRecord

Статический метод, возвращающий объект модели типа ActiveRecord.

redirect(url)

void

Метод, перенаправляющий пользователя на указанный URL.


Листинг класса ModulesJoinPageController приведен в приложении А. Текст программы оформлен в соответствии с ГОСТ 19.401-78, ГОСТ 19.101-77, ГОСТ 19.103-77.

В таблице 10 представлено описание атрибутов и методов класса ModulesJoinPageModel

Таблица 10 - Описание атрибутов и методов класса ModulesJoinPageModel

Атрибут/метод

Тип

Описание

page_id

int

Атрибут, представляющий собой идентификатор страницы, на которую добавляется модуль

site_id

int

Атрибут, представляющий собой идентификатор сайта, на который добавляется модуль

user_id

int

Атрибут, представляющий собой идентификатор пользователя, являющегося администратором сайта

col_id

int

Атрибут, представляющий собой идентификатор колонки, в которую добавляется модуль

row_id

int

Атрибут, представляющий собой идентификатор строки, в которую добавляется модуль

validate()

boolean

Метод, предназначенный для валидации данных, введенных пользователем в HTML форме, в случае успешной валидации всех правил возвращает true, в противном случае - false

insert()

boolean

Метод, вставляющий запись в БД CMS. В случае успешной вставки записи возвращает true, в противном случае - false

save()

boolean

Метод, сохраняющий изменения, внесенные в БД CMS. В случае успешного сохранения возвращает true, в противном случае - false

В таблице 11 представлено описание атрибутов и методов класса ModulesJoinPageView

Таблица 11 - Описание атрибутов и методов класса ModulesJoinPageView

Атрибут / метод

Тип

Описание

nameView

string

Атрибут, представляющий собой название текущего вида

display()

void

Метод, предназначенный для вывода информации, содержащейся в виде пользователю.


Диаграмма последовательности для варианта использования «Регистрация нового пользователя» для пользователя с ролью «Суперадминистратор» изображена на рисунке 8.

контент управление программный продукт

Рисунок 8 - Диаграмма последовательности для варианта использования «Добавление модуля на сайт»

Опишем поток событий для диаграммы последовательности.

Вариант использования «Добавление модуля на сайт»

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

Основной поток событий

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

Пользователь перетаскивает модуль на любое место на сайте при помощи клиентской библиотеки jQuery.

При наступлении события sortable() jQuery вызывает метод actionCreate, в который передается идентификатор текущей страницы.

Метод checkPermission() проверяет права доступа текущего пользователя к методу actionCreate() на основе полученного при помощи метода getSiteId идентификатора сайта.

Контроллер подключает вид при помощи метода renderView(), передавая ему значение, соответствующее подключаемому виду.

Вид отображает пользователю HTML код формы добавления модуля с помощью метода display().

Пользователь вводит в форму требуемые данные (содержимое модуля, ширину модуля и т.п.) и подтверждает отправку формы кнопкой «ОК».

Контроллер получает модель модуля и сопоставляет с ней данные, введенные пользователем.

Модель осуществляет валидацию данных при помощи метода validate(). В случае успешной валидации модель вставляет данные о модуле в базу данных методом insert() и сохраняет их, вызвав метод save().

Предусловия

Авторизация в системе с ролью «Администратор».

Постусловия

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

2.5 Проектирование структуры базы данных CMS «SiteONas»

БД CMS «SiteONas» использует в качестве сервера БД MySQL. Концептуальная модель БД CMS «SiteONas» показана на рисунке 9.

Рисунок 9 - Концептуальная модель БД CMS «SaitONas»

В таблице 12 приведены таблицы БД CMS «SiteONas» с описанием.

Таблица 12 - Таблицы БД CMS «SiteONas»

Название

Описание

Billing

Содержит сведения об оплате сайта пользователем и количество средств на его лицевом счете

Cols

Содержит информацию о структурных элементах сайта - колонках.

Modules

Содержит информацию о типах модулей, доступных для подключения на сайте.

Modules_join_content

Служит для связи типов модулей с содержимым модулей. Формирует контент для структурных элементов сайта - модулей.

Modules_join_page

Служит для связи контента модулей со страницами сайта. Формирует структурную разметку страницы, связывая между собой строки, столбцы и модули на странице.

Pages

Содержит информацию о страницах сайта.

Rows

Содержит информацию о структурных элементах сайта - строках.

Sites

Содержит информацию о сайтах, использующих CMS.

System_preferences

Содержит информацию о настройках сайта.

Template_standarts

Содержит набор стандартных тем оформления.

Templates

Содержит информацию о текущей подключенной к сайту теме.

Users

Содержит сведения о пользователях CMS.

Wcatalog_categories

Содержит информацию о созданных категориях в модуле «Каталог товаров»

Wcatalog_content

Содержит информацию о созданном содержимом модуля «Каталог товаров»

Wcontactform_content

Содержит информацию о созданном содержимом модуля «Обратная связь»

Wfilesmanager_categories

Содержит информацию о созданных категориях в модуле «Файловый менеджер»

Продолжение таблицы 8

Wfilesmanager_content

Содержит информацию о созданном содержимом модуля «Файловый менеджер»

Wnews_categories

Содержит информацию о созданных категориях в модуле «Новости»

Wnews_content

Содержит информацию о созданном содержимом модуля «Новости»

Wstaticpages_content

Содержит информацию о созданном содержимом модуля «Текстовый блок»

Wvideo_content

Содержит информацию о созданном содержимом модуля «Видео»

3. Описание программного продукта

.1 Руководство пользователя

.1.1 Регистрация в CMS «SiteONas»

Для начала использования CMS «SiteONas» необходимо зарегистрироваться на сайте siteonas.ru. Форма регистрации изображена на рисунке 10.

Рисунок 10 - Форма регистрация пользователя CMS «SiteONas»

В поле «Адрес электронной почты» необходимо указать существующий электронный адрес, к которому имеется доступ. В качестве адреса сайта необходимо указать домен третьего уровня, по которому пользователи будут заходить на сайт.

После нажатия кнопки «Зарегистрироваться и создать сайт» на указанную электронную почту приходит письмо, в котором есть ссылка для активации нового пользователя и пароль для входа на сайт (рисунок 11).

Рисунок 11 - Электронное письмо со ссылкой для активации и паролем

До момента активации нового пользователя учетная запись будет заблокирована. После перехода по ссылке для активации сайта пользователь попадает на страницу авторизации (рисунок 12).

Рисунок 12 - Форма авторизации пользователя

Если пользователь указал правильные имя и пароль, то он попадает в панель управления CMS «SiteONas» (рисунок 13).

Рисунок 13 - Панель управления CMS «SiteONas»

3.1.2 Создание сайта в CMS «SiteONas»

Для создания сайта в CMS «SiteONas» необходимо воспользоваться мастером создания сайта. Для запуска мастера создания сайта необходимо нажать кнопку «Создать сайт» в панели управления CMS.

После запуска мастера откроется форма первого шага создания сайта, в которой пользователь должен ввести такие данные как название создаваемого сайта, его локальный адрес и тариф сайта (рисунок 14).

Рисунок 14 - Первый шаг мастера создания нового сайта

На следующем шаге пользователь выбирает макет нового сайта. В CMS «SiteONas» поддерживаются следующие макеты:

одноколоночный;

двухколоночный с левым меню;

двухколоночный с правым меню;

трехколоночный.

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

Рисунок 15 - Второй шаг мастера создания нового сайта

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

После того, как сайт создан, пользователь перенаправляется в панель администрирования нового сайта.

Мастер создания сайта создает шаблон сайта с тремя страницами: «Главная», «Новости» и «Контакты» в соответствии с выбранными настройками (рисунок 16).

Рисунок 16 - Созданный шаблон сайта

3.1.3 Наполнение сайта контентом

Для перехода в режим редактирования сайта необходимо авторизироваться в панели управления CMS «SiteONas». При этом пользовательская часть сайта изменяется: появляются границы блоков, строк и столбцов, панель добавления модуля CMS на сайт, а также корзина для удаления модуля (рисунок 17).

Рисунок 17 - Главная страница сайта в режиме редактирования

Для того чтобы добавить новый модуль на сайт, пользователь должен нажать на кнопку «Добавить модуль». Появиться панель добавления модуля на сайт со списком модулей, доступных для данного тарифа (рисунок 18).

Рисунок 19 - Панель добавления модуля на сайт

Затем, выбрав требуемый модуль, пользователь перетаскивает его в нужное место на сайте (рисунок 20).

Рисунок 20 - Перетаскивание модуля выбранного типа на сайт

Когда пользователь отпускает изображение модуля, открывается модальное окно, в котором можно задать настройки для модуля и содержимого модуля (рисунок 21).

Рисунок 21 - Окно добавление модуля на сайт

После нажатия кнопки «Добавить» модуль будет добавлен в указанное место с заполненным пользователем содержимым (рисунок 22).

Рисунок 23 - Главная страница после добавления текстового модуля

Для редактирования содержимого модуля необходимо правой кнопкой мыши нажать на модуле, содержимое которого требуется отредактировать. Появится контекстное меню, в котором необходимо выбрать пункт «Настройки модуля» (рисунок 24).

Рисунок 24 - Контекстное меню модуля

Опции «Редактировать CSS стили колонки» и «Редактировать CSS стили строки» позволяют редактировать CSS стили колонки и строки, в которых расположен модуль.

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

Рисунок 25 - Диалоговое окно подтверждения удаления блока

При нажатии кнопки «Удалить блок» модуль удалится со страницы, но его содержимое остается доступно для добавления в других модулях.

3.1.4 Управление дизайном сайта

Для управления дизайном сайта в CMS «SiteONas» реализован механизм темизации. Для смены шаблона дизайна сайта необходимо выбрать подходящую тему из списка в разделе «Смена темы сайта» панели управления сайта (рисунок 26).

Рисунок 26 - Раздел «Смена темы сайта» CMS «SiteONas»

Для «тонкой» настройки дизайна используются правила CSS. Для создания, редактирования и удаления правил CSS необходимо выбрать пункт меню «Стили CSS» для перехода в раздел «Управление отображением» панели управления сайта (рисунок 27).

Рисунок 27 - Раздел «Управление отображением» CMS «SiteONas»

Для создания правила CSS необходимо выбрать «Создать правило», после чего появится форма добавления нового правила, в которой нужно заполнить поля «Селектор» и «Правило» (рисунок 28).

Рисунок 28 - Форма добавления нового CSS правила

3.1.5 Управление настройками сайта

Настройки сайта находятся в разделе «Настройки сайта» (рисунок 29).

Рисунок 29 - Раздел «Настройки сайта» CMS «SiteONas»

В настройках сайта можно поменять название сайта, удалить сайт, задать код счетчика посещений, сформировать файл robots.txt.

Название сайта отображается в заголовке браузера и в шапке сайта.

Счетчик посещений представляет собой код на языке JavaScript для учета количества посетителей сайта.

Файл robots.txt предназначен для поисковых роботов, индексирующих сайт. В нем ограничивается доступ к определенным директориям сайта.

Управление доменом сайта выполняется в разделе «Управление доменом» (рисунок 30).

Рисунок 30 - Раздел «Управление доменом» CMS «SiteONas»

Локальный адрес сайта представляет собой домен третьего уровня, а внешний домен - домен второго уровня, который является необязательным.

Каждый пользователь CMS «SiteONas» имеет личную информацию, включая адрес электронной почты, имя, фамилию, отчество, пароль и т.д. Для управления личной информацией необходимо перейти в раздел «Личная информация» (рисунок 31).

Рисунок 31 - Раздел «Личная информация» CMS «SiteONas»

3.1.6 Управление модулями CMS

В CMS «SiteONas» все основные и дополнительные функциональные возможности реализованы в форме модулей CMS.

В CMS «SiteONas» доступны следующие модули:

новости;

меню;

текстовый блок;

менеджер файлов;

контакты;

видео;

каталог продукции;

фотогалерея.

Каждый модуль доступен в панели администрирования CMS в разделе «Модули» (рисунок 32).

Рисунок 32 - Раздел меню «Модули» CMS «SiteONas»

Для того чтобы просмотреть содержимое, соответствующее типу модуля, необходимо выбрать соответствующий модуль в меню. Например, для просмотра всех текстовых материалов необходимо выбрать пункт меню «Текстовый блок», при этом откроется раздел «Управление текстовыми блоками», содержащий список всех текстовых материалов, добавленных на данный сайт (рисунок 33).

Рисунок 33 - Раздел «Управление текстовыми блоками» CMS

В данном разделе можно создавать, редактировать и удалять текстовые блоки.

Для редактирования и удаления блока необходимо выбрать соответствующие пиктограммы в строчке с требуемым блоком.

Для создания текстового блока необходимо выбрать кнопку «Создать текстовый блок». Откроется форма создания текстового блока (рисунок 34). В данной форме необходимо ввести заголовок текстового блока, содержимое текстового блока, а также указать, будет выводится заголовок или нет.

Рисунок 34 - Форма создания нового текстового блока

3.1.7 Администрирование CMS

В CMS «SiteONas» реализована система распределения прав доступа. Главной ролью является «Суперадминистратор». В его функции входит:

управление конфигурацией CMS;

управление пользователями CMS;

управление сайтами пользователей CMS;

управление лицевыми счетами пользователей CMS;

оповещение пользователей CMS о технических работах, окончании срока оплаты и т.п.

Данные функции реализованы в разделе «Администратор» панели администрирования CMS «SiteONas» (рисунок 35). Эти функции доступны только пользователям, имеющим роль «Суперадминистратор».

Рисунок 35 - Панель администрирования для пользователей с ролью «Суперадминистратор»

Для управления пользователями CMS необходимо перейти в раздел «Управление пользователями» в панели администрирования CMS «SiteONas» (рисунок 36).

Рисунок 36 - Раздел «Управление пользователями» CMS «SiteONas»

В данном разделе пользователь с ролью «Суперадминистратор» имеет возможность зарегистрировать пользователя с ролью «Администратор». Для этого он должен нажать кнопку «Добавить пользователя». В форме регистрации пользователя (рисунок 37) суперадминистратор должен ввести адрес электронной почты пользователя и адрес сайта нового пользователя.

Рисунок 37 - Форма регистрации нового пользователя

После регистрации нового пользователя на указанный электронный адрес будет выслано сообщение со ссылкой для активации.


Рисунок 38 - Раздел «Управление сайтами» CMS «SiteONas»

В данном разделе суперадминистратор имеет возможность отредактировать информацию о сайте, управлять оплатой сайта, а также войти в любой сайт под именем и паролем его владельца.

Для редактирования информации о сайте необходимо выбрать соответствующую пиктограмму напротив имени сайта, информацию о котором мы хотим отредактировать. В открывшейся форме редактирования информации о сайте суперадминистратор может изменить такие данные как локальный адрес, тариф, код счетчика посещений, содержимое файла robots.txt (рисунок 39).

Рисунок 39 - Форма редактирования сайта

Для управления оплатой сайта необходимо выбрать соответствующую пиктограмму напротив имени сайта в разделе «Управление сайтами» панели администрирования CMS «SiteONas». В открывшейся форме выводится список всех операций с лицевым счетом пользователя (рисунок 40). В данном разделе суперадминистратор может пополнить лицевой счет пользователя или списать с его счета определенную сумму. Также на экран выводится текущий баланс выбранного пользователя CMS.

Рисунок 40 - Раздел «Управление оплатой сайта» CMS «SiteONas»

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

Для управления рассылками для пользователей CMS необходимо перейти в раздел «Управление рассылками» в панели администрирования CMS «SiteONas» (рисунок 41).

Рисунок 41 - Раздел «Управление рассылками» CMS «SiteONas»

Данный раздел содержит список рассылок, осуществленных суперадминистратором CMS «SiteONas». Для осуществления рассылки необходимо нажать кнопку «Добавить рассылку». В отрывшейся форме необходимо ввести текст рассылки, выбрать пользователям, получающих данную рассылку и нажать кнопку «Отправить» (рисунок 43). Рассылку можно отправить как всем пользователям сразу, так и выбранным из списка. Для выбора всех пользователей необходимо выбрать галочку в заголовке таблицы.

Рисунок 42 - Форма создания новой рассылки

3.1.8 Примеры сайтов, использующих CMS «SiteONas»

В настоящее время CMS «SiteONas» приобретает все большую популярность. Одним из примеров использования CMS является сайт профессионального фотографа foto-kavkaz.com (рисунок 44). Данный сайт включает в себя такие модули как: фотогалерея, обратная связь, каталог товаров и текстовые блоки.

Рисунок 43 - Главная страница сайта foto-kavkaz.com

Другим примером, демонстрирующим возможности CMS «SiteONas», является сайт компании застройщика маг-строй.рф (рисунок 43). Особенностями данного проекта стали: кириллический домен в зоне.рф, сложная верстка, оригинальная фотогалерея и подробная схема проезда.

Рисунок 44 - Главная страница сайта маг-строй.рф

3.2 Руководство программиста

CMS должна работать на основе сервера БД, работающим под управлением MySQL Server. Необходимо выбрать виртуальный хостинг, или выделенный сервер, на котором установлена следующая конфигурация веб-сервера:

ОС Linux не ниже версии 2.6;

веб-сервер Apache не ниже версии 1.3.41;

сервер БД MySQL не ниже версии 5.0;интерпретатор не ниже версии 5.1.

Форматы данных, используемые в CMS:

файлы серверных скриптов, включая файлы настройки CMS, имеют расширение.php;

изображения элементов управления CMS имеют расширение.png;

подключаемые шаблоны и модули CMS хранятся в архивах с расширениями.rar,.tar,.zip;

файлы журналов событий имеют расширение.log;

файл «тонкой» настройки web-сервера имеет расширение.htaccess.

Для доступа к CMS на ПК клиента должен быть доступ к сети интернет и установлен браузер Internet Explorer (не ниже версии 6.0), Opera, Safari, Mozilla Firefox или Google Chrome.

Данные технические параметры были получены при испытании ПП согласно ГОСТ 19.301-79.

4. Технико-экономическое обоснование эффективности программного обеспечения

.1 Проблема, решаемая в разрабатываемом программном продукте

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

Целью создания CMS является повышение эффективности управления Интернет-приложениями, в том числе:

добавления, удаления, редактирования информации в БД CMS;

подключения, удаления дополнительных модулей CMS;

публикации информации на сайте;

изменения дизайна сайта.

В результате внедрения проектного решения ожидается:

повышение эффективности разработки интернет-приложений;

снижение временных затрат при разработке интернет-приложений.

4.2 Основные показатели, определяющие экономическую эффективность разработки программного обеспечения

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

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

улучшение основных показателей, происходящее в результате использования ПП;

сокращение сроков освоения новых ПП за счет их лучших эргономических характеристик;

повышение технического уровня, качества и объемов вычислительных работ;

увеличение объемов и сокращение сроков переработки информации;

повышение коэффициента использования вычислительных ресурсов, средств подготовки и передачи информации;

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

снижение затрат на эксплуатационные материалы.

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

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

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

Фактический экономический эффект рассчитывается на основе данных учета и сопоставления затрат и результатов при конкретных применениях ПП.

Показатели экономической эффективности ПП определяются:

экономической оценкой результатов влияния ПП на конечный результат их использования (основное направление анализа и расчета показателей эффективности - для прикладных ПП);

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

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

4.3 Оценка трудоемкости разработки программного обеспечения

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

Простое действующее лицо представляет внешнюю систему с четко определенным программным интерфейсом.

Среднее действующее лицо представляет либо внешнюю систему, взаимодействующую с данной системой посредством протокола наподобие ТСР/IP, либо личность, пользующуюся текстовым интерфейсом (например, алфавитно-цифровым терминалом).

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

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

Таблица 13 - Весовые коэффициенты действующих лиц

Тип действующего лица

Весовой коэффициент

Простой

1

Средний

2

Сложный

3


Для CMS, действующие лица и тип сложности приведен в таблице 14.

Таблица 14 - Действующие лица и тип сложности

Действующее лицо

Тип сложности действующего лица

Суперадминистратор

Сложный

Администратор

Сложный

Пользователь

Сложный

База данных

Средний


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

Таблица 15 - Типы сложности вариантов использования и их весовые коэффициенты

Тип сложности

Описание

Весовой коэффициент

Простой

3 или менее транзакций

5

Средний

от 4 до 7 транзакций

10

Сложный

более 7 транзакций

15

Для разрабатываемой CMS, сложность вариантов использования приведена в таблице 16.

Таблица 16 - Варианты использования и их тип сложности

Вариант использования

Тип сложности

«Создание сайта»

Средний

«Изменение конфигурации CMS»

Простой

«Добавление модуля CMS на сайт»

Простой

«Удаление модуля CMS с сайта»

Простой

«Управление стилями CSS»

Простой

«Привязка домена сайта»

Простой

«Управление разметкой сайта»

Простой


Техническая сложность проекта (TCF - Technical Complexity Factor) вычисляется с учетом показателей технической сложности, которые приведены в таблице 17.

Таблица 17 - Показатели технической сложности проекта

Показатель

Описание

Вес

T1

Распределенная система

2

T2

Высокая производительность (пропускная способность)

1

T3

Работа конечных пользователей в режиме online

1

T4

Сложная обработка данных

1

T5

Повторное использование кода

1

T6

Простота установки

0,5

T7

Простота использования

0,5

T8

Переносимость

2

T9

Простота внесения изменений

1

T10

Параллелизм

1

T11

Специальные требования к безопасности

1

T12

Доступ к системе со стороны внешних пользователей

1

T13

Специальные требования к обучению пользователей

1


Каждому показателю присваивается значение TCF в диапазоне от 0 до 5 (0 означает отсутствие значимости показателя для данного проекта, 5 - высокую значимость). В таблице 18 приведены значения показателей, а также значения показателей с учетом весов.

Таблица 18 - Значения показателей технической сложности проекта

Показатель

Вес

Значение

Значение с учетом веса

Т1

2

5

10

Т2

1

4

4

Т3

1

5

5

Т4

1

1

1

Т5

1

4

4

Т6

0,5

1

0,5

Т7

0,5

5

2,5

Т8

2

0

0

T9

1

4

4

T10

1

1

1

T11

1

5

5

T12

1

5

5

T13

1

4

4


46


Уровень квалификации разработчиков (EF - Environmental Factor) вычисляется с учетом показателей, приведенных в таблице 19.

Таблица 19 - Показатели уровня квалификации разработчиков

Показатель

Описание

Вес

F1

Знакомство с технологией

1,5

F2

Опыт разработки приложений

0,5

Продолжение таблицы 19


F3

Опыт использования объектно-ориентированного подхода

1

Показатель

Описание

Вес

F4

Наличие ведущего аналитика

0,5

F5

Мотивация

1

F6

Стабильность требований

2

F7

Частичная занятость

-1

F8

Сложные языки программирования

-1


Каждому показателю присваивается значение в диапазоне от 0 до 5. Для показателей F1-F4, 0 - означает отсутствие, 3 - средний, 5 - высокий уровень. Для показателя F5, 0 - означает отсутствие мотивации, 3 - средний уровень, 5 - высокий уровень мотивации. Для F6, 0 - означает высокую нестабильность требований, 3 - среднюю, 5 - стабильные требования. Для F7, 0 - означает отсутствие специалистов с частичной занятостью, 3 - средний уровень, 5 - все специалисты с частичной занятостью. Для показателя F8, 0 - означает простой язык программирования, 3 - среднюю сложность. 5 - высокую сложность. На основе показателей вычисляется значение с показателя с учетом веса показателя.

В таблице 20 приведены значения показателей, а так же значения показателей с учетом весов.

Таблица 20 - Значения показателей уровня квалификации разработчиков

Показатель

Вес

Значение

Значение с учетом веса

F1

1,5

4

6

F2

0,5

3

1,5

F3

1

4

4

F4

0,5

5

2,5

F5

1

4

4

F6

2

3

6

F7

-1

3

-3

F8

-1

2

-2


19


В качестве начального значения предлагается использовать 20 человеко-часов на одну UCP. Эта величина может уточняться с учетом опыта разработчиков. Приведем пример возможного уточнения.

Рассмотрим показатели F1 - F8 и определим, сколько показателей F1 - F6 имеют значение меньше 3 и сколько показателей F7 - F8 имеют значение больше 3. Если общее количество меньше или равно 2, следует использовать 20 человеко-часов на одну UCP, если 3 или 4 - 28. Если общее количество равно 5 или более, следует внести изменения в сам проект, в противном случае риск провала слишком высок.

4.4 Расчет показателей экономической эффективности внедрения программного продукта

Для расчета экономического эффекта, который будет получен, при разработке CMS «SiteONas», необходимо рассчитать ряд показателей входящих в понятие экономической эффективности. Данные показатели включают в себя такие параметры как срок разработки программы, количество пользователей и т.п. Эти показатели представлены в таблице 21.

Таблица 21 - Показатели экономической эффективности

Наименование показателя

Обозначение

Значение

Ед. измерения

Срок разработки программы

tp

6

мес.

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

Взп

6000

руб./мес.

Количество рабочих дней за 24 недели

Кдн

168

день

Режим использования компьютера

Р

8

час/сут.

Стоимость компьютера

Цпк

25600

руб.

Время отладки, установки и внедрения

to

40

час.

Стоимость одного часа работы ПЭВМ

Зчк

9

руб.


За время разработки ПО были израсходованы материалы, стоимость которых приведена в таблице 22.

Таблица 22 - Перечень израсходованных материалов

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

Количество, шт.

Цена, руб.

Сумма, руб.

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

1

110

110

Бумага (пачка 500 листов)

2

120

Ватман, лист формата А1

5

10

50

Диск СD-R

1

14

14

Итого, Wн:

414


Налог на доходы физических лиц (НДФЛ) равен 13% и Отчисления (Отч) равны 30% (ПФ - 22%, ФСС - 2,9 %, ФФОМС - 5,1%), т.е. Wдд = 0.13, а Wo = 0.3.

Для расчета полной себестоимости ПП необходимо определить затраты связанные с заработной платой и прочие затраты.

Выделим рассчитанные экономические показатели в таблицу 23.

Таблица 23 - Основные экономические показатели для одного ПП

Показатель

Значение

Полная себестоимость ПП, руб.

85012,2

Цена одного ПП, руб.

110515,9

Чистая прибыль, руб.

25503,7

Срок окупаемости, год

1,77

5. Безопасность жизнедеятельности

Для обеспечения охраны труда законодательство Российской Федерации устанавливает правовые нормы и принимает нормативные акты, регламентирующие условия труда, отвечающих требованиям сохранения жизни и здоровья работников в процессе трудовой. Основными регулирующими документами в области охраны труда являются Санитарно-эпидемиологические правила и нормативы. В частности, гигиенические требования к ПЭВМ и организации работ с ПЭВМ, устанавливает СанПиН [20]. Данные санитарные правила действуют на всей территории Российской Федерации и устанавливают санитарно-эпидемиологические требования к ПЭВМ и условиям труда работников. Требования данного СанПиНа направлены на предотвращение неблагоприятного влияния на здоровье человека вредных факторов производственной среды и трудового процесса при работе с ПЭВМ.

Для оценки соответствия производственного помещения санитарным нормам необходимо комплексно оценить ряд параметров, таких как взрыво-пожароопасность, оборудование рабочих мест, режим труда и отдыха работника. Рабочее место оператора ПК расположено в производственном помещении офиса №403 на 4 этаже четырехэтажного здания бизнес-центра «Капитал», в котором располагается головной офис ООО «Зимиос».

5.1 Требования к помещениям и аппаратным средствам

.1.1 Характеристика производственных помещений по взрыво- пожароопасности

По взрыво-пожароопасности помещение офиса №403, расположенного на 4 этаже бизнес-центра «Капитал», должно относиться к категории Д (производства, обрабатывающие несгораемые вещества в холодном состоянии).

Несущие стены должны иметь степень огнестойкости I; перегородки должны иметь степень огнестойкости I; несущие конструкции междуэтажных перекрытий должны иметь степень огнестойкости I.

Покрытие пола (линолеум), покрытие потолка и стен (штукатурка) должно относиться к трудно сгораемым материалам; офисное оборудование (столы, стулья) должно относиться к сгораемым материалам.

На 1 этаже бизнес-центра «Капитал» должно быть предусмотрено два эвакуационных выхода для обеспечения безопасной эвакуации людей при взрыво-пожароопасности. Они должны обеспечивать безопасный выход людей наружу кратчайшим путём в минимальное время. Также должно быть предусмотрено две лестницы: одна ‒ основная, вторая ‒ запасная, для безопасной эвакуации людей при взрыво-пожароопасности.

В фойе должен быть расположен план эвакуации. На стенах во всех коридорах должны быть расположены световые и бумажные индикаторы направления эвакуирования работников центра в случае ЧС.

.1.2 Характеристика производственных помещений по опасности поражения электрическим током

Помещение офиса №403 бизнес-центра «Капитал» должно классифицироваться как помещение без повышенной опасности, так как выполняет условия, минимизирующие вероятность поражения человека электрическим током:

полы покрыты линолеумом, следовательно, не токопроводящие;

относительная влажность воздуха не превышает 65 %, следовательно, помещение является сухим;

температура воздуха не превышает плюс 25С, следовательно, повышенной не является.

5.2 Требования к оборудованию рабочих мест

5.2.1 Санитарная характеристика рабочих мест

Площадь на одно рабочее место с ПЭВМ для взрослых пользователей должно составлять не менее 6,0 м2, а объем - не менее 20,0 м3.

Для внутренней отделки интерьера помещений с мониторами и ПЭВМ должны использоваться диффузно-отражающиеся материалы с коэффициентом отражения для потолка 0,7÷0,8; для стен 0,5÷0,6; для пола 0,3÷0,5.

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

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

Коэффициент отражения для потолка должен быть равен - 0,7; для стен - 0,6; для пола - 0,5. Поверхность пола офиса должна быть покрыта ровным, нескользким антистатическим линолеумом, удобным для очистки и для влажной уборки. Раз в неделю на экраны должны наноситься антистатическое покрытие.

Таким образом, санитарная характеристика рассматриваемого рабочего места должна соответствовать санитарным нормам.

.2.2 Характеристика выполняемых работ по степени тяжести, нормы и фактические значения параметров микроклимата на рабочем месте

Оператор ПК на рабочем месте в помещении офиса №403 бизнес-центра «Капитал» должен выполнять по тяжести труда легкую работу, так как согласно действующего СанПиН, большую часть рабочего времени сидит за рабочим столом. В зависимости от периода года и тяжести труда на рабочем месте должны соблюдаться условия микроклимата.

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

температура воздуха на рабочем месте 24 С;

относительная влажность воздуха 40-60 %;

скорость движения воздуха не более 0,1 м/с.

При тяжести труда - легкая работа и периоде года - холодный, параметры микроклимата должны составлять:

температура воздуха на рабочем месте от 22 С;

относительная влажность воздуха 40-60 %;

скорость движения воздуха не более 0,1 м/с.

Таким образом, характеристика выполняемых работ по степени тяжести, нормы и фактические значения параметров микроклимата на рассматриваемом рабочем месте должны соответствовать санитарным нормам.

.2.3 Характеристика выполняемых зрительных работ по степени точности

Помещение офиса №403 бизнес-центра «Капитал» должно иметь естественное и искусственное освещение. Естественное освещение должно осуществляется через светопроёмы, ориентированные по отношению к рабочему месту оператора ПК так, что естественный свет должен падать преимущественно слева, и обеспечивать коэффициент естественного освещения 5 %.

Для оператора ПЭВМ важной характеристикой является зрительная работоспособность, которая связана с разрядом зрительных работ и освещенностью. Разряд зрительной работы оператора ПЭВМ должен быть III (высокой точности), наименьший размер различения составляет от 0,3÷0,5 мм.

Освещенность на поверхности стола в зоне размещения рабочего документа должна составлять 500 лк. Освещение не должно создавать бликов на поверхности экрана.

Следует ограничивать прямую блескость от источников освещения, при этом яркость светящихся поверхностей (окна, светильники и др.), находящихся в поле зрения, должна быть не более 200 кд/м2. Для снижения блескости, окна в помещениях должны быть оборудованы светоотражающими жалюзи.

Показатель ослепленности для источников общего искусственного освещения в рассматриваемом производственном помещении равен 14.

На рабочем месте ограничивается неравномерность распределения яркости в поле зрения оператора ПК, при этом соотношение яркости между рабочими поверхностями не должно превышать 4:1, а между рабочими поверхностями и поверхностями стен и оборудования ‒ 8:1.

В качестве источников света при искусственном освещении должны применяться компактные люминесцентные лампы, коэффициент пульсации которых не превышает 5 %.

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

Таким образом, характеристика выполняемых зрительных работ по степени точности на рассматриваемом рабочем месте должна соответствовать санитарным нормам.

.2.4 Нормы и фактические значения шума на рабочих местах

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

В помещении офиса №403 бизнес-центра «Капитал» уровень вибрации не должен превышать допустимых значений вибрации для рабочих мест (категория 3, тип «В») в соответствии с действующими санитарно-эпидемиологическими нормативами.

Для снижения уровня шума в помещении офиса №403 должны использоваться звукопоглощающие материалы с максимальными коэффициентами звукопоглощения в области частот 63-8000 Гц.

Шумящее оборудование (печатающие устройства, серверы и т.п.), уровни шума которого превышают нормативные, должны быть размещены вне помещений с ПЭВМ.

Таким образом, характеристика шума на рассматриваемом рабочем месте должна соответствовать санитарным нормам.

.2.5 Нормы и фактические значения электромагнитных излучений на рабочих местах

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

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

Фактические значения уровней электромагнитного излучения на рабочем месте оператора ПЭВМ в офисе №403 бизнес-центра «Капитал» не должно превышать допустимых норм по электрической и магнитной составляющих электромагнитного поля, а также плотности потока энергии.

.2.6 Воздух рабочей зоны на рабочих местах

Воздух рабочей зоны помещения офиса №403 бизнес-центра «Капитал» должен соответствовать требованиям санитарно-гигиенических норм СанПиН по предельно допустимым концентрациям вредных веществ и пыли содержащихся в воздухе. В помещении офиса №403 бизнес-центра «Капитал», оборудованном ПЭВМ, должна проводиться ежедневная влажная уборка и систематическое проветривание после каждого часа работы на ПЭВМ.

Фактические значения концентраций вредных веществ и пыли в воздухе рабочей зоны оператора ПК должны соответствовать ПДК согласно требованиям СанПиН, так как источники загрязнения воздуха вредными веществами и пылью в смежных помещениях офиса №403 отсутствуют.

.2.7 Эргономические требования к рабочему месту с ПК

Рабочее место оператора ПЭВМ в помещении офиса №403 бизнес-центра «Капитал» должно быть оборудовано рабочим столом и стулом в соответствии с эргономическими требованиями норм СанПиН для работающих сидя.

Высота рабочей поверхности стола должна составлять 725 мм. Рабочий стол должен иметь пространство для ног высотой 700 мм, шириной ‒ 580 мм, глубиной на уровне колен ‒ 480 мм и на уровне вытянутых ног ‒ 860 мм.

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

Клавиатура должна располагаться на поверхности стола на расстоянии 130мм от края рабочей поверхности.

Таким образом, эргономические требования на рассматриваемом рабочем месте должны соответствовать санитарным нормам. [21]

5.3 Режим труда и отдыха

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

Виды трудовой деятельности при работе с ПК разделяются на три группы:

а) группа А - работа по считыванию информации с экрана ПК с предварительным запросом;

б) группа Б - работа по вводу информации;

в) группа В - творческая работа в режиме диалога с ПК.

Трудовая деятельность оператора ПК в основном должна относиться к группам А и Б.

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

Для видов трудовой деятельности установлены три категории тяжести и напряженности работы с ПЭВМ, которые определяются для работы с ПЭВМ за рабочий день, но не более 6 часов за рабочий день.

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

Продолжительность непрерывной работы с ПЭВМ без регламентированного перерыва не превышает 2 часов. При восьмичасовом рабочем дне и работе с ПЭВМ регламентированные перерывы должны устанавливаться через 2 часа от начала рабочего дня и через 2 часа после обеденного перерыва продолжительностью пятнадцать минут каждый.

5.4 Техника безопасности на рабочих местах

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

5.5 Пожарная безопасность в помещении

Помещение офиса №403 бизнес-центра «Капитал» должно быть оборудовано пожарной сигнализацией и первичными средствами пожаротушения (огнетушители), которые содержатся в соответствии с паспортными данными на них.

На каждом этаже здания бизнес-центра «Капитал» на видных местах должны быть вывешены планы эвакуации сотрудников, а так же запасные эвакуационные выходы из здания.

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

Двери и эвакуационные выходы не должны быть загромождены какими-либо предметами.

Помещения с электрооборудованием должны быть оснащены огнетушителями типа ОУБ-3, извещателями пожаротревоги, и другими средствами пожаротушения.

Все сотрудники ООО «Зимиос» должны быть проинструктированы о соблюдении требований правил пожарной безопасности в помещениях

5.6 Чрезвычайные ситуации на предприятии и план действий работающих в условиях чрезвычайной ситуации

В помещении офиса №403 бизнес-центра “Капитал” разработан план действий в случае возникновения чрезвычайных ситуаций (ЧС природного характера и угрозы террористического акта). Все сотрудники ознакомлены с планом действий, содержащим комплекс мероприятий по защите работников предприятия и территорий в ЧС, и должны придерживаться его в случае возникновения чрезвычайной ситуации.

Действия сотрудников во время ЧС природного характера:

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

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

в) Действия сотрудников ООО «Зимиос» при пожаре. Каждый сотрудник ООО «Зимиос» при обнаружении пожара или признаков горения обязан:

немедленно сообщить по телефону в пожарную охрану 01, при этом необходимо назвать адрес объекта, место возникновения пожара, а также сообщить свою фамилию;

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

г) В случае угрозы жизни людей

немедленно организовать их спасение, используя для этого имеющиеся силы и средства;

прекратить все работы в здании, кроме работ связанных с мероприятиями по ликвидации пожара;

удалить за пределы опасной зоны всех работников, не участвующих в тушении пожара;

одновременно с тушением пожара организовать защиту и тушение материальных ценностей;

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

д) Действия сотрудников ООО «Зимиос» во время ЧС, связанные с обнаружением взрывных устройств:

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

при угрозе взрыва по телефону необходимо попытаться узнать место и время предполагаемого взрыва. Постараться продлить время разговора, пытаясь прослушать шум или звуки, слышимые по телефону;

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

Заключение

Дипломный проект выполнен согласно заданию на дипломное проектирование в полном объеме и в соответствии с основными правилами оформления.

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

В результате выполнения дипломного проекта разработана CMS «SiteONas», выполняющая следующие функции:

добавление, удаление, редактирование информации в БД CMS;

подключение, удаление дополнительных модулей CMS;

публикация информации на сайте;

изменение дизайна сайта.

К преимуществам разработанной CMS относятся:

простота и высокая скорость создания сайта;

низкая стоимость поддержки сайта;

большое количество функциональных возможностей;

встроенные механизмы поисковой оптимизации сайта.

Список использованных источников

1.       Интернет-университет информационных технологий ИНТУИТ.ру [Электронный ресурс] / В.В. Полубояров. Введение в технологии создания Интернет-узлов / Лекция 7 - Режим доступа: <http://www.intuit.ru/department/> internet/inwwwtech/7, свободный. - Загл. с экрана. - Яз. рус.

.         Сайт компании WebАргумент [Электронный ресурс] - Режим доступа: <http://webargument.ru/node/558>, свободный. - Загл. с экрана. - Яз. рус.

.         Сайт компании itrack [Электронный ресурс] - Режим доступа: <http://itrack.ru/research/cmsrate>, свободный. - Загл. с экрана. - Яз. рус.

.         Котеров Д.В., Костарев А.Ф. PHP5 в подлиннике. [Текст] - СПб.: БХВ-Петербург, 2005. - 1120 с.

.         Малыхина М.П. Базы данных: основы, проектирование, использование. [Текст] СПб.: БХВ-Петербург, 2004. 512.: ил. ISBN 4-5678-0134-0.

.         Карпова Т.С. Базы данных: модели, разработка, реализация. [Текст] - СПб.: Питер, 2001. - 304 с.: ил. ISBN 4-1234-7894-8

.         Бабенко Т.А., Бельченко В.Е. Язык SQL в примерах. Часть 1 Команды отбора изменения данных: Учебно-методическое пособие для студентов обучающихся по специальности «информатика» Армавир, 2004. 26 с.

.         Карлинг М., Деглер С., Деннис Д. Системное администрирование Linux. [Текст] - М.: Вильямс, 2000. - 320 с.:ил. ISBN 5-8459-0054-9.

.         Эспозито Д. ASP.NET 2.0 Базовый курс [Текст] - СПб: Питер; М.: Издательско-торговый дом «Русская Редакция», 2007. - 4-е изд. - 687 с.: ил. ISBN 978-5-91180-423-7.

.         Орлов С.А. Технологии разработки программного обеспечения [Текст]: Учебник - СПб.: Питер, 2002. - 464 л.: ил. ISBN 2-2389-0231-1.

.         Петров С.Н. «Проектирование информационных систем» [Текст]: учебник - СПб.: Питер, 2002. - 524 л.: ил. ISBN 6-7349-0239-2.

.         Миклашевская Л.Н. Технология разработки программного обеспечения [Текст] - Краснодар, КубГТУ, 1999. - 215 с.

.         Вендров А.М. Практикум по проектированию программного обеспечения экономических информационных систем [Текст]: учебное пособия - М.: Финансы и статистика, 2006. - 544 с.

.         Рамбо Д., Якобсон А., Буч Г. UML: специальный справочник. [Текст] - СПб.: Питер, 2002. - 656 с. ISBN 0-321-26797-4.

.         Рамбо Д., Джекобсон А. UML. Руководство пользователя. [Текст] М.: ДМК 2000. 432 с.

.         Фаулер М., Скотт К. UML в кратком изложении. [Текст] М. Мир. 1999. 191 с.

.         Трофимов С.А., CASE-технологии: практическая работа в Rational Rose. [Текст] Изд. 2-е. - М.: Бином-Пресс, 2002 г. - 288 с.

.         Вендров А.М. Проектирование программного обеспечения экономических информационных систем [Текст]: учебник - М.: Финансы и статистика, 2004. - 192 с.

.         Ткаченко А.Д. Оценка экономической эффективности внедрения программного продукта [Текст]: Методические указания по дипломному проектированию для студентов всех форм обучения / А.Д. Ткаченко Армавир: Изд. АМТИ, 2005. 16 с.

.         Гигиенические требования к персональным электронно-вычислительным машинам и организации работы. СанПиН 2.2.2/2.4.1340-03 [Текст] - М.: Информационно-издательский центр Госкомсанэпиднадзора России, 1996 65 с. ISBN 5-7508-0049-0.

.         Сибаров Ю.Г. Охрана труда в вычислительных центрах [Текст]: Учебник для студентов СПТУ / Ю.Г. Сибаров и др. М.: Машиностроение, 1990. 192 с.

Приложение

Листинг программы

Файл контроллера sitesController.php

<?php

/**

* Класс, представляющий контроллер для управления сайтами CMS "SiteONas"

*/SitesController extends Controller

{

/**

* @var string шаблон для Вида

*/

public $layout='//layouts/column2';

/**

* @return array фильтры для методов класса

*/function filters()

{ array(

'accessControl', // выполняет контроль доступа к методам класса

);

}

/**

* Метод определяет правила для контроля доступа.

* Данный метод используется фильтром 'accessControl'.

* @return array правила для контрля доступа

*/function accessRules()

{ array(

// позволяет всем пользователям выполнять метод 'view'

array('allow',

'actions'=>array('view'),

'users'=>array('*'),

),

// позволяет пользователям с ролью "Администратор" выполнять методы 'create' и 'update'

array('allow',

'actions'=>array('create','update'),

'users'=>array('@'),

),

// позволяет пользователям с ролью "Суперадминистратор" выполнять методы 'admin' и 'delete'

array('allow',

'actions'=>array('admin','delete'),

'users'=>array('admin'),

),

// запрещает всем пользователям выполнять остальные методы

array('deny',

'users'=>array('*'),

),

);

}

/**

* Отображает выбранный сайт

* @param integer $id ID выбранного сайта

*/function actionView($id)

{

$this->render('view',array(

'model'=>$this->loadModel($id),

));

}

/**

* Создает новый сайт

* Если сайт создан успешно, то пользователь перенаправляется на страницу просмотра сайта

*/function actionCreate()

{

$model=new Sites;(isset($_POST['Sites']))

{

$model->attributes=$_POST['Sites'];($model->save())

$this->redirect(array('view','id'=>$model->site_id));

}

$this->render('create',array(

'model'=>$model,

));

}

/**

* Редактирует выбранный сайт

* Если сайт сохранен успешно, то пользователь перенаправляется на страницу просмотра сайта

* @param integer $id ID редактируемого сайта

*/function actionUpdate($id)

{

$model=$this->loadModel($id);(isset($_POST['Sites']))

{

$model->attributes=$_POST['Sites'];($model->save())

$this->redirect(array('view','id'=>$model->site_id));

}

$this->render('update',array(

'model'=>$model,

));

}

/**

* Удаляет выбранный сайт

* Если сайт удален успешно, то пользователь перенаправляется на страницу управления сайтами

* @param integer $id ID удаляемого сайта

*/function actionDelete($id)

{(Yii::app()->request->isPostRequest)

{

// удаление доступно только через РОST запрос

$this->loadModel($id)->delete();(!isset($_GET['ajax']))

$this->redirect(array('admin'));

}new CHttpException(400,'Неккоректный запрос.');

}

/**

* Управление сайтами

*/function actionAdmin()

{

$model=new Sites('search');

$model->unsetAttributes();(isset($_GET['Sites']))

$model->attributes=$_GET['Sites'];

$this->render('admin',array(

'model'=>$model,

));

}

/**

* Возвращает Модель на основе первичного ключа записи в БД

* Если модель не найдена, генерируется HTTP исключение

* @param integer ID загружаемой модели

*/

public function loadModel($id)

{

$model=Sites::model()->findByPk($id);($model===null)new CHttpException(404, 'Страница не существует.');$model;

}

}

Файл модели sites.php

<?php

/**

* Класс модели для таблицы 'sites'

*

* Свойства, соответствующие полям таблицы 'sites':

* @property integer $site_id

* @property integer $user_id

* @property string $site_title

* @property string $site_url

* @property string $site_domain

* @property integer $site_tariff_id

*/Sites extends CActiveRecord

{

/**

* Возвращает объект модели для текущего AR класса.

* @param string $className имя класса active record.

* @return Sites объект модели класса Sites

*/static function model($className=__CLASS__)

{parent::model($className);

}

/**

* @return string ассоциированое имя таблицы БД

*/function tableName()

{'sites';

}

/**

* @return array правила валидации для атрибутов модели

*/function rules()

{array(('site_id, user_id, site_title, site_url, site_domain, _tariff_id', 'required'),('site_id, user_id, site_tariff_id', 'numerical', 'integerOnly'=>true),('site_title, site_url, site_domain', 'length', 'max'=>255),('site_id, user_id, site_title, site_url, site_domain, _tariff_id', 'safe', 'on'=>'search'),

);

}

/**

* @return array правила, описывающие отношения с другими таблицами

*/function relations()

{

//связь с таблицей 'users'array(

'User' => array(self::BELONGS_TO, 'Users', 'user_id')

);

}

/**

* Получает список моделей на основе установленных правил

* @return CActiveDataProvider

*/function search()

{

$criteria=new CDbCriteria;

$criteria->compare('site_id',$this->site_id);

$criteria->compare('user_id',$this->user_id);

$criteria->compare('site_title',$this->site_title,true);

$criteria->compare('site_url',$this->site_url,true);

$criteria->compare('site_domain',$this->site_domain,true);

$criteria->compare('site_tariff_id',$this->site_tariff_id);new CActiveDataProvider($this, array(

'criteria'=>$criteria,

));

}

}

Файл вида create.php

<?php

//Меню сайта

$this->menu=array(('label'=>'Создать сайт', 'url'=>array('create')),('label'=>'Управление сайтами', 'url'=>array('admin')),

);

?>

<h1>Создание сайта</h1>

<div>

<?php

//Виджет фреймворка Yii формы добавления сайта

$form=$this->beginWidget('CActiveForm', array(

'id'=>'sites-form',

'enableAjaxValidation'=>false,

));

?>

<p>Поля, помеченные <span>обязательны для заполнения.</p>

<?php

?>

<div>

<?php echo $form->labelEx($model,'user_id'); ?>

<?php echo $form->dropDownList($model,'user_id',getUserList()); ?>

<?php echo $form->error($model,'user_id'); ?>

</div>

<div>

<?php echo $form->labelEx($model,'site_title'); ?>

<?php echo $form->textField($model,'site_title',array('size'=>60,'maxlength'=> 255)); ?>

<?php echo $form->error($model,'site_title'); ?>

</div>

<div>

<?php echo $form->labelEx($model,'site_url'); ?>

<?php echo $form->textField($model,'site_url',array('size'=>60,'maxlength'=> 255)); ?>

<?php echo $form->error($model,'site_url'); ?>

</div>

<div>

<?php echo $form->labelEx($model,'site_domain'); ?>

<?php echo $form->textField($model,'site_domain',array('size'=>60,'maxlength' =>255)); ?>

<?php echo $form->error($model,'site_domain'); ?>

</div>

<div>

<?php echo $form->labelEx($model,'site_tariff_id'); ?>

<?php echo $form->dropDownList($model,'site_tariff_id',getTariffList()); ?>

<?php echo $form->error($model,'site_tariff_id'); ?>

</div>

<div>

<?php echo CHtml::submitButton($model->isNewRecord ? 'Create' : 'Save'); ?>

</div>

<?php $this->endWidget(); ?>

</div>


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