Разработка динамического сайта для логопедических занятий
Создание Интернет-сайта для упрощения связи учителей-логопедов и родителей учащихся. Проектирование макета графического интерфейса. Выбор средств разработки программного продукта. Требования к функционалу ученика. Возможности интерфейса администратора.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 01.04.2013 |
Размер файла | 2,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Введение
В настоящее время существует большое разнообразие Интернет-сайтов, различающихся по назначению (информационные, развлекательные, сайты-форумы, промо-сайты), объёму информации (сайты-визитки, порталы), размеру аудитории (тематические сайты, корпоративные сайты), технологии отображения (статические, динамические).
В связи с широким распространением сети Интернет стало возможным использование сайтов для таких организаций, как школы, детские сады и другие образовательные учреждения. Но зачастую, такие сайты носят только информационный характер, они предназначены для родителей учащихся, тогда как для детских садов с логопедическими группами были бы полезны следующие возможности: просмотр учителем-логопедом списка своих учеников; просмотр информации о ребенке и его родителях учителем-логопедом не только в стенах учреждения, но и удаленно; отправка домашнего задания непосредственно родителям с помощью Интернет-сайта, вместо передачи через ребенка или его воспитателя; удаленное общение учителя-логопеда и родителей; изменение информации о расписании логопедических занятий с определенным учеником учителем-логопедом.
Для обеспечения вышеперечисленных возможностей возникает потребность в разработке динамического сайта для логопедических занятий.
1. Формирование требований к программному продукту
1.1 Постановка задачи
Целью данной работы является создание Интернет-сайта для упрощения связи учителей-логопедов и родителей учащихся, облегчения получения актуальной информации для проведения логопедических занятий.
Для достижения цели необходимо выполнить следующие задачи:
Анализ существующих аналогов - с помощью данного этапа выявляются достоинства и недостатки аналогичных программных продуктов.
Формирование требований к функциональности - на основе решения первой задачи делаются выводы о необходимых функциональных возможностях программного продукта.
Проектирование макета графического интерфейса - исходя из функциональных требований к программному продукту, разрабатывается визуальная часть системы взаимодействия пользователя и сайта.
Проектирование базы данных сайта - выполняется проектирование таблиц, ключей и связей, относящихся к базе данных.
Выбор средств разработки программного продукта - выбираются средства, позволяющие реализовать спроектированный сайт.
Реализация программного продукта - результатом решения этой задачи станет готовый сайт.
1.2 Обзор существующих аналогов
Чтобы сформировать требования к разрабатываемому сайту необходимо провести анализ существующих аналогичных программных продуктов, но в результате поиска среди русскоязычных Интернет-сайтов не было найдено таких, чьё назначение полностью соответствовало бы цели данной разработки, поэтому были рассмотрены логопедические сайты, функциональность которых хотя бы частично соответствует поставленной цели.
1.2.1 Сайт «Логопедия для всех»
Назначение сайта «Логопедия для всех» (http://www.logolife.ru/) можно узнать из эпиграфа на его страницах: «Логопедия, развитие речи детей. Для логопедов, детей и их мам. Логопедические занятия, упражнения, игры на развитие речи. Конспекты занятий» [1].
Рисунок 1.1 - сайт «Логопедия для всех»
Достоинствами этого сайта являются: возможность регистрации логопедов, просмотр их анкет; наличие раздела с логопедическими упражнениями и занятиями; в разделе «Консультация логопеда» родители могут задавать вопросы логопеду-администратору сайта.
Недостатки: нельзя задать вопрос определенному логопеду, в то же время, администратор-логопед консультирует родителей, не имея необходимой информации об их детях; для публикации на сайте материалов для занятий, таких как логопедические упражнения и задания, необходимо сделать запрос администратору, после чего он, возможно, опубликует их в соответствующем разделе, далее автор материала не имеет возможности его самостоятельно редактировать; в разделе «Компьютерные программы для логопедических занятий» представлены логопедические упражнения и игры в виде презентаций, которые можно использовать только после скачивания на компьютер.
1.2.2 Сайт «Логопед-профессионал»
Сайт «Логопед-профессионал» (http://www.logoped.pro/) служит для поиска логопедов и дефектологов и ознакомления с тематическими материалами, публикациями и фотографиями.
Рисунок 1.2 - сайт «Логопед-профессионал»
По сравнению с подобными сайтами, большим плюсом является возможность использования фильтров при поиске специалистов, например, пользователь может задать определенный стаж работы. Для личного общения с учителем-логопедом можно использовать приватные сообщения. Кроме того, зарегистрированные специалисты могут самостоятельно публиковать статьи и другие материалы.
Выраженный недостаток - это отсутствие какого-либо разделения логопедических материалов по темам или типам. Предусмотрен только общий поиск по сайту, то есть при поисковом запросе могут выдаваться, например, ссылки на анкеты специалистов.
1.2.3 Сайт логопедического центра «Людмила»
Кроме информации о самом логопедическом центре на данном сайте (http://log-center.ru/) представлены материалы по развитию и коррекции речи. Из достоинств можно выделить раздел «Логопеды» с подробной информацией о специалистах центра и раздел «Игры» с бесплатными логопедическими играми, которые можно запускать в онлайн-режиме, также существует возможность записи к определенному специалисту с помощью сайта.
Рисунок 1.3 - сайт «Логопедический центр “Людмила”»
На сайте существует раздел «Расписание занятий», но, вопреки ожиданиям, он содержит общее время проведения занятий с детьми в центре и лишь примерный образец графика индивидуальных занятий. Не предусмотрена регистрация пользователей, поэтому для изменения данных анкет логопедов используется очень неудобная система: каждый раз пользователю нужно заполнять в форме не только поля изменяемых данных, но и множество других обязательных полей.
1.2.4 Итоги обзора
В результате обзора можно сделать вывод, что содержание существующих логопедических сайтов, в основном, носит справочный, обобщенный характер, предлагаемые возможности не нацелены на индивидуальный подход к пользователям.
1.3 Функциональные требования
Из обзора аналогов программного продукта следует, что разрабатываемый сайт должен иметь несколько уровней доступа пользователей, с определенным функционалом.
1.3.1 Требования к функционалу неавторизированного пользователя
Не прошедший авторизацию пользователь должен иметь возможность зарегистрироваться на сайте в качестве учителя или в качестве ученика и войти в систему под своим паролем и логином, то есть, пройти авторизацию.
Размещено на http://www.allbest.ru/
Рисунок 1.4 - Возможности неавторизированного пользователя
1.3.2 Требования к функционалу ученика
Для пользователя-ученика нужно обеспечить изменение личных данных на своей странице и заполнение анкет, прикрепленных к странице учителем. Для взаимодействия с учителем, пользователю понадобится выбрать его из списка всех учителей и подать заявку на занесение в список учеников этого учителя. Чтобы облегчить поиск определенного учителя, нужно использовать фильтры поиска. Пользователь-ученик также должен иметь возможность обмениваться сообщениями со своим учителем и загружать на свой компьютер материалы, присланные учителем в сообщениях, использовать развивающие игры в онлайн-режиме. Для просмотра пользователю-ученику должны быть доступны страницы учителей и расписание занятий у своего учителя.
Размещено на http://www.allbest.ru/
Рисунок 1.5 - Возможности пользователя-ученика
1.3.3 Требования к функционалу учителя
Управление учителем своим списком учеников должно заключаться в принятии или отклонении заявок новых учеников, удалении существующих в списке учеников. Для обеспечения индивидуального подхода к своим ученикам, для учителя должен быть доступен просмотр данных пользователей из списка учеников, обмен сообщениями с учениками, а также прикрепление анкет к страницам учеников. Для этого учитель должен создавать анкеты с помощью разрабатываемого сайта и иметь возможность редактировать их структуру. Для создания виртуальной базы логопедических материалов учителю нужно загружать файлы со своего компьютера. С помощью сообщений, учитель должен иметь возможность отправлять материалы, например, домашние задания, своим ученикам. Актуальность расписания занятий обеспечит возможность его редактирования учителем. Так же, как и ученики, учитель должен иметь доступ к развивающим играм.
Размещено на http://www.allbest.ru/
Рисунок 1.6 - Возможности пользователя-учителя
1.3.4 Требования к функционалу администратора
Необходимо обеспечить выполнение таких обязанностей администратором сайта, как проверка и своевременное ограничение функциональных возможностей пользователей, на которых поступают жалобы, удаление пользователей, заполнение страницы с развивающими играми. Чтобы администратор мог быстро найти определенного пользователя нужно предусмотреть поиск пользователей с применением фильтров. Возможности администратора представлены схемой на рисунке 1.7.
Размещено на http://www.allbest.ru/
Рисунок 1.7 - Возможности администратора сайта
1.4 Выбор программных средств разработки
В результате анализа требований к программному продукту были выбраны следующие программные средства для его реализации:
- HTML;
- JavaScript;
- скриптовый язык программирования PHP 5;
- СУБД MySQL;
- инструмент для администрирования СУБД MySQL - phpMyAdmin.
HTML - Hyper Text Markup Language - язык разметки гипертекста.
HTML включает в себя набор достаточно простых команд, с помощью которых размечается исходный текст. Эти команды определяют вид страницы при её просмотре с помощью браузера.
HTML файлы можно создавать и редактировать с помощью обычных текстовых редакторов, например, с помощью стандартной программы системы Windows XP «Блокнот».
JavaScript - это язык программирования, используемый в составе HTML-страниц для увеличения функциональности и возможностей взаимодействия с пользователями. С помощью JavaScript на веб-странице можно сделать то, что невозможно сделать стандартными тегами HTML [2]. Скрипты выполняются в результате наступления каких-либо событий, инициированных действиями пользователя, например, нажатия кнопки мыши, перемещения курсора, наведения курсора на объект, ввода или изменения данных в текстовых полях, таким образом, обеспечивается интерактивность веб-страниц.
Статические HTML-страницы создаются вручную, затем загружаются на веб-сервер. Чтобы изменять содержимое сайта, разработчику нужно редактировать эти страницы на своём компьютере и снова загружать на веб-сервер, поэтому такая технология обычно используется для создания сайтов-визиток или промо-сайтов, так как предоставляемая ими информация не требует частого редактирования. Для удовлетворения функциональных требований к программному продукту, разрабатываемый сайт должен быть динамическим. Динамические сайты отличаются от статических тем, что они состоят не из HTML-файлов, а из PHP-файлов, которые являются программами, с их помощью генерируется HTML-код страниц. PHP-скрипты выполняются на стороне веб-сервера, а не на компьютере пользователя, как в случае с JavaScript. В области программирования для сети Интернет PHP - один из популярных скриптовых языков благодаря своей простоте, скорости выполнения, богатой функциональности, кроссплатформенности и распространению исходных кодов на основе лицензии PHP.
Популярность в области построения веб-сайтов определяется наличием большого набора встроенных средств для разработки веб-приложений. Основные из них:
- автоматическое извлечение POST и GET-параметров, а также переменных окружения веб-сервера в предопределённые массивы;
- взаимодействие с большим количеством различных систем управления базами данных;
- автоматизированная отправка HTTP-заголовков;
- работа с HTTP-авторизацией;
- работа с cookies и сессиями;
- работа с локальными и удалёнными файлами, сокетами;
- обработка файлов, загружаемых на сервер [3].
Согласно рейтингу корпорации TIOBE, базирующемся на данных поисковых систем, в апреле 2012 года PHP находился на 6 месте среди языков программирования [4].
База данных представляет собой структурированную совокупность данных. Для записи, выборки и обработки данных, хранящихся в компьютерной базе данных, необходима система управления базой данных, каковой является MySQL.
СУБД MySQL - это свободная система управления реляционными базами данных. В реляционной базе данные хранятся в отдельных таблицах, благодаря чему достигается выигрыш в скорости и гибкости.
phpMyAdmin - это бесплатное приложение, написанное на PHP, предназначенное для администрирования СУБД MySQL через браузер. phpMyAdmin поддерживает широкий спектр операций с MySQL. Наиболее часто используемые операции осуществляются с помощью пользовательского интерфейса (управление базами данных, таблицами, полями, связями, индексами, пользователями, разрешениями и так далее), кроме того, существует возможность напрямую ввести и выполнить любую команду SQL.
2. Проектирование и реализация программного продукта
2.1 База данных программного продукта
Для работы с разрабатываемым сайтом в базе данных содержится 15 таблиц: «Users», «Teachers», «Pupil», «Timing», «Folders», «Docs», «Messages», «Attach_docs», « New_messages», «New_attach_docs», «Blanks», «Blank_rows», «Pupil_blanks_head», «Pupil_blanks», «Games».
2.1.1 Описание таблиц базы данных
При регистрации пользователя, его данные сохраняются в таблицу «Users» - «Пользователи», её структура представлена в таблице 2.1. Одновременно с этим, в зависимости от типа пользователя, выбранного им в форме регистрации, в таблицу «Teachers» или «Pupil» добавляется запись с номером пользователя.
Таблица 2.1 - Users
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер пользователя |
|
login |
varchar (15) |
Логин пользователя |
|
password |
varchar (255) |
Зашифрованный пароль |
|
name |
varchar (30) |
Имя |
|
lastname |
varchar (30) |
Фамилия |
|
city |
varchar (30) |
Город, в котором проживает пользователь |
|
|
varchar (100) |
Адрес электронной почты пользователя |
|
level |
int (1) |
Тип пользователя: 1 - ученик, 2 - учитель, 3 - администратор сайта |
|
avatar |
varchar (255) |
Адрес изображения на веб-сервере, используемого в качестве аватара пользователя |
|
block |
int (1) |
Статус пользователя: 1 - заблокирован |
В таблице «Users» хранятся основные данные о пользователях. Эти сведения требуется знать о всех пользователях, но существуют и специфические сведения, свойственные для определенных типов пользователей. При регистрации пользователь выбирает: зарегистрироваться как учитель или как ученик. Данные об учителях хранятся в таблице «Teachers» - «Учителя», её структура представлена в таблице 2.2.
Таблица 2.2 - Teachers
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер пользователя-учителя |
|
middlename |
varchar (30) |
Отчество учителя |
|
education |
varchar (255) |
Образование учителя |
|
experience |
text |
Опят работы |
|
other |
text |
Дополнительная информация об учителе |
Данные об учениках хранятся в таблице «Pupil» - «Ученики», структура представлена в таблице 2.3.
Таблица 2.3 - Pupil
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер пользователя-ученика |
|
day |
int (2) |
День рождения |
|
month |
int (2) |
Месяц рождения |
|
year |
int (4) |
Год рождения |
|
m_name |
varchar (30) |
Имя матери |
|
m_middlename |
varchar (30) |
Отчество матери |
|
m_lastname |
varchar (30) |
Фамилия матери |
|
f_name |
varchar (30) |
Имя отца |
|
f_middlename |
varchar (30) |
Отчество отца |
|
f_lastname |
varchar (30) |
Фамилия отца |
|
Название поля |
Тип данных |
Описание |
|
par_complaints |
text |
Жалобы родителей на речь ребенка |
|
teacher |
int (11) |
Идентификатор учителя |
|
teacher_chk |
int (1) |
Статус учителя: 0 - не выбран учитель; 1- учителю, чей id записан в поле teacher, подана заявка, на то, чтобы стать его учеником; 2 - учитель занес пользователя в список своих учеников. |
Каждый пользователь-ученик может быть занесен в список учеников одного пользователя-учителя.
Для определения учителя пользователя-ученика в таблице «Pupil» имеется поле «teacher».
Данные о расписании логопедических занятий хранятся в таблице «Timing» - «Расписание». Учитель выбирает день недели, время занятия и ученика, с которым оно проводится. Структура таблицы «Timing» представлена в таблице 2.4.
Таблица 2.4 - Timing
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер записи |
|
day |
int (1) |
Порядковый номер дня недели |
|
time |
varchar (5) |
Время проведения занятия |
|
p_id |
int (11) |
Идентификатор ученика, с которым проводится занятие |
|
t_id |
int (11) |
Идентификатор учителя, который проводит занятие |
Загружая материалы на сайт, учитель может распределять их по разделам. Таблица «Folders» - «Разделы» хранит информацию о разделах материалов учителей. Структура «Folders» отображена в таблице 2.5.
Таблица 2.5 - Folders
Название поля |
Тип данных |
Описание |
|
f_id |
int (11) |
Уникальный номер раздела |
|
f_name |
varchar (100) |
Название раздела |
|
t_id |
int (11) |
Идентификатор учителя, которому принадлежит раздел |
Таблица «Docs» - «Материалы» хранит информацию о материалах, загруженных пользователем-учителем на сайт. Если учителем не выбран раздел для загружаемого материала, идентификатор раздела в таблице «Docs» (f_id) будет равен нулю.
Во избежание совпадения имен файлов материалов на сервере в имя файла включается текущая метка времени - количество секунд, прошедших от 00:00:00 1января 1970 года до настоящего времени. Структура «Docs» представлена в таблице 2.6:
Таблица 2.6 - Docs
Название поля |
Тип данных |
Описание |
|
d_id |
int (11) |
Уникальный номер материала |
|
name |
int (15) |
Название файла |
|
path |
int (15) |
Путь к файлу материала на сервере |
|
date |
varchar (8) |
Дата загрузки файла в материалы учителя |
|
f_id |
varchar (5) |
Идентификатор раздела, к которому относится материал |
|
t_id |
text |
Идентификатор учителя, которому принадлежит материал |
Сообщения, отправленные пользователями сайта, сохраняются в таблице «Messages» - «Сообщения»:
Таблица 2.7 - Messages
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер сообщения |
|
sender |
int (15) |
Идентификатор отправителя сообщения |
|
receiver |
int (15) |
Идентификатор получателя сообщения |
|
date |
varchar (8) |
Дата отправки |
|
time |
varchar (5) |
Время отправки |
|
text |
text |
Текст сообщения |
Пользователь-учитель при отправке ученику сообщения, может прикреплять к нему материалы.
Информация о прикрепленных материалах хранится в таблице «Attach_docs» - «Прикрепленные материалы», структура которой представлена в таблице 2.8.
Таблица 2.8 - Attach_docs
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер записи |
|
d_id |
int (11) |
Идентификатор материала, который прикреплен к сообщению |
|
mes_id |
int (11) |
Идентификатор сообщения, к которому прикреплен материал |
Чтобы после выбора прикрепляемых материалов не терялся уже введенный текст нового сообщения и уже прикрепленные к нему материалы, информация о них временно хранится в таблицах «New_messages» - «Новые сообщения» и «New_attach_docs» - «Прикрепленные материалы новых сообщений». Их структура показана в таблице 2.9 и в таблице 2.10.
Таблица 2.9 - New_messages
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер нового сообщения |
|
sender |
int (15) |
Идентификатор отправителя сообщения |
|
receiver |
int (15) |
Идентификатор получателя сообщения |
|
text |
text |
Текст сообщения |
Таблица 2.10 - New_attach_docs
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер записи |
|
d_id |
int (11) |
Идентификатор материала, который прикреплен к новому сообщению |
|
mes_id |
int (11) |
Идентификатор нового сообщения, к которому прикреплен материал |
При создании учителем новой анкеты, название и тип анкеты сохраняются в таблицу «Blanks» - «Анкеты». Структура таблицы «Blanks» показана в таблице 2.11.
Таблица 2.11 - Blanks
Название поля |
Тип данных |
Описание |
|
bl_id |
int (11) |
Уникальный номер анкеты |
|
bl_name |
varchar (60) |
Название анкеты |
|
type |
int (1) |
Тип анкеты: 1 - анкета для родителей, 2 - анкета для логопеда |
|
t_id |
int (11) |
Идентификатор учителя, который создал анкету |
Структура созданной учителем анкеты хранится в виде записей таблицы «Blank_rows» - «Элементы анкеты». Каждая запись этой таблицы представляет собой описание элемента анкеты:
Таблица 2.12 - Blank_rows
Название поля |
Тип данных |
Описание |
|
r_id |
int (11) |
Уникальный номер элемента анкеты |
|
type |
int (1) |
Тип элемента анкеты: 1 - заголовок, 2 - подзаголовок, 3 - малое текстовое поле, 4 - большое текстовое поле |
|
r_index |
int (2) |
Порядковый номер элемента анкеты в её структуре |
|
sign |
varchar (150) |
Подпись элемента анкеты |
|
bl_id |
int (11) |
Идентификатор анкеты, к которой относится элемент |
При добавлении анкеты на страницу ученика, в таблицу «Pupil_blanks_head» - «Заголовок анкет учеников» сохраняются данные об этом ученике и об анкете - идентификатор ученика, на страницу которого была добавлена анкета и идентификатор одной из анкет, созданных учителем на разрабатываемом сайте. Структура «Pupil_blanks_head» представлена в таблице 2.13.
Таблица 2.13 - Pupil_blanks_head
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер записи |
|
p_id |
int (11) |
Идентификатор ученика, на страницу которого добавлена анкета |
|
bl_id |
int (11) |
Идентификатор добавленной анкеты |
Когда пользователь заполняет анкету, внесенные данные сохраняются в таблице «Pupil_blanks» - «Анкеты учеников». Её структура показана в таблице 2.14.
Таблица 2.14 - Pupil_blanks
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер записи |
|
p_id |
int (11) |
Идентификатор ученика, на страницу которого добавлена анкета |
|
bl_id |
int (11) |
Идентификатор анкеты |
|
r_id |
int (11) |
Идентификатор элемента анкеты |
|
text |
text |
Информация, введенная пользователем в текстовое поле добавленной анкеты |
Из этой же таблицы извлекаются данные для отображения содержимого анкеты, прикрепленной к странице ученика.
Вид элемента прикрепленной анкеты определяется с помощью ссылки на элемент исходной анкеты - r_id.
Данные о загруженных администратором сайта играх сохраняются в таблицу «Games» - «Игры». Игры являются flash-приложениями, хранящимися на сторонних ресурсах, а не на сервере сайта. Поэтому в качестве ссылки должен указываться адрес игры на другом сайте. Структура «Games» представлена в таблице 2.15
Таблица 2.15 - Games
Название поля |
Тип данных |
Описание |
|
id |
int (11) |
Уникальный номер игры |
|
name |
varchar (255) |
Название игры |
|
note |
text |
Описание игры |
|
link |
varchar (255) |
Ссылка на игру |
2.1.2 Описание связей между таблицами базы данных
Реляционные базы данных состоят из нескольких таблиц, связь между которыми устанавливается с помощью совпадающих полей. Каждая запись в таблицах идентифицирует один объект. Отношение между объектами определяет отношение между таблицами. Существует 4 типа отношений:
- отношение «один-к-одному» означает, что каждая запись в одной таблице соответствует только одной записи в другой таблице;
- отношение «один-ко-многим» означает, что каждой записи в одной таблице соответствует одна или несколько записей в другой таблице;
- отношение «многие-ко-одному» аналогично рассмотренному ранее типу;
- отношение «многие-ко-многим» возникает между двумя таблицами в тех случаях, когда одна запись из первой таблицы может быть связана более чем с одной записью из второй таблицы или одна запись из второй таблицы может быть связана более чем с одной записью из первой таблицы [5].
В большинстве случаев любые две таблицы связаны отношением «один-ко-многим». Это означает, что любая запись в первой таблице может быть связана с несколькими записями во второй, однако любая запись второй таблицы связана только с одной записью в первой.
Первичный ключ в таблице является базовым уникальным идентификатором для записей. Значение первичного ключа используется везде, где нужно указать на конкретную запись. На использовании первичных ключей основана организация связей между таблицами реляционной БД.
Схема связей таблиц в базе данных разрабатываемого приложения показана на рисунке 2.1.
Рисунок 2.1 - Связи между таблицами
Линиями изображены связи между таблицами. Линия с цифрой «1» в начале и буквой «М» в конце обозначает связь «один-ко-многим». Линия с цифрой «1» в начале и в конце обозначает связь «один-к-одному». Из приведенной схемы видно, что таблица «Games» не связана с остальными таблицами базы. Таблица «Users_1» на схеме обозначает, ту же таблицу, что и «Users». С её помощью показана «двойная» связь таблицы базы данных «Users» с таблицами «Messages» и «New_messages».
2.2 Интерфейс пользователя
Зайдя на главную страницу сайта, пользователь увидит форму для входа на сайт (рисунок 2.2).
Рисунок 2.2 - Главная страница
По нажатию на кнопку «Войти» происходит проверка полей ввода. Если пользователь не заполнит какое-либо из полей ввода и попытается войти на сайт, будет показано соответствующее сообщение (рисунок 2.3).
Рисунок 2.3 - Проверка формы входа
После того, как пользователь ввел данные и нажал на кнопку «Войти», осуществляется проверка наличия пользователя с таким логином и паролем в базе данных. Если не найдено совпадений, то пользователю сообщается о том, что он ввел неверные данные (рисунок 2.4).
Рисунок 2.4 - Неудачная авторизация
Если в базе найден пользователь с такими же логином и паролем, как введенные, то пользователь попадает на свою страницу.
Пользователю, желающему зарегистрироваться на сайте, нужно пройти по ссылке на главной странице «Зарегистрироваться».
Рисунок 2.5 - Регистрация
Перейдя по ней, пользователь попадает на страницу с формой для регистрации (рисунок 2.5). Чтобы зарегистрироваться, нужно заполнить все поля формы, ввести код c изображения и нажать кнопку «Зарегистрироваться». Ввод кода с изображения предусмотрен для защиты от автоматической регистрации на сайте. Изображение генерируется с помощью скрипта «my_code_gen.php» [6].
Если пользователь не заполнил одно или несколько полей в форме регистрации, ему будет показано оповещение, а данные не будет отправлены на сервер (рисунок 2.6).
Рисунок 2.6 - Проверка формы регистрации
С помощью регулярных выражений проверяется введенный адрес электронной почты. Если он недействителен, то пользователь оповещается об этом, а форма, также как и в предыдущем случае, не подлежит отправке на сервер (рисунок 2.7).
Рисунок 2.7 - недействительный адрес почты
Также при попытке регистрации проверяется длина введенного пароля, если она меньше трех символов, то регистрация не происходит. Логин должен быть тоже не менее трех символов. После отправки формы производится следующая проверка полей: логин должен быть уникальным, введенный код должен совпадать с кодом на картинке. Если данные не прошли проверку, то пользователю сообщается о том, что регистрация не состоялась. После того, как пользователь корректно заполнил все поля формы регистрации, информация о нем записывается в базу данных сайта, выводится сообщение о завершении регистрации (рисунок 2.8).
Рисунок 2.8 - Успешное завершение регистрации
2.2.1 Интерфейс ученика
Если пользователь зарегистрировался как ученик, то после авторизации ему доступны следующие разделы: «Моя страница», «Сообщения», «Развивающие игры», «Учитель».
Рисунок 2.9 - Страница ученика
«Моя страница» представляет собой раздел с личной информацией пользователя (рисунок 2.9). Когда пользователь первый раз заходит на свою страницу, в качестве аватара используется стандартное изображение. Пользователь может выбрать изображение на своём компьютере и нажать кнопку «Сохранить» в блоке «Выбор изображения», тогда новое изображение будет сохранено на сервер, а в таблице «Users» базы данных обновится путь к файлу с изображение. Справа на странице расположен раздел с информацией об ученике, в него входят данные, сохраненные при регистрации, хранящиеся в таблице «Users» и данные, хранящиеся в таблице «Pupil» - эта информация отображается на вкладке «Основные данные». Чтобы её изменить, пользователю нужно нажать кнопку «Изменить», тогда поля с данными примут вид полей ввода текста (рисунок 2.10).
Рисунок 2.10 - Изменение данных
Чтобы сохранить изменения, пользователю нужно нажать на кнопку «Сохранить». После этого проверяется корректность введенной информации: действительность адреса электронной почты; совпадение нового пароля и его повтора, если поле «Новый пароль» было заполнено. Если данные корректны, то в базе данных обновляются данные о пользователе в таблицах «Users» и «Pupil», иначе, пользователю показывается сообщение об ошибке.
Если пользователь уже выбрал своего учителя, то на вкладке «Анкеты для родителей» он увидит список анкет для родителей, которые учитель добавил его страницу. При нажатии на название анкеты отобразится её содержимое (рисунок 2.11), заполнять анкету ученик может аналогично изменению своих данных на вкладке «Основные данные». Данные из анкет для родителей доступны для просмотра только самому ученику и его учителю.
Рисунок 2.11 - Анкеты для родителей
На странице «Сообщения» ученик может выбрать, какие именно сообщения отображать: показываются последние полученные или отправленные сообщения из переписки с другими пользователями или полную переписку с определенным пользователем. Если пользователь выбрал просмотр последних сообщений (рисунок 2.12), то, щелкнув по одному из них, он увидит полную переписку с пользователем, которому принадлежит сообщение (рисунок 2.13). Ученик может обмениваться сообщениями только со своим учителем, администратором сайта, а также получать оповещения сайта о том, что пользователь-учитель согласился или отказался внести пользователя-ученика в список своих учеников, и о том, что учитель добавил анкету на страницу ученика, пользователь не может отправлять сообщения в ответ на оповещения сайта.
Рисунок 2.12 - Последние сообщения
На рисунке 2.13 показана переписка ученика со своим учителем. Если учитель прикрепил к сообщению материал, название файла материала будет показано под этим сообщением учителя. Чтобы загрузить материал на свой компьютер, ученику нужно нажать кнопку «Скачать» рядом с названием материала. Чтобы отправить новое сообщение, ученик должен ввести его в тестовое поле и нажать кнопку «Отправить». Если пользователь попытается отправить сообщение без текста, то оно не будет обрабатываться, иначе сообщение и информация о нем сохранятся в базе данных в таблице «Messages».
Рисунок 2.13 - Переписка с учителем
На странице «Развивающие игры» показан список игр сайта для логопедических занятий (рисунок 2.14).
Рисунок 2.14 - Развивающие игры
Чтобы выбрать игру, пользователь должен щелкнуть по её названию. После этого, ниже списка игр, загрузится выбранная игра, отобразится её описание и название, что показано на рисунке 2.15. Игры являются flash-приложениями, хранимыми и опубликованными на других Интернет-сайтах.
Рисунок 2.15 - Игра
На странице «Учитель», если пользователь ещё не выбрал учителя, отображается список всех пользователей-учителей, зарегистрированных на сайте. Для удобства пользователя, среди этого списка можно искать учителя по имени и фамилии, по городу, который указан в информации об учителе. Для поиска учителя с определенными параметрами пользователю-ученику нужно выбрать их и нажать кнопку «Найти». Если параметры заданы, то из таблицы «Users» будут выбраны все записи с типом доступа level равным двум, удовлетворяющие заданным условиям. При удачном завершении поиска пользователь-ученик увидит список всех найденных пользователей учителей, иначе выводится сообщение о том, что учителей не найдено. Список учителей с применением фильтров показан на рисунке 2.16.
Рисунок 2.16 - Результаты поиска учителей
Пользователь-ученик может посмотреть информацию о любом учителе, для этого ему нужно щелкнуть на аватар учителя или на имя. После этого ученик перейдет на страницу пользователя-учителя (рисунок 2.17). Страницы других пользователей-учеников и администратора сайта не доступны ученику.
Рисунок 2.17 - Просмотр страницы пользователя-учителя
Чтобы выбрать учителя, пользователь-ученик должен в списке учителей нажать кнопку «Выбрать» напротив определенного учителя. После этого в таблицу «Pupil» сохранится информация о выборе ученика, статус учителя teacher_chk станет равен единице, что означает, что учитель ещё не подтвердил, что пользователь является его учеником. Теперь на странице «Учитель» пользователь будет видеть только блок с информацией о выбранном им учителе. Вид страницы показан на рисунке 2.18.
Рисунок 2.18 - Неподтвержденный учитель
Когда пользователь-учитель примет пользователя-ученика в список своих учеников, в разделе «Учитель» ученик увидит не только информацию о том, кто является его учителем, но и расписание занятий (рисунок 2.19), также ученик сможет обмениваться сообщениями со своим учителем.
Рисунок 2.19 - Подтвержденный учитель
2.2.2 Интерфейс учителя
Если пользователь зарегистрировался как учитель, то после авторизации ему доступны следующие разделы: «Моя страница», «Сообщения», «Развивающие игры», «Ученики», «Расписание», «Анкеты», «Материалы».
На странице «Моя страница», изображенном на рисунке 2.20, пользователь-учитель, так же, как и пользователь-ученик, может изменять аватар и личные данные. Резюме учителя хранится в таблице «Teachers». Страницу учителя могут просматривать все пользователи-ученики и администратор сайта.
Рисунок 2.20 - Страница пользователя-учителя
Страница «Сообщения» учителя организована аналогично странице «Сообщения» ученика. Учитель может обмениваться сообщениями со своими учениками и администратором сайта, получать оповещения сайта о поступлении новой заявки от пользователя-ученика, об удалении пользователя-ученика из списка учеников. Страница переписки учителя с одним из учеников показана на рисунке 2.21.
Рисунок 2.21 - Переписка учителя с учеником
Чтобы добавить файл материала к сообщению, учителю нужно нажать «Прикрепить материал», после этого он попадет на страницу выбора материала, показанную на рисунке 2.22, а в таблицы «New_messages» и «New_attach_docs» базы данных сохраняется информация о новом сообщении и прикрепленных к нему материалов. Эта информация хранится до написания другого сообщения.
Рисунок 2.22 - Выбор материала
На этой странице учитель может выбрать материал, который нужно прикрепить к сообщению, если учитель создал разделы для систематизации материалов, то слева выводится список разделов, щелкнув по названию, учитель увидит названия файлов, принадлежащих определенному разделу. Определившись с выбором материала, учителю нужно нажать кнопку «Прикрепить к сообщению» под названием файла. После этого учитель вернется на страницу переписки с пользователем. Под полем ввода сообщения появится список прикрепленных материалов (рисунок 2.23). Чтобы удалить материалы из этого списка, учителю нужно нажать кнопку «Удалить» рядом с названием файла материала.
Рисунок 2.23 - Новое сообщение с прикрепленным материалом
После того, как учитель нажмет «Отправить», информация о сообщении сохранится в таблице «Messages», информация о файлах, прикрепленных к сообщению, сохранится в таблице «Attach_docs».
Страница «Развивающие игры» соответствует странице «Развивающие игры» пользователя-ученика, рассмотренной в 2.2.1.
На странице «Ученики» пользователь-учитель может просматривать список учеников - вкладка «Ученики», и список пользователей-учеников, которые хотят вступить в список учеников пользователя-учителя - вкладка «Заявки».
На рисунке 2.24 показан список учеников пользователя-учителя. Учитель может перейти по ссылке «Написать сообщение», тогда откроется страница «Сообщения», и будет показана переписка с выбранным учеником. Также учитель может нажать кнопку «Удалить из списка учеников», после этого действия в базе данных в таблице «Pupil» у удаленного из списка ученика будет изменено значение поля teacher на ноль. Будет удалена переписка между учителем и этим учеником из таблицы «Messages», удалены анкеты, добавленные учителем на страницу ученика, из таблиц «Pupil_blanks_head» и «Pupil_blanks», удалены записи о времени проведения занятий с этим учеником из таблицы «Timing». Ученик будет оповещен об удалении.
Рисунок 2.24 - Ученики
На вкладке «Заявки» (рисунок 2.25) пользователь видит список пользователей-учеников, которые выбрали учителя, но он еще не принял решение о занесении их в список своих учеников. Для управления заявками, учитель может использовать кнопки «Принять» - пользователь-ученик попадет в список учеников учителя, «Отклонить» - пользователь ученик не будет показан ни в одном из списков страницы «Ученики».
Рисунок 2.25 - Заявки
Для удобства пользователя-учителя, на странице «Ученики» предусмотрен поиск по имени и фамилии, кроме этого, на вкладке «Заявки» можно выбирать город.
На странице «Расписание» учитель может редактировать расписание занятий со своими учениками. Вид страницы представлен на рисунке 2.26. Блок каждого дня недели состоит из двух частей. Слева - расписание, справа - панель добавления нового времени занятий. Чтобы добавить новую запись в расписание, учитель должен выбрать время проведения занятия и ученика из выпадающих списков, затем нажать кнопку «Внести в расписание», после этого в таблицу «Timing» будет вставлена информация о новой записи, новое время и фамилия и имя ученика появятся в левой части расписания. Для удаления в левой части нужно нажать кнопку «Удалить» напротив выбранной записи, тогда информация о ней удалится из «Timing», запись исчезнет из расписания.
Рисунок 2.26 - Расписание занятий
Каждый ученик пользователя-учителя видит в разделе «Учитель» расписание занятий, составленное учителем, но ему показано только то время проведения занятий, которое учитель определил для данного ученика.
Страница «Анкеты» предназначена для того, чтобы учитель создавал или редактировал анкеты, которые затем помещаются на страницы учеников. На странице есть две вкладки: «Для родителей» и «Для логопеда». Анкеты для родителей могут заполнять только ученики, анкеты для логопеда - только учитель, который создал анкету. На странице выводится список всех анкет выбранного типа, названия анкет извлекаются из таблицы «Blanks». После щелчка по названию анкеты в списке, справа будет показано её содержимое (рисунок 2.27), оно извлекается из таблицы «Blank_rows». Чтобы изменить элементы анкеты, учитель должен нажать на кнопку «Изменить». Страница примет вид, показанный на рисунке 2.28.
Рисунок 2.27 - Просмотр анкеты
Рисунок 2.28 - Редактирование анкеты
Учитель может добавить новые поля в анкету, для этого он должен выбрать место вставки и число полей, и нажать кнопку «ОК», в таблицу «Blank_rows» будет записана информация о новых полях. Полей в анкете может быть не более тридцати, ограничение установлено, так как пользователям будет удобнее заполнять более короткие анкеты. Учитель может изменять подпись поля и тип поля. В случае, если выбран тип «Заголовок» или «Подзаголовок», подпись поля и является текстом заголовка или подзаголовка. Для сохранения измененных подписей и типов полей, нужно нажать кнопку «Сохранить изменения», тогда в соответствующие записи в таблице «Blank_rows» будут сохранены новые значения. Чтобы удалить поля, нужно отметить их и нажать кнопку «Удалить поля», после этого, записи, соответствующие отмеченным полям, будут удалены из таблицы «Blank_rows». Чтобы добавить анкету, учитель должен нажать кнопку «Добавить» под списком анкет, в таблицу «Blanks» будет вставлена новая запись, в списке анкет появится пустая анкета. Для того, чтобы удалить анкету, учитель должен щелкнуть по названию анкеты в списке и в блоке просмотра анкеты нажать кнопку «Удалить анкету». Тогда вся информация об анкете будет удалена из таблиц «Blanks», «Blank_rows», «Pupil_blanks_head», «Pupil_blanks», таким образом, анкета не будет больше отображаться не только на странице «Анкеты» учителя, но и на странице ученика, если учитель добавил ему такую анкету ранее.
На странице «Материалы» учитель управляет материалами, хранящимися на сайте. Для удобства доступа к материалам, их можно хранить в разных разделах. Слева на странице показан список разделов. Первый в списке раздел «Все» показан на рисунке 2.29, выбрав его, учитель увидит все свои материалы, если материал принадлежит к какому-либо разделу, около названия файла материала будет показано название раздела.
Рисунок 2.29 - Все материалы
Чтобы скачать материал на свой компьютер, учителю нужно нажать кнопку «Скачать», чтобы удалить материал с сервера, нужно нажать кнопку «Удалить», при этом информация о данном файле удалится из таблиц «Docs», «Attach_docs», «New_attach_docs». Для перемещения материала в определенный раздел нужно в выпадающем списке выбрать название раздела и нажать кнопку «OK», после этого в таблице «Docs» базы данных у записи, соответствующей материалу, обновится информация о разделе. Чтобы загрузить файл на сайт, нужно выбрать раздел, к которому он будет относиться, и нажать кнопку «Загрузить», далее откроется окно выбора файлов, после того, как пользователь выбрал файл, если его размер не превышает два мегабайта, файл загрузится на сервер сайта, а в таблице «Docs» появится запись с информацией о загруженном материале.
При просмотре определенного раздела около названия файла материала уже не показывается название раздела, а при загрузке файла на сайт не нужно выбирать раздел - файл загрузится в текущий раздел. Вид страницы «Материалы» при просмотре определенного раздела, в данном случае раздела «Домашние задания для детей дошкольного возраста», показан на рисунке 2.30.
Рисунок 2.30 - Просмотр определенного раздела
Пользователь-учитель может просматривать страницы пользователей которые подали ему заявки на вступление в список учеников, при этом отображается только основная информация о пользователе-ученике - данные из таблиц «Users» и «Pupil», что показано на рисунке 2.31.
Рисунок 2.31 - Страница неподтвержденного ученика
Когда учитель заходит на страницу пользователя из списка своих учеников, помимо основной информации отображаются анкеты для родителей и анкеты для логопеда, добавленные учителем на данную страницу. На вкладке «Анкеты для родителей» учитель может просматривать заполненные учеником анкеты, для этого нужно щелкнуть по названию анкеты из списка анкет. Просмотр одной из анкет для родителей на странице ученика представлен на рисунке 2.32.
Рисунок 2.32 - Анкета для родителей
На вкладке «Анкеты для логопеда» (рисунок 2.33) учитель может просматривать и заполнять анкеты для логопеда. Изменение анкет организовано так же, как и изменение личной информации на странице пользователя. Эти анкеты доступны для просмотра только учителю, который добавил их на страницу ученика.
Рисунок 2.33 - Анкета для логопеда
Чтобы добавить ещё одну анкету на страницу, учителю нужно выбрать название анкеты в выпадающем списке и нажать кнопку «Добавить», если такая же анкета ещё не добавлена на страницу ученика, информация о ней будет занесена в таблицы «Pupil_blanks_head» и «Pupil_blanks», новая анкета появится в списке анкет. Для удаления добавленных на страницу анкет учителю нужно выбрать анкету из списка и нажать кнопку «Удалить анкету со страницы», затем из таблиц «Pupil_blanks_head» и «Pupil_blanks» будут удалены записи, соответствующие анкете на данной странице.
интернет сайт логопед интерфейс программный
2.2.3 Интерфейс администратора
Если пользователь авторизировался как администратор сайта, то он попадает на страницу «Моя страница», изображенную на рисунке 2.34. Нажав на кнопку «Изменить», администратор может изменить свой электронный адрес и пароль (рисунок 2.35). Корректность введенных проверяется также как и на страницах других пользователей.
Рисунок 2.34 - Страница администратора
Рисунок 2.35 - Изменение данных администратора
Страница «Сообщения» администратора аналогична странице «Сообщения» других пользователей. Отличием является то, что администратор не получает оповещения сайта и может вести переписку со всеми остальными пользователями.
Администратор сайта отвечает за заполнение страницы «Развивающие игры», который является общим для всех пользователей. На странице «Развивающие игры» (рисунок 2.36) представлен список игр, как и у других пользователей, и форма добавления игры на сайт. Чтобы добавить игру, администратор обязательно должен вписать её название и вставить ссылку на игру на другом сайте. По желанию, может быть заполнено поле с описанием игры. После нажатия кнопки «Добавить» информация об игре сохранится в таблицу «Games» и игра будет опубликована на сайте. Игры являются flash-приложениями, хранимыми и опубликованными на других Интернет-сайтах.
Рисунок 2.36 - Развивающие игры
Для запуска игры администратору нужно щелкнуть по её названию в списке игр сайта. После этого появится возможность просматривать и изменять информацию о ней. Чтобы редактировать игру, администратору нужно нажать кнопку «Изменить» (рисунок 2.37).
Рисунок 2.37 - Информация об игре
В режиме редактирования (рисунок 2.38) администратор может изменить название или описание игры и нажать кнопку «Сохранить», при этом имя не должно быть пустым. После этого информация об игре обновится в таблице «Games».
Рисунок 2.38 - Редактирование игры
Чтобы удалить игру с сайта, нужно нажать кнопку «Удалить игру», после чего будет удалена запись из таблицы «Games», соответствующая выбранной игре.
На странице «Пользователи» администратора представлен список всех пользователей сайта. Для удобства администратора предусмотрен поиск с использование таких параметров: часть имени или фамилии пользователя; город, указанный в основных данных пользователя; тип пользователя (учитель или ученик); заблокирован ли пользователь. Чтобы использовать фильтры списка пользователей, нужно определить их значения и нажать кнопку «Найти». Пример списка после применения поиска показан на рисунке 2.39.
Рисунок 2.39 - Отфильтрованный список пользователей
Если какой-то пользователь замечен в использовании сайта в целях распространения рекламы, некорректном поведении или является источником спама, то администратор может его заблокировать, нажав на кнопку «Заблокировать» при просмотре списка пользователей. После этого в таблице «Users» в записи о данном пользователе значение поля «block» становится равным единице. Заблокированный пользователь не может совершать никаких действий на сайте. Он видит только страницу с сообщением о том, что его заблокировали, она изображена на рисунке 2.40.
Рисунок 2.40 - Пользователь заблокирован
Если пользователь заблокирован, то администратор может его разблокировать, нажав кнопку «Разблокировать», тогда таблице «Users» в записи о данном пользователе значение поля «block» становится равным нулю. Администратор может удалить заблокированного пользователя, для этого нужно нажать кнопку «Удалить», после чего из таблиц базы данных будут удалены все записи, связанные с данным пользователем.
Для завершения сеанса работы с сайтом пользователю любого уровня нужно нажать пункт меню «Выход».
3. Расчет экономических показателей программного продукта
3.1 Расчет себестоимости программного продукта
Под себестоимостью понимаются затраты, необходимые для производства продукта. Для ее расчета необходимо оценить затраты времени на разработку программного продукта. Поскольку процесс написания программ является творческим, а следовательно, ввести нормативы для оценки затрат очень сложно, то применяется метод экспертных оценок, суть которого состоит в оценке затрат несколькими экспертами. В данном случае в качестве экспертов выступают разработчик программного продукта и руководитель проекта.
Процесс разработки программного продукта состоит из нескольких этапов: проектирование, написание программы, отладка и тестирование.
Первый этап включает в себя анализ требований, предъявляемых к программе, поиск необходимой информации в Интернете и других источниках, составление алгоритма и другое, то есть представляет собой интеллектуальный труд разработчика, который не может быть автоматизирован. Время, затрачиваемое на выполнение первого этапа, зависит от накопленных знаний и квалификации программиста. Второй этап представляет собой реализацию разработанной программы на языке программирования. Процесс отладки необходим для нахождения ошибок, не найденных на предыдущих этапах разработки, а процесс тестирования - позволяет, с достаточной вероятностью, удостоверится в том, что программный продукт удовлетворяет требованиям, выработанным для него на этапе проектирования.
На основе экспертных оценок затрат времени определяется средняя величина для каждого из выше указанных этапов, по формуле (3.1):
, (3.1)
где - средняя оценка;
- оценка, данная руководителем проекта;
- оценка, данная разработчиком проекта.
Экспертные оценки времени рассчитываются по каждому этапу разработки программного продукта для трех ситуаций:
наименее возможная величина затрат (ai);
наиболее вероятная величина затрат (mi);
наиболее возможная величина затрат (bi);
Результаты расчета средней оценки затрат времени на разработку программного продукта приведены в таблице 3.1.
Таблица 3.1 - Оценка затрат времени на разработку программного продукта
Этапы разработки программного продукта |
Величина затрат |
|||||||||
Наименее возможная ai, дни |
Наиболее вероятная mi, дни |
Наиболее возможная bi, дни |
||||||||
tрук |
tразр |
tсред |
tрук |
tразр |
tсред |
tрук |
tразр |
tсред |
||
Проектирование |
11 |
13 |
11,8 |
13 |
15 |
13,8 |
15 |
17 |
15,8 |
|
Написание программы |
13 |
15 |
13,8 |
17 |
19 |
17,8 |
21 |
24 |
22,2 |
|
Тестирование и отладка |
5 |
5 |
5 |
8 |
9 |
8,4 |
10 |
12 |
10,8 |
На основании средних оценок рассчитываются математическое ожидание и отклонение, по каждому этапу разработки комплекса программных продуктов.
Формула (3.2) для расчета математического ожидания:
, (3.2)
где - математическое ожидание для i-гo этапа;
, , - средние значения затрат.
Стандартное отклонение для каждого этапа разработки программного продукта определяется по формуле (3.3):
, (3.3)
где - стандартное отклонение по i-му этапу.
Общая оценка затрат на разработку программного продукта рассчитывается по формуле (3.4):
, (3.4)
где - общая оценка затрат;
- математическое ожидание затрат для i-го этапа;
- количество этапов разработки программного продукта.
Стандартное отклонение в целом по программному продукту вычисляется по формуле (3.5):
, (3.5)
где - стандартное отклонение общей оценки затрат;
- стандартное отклонение оценки затрат для i-го этапа.
На основе расчетов математического ожидания и стандартного отклонения вычисляется коэффициент вариации. Данный коэффициент показывает, насколько согласованы эксперты. Ниже приведены формула (3.6) для расчета коэффициента вариации по i-тому этапу и формула (3.7) для вычисления общего коэффициента вариации:
, (3.6)
где - коэффициент вариации для i-го этапа;
- стандартное отклонение оценки затрат для i-го этапа;
- математическое ожидание затрат для i-го этапа.
, (3.7)
где - коэффициент вариации по всем этапам;
- стандартное отклонение оценки затрат по всем этапам;
- математическое ожидание затрат по всем этапам.
Если общий коэффициент вариации , то мнения экспертов считаются согласованными.
Результаты расчета , , , а также , , приведены в таблице 3.2.
Таблица 3.2 - Затраты времени на разработку программного продукта
Этапы разработки программного продукта |
Средняя величина затрат времени по этапам |
Математическое ожидание МОi, дни |
Стандартное отклонение Gi, дни |
Коэффициент вариации Yi, дни |
|
Наименее возможная ai, дни |
Подобные документы
Проектирование web-сайта кафедры для освещения деятельности учебного заведения. Выбор программных средств для его разработки. Разработка интерфейса и административной части сайта. Описание и принцип работы свободного програvмного обеспечения CMS PHP-NUKE.
курсовая работа [2,0 M], добавлен 16.12.2009Обоснование необходимости разработки сайта и основные требования его функционалу. Анализ процесса обработки информации и выбор структур данных для ее хранения. Реализации программного продукта, а также принципы его настройки, тестирования и отладки.
дипломная работа [4,3 M], добавлен 19.01.2017Выбор сред разработки для реализации сайта. Основная концепция и содержание веб-сайта. Роль дизайна сайта в его создании и определение основных требований к его содержанию и внешнему виду. Особенности разработки удобного и красивого интерфейса сайта.
курсовая работа [686,4 K], добавлен 13.06.2022Проектирование сайта: сбор и компоновка информации, разработка технического задания; дизайн интерфейса, создание шаблонов и программных компонентов, интеграция сайта с системой управления, тестирование и отладка; сдача. Описание среды программирования.
курсовая работа [60,2 K], добавлен 30.06.2014Выбор инструментальных и программных средств для создания сайта. Структура программного продукта. Создание сайта при помощи программы WordPress. Тестирование разработанной программы. Разработка структуры и дизайна сайта. Наполнение сайта контентом.
курсовая работа [1,0 M], добавлен 09.01.2014Инструментальные средства разработки сайта. Таблицы базы данных, их описание. Общие принципы разработки программного продукта. Структура программного продукта клиента. Страница информации о пользователе и его заказов, информационная безопасность.
дипломная работа [3,5 M], добавлен 14.06.2012Разработка структуры базы данных сайта. Установка и настройка требуемого программного обеспечения. Анализ интерфейса программы. Создание формы обратной связи. Формирование дизайна, соответствующего требованиям заказчика. Выбор методики тестирования.
дипломная работа [2,0 M], добавлен 22.03.2018Особенности создания сайта интернет-магазина для частных лиц и организаций. Анализ финансовой и технико-экономической деятельности фирмы. Создание информационной модели сайта, ее базовые элементы. Выбор программного и аппаратного обеспечения сайта.
дипломная работа [1,5 M], добавлен 08.12.2013Общее описание разрабатываемого веб-сайта. Создание модуля учета средств для разработки программного продукта. Разработка дизайна. Редактирование веб-сайта в CMS Worspress. Разработка методических указаний для продукта. Система управления базами данных.
дипломная работа [1,8 M], добавлен 10.07.2017Проектирование web-сайта. Пользовательские персонажи, детальная концепция сайта. Разработка скелетной схемы страниц, информационной архитектуры. Создание прототипа web-сайта. Выбор среды разработки. CMS системы и их анализ. Стадии проектирования сайта.
курсовая работа [346,7 K], добавлен 18.09.2016