Учебное пособие санктПетербург 2015
Скачать 3.34 Mb.
|
Модели управления качеством программного обеспечения Для оценки и мониторинга результатов пред- шествующих этапов предназначен этап «контроля» (control). На этом этапе также происходит модифика- цией системы управления. Для гарантии корректности документации можно обеспечить, например, ее соот- ветствие спецификации ISO 9000. Система менеджмента качества компании Motorola также пользуется международными стан- дартами серии ISO 9000, что позволяет ещё лучше контролировать процессы, тем самым улучшая ка- чество выпускаемой продукции. Благодаря внедре- нию этих стандартов процессная модель компании прозрачна, управляема и позволяет чётко структу- рировать выполняемые в компании операции, что приводит к построению единого алгоритма произ- водства, результатом которого является качествен- ная продукция. В результате можно говорить о гибридной сис- теме управления качеством, которая адаптирована под реалии конкретной компании, включает допол- нительные аспекты контроля её функционирования и интегрирована со всеми моделями внутренней кор- поративной среды. Такой подход (применение гиб- ридной системы управления качеством) использует- ся во многих крупных компаниях и является одним из самых эффективных. Однако следует сказать и о недостатках крупных систем управления качеством. Во-первых, это дли- тельный цикл жизни дефектов. Это связано с большим числом этапов согласований, требуемых для внесения изменений в конструкцию или исполняемый код. В частности, цикл жизни дефектов в некоторых компа- ниях может достигать нескольких лет. Пожалуй, са- мым известным примером этого является как раз де- 102 Методы оценки и измерения характеристик информационных систем фект компании Motorola: невозможность соединения абонентов, одновременно звонящих друг другу. Дан- ный дефект просуществовал почти 30 лет. Во-вторых, в крупных компаниях возникает большое количество проблем при реализации неболь- ших проектов. Это связано с необходимостью адап- тации имеющегося процесса управления качеством к реалиям небольшой задачи с ограниченным набором ресурсов и фиксированными сроками. Без этого вели- ка вероятность израсходовать предоставленные ресур- сы на бюрократические согласования и организацию деятельности, не реализовав при этом поставленные задачи. Схожая система применяется в компаниях Microsoft, Samsung, General Electric. Некоторые дополнительные особенности в управ- лении качеством продукции существуют в компании Samsung. Поскольку одной из основных сфер деятельнос- ти компании является производство электронных компо- нентов и комплектующих на заказ, в систему управления качеством были интегрированы стандарты ISO/TS 16949 и TL 9000. Первый необходим для производства элект- ронных компонентов для автомобильной промышлен- ности, а второй для телекоммуникационной. Исходя из представленной информации, можно однозначно говорить о масштабах современных сис- тем управления качеством. Чем более диверсифициро- вана деятельность компании, тем сложнее контроли- ровать качество выпускаемой продукции, так как под- ходы к разным продуктам могут отличать и требовать интеграции дополнительных регламентов. Принимая во внимание сложную структуру ин- формационных систем, следует понимать под их ха- рактеристиками те показатели, которые способны обеспечить удовлетворение требований их потенци- 103 Модели управления качеством программного обеспечения альных пользователей. В соответствии с этим, изме- рять и контролировать следует: - характеристики функционирования аппаратно- го обеспечения системы; - характеристики программного обеспечения системы; - характеристики подсистем управления данны- ми, с которыми работает система; - характеристики функционирования сетевой ин- фраструктуры системы; - личностные и психологические особенности сотрудников, работающих с системой 104 Методы оценки и измерения характеристик информационных систем 4. Особенности измерения и оценивания характеристик качества программного обеспечения 4.1 Процесс оценки качества на основе измерений Процесс оценки качества неразрывно связан с определением параметров, поддающихся измерению, в которых заинтересован потребитель. Современные методы оценки качества имеют в своем распоряже- нии широкий арсенал средств измерения, среди кото- рых особенно выделяют прикладной статистический анализ данных, методы экспертных оценок, а также более сложные методы интеллектуального анализа данных, таких как нейронные сети, методы машин- ного обучения и т.д. В области анализа качества программного обес- печения особое место занимает специальное научное направление – программометрика, имеющая основа- нием метрическую теорию программ. Наиболее характерными чертами используемого для данных целей математического аппарата являются следующие: 1) Задачи измерений опираются на потребности предметной области, а не собственно математики. 2) Используемому математическому аппарату присущи различные допущения, подчас расходящиеся со строгим аппаратом математической статистики. 3) Значительное внимание уделяется сбору дан- ных для анализа и предобработке поступающих дан- ных (с целью выявления нарушений форматов данных, аномальных значений, пропусков и т.д.). В области метрик оценки качества программно- го обеспечения также выделяют такие подходы, как: 105 Особенности измерения и оценивания характеристик качества программного обеспечения 1) Метрики оценки непосредственно ПО – на ос- нове подходов, отображающих специфические харак- теристики программ. 2) Метрики анализа технологии разработки ПО – на основе подходов к оценке параметров разработки программ и их технических характеристик. Существуют также метрики, используемые при оценке качества ПО исходя из вида поступающей ин- формации: 1) Метрики соответствия разработанного ПО за- ранее определенным требованиям. 2) Метрики, позволяющие анализировать откло- нения от нормы параметров первичных проектных ма- териалов (определяют полноту технических парамет- ров исходного кода). 3) Метрики, дающие возможность прогнозировать качество реализуемого программного обеспечения. 4.1.1. Специфика экспертных методов Применение различных средств оценки качест- ва имеет свои особенности. В частности, использова- ние математических методов нацелено на то, чтобы повысить объективность при оценке качества, избе- гая интуитивности. Однако практика показывает, что эффективность оценки качества возрастает при ис- пользовании творческой, интуитивной деятельности отдельных экспертов или коллективов экспертов, с помощью которых достигается построение наиболее адекватных и полных моделей процессов, качество которых затем измеряется. Экспертными называют общую совокупность методов, основанных на использовании квалифика- ции, опыта, творческого потенциала одного или не- скольких специалистов измеряемого процесса. 106 Методы оценки и измерения характеристик информационных систем На реализацию методов экспертного оценивания оказывают существенное влияние следующие факторы: 1) Специалисты для проведения экспертизы долж- ны обладать достаточной профессиональной квалифи- кацией и быть соответствующим образом подобраны. 2) Эксперты должны определять свои оценки не- зависимо от внешних влияний и друг от друга. 3) Число привлекаемых экспертов должно быть обоснованным: увеличение числа недостаточно ком- петентных специалистов не приведет к повышению качества принимаемого решения, в том числе, отсутс- твие квалификации нельзя компенсировать числом привлекаемых людей. 4) Уменьшение числа экспертов в группе может привести к увеличению количества случайных факто- ров, предвзятости, субъективным оценкам. Процесс формирования групп экспертов базиру- ется на таких методах, как: 1) Документальный – путем анализа анкет и до- полнительных документов, в которых хранится ин- формация о специалистах. 2) Экспериментальный – путем анализа инфор- мации о предыдущих экспертизах, в которых принимал участие специалист, опыта работы в таких процедурах. 3) Голосование экспертов по определению чис- ла кандидатов в группу экспертов, включающее в себя отбор и формирование данной группы. 4) самооценки. При анализе различий между оценками экспертов, а также для выяснения причин этого применяются спе- циальные математические методы, включающие в себя: 1) Анализ случайных величин. 2) Количественное выражение важности пара- метров, определение весовых коэффициентов. 107 Особенности измерения и оценивания характеристик качества программного обеспечения 3) Определение оценок математического ожида- ния весовых коэффициентов. 4) Определение отклонения оценок всех экспер- тов от оценки математического ожидания. 5) Оценка величины отклонений, ее интерпретация. 6) Оценка дисперсий случайной величины. 7) Усреднение оценок экспертов с использова- нием методов экспертного оценивания (метод анализа иерархий, метод Дельфи и т.д.). 8) Определение коэффициентов конкордации для оценки согласованности мнений нескольких экс- пертов и т.д. Использование развитого математического аппа- рата при анализе экспертных оценок позволяет выявить ряд нарушений в проведении процедуры экспертного оценивания, а именно, разбросы в мнении экспертов, как правило, говорят о том, что вопросы поставлены недостаточно корректно и однозначно, а также могут свидетельствовать о некомпетентности привлекаемых специалистов к процедуре оценивания. 4.1.2. Измерительные шкалы Необходимость в объективности и воспроизво- димости измерений и количественной оценке различ- ных характеристик программного обеспечения требу- ет использования определенной системы измерений и методов оценки. Системой измерений характеристик ПО называ- ют совокупность характеристик, которые поддаются измерению, измерительных шкал, характерных для них, единиц их измерения и определенных между ними связей. Используемые измерительные шкалы опреде- ляют диапазон значений измеряемых характеристик с заданной точностью и в установленных единицах. 108 Методы оценки и измерения характеристик информационных систем Существуют различные шкалы измерений ре- гистрируемых характеристик объектов. Рассмотрим наиболее распространенные из них, представленные на рисунке 40: Исходя из характеристик и специфики использу- емых метрик для них применяют следующие шкалы: 1) номинальная шкала (шкала наименований), в случае которой все объекты разделяются на классы по одному и тому же признаку, а объекты из разных клас- сов имеют различные обозначения. Пример: Использование вложенных методов: 0 – нет, 1 – да; База данных: 1 – объектная, 2 – реляционная, 3 – сетевая. Номинальная шкала характеризуется ограничен- ными возможностями статистической обработки пере- менных, многие операции которой (например, опреде- ление среднего арифметического, медианы) для нее не имеют смысла. Для переменных в номинальной шкале можно вычислять моду, проводить анализ частот, груп- пировки, в ходе которых генеральная совокупность данных делится на категории переменных; Рисунок 40 - Шкалы измерений 109 Особенности измерения и оценивания характеристик качества программного обеспечения 2) порядковая (ранговая) шкала, в случае кото- рой качественные переменные разбиваются на классы, и сами классы упорядочиваются. Пример: Использование процедур в программе: 1 – отсутс- твует, 2 – умеренное, 3 – частое, 4 – очень частое. Важной характеристикой порядковой шкалы яв- ляется то, что эмпирическая значимость переменных, измеренных в ней, не связана с разницей между сосед- ними значениями, имеющими численные представле- ния. Иными словами, несмотря на то, что разница между «умеренным» использованием процедур в программе и отсутствием их равна единице, так же, как и разница меж- ду «частым» и «умеренным» их использованием, нельзя фиксировать, что различие между ними одинаково. Для переменных данной шкалы недопустимы арифметичес- кие операции, однако возможно использование медианы и моды, любых монотонных преобразований, процедур проверки гипотезы равенства медианы заданному значе- нию, гипотезы проверки равенства двух медиан, методов ранговой корреляции Кендалла и Спирмена; 3) интервальная шкала, при которой эмпиричес- кую значимость имеют не только абсолютные значения показателей, но и разница (интервал) между ними. Пример: Программа В в сравнении с программой С имеет настолько же больше единиц, насколько и программа А в сравнении с программой В, а именно, 20 единиц; 4) шкала отношений – шкала, в которой числен- ные значения числовой системы определяются с точ- ностью до преобразования подобия (в случае интер- вальной шкалы – с точностью до линейных преобра- зований). Эмпирическую значимость здесь уже имеют отношения между значениями. 110 Методы оценки и измерения характеристик информационных систем Пример: Программа А труднее программы В в 3 раза. Свойства шкалы интервалов здесь сохраняются, в том числе, к данной шкале принадлежат все интер- вальные переменные, для которых фиксирована абсо- лютная нулевая точка. Практика показывает, что раз- ница между переменными, относящимися к шкале от- ношений и интервальной шкале, обычно невелика; пе- ременные, определенные к шкале интервалов, обычно имеют также шкалу отношений. В заключение стоит сказать, что выбор шкал измерений – важный этап процесса анализа дан- ных, и необходимо правильно фиксировать шкалы измерений и обращать внимание на операции, ко- торые к ним применимы, и на те, которые для них не имеют смысла. 4.1.3. Категории показателей качества программного обеспечения В настоящее время существует большое коли- чество метрик, применяемых для оценки программно- го обеспечения. Все данные метрики могут быть клас- сифицированы по разным основаниям. Предложенная ниже классификация выполнена по направлениям ка- чественной оценки метрик: 1) Анализ надежности ПО, дающая возможность анализировать ситуации отказов и прогнозировать их. 2) Анализ языковых средств, их уровня и исполь- зования. 3) Анализ производительности ПО, в том числе, путем определения ошибок реализации, с дальнейшим повышением ее эффективности. 4) Анализ сложности ПО, в том числе, информа- ционной и топологической. 111 Особенности измерения и оценивания характеристик качества программного обеспечения 5) Анализ сложности восприятия ПО, в том числе, когнитивной эргономичности, имеющей в ос- новании психологические особенности восприятия информации человеком, результаты которого имеют ценность на этапе разработки, проектирования, а так- же внесения изменений и сопровождения ПО. 6) Анализ труда разработчика, необходимый для технико-экономического обоснования проекта по раз- работке ПО, а также для прогнозирования сроков все- го проекта и отдельно составляющих его этапов. С точки зрения возможности измерения характе- ристик и их точности все атрибуты качества ПО могут быть разбиты на 3 категории показателей, имеющих свои особенности. Сводная таблица категорий показа- телей с соответствующими им шкалами измерений и примерами представлена ниже в таблице 5. Таблица 5 - Категории показателей Категории показателей Количествен- ные Качественные Категорийные Шкала измере- ний Интервальная или относи- тельная Порядковая или номиналь- ная Номинальная шкала катего- рий-свойств Примеры показа- телей ка- чества Надежность, эффектив- ность комп- лексов про- грамм Мобильность, сопровождаем ость,трудоемк ость, практич- ность Функциональ- ная пригодность программного средства Для количественных показателей более харак- терно использование интервальной или относитель- ной шкал, поскольку они могут быть объективно из- 112 Методы оценки и измерения характеристик информационных систем меренными и сопоставленными с требованиями в чис- ловом эквиваленте. Категорийные дают информацию о совокупности свойств и общих признаков объекта, тем самым, описываются номинальной шкалой кате- горий-свойств. Качественные показатели, как прави- ло, определяются и оцениваются субъективно с при- влечением экспертов и содержат отдельные признаки – категории, для описания которых применяют поряд- ковую или номинальную шкалу категорий. Часть атри- бутов качественных показателей могут быть описаны количественно, однако чаще формируются и анализи- руются экспертно. 113 Основы метрической теории программ 5. Основы метрической теории программ 5.1 Классификация и характеристика метрик Процесс проектирования и разработки ИС пред- ставляет собой сложную для решения комплексную задачу. Для поддержки этого процесса, а именно, для минимизации ошибок при разработке ИС были созда- ны различные инструментальные средства, в том чис- ле, CASE-средства, применяемые на различных стади- ях проектирования ИС, разработки ИС и управлением ее разработкой. Увеличение количества ошибок в этом процессе, которые стали проявляться во время отладки ИС, сделало актуальной задачу разработки методологии оценки как программных продуктов в целом, так и раз- личных их компонентов и параметров (надежность, фун- кциональная пригодность, трудоемкость и т.д.). Особое значение стала получать возможность использования та- кой методологии на различных стадиях проектирования и разработки ИС, таких, как прототипирование, тестиро- вание перед выпуском и т.д. Наличие существовавших методов оценки ИС, базировавшихся в основном на ис- пользовании статистики аналогий с проектированием и разработкой предыдущих ИС, разбитых по классам сис- тем, компонентов, функций и отдельных процедур, не могло удовлетворить реалиям разработки ИС, которые требовали надежной методологии их оценки. Существенное продвижение в решении данных воп- росов связано с относительно новым научным направлени- ем – программометрикой (метрической теории программ). К задачам, решаемым программометрикой, относят такие, как: 1) Планирование ИС и управление ее разработ- кой с количественным определением трудоемкости ее реализации, а также технико-экономическим обосно- ванием будущего проекта. |