Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Липаев В.В. Программная инженерия

.pdf
Скачиваний:
648
Добавлен:
02.05.2014
Размер:
10.14 Mб
Скачать

Лекция 12. Выбор характеристик качества в проектах программных средств

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

Выбор требований к мерам характеристик качества, естественно, дол­ жен начинаться с определения необходимых свойств и значений группы показателей, отражающих функциональные возможности ПС, куда по стандарту ISO 9126:1-4 входят субхарактеристики: функциональная пригод­ ность, корректность, способность к взаимодействию и защищенность — безопасность. Пример содержания и возможных диапазонов изменений атрибутов качества этих субхарактеристик был представлен выше в таблице 11.1 (см. лекцию 11). Для конкретного проекта ПС перечень атрибутов ка­ чества следует адаптировать и уточнять с учетом его назначения и функций.

Выбор и формирование требований к функциональной пригодно­ сти ПС— наиболее ответственная задача начальных этапов проектирова­ ния и всего последующего развития жизненного цикла. В данном примере эта задача не иллюстрируется вследствие необходимости излишнего рас­ ширения и еще большей детализации примера. Схема структурирования и содержания функциональных, структурных и эксплуатационных требова­ ний к характеристикам ПС приведена выше, в лекции 11, которая может использоваться для наполнения конкретными данными в реальных проек­ тах. Все остальные стандартизированные характеристики ПС, в той или иной степени, должны способствовать обеспечению тактических целей выбранных конструктивных требований и достижению стратегических целей функциональной пригодности программного продукта.

Требования к субхарактеристике корректность могут представлять­ ся в виде описания двух основных свойств, которым должны соответство-

350

12.2. Пример выбора и формирования требований к характеристикам качества...

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

Требования к характеристике способность к взаимодействию

могут быть достаточно полно формализованы и утверждены в процессе проектирования, с некоторыми уточнениями на последующих этапах. Их основой являются нормативные документы на интерфейсы открытых сис­ тем или выбранные для конкретного проекта стандарты де-факто. При выборе элементов программных компонентов, обеспечивающих способ­ ность к взаимодействию в конкретном проекте ПС, следует учитывать величину вычислительных ресурсов, необходимых для их реализации. Чем более полно используются международные стандарты открытых систем, тем шире способность к взаимодействию с различными повторно исполь­ зуемыми компонентами ПС, однако требуются большие затраты вычисли­ тельных ресурсов. При формализации интерфейсов важно также учиты­ вать перспективы продолжительного сопровождения множества версий ПС, возможность повторного использования их компонентов и переноса на различные платформы. Унификация интерфейсов на взаимодействие с внутренней, внешней средой и с пользователями должна отражаться в специальных разделах технологической документации и должна иметь возможность проверки заказчиком и/или экспертами по документам и тек­ стам программ без их исполнения.

Выбор и формирование требований к характеристике защищен­ ность безопасность должны осуществляться на основе потребностей эффективной и безопасной реализации назначения и функций ПС. В про­ цессе системного анализа и проектирования должны быть выявлены по-

351

Лекция 12. Выбор характеристик качества в проектах программных средств

тенциальные предумышленные и случайные угрозы функционированию ПС и установлен необходимый уровень защиты данного комплекса про­ грамм. В соответствие с этим уровнем заказчиком выбираются и устанав­ ливаются стандартизированная категория защищенности ПС и необходи­ мый набор методов и средств контрмер защиты с учетом ограниченных ресурсов на их реализацию. В результате сформированные требования должны обеспечивать равнопрочную защиту от реальных угроз примене­ нию ПС и реализацию необходимых мер контроля и подтверждения цело­ стности и характеристик качества функциональной пригодности комплек­ са программ в условиях проявления угроз.

Таблица 12.2

Пример требований к количественным характеристикам качества программного средства

1

Характеристики качества

Мера

Требуемое

значение

Надежность

 

 

 

 

 

Завершенность:

 

 

 

— наработка на отказ при отсутствии рестарта.

Часы

10

Устойчивость:

 

 

 

— наработка на отказ при наличии автоматического рестарта;

Часы

50

— относительные ресурсы на обеспечение надежности и ре­

%

10

старта.

 

Восстанавливаемость:

 

 

— длительность восстановления.

Минуты

5

Доступность готовность:

 

 

— относительное время работоспособного функционирования.

Вероятность

0,998

Эффективность

 

 

 

Временная эффективность:

 

 

— время отклика — получения результатов на типовое зада­

Секунды

5

ние;

 

— пропускная способность — число типовых заданий, ис­

Число в ми­

 

полняемых в единицу времени.

нуту

20

Используемость ресурсов:

 

 

— относительная величина использования ресурсов ЭВМ

Вероятность

0,8

при нормальном функционировании программного средства

Тактические цели выбора конструктивных характеристик каче­ ства стандарта ISO 9126:1-4 последовательно рассмотрены и иллюстри­ рованы таблицами 12.2 и 12.3. Пример требований к основным количе­ ственным характеристикам качества ПС сложной административной

352

12.2. Пример выбора и формирования требований к характеристикам качества...

системы представлен в таблице 12.2. Все меры и шкалы для атрибутов характеристик выбраны в соответствии с их содержанием из таблицы 11.2 (лекция И). Требования к атрибутам характеристики наделсность могут быть выбраны с учетом следующих факторов. При отсутствии автомати­ ческого рестарта, за счет отладки и при наличии администратора, контро­ лирующего работоспособность ПС, можно считать допустимой наработку на отказ порядка 10 часов. За счет программно-аппаратных механизмов автоматического рестарта эта наработка при проявлении отказов может быть повышена приблизительно в 5 раз, т.е. при 80% отказов возможно их автоматическое обнаружение и оперативное восстановление, вследствие чего наработка на отказ возрастет до 50 часов. По опыту, на обеспечение этого может потребоваться около 10% вычислительных ресурсов системы. Предполагается, что для оперативной работы пользователей администра­ тивной системы допустимая длительность прерывания работы для полно­ го восстановления нормального функционирования системы может со­ ставлять не более 5 минут. В результате при таких значениях атрибутов надежности коэффициент готовности — вероятность застать ПС в рабо­ тоспособном состоянии — составит достаточно высокую величину 0,998.

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

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

353

Лекция 12. Выбор характеристик качества в проектах программных средств

работы пользователей важно иметь малое (несколько секунд) время от­ клика из ЭВМ после получения типового задания и начала решения требу­ емой функциональной задачи. Это время обычно желательно иметь в пре­ делах нескольких (для примера принято пяти) секунд, хотя длительность полной реализации задания может быть значительно больше. Требуемая пропускная способность решения функциональных задач зависит от их содержания и числа действующих пользователей. В примере предполага­ ется, что десять операторов могут вводить в минуту по два задания каж­ дый, которые должны исполняться в отведенное время без дополнитель­ ной задержки, что приводит к требованию пропускной способности дан­ ного ПС на выбранной вычислительной среде — 20 заданий в минуту.

 

 

Таблица 12.3

Пример требований к качественным характеристикам

программного средства

 

Характеристики качества

Мера

Требуемое значение

[Практичность

 

 

Простота использования:

 

 

— среднее время ввода заданий;

Секунды

10

— среднее время отклика на задание.

Секунды

5

Изучаемость:

 

 

— трудоемкость изучения применения ПС;

Чел.-часы

200

— продолжительность изучения;

Часы

50

— объем эксплуатационной документации;

Страницы

1000

Сопровождаемость

 

 

Изменяемость:

 

 

— трудоемкость подготовки изменений;

Чел.-часы

10

— длительность подготовки изменений.

Часы

5

Тестируемость:

 

 

— трудоемкость тестирования изменений;

Чел.-часы

20

— длительность тестирования изменений.

Часы

5

Мобильность

 

 

Адаптируемость:

 

 

— трудоемкость адаптации;

Чел.-часы

50

— длительность адаптации.

Часы

10

Простота установки:

 

 

— трудоемкость инсталляции;

Чел.-часы

10

— длительность инсталляции.

Часы

5

Замещаемость:

 

 

— трудоемкость замены компонентов;

Чел.-часы

50

— длительность замены компонентов

Часы

10

354

12.2. Пример выбора и формирования требований к характеристикам качества...

Требования к используемости ресурсов памяти и производительности вычислительных средств могут устанавливаться исходя, с одной стороны, из экономической целесообразности применения наиболее дешевой, с мини­ мальными ресурсами ЭВМ, загрузка которой будет в среднем не ниже 0,5. С другой стороны, высокая загрузка (выше 0,9) может приводить к неже­ лательной задержке или даже потере заданий при случайном, кратковре­ менном повышении их интенсивностей, что может негативно отразиться на функциональной пригодности. Таким образом, в данном примере раци­ ональная величина вероятности использования ресурсов ЭВМ в процессе нормального функционирования ПС должна находится в пределах 0,8.

Пример требований к качественным характеристикам ПС пред­ ставлен в таблице 12.3, которая базируется на мерах и шкалах таблицы 11.3 (лекция 11) с небольшими сокращениями наиболее неопределенных качественных атрибутов, которые выбираются и описываются экспертами в виде наборов свойств программ. Основная часть атрибутов качества в таблице 12.3 сведена к экономическим показателям трудоемкости и дли­ тельности, требуемых для реализации соответствующих характеристик.

Требования к практичности и ее субхарактеристикам — понятнос­ ти и простоты использования — зависят от назначения и функций ПС и могут качественно формализоваться заказчиками набором свойств, необ­ ходимых для удобной и комфортной эксплуатации программ. Количест­ венно простоту использования можно в некоторой степени характеризо­ вать требованиями ограничения средней длительности ввода типовых за­ даний и времени отклика на них, которое должно быть в несколько раз меньше. Требования к продолжительности изучения ПС, достаточной для эффективной эксплуатации сложной административной системы квалифи­ цированным специалистом, в данном примере могут составить около не­ дели или порядка 50 часов. Для коллектива из четырех человек-эксплуата­ ционников это потребует трудоемкости около 200 человеко-часов. Для обеспечения полноценного изучения процессов применения ПС этими спе­ циалистами может быть необходима эксплуатационная документация объе­ мом около 1000 страниц, а также желательны адекватные по содержанию электронные учебники. Малый объем эксплуатационной документации может снизить качество и полноту использования функций сложного ПС, а очень большой объем — также может ухудшить эксплуатацию из-за

355

Лекция 12. Выбор характеристик качества в проектах программных средств

трудности выделения и освоения наиболее существенных свойств и осо­ бенностей применения ПС из множества второстепенных деталей.

Требования к компонентам сопроволсдаемости количественно мож­ но установить для субхарактеристик изменяемости и тестируемости. Тре­ буемые значения зависят от четкости концепции и архитектуры ПС, от унифицированности внутренних, внешних и с пользователями интерфей­ сов, от качества технологической документации, а также от инструмен­ тальной оснащенности ЖЦ данного ПС и еще от некоторых факторов. Обобщенно это отражается на длительности и трудоемкости подготовки и реализации типовых модификаций, обусловленных необходимостью уст­ ранения дефектов и небольшими усовершенствованиями функций ПС. В рассматриваемом примере для подготовки и выполнения каждого измене­ ния (без учета затрат времени на обнаружение и локализацию дефекта) можно принять среднюю продолжительность в 5 часов и суммарную тру­ доемкость двух специалистов около 10 человеко-часов. Требования к про­ должительности тестирования таких изменений могут составить также до 5 часов, но трудоемкость может увеличиться до 20 человеко-часов, так как требуемый коллектив тестировщиков может возрасти до трех-четырех спе­ циалистов.

Выбор и установление требований к мобильности ПС в данном при­ мере сведены к трудоемкости и длительности процессов: адаптации к характеристикам пользователей и внешней среды, инсталляции версий ПС в среде пользователей и замены крупных компонентов версий ПС по тре­ бованиям заказчиков или конкретных пользователей. Наиболее простым и легко формализуемым из перечисленных процессов является инсталляция готовой версии ПС с комплектом документации без дополнительных из­ менений на платформе пользователя, которая может требовать до 5 часов работы двух специалистов (10 человеко-часов). Более сложный процесс включает адаптацию ПС по формализованным инструкциям к специфи­ ческой аппаратной и внешней среде конкретного пользователя, которая может потребовать вдвое большего времени и в несколько раз (в примере 5) большего числа специалистов. Еще более сложный и трудоемкий про­ цесс замены крупных компонентов ПС и перенос их на иную аппаратур­ ную и операционную платформу. Для этого процесса в примере требуется не менее 20 часов и коллектив около 5 человек (100 человеко-часов).

356

12.2. Пример выбора и формирования требований к характеристикам качества...

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

Л Е К Ц И Я 13

ВЕРИФИКАЦИЯ, ТЕСТИРОВАНИЕ И ОЦЕНИВАНИЕ КОРРЕКТНОСТИ ПРОГРАММНЫХ КОМПОНЕНТОВ

13.1. принципы верификации и тестирования программ

Верификация — это процесс для определения, выполняют ли про­ граммные средства и их компоненты требования, наложенные на них в последовательных этапах ЖЦ ПС. Анализ, просмотры (обзоры) и тестиро­ вание от требований являются важнейшей частью верификации и установ­ ления корректности программ. Основная цель верификации ПС состоит в том, чтобы обнаружить, зарегистрировать и устранить дефекты и ошибки, которые внесены во время последовательной разработки или модифика­ ции программ. Для эффективности затрат ресурсов при ее реализации верификация должна быть интегрирована как можно раньше с процессами проектирования, разработки и сопровождения. Обычно она проводится сверху вниз, начиная от общих требований, заданных в техническом зада­ нии и/или спецификации на всю информационную систему до детальных требований на программные модули и их взаимодействие.

Назначение верификации ПС — последовательно проверить, что в реализованном комплексе программ (рис. 13.1):

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

требования высокого уровня правильно переработаны в архитек­ туру ПС и в спецификации требований к функциональным компонентам низкого уровня, которые удовлетворяют требованиям высокого уровня;

358

13.1. принципы верификации и тестирования программ

Верификация соответствия спецификации требований к программному средству требованиям к информационной системе

f

Верификация соответствия архитектуры комплекса программ требованиям к программному средству

f

Верификация соответствия спецификаций требований

кфункциональным компонентам требованиям

кпрограммному средству

?

Верификация соответствия спецификаций требований

кпрограммным и информационным модулям требованиям

кфункциональным компонентам

^'

Верификация соответствия объектного кода программ спецификациям требований к модулям

Верификация соответствия спецификации требований к технологическому обеспечению жизненного цикла программ

требованиям к программному средству

Верификация соответствия спецификации требований

кэксплуатационной и технологической документации требованиям

кпрограммному средству

Рис. 13.1

— спецификации требований к функциональным компонентам ПС, расположенным между компонентами высокого и низкого уровня, каж­ дый раз удовлетворяют требованиям более высокого уровня;

359

Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.

Оставленные комментарии видны всем.