Мегаобучалка Главная | О нас | Обратная связь


Пример расчета на базе простой модели COCOMO



2018-06-29 970 Обсуждений (0)
Пример расчета на базе простой модели COCOMO 0.00 из 5.00 0 оценок




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

Вычисление базовых параметров.Так как алгоритмы генерации и общие принципы построения подобных систем широко известны, разработчику необходимо выбрать наиболее подходящий, доработав его согласно требованиям текущего проекта. поэтому распределение трудозатрат по этапам можно определить по первой строке таблицы 1. То есть, в процентном соотношении относительно этапа цикла проектирования ПС, распределение ресурсов на разработку, дополнительные требования заказчика и поддержку будет составлять 70, 20 и 10 соответственно. Также заказчику, запрашивающему подобные программные средства, как правило, известны требования, предъявляемые к ним и основные принципы их разработки.

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

Определение количества выводов и соответствующего количества функциональных точек 1 группы.Готовая система состоит из 3-х файлов (файла класса для построения изображения, файла изображения, которое он генерирует и файла, в котором происходит создание экземпляра данного класса и вызов необходимых методов для настройки изображения и его генерации) и одной HTML-формы, необходимой для вывода изображения и считывания введенных пользователем символов для проверки соответствия, на изображение выводятся 7 случайных символов, а также случайным шрифтом из заранее определенного множества. Поэтому для определения коэффициентов сложности на данном этапе выбираем третью строчку таблицы 5 для определения весовых коэффициентов. Таким образом, на выходе получается 3 файла, выводящих ПС 1 элементу и 1 файл изображения, выводящий 7 элементов. Файлы, содержащие большее количество информативных элементов, отсутствуют. Тогда количество функциональных точек выводов X1 будет вычисляться следующим образом:

  .  

Определение количества выводов и соответствующего количества функциональных точек второй группы. За ввод информации отвечает единственный элемент проектируемой системы – HTML-форма, в поле которой пользователь вводит с клавиатуры отображенные на изображении символы. Таким образом, имеется один элемент ввода с количеством единиц отображаемой информации, равным 7. Из этого следует, что необходимо воспользоваться для расчета первой строкой таблицы 6. Искомое значение получится следующим:

   

Оценка количества опросов ввода и вывода и соответствующего количества функциональных точек третьей и четвертой группы позволяет сделать вывод, что количество опросов ввода в системе равно 1, так как есть только один возможный способ ввода информации – форма на странице, количество вводимых элементов равно 1 (строка символов) как и в предыдущем пункте. Следовательно, количество функциональных точек будет вычисляться ПС формуле (8), а весовые коэффициенты будут определяться ПС первой строке таблицы 8.

  .  

Количество опросов вывода в данном случае существенно больше. Сначала браузер пользователя ПС протоколу HTTP запрашивает на вывод страницу, содержащую разработанную форму, выдающую пользователю 7 символов полезной информации(на изображении), затем скрипт, генерирующий страницу, запрашивает вывод код класса, выводящего изображение – 1 элемент, а также вызывает как минимум 2 необходимых метода – конструктор класса с параметрами его инициализации и метод непосредственной генерации защитного изображения. Таким образом, получается 1 запрос вывода, содержащий 7 элементов и 3 опроса, содержащих ПС 1 элементу. Тогда искомое количество функциональных точек четвертой группы определится как:

  .  

Весовые коэффициенты определяются ПС нижней строке таблицы 7.

Определение количества связей файлов и соответствующего количества функциональных точек пятой группы.В рассматриваемом случае имеется 2 логические связи – между файлом, подключающим класс и данным классом и между формой и скриптом ее обработки. Количество элементов равно 1 в каждом случае. Таким образом, для вычисления количества точек пятой группы, рекомендуется использовать верхнюю строку таблицы 9:

  .  

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

  .  

Общее количество функциональных точек системы будет равно:

   

Далее необходимо рассмотреть поправки на факторы внешней среды (табл. 17).

 

Таблица 17

Оценка поправок на внешние факторы

№ п/п Факторы среды Оценка ПС пятибалльной шкале
Каналы передачи данных
Распределенные вычисления
Производительность системы
Конфигурирование
Частота транзакций
Интерактивная обработка
Пользовательский интерфейс  
Интерактивное обновление базы данных
Сложность обработки запросов
Сложность инсталляции (установки) программной системы  
Сложность эксплуатации системы
Степень распределенности системы
Гибкость изменения функций

Таким образом, суммарное количество баллов:

   

Уровень их суммарного влияния:

   

Уточненное количество функциональных точек:

   

При вычислении размерности программного обеспечения для языка PHP примем его размерность равной аналогичной программе, написанной на Java, так как в рассматриваемом случае без углубления в тонкости реализации можно сказать, что интерпретатор PHP и Java будут выполнять идентичные операции ПС взаимодействию с операционной системой и аппаратной частью сервера. Тогда с учетом операций, выполняемых интерпретатором языка:

  .  

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

Так как рассматриваемая система является информационной, то соответствующие коэффициенты выбираются из таблицы 12. Тогда:

  (24)

Из данной цифры видно, что увеличение количества разработчиков не имеет смысла, достаточно одного программиста.



2018-06-29 970 Обсуждений (0)
Пример расчета на базе простой модели COCOMO 0.00 из 5.00 0 оценок









Обсуждение в статье: Пример расчета на базе простой модели COCOMO

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...
Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы...
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (970)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)