- •Технические особенности разработки программных средств. Принципы модульности и адаптируемости.
- •Экономические особенности разработки программных средств.
- •Вопросы оценки трудоёмкости разработки программных средств в свете требований стандартизации
- •1. Анализ разработки:
- •2. Проектирование:
- •3. Программирование:
- •Проблемы и задачи проектирования программных средств
- •Этапы жизненного цикла программных средств
- •Виды поддержки и стадии этапа проектирования
- •Основные понятия и определения статического анализа программных средств
- •Критерии оценки технологий проектирования программных средств
- •Суть управления качеством программных средств
- •Составляющие затрат в жизненном цикле программных средств
- •Основные факторы, влияющие на трудоёмкость разработки программных средств
- •Особенности сертификации программного обеспечения
- •Порядок и методология проведения статического анализа программных средств
- •1) Анализ и проектирование
Особенности сертификации программного обеспечения
Рекомендованные шесть характеристик качества ПО представляют основу для оценки и сертификации программ различных классов. При этом необходимо предварительно решить вопросы установления метрик, важности каждой характеристики, уровней ранжирования, критериев оценки и разработки моделей оценивания применительно к конкретным условиям применения ПО в определённой организации. Важность каждой характеристики качества меняется в зависимости от класса ПО, а также от различных точек зрения на их важность со стороны пользователя, разработчика и руководителя. В соответствии с этим разработчиками могут использоваться различные метрики для одних и тех же характеристик ПО, потому что одни и те же метрики не применимы для всех фаз ЖЦ ПО. Так, если пользователя интересует только качество конечной продукции, то разработчики заинтересованы и в качестве промежуточных результатов на всех фазах ЖЦ, так как без этого конечный результат может быть не оптимальным или вовсе не отвечать заданным требованиям. Руководители более заинтересованы в общем качестве ПО, чем в конкретных характеристиках, и поэтому для них важнее вопросы сопоставления повышения качества с критериями управляемости, такими как плановая задержка или перерасход стоимости, так как для них основная задача состоит в оптимизации качества в пределах ограниченной стоимости, трудовых ресурсов и установленного времени.
Для шести вышеназванных характеристик качества ПО используют несколько достаточно апробированных метрик, но стандартами предусматривается возможность разработки организациями дополнительной номенклатуры характеристик и показателей, своих собственных моделей процесса оценивания и методов формирования метрик, связанных с этими характеристиками. Это делается для более широкого охвата различных областей применения ПО с определённой спецификой решаемых задач.
Считается общепринятым, что наиболее объективным путём определения важности характеристик является путь проведения экспертных оценок на предмет выявления свойств, определяющих качество ПО конкретного применения, включая и те, которые не вошли в шесть обязательных характеристик, и упорядочение их по предпочтительности.
Руководствуясь этим, в интересах оценки и сертификации ИС специального назначения одним из авторов при выполнении соответствующей НИР был проведен опрос, в основу которого была положена анкета с включённой в неё совокупностью характеристик (свойств), полученной в результате анализа требований к ПО данной ИС. Объективность опроса достигалась участием в нём 35 ведущих специалистов из 10 организаций заказчиков и разработчиков ИС, а также проверкой согласованности ответов экспертов и исключением крайне противоположных оценок. Результаты обработки такой информации с учётом некоторой корректировки названий свойств, в соответствии с рекомендациями приведены в таблице:
Характеристики свойств ПО
Наименование свойств Коэффициент Ранг свойства важности
Функциональные возможности 0,35 1
Надёжность 0,25 2
Сопровождаемость 0,20 3
Эффективность 0,15 4
Мобильность 0,03 5
Практичность 0,02 6
С учётом полученных данных применительно к рассмотренному классу ПО можно выделить:
а) основные свойства – функциональные возможности, надёжность, сопровождаемость, эффективность;
б) дополнительные свойства – мобильность, практичность.
Большинство из приведенных свойств присуще ПО и других классов. Однако степень их важности будет отличаться, и не исключено выявление новых свойств. Так, для ИС военного назначения наиболее важным свойством может быть надёжность, для систем управления технологическими процессами – эффективность, а для ПО универсальных ИС широкого применения – мобильность и функциональные возможности.
Следует отметить, что цель проведения таких экспертных оценок состоит не столько в обеспечении «свёртки» комплексных показателей качества в обобщённый, сколько в выделении основных и дополнительных свойств и их показателей, в возможном дополнении их новыми, что допускается требованиями ГОСТов, ОСТов и других регламентирующих документов.
Для таких сложных систем, как ПО ИС, нет возможности описать все свойства количественными показателями. Поэтому при разработке, испытаниях, сертификации и эксплуатации ПО приходится использовать две группы показателей качества (ПК):
1) объективные (количественные) ПК, характеризуемые реально измеряемыми физическими величинами;
2) субъективные (качественные) ПК, характеризуемые, как правило, фактом практического наличия или отсутствия того или иного свойства у ПО и оцениваемые соответственно 1 или 0.
Использование качественных показателей хотя и вносит элемент субъективизма в оценку ПО, но позволяет с определённой достоверностью, зависящей от опыта и квалификации разработчика, заказчика или пользователя, учесть степень влияния таких свойств на качество всей ИС.
Степень субъективизма может быть значительно снижена при использовании метода групповых экспертных оценок. Поскольку стандартом [9] определено, что предложенные в нём характеристики – не истина в последней инстанции, а только образуют основу для дальнейшего уточнения и описания качества ПО, допустимо расширять состав соответствующих свойств и номенклатуры показателей их оценки, устанавливать свои собственные модели процесса оценивания и методы формирования и проверки метрик, связанных с этими показателями, для охвата различных областей применения и стадий ЖЦ. С учётом этого в качестве примера совокупности показателей качества ПО для одной из ИС может служить следующая совокупность:
1) количественные ПК:
а) функциональные ПК решения задач, определяемые назначением ИС, – среднее время решения задачи, пропускная способность, время ответа и другие;
б) среднее время наработки на программный отказ;
в) среднее время восстановления после программного отказа;
г) коэффициент загрузки оперативной памяти;
д) коэффициент загрузки производительности;
е) ёмкость программ;
ж) время изменения логической структуры базы данных и выходных форм;
2) качественные ПК:
а) информативность текстов;
б) соответствие программной документации требованиям стандартов;
в) защищённость от НСД;
г) степень «дружественности» пользовательского интерфейса и ряд других.
Модель процесса оценивания качества и сертификации ПО должна отражать основные этапы, требуемые для оценивания по характеристикам, рекомендуемым стандартом, в соответствии с которым процесс состоит из трёх стадий:
1) установление (определение) требований к качеству,
2) подготовка к оцениванию,
3) процедура оценивания.
Требования должны формулироваться в установленных ГОСТом терминах характеристик качества и комплексных показателей.
Подготовка к оцениванию включает в себя:
а) выбор метрик (показателей), сводящийся к установлению количественного масштаба и метода для определения значения того или иного признака свойств ПО;
б) определение уровней ранжирования, представляющее собой разделение всей шкалы выбранных метрик на диапазоны, соответствующие различным степеням удовлетворения требований по конкретным показателям;
в) определение критериев оценки, позволяющих подытоживать результаты оценивания различных характеристик с помощью специальных таблиц решений, среднего взвешивания или других приёмов, для получения вывода о приемлемости результатов оценки отдельных признаков свойств и качества ПО в целом, о приёмке или отбраковке программной продукции.
Процедура оценивания включает:
а) измерение, результатом которого является получение измеренного признака свойств в масштабе выбранной метрики;
б) ранжирование, устанавливающее отнесение измеренного признака к тому или иному уровню;
в) оценка, являющаяся последним этапом процесса оценивания ПО, на котором обобщается множество установленных уровней и результатом которого является заключение о качестве ПО, по которому после сравнения с другими факторами, такими как время и стоимость, принимается решение о выпуске (или невыпуске) программной продукции и её сертификации.
МЕТОДЫ ОЦЕНКИ ТЕХНИКО-ЭКОНОМИЧЕСКИХ ПОКАЗАТЕЛЕЙ ПРОГРАММНЫХ СРЕДСТВ НА РАЗЛИЧНЫХ ЭТАПАХ ИХ ЖИЗНЕННОГО ЦИКЛА