Измерение функциональных размеров COSMIC - COSMIC functional size measurement

Измерение функциональных размеров COSMIC - это метод измерения стандартного функционального размера программного обеспечения. COSMIC - это аббревиатура от международного консорциума COmmon Software Measurement International, добровольной организации, которая разработала метод и все еще расширяет его использование в других областях программного обеспечения.

Метод

«Руководство по измерениям» определяет принципы, правила и процесс измерения стандартного функционального размера части программного обеспечения. Функциональный размер - это мера количества функциональных возможностей, предоставляемых программным обеспечением, полностью независимая от каких-либо технических или качественных соображений.[1] Общие принципы функционального размера описаны в стандарте ISO / IEC 14143.[2] Этот метод сам по себе является международным стандартом. КОСМИЧЕСКИЙ[3] стандарт - это первый второе поколение внедрение стандарта ISO / IEC 14143. Также существует четыре реализации первого поколения:

  • ИСО / МЭК 20926 - IFPUG функциональные точки
  • ISO / IEC 20968 - Функциональные точки Mk II
  • ISO / IEC 24570 - Функциональные точки Nesma
  • ISO / IEC 29881 - Функциональные точки FiSMA

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

  • Принятие всех концепций измерения из метрологии ISO
  • Определенная единица измерения
  • Полностью соответствует ISO / IEC 14143
  • Предпочтительно независимый от домена

Этот метод основан на принципах, а не на правилах, которые не зависят от предметной области.[4] Принципы метода основаны на фундаментальных принципах программной инженерии, которые впоследствии были проверены на практике.[5]

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

Этот метод можно использовать в самых разных областях, таких как бизнес-приложения, программное обеспечение реального времени,[6] мобильные приложения,[7] программное обеспечение инфраструктуры и операционные системы. Метод разбивает Функциональные требования пользователя программного обеспечения на комбинации четырех типов перемещения данных:

  • Вход (E)
  • Выход (X)
  • Читать (R)
  • Написать (W)

Подсчет функциональных точек позволяет измерить размер программного обеспечения, который представляет собой сумму перемещений данных для данного функционального требования. Его можно использовать для оценки (и сравнения) усилий по проекту программного обеспечения, стоимости, продолжительности, качества и работ по обслуживанию.[8][9]

Основой метода является стандарт ISO / IEC 19761, который содержит определения и основные принципы, которые более подробно описаны в руководстве по измерениям COSMIC.[3]

Применимость метода измерения функциональных размеров COSMIC

Поскольку метод COSMIC основан на общих принципах, эти принципы могут применяться в различных областях. Для ряда доменов были написаны инструкции, чтобы помочь измерителям применять метод COSMIC в своей области:[10]

  • ПО в реальном времени Программное обеспечение реального времени «управляет средой, получая данные, обрабатывая их и возвращая результаты достаточно быстро, чтобы повлиять на среду в это время».[11] В руководстве описано, как использовать общие принципы в этой среде. [12]
  • Сервисно-ориентированная архитектура (SOA) Это программная архитектура, в которой сервисы предоставляются другим компонентам с помощью компонентов приложения через протокол связи по сети. Служба - это дискретная функциональная единица, к которой можно получить удаленный доступ, действовать и обновлять независимо, например получение выписки по кредитной карте в Интернете. В руководстве описано, как измерить функциональный размер отдельных компонентов.[13]
  • Data WareHouse и Большое количество данных Это область, в которой рассматриваются способы анализа, систематического извлечения информации или иного обращения с наборами данных, которые слишком велики или сложны для обработки традиционным прикладным программным обеспечением для обработки данных. В руководстве описывается, как преобразовать принципы в этой области до функционального размера.[14]
  • Программное обеспечение для бизнеса Это программное обеспечение, предназначенное для выполнения группы скоординированных функций, задач или действий в интересах пользователя. Примеры приложения включают текстовый процессор, электронную таблицу, бухгалтерское приложение, веб-браузер, почтовый клиент, медиаплеер, программу просмотра файлов, имитатор полета или редактор фотографий. Программное обеспечение бизнес-приложений отличается от системного программного обеспечения, которое в основном связано с работой компьютера. В руководстве описывается, как работать со специфическими функциями приложения, такими как хранение и поиск данных.[15]

Для объяснения использования метода был разработан ряд тематических исследований. Метод особенно эффективен при оценке стоимости программных продуктов.[16]

Организация, лежащая в основе метода

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

Методы измерения функциональных размеров первого поколения состояли из правил, основанных на эмпирических результатах. Немного[ВОЗ? ] определяют свою собственную терминологию, которая может пересекаться с другими терминами в программной инженерии.[уточнить ] Они хорошо работают для программных доменов, для которых были разработаны правила, но для других доменов правила необходимо изменить или расширить. Ключевые элементы метода измерения функциональных размеров второго поколения:

  • Принятие всех концепций измерения из метрологии ISO
  • Определенная единица измерения
  • Полностью соответствует ISO / IEC 14143
  • Предпочтительно независимый от домена

Метод основан на принципах и правилах, не зависящих от предметной области. Принципы метода основаны на фундаментальных принципах программной инженерии, которые впоследствии были проверены на практике.[5]

Рекомендации

  1. ^ ISO (2011-06-19). «ИСО / МЭК 19761: 2011». Международная организация по стандартизации. Получено 2019-05-06.
  2. ^ ISO / IEC JTC 1 / SC 7 Программное обеспечение и системная инженерия (2007-02-01). «ИСО / МЭК 14143». Международная организация по стандартизации. Получено 2018-06-13.
  3. ^ а б COSMIC (19 февраля 2003 г.). «ИСО / МЭК 19761». Международная организация по стандартизации. Получено 2018-06-13.
  4. ^ АВогелезанг, Франк (2013). «Что такое метод конечного автомата второго поколения». Получено 2019-04-14.
  5. ^ а б Абран, Ален; Олиньи, Серж; Саймонс, Чарльз (2011). «Полнофункциональные точки COSMIC (FFP) и всемирная стратегия полевых испытаний». Публикации Ауэрбаха. Получено 2018-06-18.
  6. ^ Оливье Гетта, Бубкер Бузид и Жори Ле-Бихан (Renault) (17 апреля 2012 г.). «Разработка FSM-инструмента для требований встраиваемого ПО реального времени». Математическая работа. Получено 2018-06-18.
  7. ^ Гарольд ван Херинген и Эдвин ван Горп (05.01.2015). «Измерьте функциональный размер мобильного приложения: используя метод измерения функционального размера COSMIC». 2014 Совместная конференция Международного семинара по измерению программного обеспечения и Международной конференции по измерению программных процессов и продуктов. IEEE. С. 11–16. Дои:10.1109 / IWSM.Mensura.2014.8.
  8. ^ МакКоннелл, Стив (2006). Оценка программного обеспечения. Редмонд, Ва: Microsoft Press. п. 200. ISBN  978-0735-605350.
  9. ^ Абран, Ален (2015). Оценка программного проекта. Вайли. ISBN  978-1118-954089.
  10. ^ Флатер, Дэвид (2016). "Рациональный фундамент метрологии программного обеспечения" (PDF). NIST.
  11. ^ Мартин, Джеймс (1965). Программирование компьютерных систем в реальном времени. Энглвуд Клиффс, Нью-Джерси: Prentice-Hall Inc., стр.4. ISBN  978-0-13-730507-0.
  12. ^ Саймонс, Чарльз; Лестерхейс, Арлан; Дешарне, Жан-Марк (2018). «Руководство COSMIC по определению размеров программного обеспечения в реальном времени». КОСМИЧЕСКИЙ. Получено 2019-04-14.
  13. ^ Фэгг, Питер; Лестерхейс, Арлан; Правило, Грант (2018). «Руководство COSMIC по определению конфигурации программного обеспечения с сервис-ориентированной архитектурой». КОСМИЧЕСКИЙ. Получено 2019-04-14.
  14. ^ Саймонс, Чарльз; Лестерхейс, Арлан (2018). «Руководство COSMIC по определению размеров Data WareHouse и ПО для больших данных». КОСМИЧЕСКИЙ. Получено 2019-04-14.
  15. ^ Саймонс, Чарльз; Лестерхейс, Арлан (2017). «Руководство по определению размера программного обеспечения для бизнеса». КОСМИЧЕСКИЙ. Получено 2019-04-14.
  16. ^ "Руководство по оценке затрат GAO GAO-09-3SP" Лучшие практики разработки и управления капитальными затратами по программе " (PDF). Счетная палата правительства США. 2009 г.

внешняя ссылка

  • COSMIC сайт Общедоступная версия руководства по измерениям COSMIC и других технических отчетов
  • COSMIC Публикации Публикации в общественном достоянии по методу COSMIC