Вывод по исследовательскому разделу
В ходе выполнения исследования были сделаны следующие выводы:
1) Мы получили данные о времени загрузки веб-страниц в двух режимах: когда сервер свободен, то есть к нему никто не обращался на тот момент, и при бомбардировке сервера множеством запросов. Время загрузки в обоих случаях оказалось меньшим 1 секунды. Это удовлетворительная скорость загрузки сайта.
2) Эксперимент был проведен на двухъядерном персональном компьютере. Было выявлено, что режим нормальной безотказной работы сервера может поддерживаться вплоть до 500 обращений к ресурсам в секунду. Это также хороший результат, который показывает, что сайт могут использовать около 1000 человек одновременно.
3) Было проведено тестирование алгоритма поиска распределения учащихся. Был сделан вывод, что данный алгоритм может быть применен в тех образовательных учреждениях, в которых число клиентов, проживающих в одном городе, меньше 80000-90000 человек.
5 Организационно-экономический раздел
5.1 Организация и планирование процесса разработки
При использовании традиционного подхода, организация и планирование процесса разработки программного продукта или программного комплекса предусматривает выполнение следующих работ:
· формирование состава выполняемых работ и группировка их по стадиям разработки;
· расчет трудоемкости выполнения работ;
· установление профессионального состава и расчет количества исполнителей;
· определение продолжительности выполнения отдельных этапов разработки;
· построение календарного графика выполнения разработки.
Разработку программного продукта можно разделить на следующие стадии:
Техническое задание. Постановка задач. Определение состава пакета прикладных программ, состава и структуры информационной базы. Выбор языков программирования. Предварительный выбор методов выполнения работы. Разработка календарного плана выполнения работ.
Эскизный проект. Предварительная разработка структуры входных и выходных данных. Разработка общего описания алгоритмов решения задач. Разработка пояснительной записки. Консультации разработчиков постановки задач. Согласование и утверждение эскизного проекта.
Технический проект. Разработка алгоритмов решения задач. Разработка пояснительной записки. Согласование и утверждение технического проекта. Разработка структуры программы. Разработка программной документации и передача ее для включения в технический проект. Уточнение структуры, анализ и определение формы представления входных и выходных данных. Выбор конфигурации технических средств.
Рабочий проект. Комплексная отладка задач и сдача в опытную эксплуатацию. Разработка проектной документации. Программирование и отладка программ. Описание контрольного примера. Разработка программной документации. Разработка, согласование программы и методики испытаний. Предварительное проведение всех видов испытаний.
Внедрение. Подготовка и передача программной документации для сопровождения с оформлением соответствующего акта. Передача программной продукции в фонд алгоритмов и программ. Проверка алгоритмов и программ решения задач, корректировка документации после опытной эксплуатации программного продукта.
Планирование длительности этапов и содержания проекта осуществляется в соответствии с ЕСПД ГОСТ 34.603-92 и распределяет работы по этапам, как показано в таблице 28.
Таблица 28 Распределение работ проекта по этапам | ||
Основные стадии | № | Содержание работы |
1. Техническое задание | 1 | Постановка задачи |
2 | Выбор средств разработки и реализации | |
2. Эскизный проект | 3 | Разработка структурной схемы системы |
4 | Разработка структуры базы данных | |
5 | Разработка алгоритмов доступа к данным | |
6 | Разработка алгоритмов анализа данных | |
3. Техно-рабочий проект
| 7 | Реализация алгоритмов доступа к данным |
8 | Реализация алгоритмов анализа данных | |
9 | Разработка пользовательского интерфейса для обслуживающего персонала | |
10 | Разработка пользовательского интерфейса для клиента | |
11 | Реализация пользовательского интерфейса для клиента | |
12 | Тестирование и отладка программного комплекса | |
13 | Разработка документации к системе | |
14 | Итоговое тестирование системы | |
4. Внедрение | 15 | Установка и настройка ПП |
5.2 Расчет трудоемкости выполнения работ
Трудоемкость разработки программной продукции зависит от ряда факторов, основными из которых являются следующие:
· степень новизны разрабатываемого программного комплекса;
· сложность алгоритма его функционирования;
· объем используемой информации, вид ее представления и способ обработки;
· уровень используемого алгоритмического языка программирования (чем выше уровень языка, тем меньше трудоемкость).
Таблица 29 Исходные данные | |
Функциональное назначение ПП | Статистические задачи. |
Степень новизны разрабатываемого проекта | Группа новизны Г - продукт со всеми новыми параметрами по сравнению с аналогом, требующий экспериментальной проверки отдельных составных частей. |
Степень сложности алгоритма функционирования | 3 группа сложности - программная продукция, реализующая алгоритмы стандартных методов решения задач. |
По виду представления исходной информации | Группа 12 - исходная информация представлена в форме документов, имеющих одинаковый формат и структуру, требуется форматный контроль информации. |
Структура выходных документов | Группа 22 - требуется вывод на печать одинаковых документов, вывод информационных массивов на машинные носители. |
Трудоемкость разработки программной продукции tПП может быть определена как сумма величин трудоемкости выполнения отдельных стадий разработки ПП из выражения (4.18):
tПП = tТЗ + tЭП + tТП + tРП + tВ, | (4.18) |
где
tТЗ – трудоемкость разработки технического задания на создание ПП;
tЭП – трудоемкость разработки эскизного проекта ПП;
tТП – трудоемкость разработки технического проекта ПП;
tРП – трудоемкость разработки рабочего проекта ПП;
tВ – трудоемкость внедрения разработанного ПП.
Трудоемкость разработки технического задания рассчитывается по формуле:
tТЗ = TРЗЗ + TРПЗ, | (4.19) |
где
TРЗЗ – затраты времени разработчика постановки задач на разработку технического задания, чел.-дни;
TРПЗ – затраты времени разработчика программного обеспечения на разработку ТЗ, чел.-дни.
Значения величин ТРЗЗ и ТРПЗ рассчитываются по формулам
TРЗЗ = tЗ × KРЗЗ, | (4.20) |
TРПЗ = tЗ × KРПЗ, | (4.21) |
где
tЗ – норма времени на разработку ТЗ на программный продукт в зависимости от функционального назначения и степени новизны разрабатываемого программного продукта, чел.-дни;
KРЗ3 – коэффициент, учитывающий удельный вес трудоемкости работ, выполняемых разработчиком постановки на стадии ТЗ;
KРП3 – коэффициент, учитывающий удельный вес трудоемкости работ, выполняемых разработчиком программного обеспечения на стадии ТЗ.
tЗ = 38 [чел.-дней]
KРЗЗ = 0,65
KРПЗ = 0,35
tТЗ = 38 × ( 0,65 + 0,35 ) = 38 [чел.-дней]
Аналогично рассчитывается трудоемкость эскизного проекта ПП tЭП:
tЭП = TРЗЭ + TРПЭ, | (4.22) |
ТРЗЭ = tЭ × KРЗЭ = 47 × 0,6;
ТРПЭ = tЭ × KРЗЭ = 47 × 0,4;
tЭП = 68 × (0,6 + 0,4) = 47 [чел.-дней]
Трудоемкость разработки технического проекта tТП зависит от функционального назначения ПП, количества разновидностей форм входной и выходной информации и определяется как сумма времени, затраченного разработчиком постановки задач и разработчиком программного обеспечения, т.е.
tТП = (tРЗТ + tРПТ) × KВ × KР, | (4.23) |
где
tРЗТ, tРПТ – норма времени, затрачиваемого на разработку технического проекта (ТП) разработчиком постановки задач и разработчиком программного обеспечения соответственно, чел.-дни;
KВ – коэффициент учета вида используемой информации;
KР – коэффициент учета режима обработки информации.
Значение коэффициента KВ определяется из выражения (4.24):
KВ = (KП × nП + KНС × nНС + KБ × nБ) / (nП + nНС + nБ), | (4.24) |
где
KП, KНС, KБ – значения коэффициентов учета вида используемой информации для переменной, нормативно-справочной информации и баз данных соответственно;
nП, nНС, nБ – количество наборов данных переменной, нормативно-справочной информации и баз данных соответственно.
KР = 1,15 (согласно таблице о значении коэффициента учета режима обработки информации);
KП = 1,00; KНС = 0,72; KБ = 2,08 (согласно таблице значений коэффициента учета вида используемой информации);
KВ = (1,00 × 0 + 0,72 × 0 + 2,08 × 1) / (0 + 0 + 1) = 2,08
tРЗТ = 23; tРПТ = 10 (согласно таблице норм времени на выполнение работ при разработке ТП);
tТП = (23 + 10) × 2,08 × 1,15 = 79 [чел.-дней].
Трудоемкость разработки рабочего проекта tРП зависит от функционального назначения ПП, количества разновидностей форм входной и выходной информации, сложности алгоритма функционирования, сложности контроля информации, степени использования готовых программных модулей, уровня алгоритмического языка программирования и определяется по формуле (4.25):
tРП = KК × KР × KЯ × KЗ × KИА× (tРЗР + tРПР), | (4.25) |
где
KК – коэффициент учета сложности контроля информации;
KЯ – коэффициент учета уровня используемого алгоритмического языка программирования;
KЗ – коэффициент учета степени использования готовых программных модулей;
KИА – коэффициент учета вида используемой информации и сложности алгоритма ПП;
tРЗР, tРПР – норма времени, затраченного на разработку РП на алгоритмическом языке высокого уровня разработчиком постановки задач и разработчиком программного обеспечения соответственно, чел.-дни.
Значение коэффициента KИА определяется из выражения (4.26):
KИА = (KП¢ × nП + KНС¢ × nНС + KБ¢ × nБ) / (nП + nНС + nБ), | (4.26) |
где
KП¢, KНС¢, KБ¢ – значения коэффициентов учета сложности алгоритма ПП и вида используемой информации для переменной, нормативно-справочной информации и баз данных соответственно.
KК = 1;
KР = 1,25 (для рабочего проекта);
KЯ = 1;
KЗ = 0,6;
tРЗР = 8 [чел.-дней]; tРПР = 54 [чел.-дней];
KП¢ = 1; KНС¢ = 0,48; KБ¢ = 0,4;
KИА = (1 × 0 + 0,48 × 0 + 0,4 × 1) / (0 + 0 + 1) = 0,4
tРП = (8 + 54) × 1 × 1.25× 1 × 0.6 × 0.4 = 17 [чел.-дней]
Так как при разработке ПП стадии «Технический проект» и «Рабочий проект» объединены в стадию «Техно-рабочий проект», то трудоемкость ее выполнения tТРП определяется по формуле (4.27):
tТРП = 0,85 × tТП + tРП | (4.27) |
tТРП = 0,85 × 79 + 19 = 84 [чел.-дней]
Трудоемкость выполнения стадии внедрения tВ может быть рассчитана по формуле (4.28):
tВ = (tРЗВ + tРПВ) × KК × KР × KЗ, | (4.28) |
где
tРЗВ, tРПВ – норма времени, затрачиваемого разработчиком постановки задач и разработчиком программного обеспечения соответственно на выполнение процедур внедрения ПП, чел.-дни.
KР = 1,10;
tРЗВ = 8 [чел.-дней]; tРПВ = 8 [чел.-дней];
tВ = (8 + 8) × 1 × 1,1 × 0,6 = 11 [чел.-дней]
Подставляя полученные данные в (4.18), получим:
tПП = 38 + 47 + 84 + 11 = 180[чел.-дней]
Таблица 30 . Трудоемкости по стадиям разработки проекта | ||||
Этап | Трудо-емкость этапа | № работы | Содержание работы | Трудоемкость, чел-дн. |
1 (ТЗ) | 38 | 1 | Постановка задачи | 32 |
2 | Выбор средств разработки и реализации | 6 | ||
2 (ЭП) | 47 | 3 | Разработка структурной схемы системы | 15 |
4 | Разработка алгоритмов доступа к данным | 7 | ||
5 | Разработка алгоритмов решения частных задач | 25 | ||
3 (ТП, РП) | 84 | 6 | Реализация алгоритмов доступа к данным | 10 |
7 | Реализация алгоритмов решения частных задач | 30 | ||
8 | Разработка пользовательского интерфейса | 6 | ||
9 | Реализация пользовательского интерфейса | 9 | ||
10 | Отладка и тестирование всего комплекса информационной среды | 13 | ||
11 | Разработка документации к системе | 11 | ||
12 | Итоговое тестирование системы | 5 | ||
4 (В) | 11 | 13 | Установка и настройка ПП | 11 |
Всего | 180 | 180 |
5.3 Расчет количества исполнителей
Средняя численность исполнителей при реализации проекта разработки и внедрения ПО определяется соотношением (4.29):
![]() | (4.29) |
где
Qp – затраты труда на выполнение проекта (разработка и внедрение ПО);
F – фонд рабочего времени.
Величина фонда рабочего времени определяется соотношением:
![]() | (4.30) |
где
Т – время выполнения проекта в месяцах (T = 4 мес.);
FM – фонд времени в текущем месяце, который рассчитывается из учета общества числа дней в году, числа выходных и праздничных дней (4.31):
![]() | (4.31) |
где
tp – продолжительность рабочего дня;
DK – общее число дней в году;
DB – число выходных дней в году;
DП – число праздничных дней в году.
Число исполнителей проекта: .
5.4 Календарный план-график разработки программного продукта
Планирование и контроль хода выполнения разработки проводится по календарному графику выполнения работ.
Таблица 31 . Планирование процесса разработки | ||||
Стадия разработки | Трудоемкость | Должность исполнителя | Распределение трудоемкости | Численность |
1. Разработка технического задания | 38 | Ведущий инженер | 29 (75%) | 1 |
Программист | 9 | 1 | ||
2. Разработка эскизного проекта | 47 | Ведущий инженер | 27 (60%) | 1 |
Программист | 20 | 1 | ||
3. Разработка технического проекта | 84 | Ведущий инженер | 40 | 1 |
Программист | 44 | 1 | ||
5. Внедрение | 11 | Ведущий инженер | 5 | 1 |
Программист | 6 | 1 | ||
Итого: | 180 | 2 |
Этапы |
| ||||||||||||||||||
1 (ТЗ) | 29 |
| |||||||||||||||||
9 |
| ||||||||||||||||||
2 (ЭП) |
| 27 |
| ||||||||||||||||
| 20 |
| |||||||||||||||||
3 (ТП) |
| 40 |
| ||||||||||||||||
| 44 |
| |||||||||||||||||
5 (В) |
| 5 |
| ||||||||||||||||
| 6 |
| |||||||||||||||||
Время (Дни) | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 | 110 | 120 | 130 | 140 | |||||
| Ведущий инженер |
| |||||||||||||||||
Программисты |
| ||||||||||||||||||