Липаев В.В. Программная инженерия
.pdfЛекция 11. Характеристики качества программных средств
условиях использования. Внешне доступность может оцениваться относи тельным временем, в течение которого ПС находится в работоспособном состоянии, в пропорции к общему времени применения. Следовательно, доступность — комбинация завершенности (от которой зависит частота отказов), устойчивости к ошибкам и восстанавливаемости, которые в со вокупности обусловливают длительность простоя для восстановления после каждого отказа, а также длительность наработки на отказ. Обобщение характеристик отказов и восстановления производится в критерии коэф фициент готовности. Этот показатель отражает вероятность иметь вос станавливаемые программы и данные в работоспособном состоянии в про извольный момент времени.
Нижняя граница шкалы атрибутов наделсности в таблице 11.2 отра жена значениями, при которых резко уменьшается функциональная при годность и использование данного типа ПС становится неудобным, опас ным или нерентабельным. Примером таких наихудших, предельных вели чин для многих классов ПС могут быть наработка на отказ менее десяти часов, коэффициент готовности ниже 0,9 и время восстановления более десяти минут. С другой стороны, наилучшие значения этих атрибутов практически ограничены теми ресурсами, которые могут быть выделены для их достижения при разработке и эксплуатации. Вычислительные и программные ресурсы объектной ЭВМ на непосредственное обеспечение надежности функционирования ПС обычно находятся в диапазоне от 10% до 90%, причем последние значения соответствуют критическим, особо высоконадежным системам. Даже для таких критических программных средств редко наработка на отказ превышает несколько тысяч часов, коэф фициент готовности не выше 0,999, а время восстановления при отказах не меньше нескольких секунд.
Эффективность: в стандарте ISO 9126 отражены две субхарактерис тики качества — временная эффективность и используемость ресурсов ЭВМ, которые рекомендуется описывать в основном количественными атрибутами, характеризующими динамику функционирования компонен тов ПС. В этой стандартизированной характеристике отражается только
частная конструктивная эффективность использования ресурсов ЭВМ, которую не следует смешивать с системной эффективностью функцио нальной пригодности ПС при применении в конкретной системе.
310
11.3. Конструктивные характеристики качества сложных программных средств
Основные требования к атрибутам характеристики временная эф фективность использования вычислительных ресурсов системы сосре доточены на наиболее критичных показателях производительности и дли тельности решения функциональных задач. В отличие от объемов памяти, временные характеристики труднее устанавливать и измерять, и их огра ниченность сильнее влияет на функциональную пригодность ПС. Обычно для оперативной работы пользователей важно иметь малое время отклика из ЭВМ после получения типового задания и начала решения требуемой функциональной задачи. Требуемая пропускная способность решения функ циональных задач зависит от их содержания и числа действующих пользо вателей. Используемость ресурсов памяти и производительности вычис лительных средств могут устанавливаться исходя, с одной стороны, из экономической целесообразности применения наиболее дешевой, с мини мальными ресурсами ЭВМ, загрузка которой будет в среднем не ниже 0,5. С другой стороны, высокая загрузка (выше 0,9) может приводить к неже лательной задержке или даже потере заданий при случайном, кратковре менном повышении их интенсивностей, что может негативно отражаться на функциональной пригодности.
Временная эффективность: свойства ПС, характеризующие требуе мые времена отклика и обработки заданий, а также производительность решения задач с учетом количества используемых вычислительных ресур сов в установленных условиях. Эти ресурсы могут включать другие про граммные продукты, аппаратные средства, средства телекоммуникации и т.п. Временная эффективность ПС определяется длительностью выпол нения заданных функций и ожидания результатов в средних и/или наи худших случаях, с учетом приоритетов задач. Она зависит от скорости обработки данных, влияющей непосредственно на интервал времени за вершения конкретного вычислительного процесса, и от пропускной спо собности — производительности, т.е. от числа заданий, которое можно реализовать на данной ЭВМ в заданном интервале времени (см. табл. 11.2). Эти показатели качества тесно связаны с дисциплиной диспетчери зации и временем реакции (отклика) ПС на задания при решении различ ных функциональных задач. Величина этого времени зависит от длитель ности решения совокупности задач центральным процессором ЭВМ, от затрат времени на обмен с внешней памятью, на ввод и вывод данных и от
311
Лекция 11. Характеристики качества программных средств
длительности ожидания в очереди до начала решения задачи. Эта субха рактеристика тесно связана с длительностью обработки типового задания, а также с интервалом времени решения типовых или наиболее часто вызы ваемых функциональных задач данным ПС. Пропускная способность ком плекса программ на конкретной ЭВМ отражается числом сообщений или заданий на решение определенных задач, обрабатываемых в единицу вре мени, зависящую от характеристик внешней среды.
Используемость ресурсов: степень загрузки доступных вычислитель ных ресурсов в течение заданного времени при выполнении функций ПС в установленных условиях. Ресурсная экономичность отражается занятос тью ресурсов центрального процессора, оперативной, внешней и вирту альной памяти, каналов ввода-вывода, терминалов и каналов сетей связи. Эта величина определяется структурой и функциями ПС, а также архитек турными особенностями и доступными ресурсами ЭВМ. В зависимости от конкретных особенностей ПС и ЭВМ при выборе атрибутов может доми нировать либо величина абсолютной занятости ресурсов различных ви дов, либо относительная величина использования ресурсов каждого вида при нормальном функционировании ПС. Ресурсная экономия влияет не только на стоимость решения функциональных задач, но зачастую, осо бенно для встраиваемых ЭВМ, определяет принципиальную возможность полноценного функционирования конкретного ПС в условиях реально ог раниченных вычислительных ресурсов. Несмотря на быстрый рост дос тупных ресурсов памяти и производительности ЭВМ, часто потребности в них для решения конкретных задач ПС обгоняют их техническое увеличе ние, и задача оценки и эффективного использования вычислительных ре сурсов остается актуальной.
Качественным анализом с учетом влияния на функциональную при годность можно определить предельные значения для основных атрибу тов конструктивной характеристики — эффективность. Используемость вычислительных ресурсов памяти и производительности ЭВМ для каждой из функциональных задач или прикладных программ может составлять несколько процентов. Однако для всего комплекса программ стабильное использование ресурсов ЭВМ ниже 50—70% нерентабельно и позволяет, в принципе, перейти на более дешевую ЭВМ с меньшими ресурсами. В то же время использование ресурсов более чем на 95% может приводить к
312
11.3. Конструктивные характеристики качества сложных программных средств
значительным задержкам или отказам при решении низкоприоритетных задач. При нестационарных потоках заданий на решение основных, функ циональных задач ПС необходимы некоторые резервы памяти и произво дительности ЭВМ, что определяет рациональные значения используемос ти ресурсов до 80—90% от максимальных значений. Атрибут временной эффективности — время отклика на задание пользователя непосредствен но зависит от решаемых функциональных задач и в общем случае может устанавливаться в диапазоне от 0,1 секунды до нескольких десятков се кунд. Эти значения зависят от динамических характеристик объектов внеш ней среды, для которых решаются функциональные задачи ПС. В админи стративных системах может быть допустимо среднее время отклика в не сколько секунд, а для оперативного управления динамическими объектами (самолетами, ракетами) оно сокращается до десятых и сотых долей секунды.
Три группы конструктивных характеристик качества ПС— прак тичность, сопровождаемость и мобильность трудно измерять количествен но, и они доступны в основном качественным оценкам их свойств. В
некоторых проектах для субхарактеристик сопровождаемости и мобиль ности при системном проектировании могут доминировать технико-эко номические меры трудоемкости (человеко-часы) и длительности (часы) для процедур, обеспечивающих реализацию атрибутов этих субхарактери стик. Однако для ряда атрибутов в этой группе характеристик приходится применять порядковые меры экспертных балльных шкал с небольшим числом (2—4) градаций. В таблице 11.3 представлены примеры возмоэн:- ных мер и шкал измерения основных субхарактеристик и их атрибутов качества. Они могут служить ориентирами при выборе и установлении требуемых значений этих показателей качества в спецификациях ПС.
Таблица 11.3 Основные качественные характеристики программных средств
и их атрибуты
Характеристики качества |
Мера |
Шкала |
Практичность |
|
|
Понятность: |
|
|
четкость концепции ПС; |
|
Отличая; |
демонстрационные возможности; |
Порядковая |
хорошая; |
наглядность и полнота документации |
|
удовлет.; |
|
|
неудовлет. |
313
Лекция 11. Характеристики качества программных средств |
|
|
|
|
Окончание табл. 11.3 |
||
Характеристики качества |
Мера |
Шкала |
|
1 Простота использования: |
|
|
|
простота управления функциями; |
Порядковая |
Отличая; |
|
комфортность эксплуатации; |
|
хорошая; |
|
|
|
удовлет.; |
|
|
|
неудовлет. |
|
среднее время ввода заданий; |
Секунды |
1—1000 |
|
среднее время отклика на задание. |
Секунды |
1—1000 |
|
Изучаемость |
|
|
|
трудоемкость изучения применения ПС; |
Чел.-часы |
1—100 |
|
продолжительность изучения; |
Часы |
1—1000 |
|
объем эксплуатационной документации; |
Страницы |
10—1000 |
|
1 объем электронных учебников |
Кбайты |
100—10000 |
|
1 Сопровождаемость |
|
|
|
Анализируемость: |
|
Отличая; |
|
стройность архитектуры программ; |
|
хорошая; |
|
унифицированность интерфейсов; |
Порядковая |
удовлет.; |
|
полнота и корректность документации |
|
неудовлет. |
|
Изменяемость: |
|
|
|
трудоемкость подготовки изменений; |
Чел.-часы |
1—1000 |
|
длительность подготовки изменений. |
Часы |
1—1000 |
|
Тестируемость: |
|
|
|
трудоемкость тестирования изменений; |
Чел.-часы |
1—1000 |
|
длительность тестирования изменений |
Часы |
1—100 |
|
1 Мобильность |
|
|
|
Адаптируемость: |
|
|
|
трудоемкость адаптации; |
Чел.-часы |
1-100 |
|
длительность адаптации. |
Часы |
1-100 |
|
Простота установки: |
|
|
|
трудоемкость инсталяции; |
Чел.-часы |
1-100 |
|
длительность инсталяции. |
Часы |
1-100 |
|
Замещаемость: |
|
|
|
трудоемкость замены компонентов; |
Чел.-часы |
1-100 |
|
длительность замены компонентов |
Часы |
1-100 |
1 |
Практичность — применимость: свойства ПС, отражающие слож ность его понимания, изучения и использования, а также привлекатель ность для квалифицированных пользователей при применении в указан ных условиях. Требования к практичности и ее субхарактеристикам — понятности и простоте использования зависят от назначения и функций ПС и могут формализоваться заказчиками набором свойств, необходимых
314
11.3. Конструктивные характеристики качества сложных программных средств
ДЛЯ обеспечения удобной и комфортной эксплуатации программ. Количе ственно простоту использования можно характеризовать требованиями допустимой средней длительности ввода типовых заданий и времени от клика на них. Требования к продолжительности изучения ПС, достаточ ной для эффективной эксплуатации системы квалифицированными специ алистами, могут составлять часы или недели. Для обеспечения полноцен ного изучения процессов применения ПС этими специалистами необходима эксплуатационная документация, объем которой существенно зависит от назначения и функций ПС и может быть задан на основе анализа преце дентов подобных успешных проектов. Для некоторых проектов ПС, под лежащих широкому тиражированию, могут быть желательны адекватные по содержанию электронные учебники, требования к объему и функциям которых также целесообразно оценивать по прецедентам. Следует учиты вать, что малый объем эксплуатационной документации может снизить качество и полноту использования функций сложного ПС, а очень боль шой объем — также может ухудшить эксплуатацию из-за трудности выде ления из множества второстепенных деталей и освоения наиболее суще ственных свойств и особенностей применения ПС.
В число пользователей могут быть включены администраторы, опе раторы, конечные и косвенные пользователи, которые находятся под влия нием или зависят от качества функционирования ПС. В практичности сле дует учитывать все разнообразие характеристик внешней среды пользова телей, на которые может влиять ПС, включая требующуюся подготовку к использованию и оценке результатов функционирования программ. Приме нимость (практичность) использования — понятие достаточно субъектив ное и трудно формализуемое, однако в итоге зачастую значительно опре деляющее функциональную пригодность и полезность применения ПС.
Понятность: свойства ПС, обеспечивающие пользователю понима ние, является ли программа пригодной для его целей и как ее можно использовать для конкретных задач и условий применения. Понятность зависит от качества документации и субъективных впечатлений от функ ций и характеристик ПС. Ее можно описать качественно четкостью функ циональной концепции, широтой демонстрационных возможностей, пол нотой, комплектностью и наглядностью представления в эксплуатацион ной документации возможных функций и особенностей их реализации.
315
Лекция 11. Характеристики качества программных средств
Она должна обеспечиваться корректностью и полнотой описания исход ной и результирующей информации, а также всех деталей функций ПС для пользователей.
Простота использования: возможность пользователю удобно и ком фортно эксплуатировать и управлять ПС. Аспекты изменяемости, адапти руемости и легкости инсталляции могут быть предпосылками для просто ты использования и выбора конкретного ПС. Она соответствует управляе мости, устойчивости к ошибкам и согласованности с ожиданиями и навыками пользователей. Эта субхарактеристика должна учитывать физи ческие и психологические особенности пользователей и отражать уровень контролируемости и комфортности условий эксплуатации ПС, возмож ность предотвращения ошибок пользователей. Должны обеспечиваться простота управления функциями ПС и достаточный объем параметров управления, реализуемых по умолчанию, информативность сообщений пользователю, наглядность и унифицированность управления экраном, а также доступность изменения функций в соответствии с квалификацией пользователя и минимум операций, необходимых для запуска определен ного задания и анализа результатов. Кроме того, удобство использования характеризуется рядом динамических параметров: временем ввода и от клика на задание, длительностью решения типовых задач, временем на регистрацию результатов, которые перекрываются с атрибутами субха рактеристики временная эффективность.
Простоту использования комплексов программ административных информационных систем в значительной степени характеризует коррект ность и адекватность описаний интерактивных директив управления, объем и время ввода заданий и время ожидания пользователями результатов при их исполнении. Простота использования может обобщенно оцениваться качественно шкалами с двумя-четырьмя категориями. Такой же метод наи более адекватен для оценивания комфортности эксплуатации и простоты управления функциями ПС. Однако некоторые атрибуты этой субхаракте ристики доступны для более полной количественной оценки путем изме рения трудоемкости и длительности соответствующих процессов подго товки и обучения квалифицированных пользователей к полноценной и эффективной эксплуатации ПС.
Изучаемость: свойства ПС, обеспечивающие удобное освоение его применения достаточно квалифицированными пользователями. Она мо-
316
11.3. Конструктивные характеристики качества сложных программных средств
жет определяться трудоемкостью и длительностью подготовки пользова теля к полноценной эксплуатации ПС. Атрибуты изучаемости зависят от возможности предварительного обучения и от совершенствования знаний в процессе эксплуатации, от возможностей оперативной помощи и под сказки при использовании ПС, а также от полноты, доступности и удоб ства использования руководств и инструкций по эксплуатации. Качество изучаемости ПС зависит от внутренних свойств и сложности комплекса программ, а также от субъективных характеристик квалификации конк ретных пользователей.
На значения изучаемости существенно влияют демонстрационные воз можности справочных средств обучения, качество и объем эксплуатацион ной документации, а также электронных учебников, которые можно оце нивать соответственно по числу сопровождающих страниц документов или занятых учебниками килобайтов памяти на ЭВМ. Изучаемость можно отражать трудоемкостью и продолжительностью изучения пользователя ми соответствующей квалификации, методов и инструкций применения ПС для полноценной эксплуатации. Эти атрибуты может характеризовать трудоемкость от единиц до сотен человеко-часов и продолжительность от единиц до тысяч часов, необходимых для освоения квалифицированного применения особенно сложных комплексов программ.
Оценки практичности зависят не только от собственных характери стик ПС, но также от организации и адекватности документации процес сов их эксплуатации. При этом предполагается, что в контракте, техничес ком задании или спецификации зафиксированы и утверждены требования к основным параметрам и качеству организационных методов и средств поддержки использования ПС. Эти требования могут влиять на функцио нальную пригодность и успех внедрения комплекса программ у пользова телей, а также значительно различаться в зависимости от функционально го назначения и сферы применения ПС. По порядковой шкале — «отлично, хорошо, удовлетворительно или неудовлетворительно» можно оценивать понятность: четкость концепции ПС, его демонстрационные возможности, наглядность и полноту документации, а также частично простоту исполь зования: комфортность эксплуатации и простоту управления функциями.
Сопровождаемость: приспособленность ПС к модификации и изме нению конфигурации. Модификации могут включать исправления, усовер-
317
Лекция 11. Характеристики качества программных средств
шенствования или адаптацию ПС к изменениям во внешней среде приме нения, а также в требованиях и функциональных спецификациях заказчи ка (см. лекцию 15). Простота и трудоемкость модификаций определяется внутренними метриками качества комплекса программ, которые отража ются на внешнем качестве и качестве в использовании, а также на сложно сти управления конфигурациями версий ПС (см. лекцию 16).
Требования к сопровождаемости количественно можно установить для субхарактеристик изменяемости и тестируемости экономическими ка тегориями допустимой трудоемкости и длительности реализации этих за дач при некоторых условиях. Обобщенно это отражается на длительности и трудоемкости подготовки и реализации типовых изменений, обуслов ленных необходимостью устранения дефектов и усовершенствованиями функций ПС. Для подготовки и выполнения каждого изменения (без учета затрат времени на обнаружение и локализацию дефекта) нужно устанав ливать допустимую среднюю продолжительность и суммарную трудоем кость работ специалистов при их реализации.
Анализируемость: подготовленность ПС к диагностике его дефектов или причин отказов, а также к идентификации и выделению его компонен тов для модификации и исправления. Эта субхарактеристика зависит от стройности архитектуры, унифицированности интерфейсов, полноты и кор ректности технологической и эксплуатационной документации на ПС (см. табл. 11.3). На анализируемость влияет качество средств контроля и мони торинга изменений функциональных характеристик, а также дефектов и корректировок программ и данных.
Изменяемость: приспособленность ПС к простой реализации специ фицированных изменений и к управлению конфигурацией. Реализация модификаций включает проектирование, кодирование и документирова ние изменений. Для этого требуются определенная трудоемкость и время, связанные с исправлением дефектов и/или модернизацией функций, а так же с изменением процессов эксплуатации. При выборе атрибутов этой субхарактеристики следует учитывать влияние структуры, интерфейсов и технических особенностей ПС. Изменяемость зависит не только от внут ренних свойств ПС, но также от организации и инструментальной осна щенности процессов сопровождения и конфигурационного управления, на которые ориентированы архитектура, внешние и внутренние интерфейсы программ.
318
11.3. Конструктивные характеристики качества сложных программных средств
Тестируемость: свойство ПС, обеспечивающее простоту проверки качества изменений и приемки модифицированных компонентов программ. Эта субхарактеристика зависит от величины области влияния изменений, которые необходимо тестировать при модификациях программ и данных, от сложности тестов для проверки их характеристик. Ее атрибуты зависят от четкости правил структурного построения компонентов и всего комп лекса программ, от унификации межмодульных и внешних интерфейсов, от полноты и корректности технологической документации. В этой субха рактеристике учитываются в основном техническая и организационная составляющие процесса тестирования модификаций и не входит функцио нальная часть их подготовки. Обобщенно ее можно оценивать затратами труда и времени на тестирование некоторых средних по объему и сложно сти модификаций программ.
Субхарактеристики анализируемость и стабильность в составе сопровоэкдаемости качественно характеризуются атрибутами, близкими к ат рибутам практичности: стройностью архитектуры комплекса программ, унифицированностью интерфейсов, полнотой и корректностью докумен тации. Для этих субхарактеристик может применяться простейшая поряд ковая шкала. Субхарактеристики изменяемость и тестируемость доступны количественным оценкам по величине трудоемкости и длительности реа лизации этих функций при типовых операциях с применением различных методов и средств автоматизации. Подготовка и каждое тестирование про граммы в зависимости от сложности изменения с учетом его проверки и корректировки документации может требовать трудоемкости от одного до нескольких сотен человеко-часов и времени до тысячи часов при выпуске новой версии сложного комплекса программ.
Мобильность: подготовленность ПС к переносу из одной аппаратнооперационной среды в другую (см. лекцию 15). Переносимость программ и данных на различные аппаратные и операционные платформы является важным показателем функциональной пригодности для многих современ ных ПС. Установление требований к мобильности ПС может быть сведено к формализации трудоемкости и длительности процессов: адаптации к новым характеристикам пользователей и внешней среды, инсталляции вер сий ПС в среде пользователей и замены крупных компонентов версий ПС по требованиям заказчиков или конкретных пользователей.
319