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

ВЫБОР ХАРАКТЕРИСТИК КАЧЕСТВА В ПРОЕКТАХ ПРОГРАММНЫХ СРЕДСТВ

ЛЕКЦИЯ 12

Описание в стандарте ISO 9126:1-4 характеристик качества программных средств не содержит рекомендаций и методик выбора их значений в требованиях к конкретным проектам. Необходимо, прежде всего, установить рациональные диапазоны мер и шкал для каждой характеристики и ее атрибутов, которые можно будет использовать в качестве первичных ограничений при выборе их значений для реальных проектов. Далее должны быть разработаны процессы выбора, установления и представления в спецификациях требований к атрибутам каждой характеристики качества. Эти требования должны учитывать реальные ограничения ресурсов, доступных для обеспечения ЖЦ ПС. Ресурсы этих процессов и атрибуты характеристик качества ниже, по возможности, сводятся к трудоемкости и длительности их реализации, а также к соответствующему влиянию этих параметров в функциональную пригодность.

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


12.1. Принципы выбора характеристик качества в проектах программных средств

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

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

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

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

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


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

может сильно зависеть от временной эффективности использования производительности ЭВМ. Используемость ресурсов ЭВМ может ограничивать сопровождаемость и изменяемость программ, и то и другое необходимо учитывать при определении требований к характеристикам конкретных проектов ПС.

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

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


12.1. Принципы выбора характеристик качества в проектах программных средств

нивают конкурентоспособность продукции на рынке по величине отношения:

— возможной экономической эффективности (ценности) применения и качества программного продукта и способности удовлетворить пользователями свои потребности при его использовании;

к стоимости (цене), которую готовы заплатить пользователи при приобретении и эксплуатации данного комплекса программ или базы данных.

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

Такие проекты обычно относительно невелики по объему и срокам реализации первой версии, однако могут предполагать длительный ЖЦ и множество модификаций для адаптации к нуждам и среде пользователей. Отбраковка вариантов реализации ПС ведется по показателю эффективность/стоимость для пользователей, с учетом конкурентоспособности и распространения на рынке. Этот сценарий экономического обоснования проектов ПС требует специфических маркетинговых исследований рынка подобных продуктов и их характеристик качества. Однако при этом должны обязательно учитываться затраты ресурсов на непосредственную разработку и обеспечение ЖЦ ПС, и возможная рентабельность проекта с учетом прогноза его жизненного цикла и распространения на рынке. Для этого в начале проектирования разработчикам необходимо прогнозировать затраты на создание и весь ЖЦ ПС, что анализируется при втором сценарии.

Второй сценарий предполагает наличие определенного заказчика — потребителя проекта ПС, который определяет основные технические и


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

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

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

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

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


12.1. Принципы выбора характеристик качества в проектах программных средств

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

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

Процессы выбора и установления шкал и мердля описания характеристик качества проектов ПС можно разделить на два этапа:

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

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

На первом этапе следует использовать всю базовую номенклатуру характеристик, субхарактеристик и атрибутов, стандартизированных в ISO 9126:1-4.Их описания желательно предварительно упорядочить по приоритетам с учетом назначения и сферы применения конкретного ПС. Далее необходимо выделить и ранжировать по приоритетам потребителей, которым необходимы определенные показатели качества ПС с учетом их специализации и профессиональных интересов. Широкая номенклатура характеристик, представленная в стандарте ISO 9126:1-4,поддерживает


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

разнообразные требования, из которых следует селектировать и выбирать те, которые необходимы с позиции различных потребителей этих данных (см. выше табл. 6.1).

Выбранные значения характеристик качества и их атрибутов должны быть предварительно проверены разработчиками на их реализуемость с учетом доступных ресурсов конкретного проекта и при необходимости откорректированы по составу и значениям. В результате формируется полный набор требуемых характеристик, атрибутов, их мер и значений качества для конкретных потребителей в ЖЦ ПС. Результаты анализа и выбора номенклатуры и мер характеристик качества проекта ПС должны быть документированы в спецификациях требований, согласованы с их потребителями и утверждены заказчиком проекта для реализации. Изложенные положения иллюстрированы ниже, где приводится пример выбора и формирования требований к характеристикам качества программного средства сложной административной информационной системы.