Евгений Марченко
Software Quality Assurance Manager
Основной проблемой в управлении качеством является тот факт, что определение качества слишком неясное и неоднозначное. Это вызвано тем, что обычно термин качество понимается неправильно. Такая путаница может объясняться несколькими причинами.В статье мы попытаемся дать определение терминами качество и качество программного обеспечения.
Основной проблемой в управлении качеством является тот факт, что определение качества слишком неясное и неоднозначное. Это вызвано тем, что обычно термин качество понимается неправильно. Такая путаница может объясняться несколькими причинами.
Первая, качество это не отдельно взятая идея или понятие, скорее многомерная и разноплановая концепция.
Вторая, для любого понятия и определения существует несколько уровней абстракции, например, когда люди говорят о качестве, одна часть понимает под этим слишком широкий и размытый смысл, в то время как другая может ссылаться на конкретное определение и значение.
Третья, термин качество является неотъемлемой частью нашего повседневного общения, однако общепринятое и профессиональное использование может быть весьма сильно отличаться.
Популярный взгляд на качество
Общепринятое мнение о качестве таково, что это нечто нематериальное и "неосязаемое" – о нем могут вестись споры и дискуссии, его можно критиковать и восхвалять, но взвесить и измерить качество невозможно. Такие выражения как «хорошее качество» и «плохое качество» служат наглядным примером, как люди говорят о чем-нибудь неопределенном для них, то, что они не могут четко характеризовать и определить. Такое мнение отражает тот факт, что люди воспринимают и интерпретируют качество по-разному. Подразумевается, что качество не может быть контролируемым и управляемым, и тем более оно не может быть количественно измеримым. Такой взгляд ярко контрастирует с профессиональным подходом к управлению качеством – качество это четко определенная величина, которую можно измерить и проконтролировать, она поддается управлению и улучшению.
Другое популярное мнение, что качество неразрывно связанно с роскошью, первым сортом и тонким вкусом. Дорогой, досконально продуманный и более технически сложный продукт рассматривается как гарантия высочайшего качества, нежели более дешевые аналоги. Следуя такой логике Кадиллак - это качественная машина, а Шевроле нет, невзирая на надежность и количество поломок; или же HI-FI система это качественная система, а обыкновенное радио – нет. Согласно такому подходу, качество ограниченно определенным классом дорогостоящих продуктов с замысловатой функциональностью и классовым продуктам. Проще говоря, едва ли недорогой продукт будет классифицирован как качественный продукт.
Профессиональный подход к качеству
К сожалению, такое неопределенное и расплывчатое представление не может быть использовано для улучшения процессов разработки программного обеспечения. Следовательно, необходимо дать четкое и удобное для работы определение. В 1979 году Crosby определил качество как «соответствие требованиям» ("conformance to requirements"), а Juran и Gryna в 1970 определили качество как «пригодность к использованию» ("fitness for use"). Эти два определения тесно связанны и прекрасно согласуются, как мы увидим позже.
«Соответствие требованиям» предполагает, что требования должны быть настолько четко определены, что они не могут быть поняты и интерпретированы некорректно. Позже, на этапе разработки, производятся регулярные измерения разработанного продукта, для определения соответствия требованиям. Любые несоответствия должны рассматриваются как дефекты – отсутствие качества. Например, спецификация на определенную модель радиостанции может требовать возможности принимать определенную частоту радиоволн на расстоянии более чем 30 километров от источника вещания. В случае, если радиостанция неспособна выполнить данное требование, она не удовлетворяет требования к качеству и должна быть признана негодной и некачественной. Исходя из тех же принципов, если Кадиллак соответствует всем требованиям к машинам Кадиллак, значит это качественная машина. Если Шевроле соответствует всем требованиям к машинам Шевроле, следовательно, это тоже качественная машина. Эти две машины могут быть совершенно разными по стилю, скорости и экономичности, но если обе измерять по стандартным для них наборам, тогда они обе будут являться качественными машинами.
Определение «Пригодность к использованию» принимает во внимание требования
и ожидания конечных пользователей продукта, которые ожидают, что продукт или
предоставляемый сервис будет удобным для их нужд. Однако разные пользователи
могут использовать продукт по-разному, это означает, что продукт должен обладать
максимально разнообразными вариантами использования. Согласно определению Juran
каждый вариант использования это характеристика качества и все они могут быть
классифицированы по категориям в качестве параметров пригодности к использованию.
Эти два определения качества («соответствие требованиям» и «пригодность к использованию») по существу одинаковы. Разница в том, что вариант «пригодность к использованию» указывает на важную роль требований и ожиданий заказчика. Роль заказчика, связанная с качеством, никогда не может быть переоценена. С точки зрения заказчика, качество продукта, который он приобрел, состоит из множества различных факторов, таких как: цена, производительность, надежность и т.д.
Только ваш заказчик может рассказать вам о качестве, потому что это единственное что он действительно покупает. Заказчик не покупает продукт. Он покупает ваши гарантии того, что все его ожидания к продукту будут реализованы.
Guaspari ”I Know It When I See It”
Выводы
Давайте еще раз попытаемся дать определение качеству с точки зрения заказчика или пользователя продукта.
Качество - это пригодность к использованию. Делает ли данный продукт то, в чем я нуждаюсь, облегчает ли он мою работу, могу ли я его использовать так, как мне удобно.
А теперь посмотрим на точку зрения разработчика.
Качество – это соответствие специфицированным и собранным требованиям делает
ли данный продукт все то, что указано в требованиях.
Проблема в том, что специфицированные и собранные требования это обычно лишь часть всех реальных требований и ожиданий заказчика. Где же правильное определение качества?
Качество это соответствие реальным требованиям, явным и неявным. Очень часто неявные требования настолько очевидны для заказчика или пользователя, что он даже не предполагает, что они неизвестны разработчикам. Для примера вернемся к нашим автомобилям – заказчик может детально описать требования к дизайну, параметрам двигателя, оформлению салона, цвету кузова, но нигде не указать, что шины должны быть круглыми, а лобовое стекло – прозрачным.
Заказчик будет удовлетворен только тогда, когда купленный продукт будет полностью удовлетворять его реальным и жизненным требованиям, как специфицированным, так и нет.
Начать дискуссию