Популярные услуги

Курсовой проект по деталям машин под ключ
Все лабораторные под ключ! КМ-1. Комбинационные логические схемы + КМ-2. Комбинационные функциональные узлы и устройства + КМ-3. Проектирование схем
ДЗ по ТММ в бауманке
КМ-3. Типовое задание к теме прямые измерения. Контрольная работа (ИЗ1) - любой вариант!
Любая лабораторная в течение 3 суток! КМ-1. Комбинационные логические схемы / КМ-2. Комбинационные функциональные узлы и устройства / КМ-3. Проектирование схем
КМ-2. Выпрямители. Письменная работа (Электроника семинары)
Допуски и посадки и Сборочная размерная цепь + Подетальная размерная цепь
КМ-3. Задание по Matlab/Scilab. Контрольная работа - любой вариант за 3 суток!
ДЗ по матведу любого варианта за 7 суток
Задача по гидравлике/МЖГ

Введение

2021-03-09СтудИзба

Лекция 1

1. Введение

Процессы разработки, приобретения и внедрения сложных систем, к которым относятся в частности программные комплексы, должны находится под жестким управленческим контролем. В настоящее время практически во всех организациях обеспечивается контроль важнейших характеристик, связанных с производством и использованием программных продуктов, таких как время, финансовые средства, ресурсы и т.п. Однако в большинстве случаев вне пределов сферы контроля оказывается наиболее важная характеристика программных продуктов, ради которой, собственно и осуществляются затраты времени, финансовых средств и ресурсов – это качество продукта, поскольку «невозможно контролировать то, что нельзя измерить» (“You cannot control what you cannot measure” ).

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

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

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

В данном документе представлен краткий обзор современных подходов к методам численного измерения качества программных систем.

2. Понятие качества и его многомерность

2.1. Понятие качества

Сейчас существует несколько определений качества, которые в целом совместимы друг с другом. Приведем наиболее распространенные:

Определение ISO: Качество - это полнота свойств и характеристик продукта, процесса или услуги, которые обеспечивают способность удовлетворять заявленным или подразумеваемым потребностям.

Определение IEEE: Качество программного обеспечения - это степень, в которой оно обладает требуемой комбинацией свойств.

2.2. Многомерность качества

Рекомендуемые материалы

Общее качество программной системы включает в себя на верхнем уровне ряд составляющих, которые должны быть приняты во внимание при управлении качеством.

ISQ- Information System Quality

Составляющие качества информационной системы:

  • Качество инфраструктуры (infrastructure quality): качество аппаратного и поддерживающего программного обеспечения (например, качество операционных систем, компьютерных сетей и т.п.).
  • Качество программного обеспечения (software quality): качество программного обеспечения информационной системы.
  • Качество данных (data quality): качество данных, использующихся информационной системой на входе.
  • Качество информации (information quality): качество информации, продуцируемое информационной системой.
  • Качество организации (administrative quality) – качество менеджмента, включая качество бюджетирования, планирования и календарного контроля.
  • Качество сервиса (service quality) – качество обучения, системной поддержки и т.п.

Кроме перечисленных составляющих качества должно быть принято во внимание качество обслуживаемого бизнес процесса.

Анализ всех составляющих качества должен проводится с учетом сфер ответственности заинтересованных сторон, как внутренних участников исполняемого процесса (in-process stakeholder), так и пользователей процесса (end-of-process stakeholders).

Управление качеством будет успешным, если под контролем находятся все измерения качества.

3. Характеристики качества и его цена

3.1. Понятие характеристик качества

3.1.1. Введение

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

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

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

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

3.1.2. Дерево характеристик качества

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

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

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

На основе систематического применения данного подхода были выведены примеры универсальных характеристик программного обеспечения, структурно связанные в иерархию  "Дерево характеристик качества".

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

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

3.1.3. Шкала измерения характеристик(ISO 12207) – введение в метрики

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

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

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

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

Оценка защищенности программных средств включает определение полноты использования доступных методов и средств защиты программного средства от потенциальных угроз и достигнутой при этом безопасности функционирования информационной системы. Наиболее широко и детально методологические и системные задачи оценки комплексной защиты информационных систем изложены в трех частях стандарта ISO 15408:1999-1--3 "Методы и средства обеспечения безопасности. Критерии оценки безопасности информационных технологий".

Оценка надежности - измерение количественных метрик атрибутов субхарактеристик в использовании: завершенности, устойчивости к дефектам, восстанавливаемости и доступности/готовности.

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

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

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

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

3.1.4. Пример графического изображения качества

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

Для конкретного проекта должно быть разработано или дополнено свое множество метрик, которое отражает назначение и особенности окружения разрабатываемого программного продукта.

3.2. Цена качества

Понятие цены качества первоначально была введена Джураном (J.M. Juran) и Грином (F.M. Gryna) как стоимость в составе продукта, которая может быть сэкономлена, если все исполнители работают безупречно.

Цена качества – важная категория, поскольку фактически она отражает стоимость работ на доработку, увеличенную стоимость сопровождения.

Ещё посмотрите лекцию "2 Классификация насосных станций" по этой теме.

Цена качества может быть разделена на два главных типа: согласованная (conformance) и несогласованная (non-conformance).

Согласованная цена качества - это сумма, затраченная на достижение качества продукта. Она делится на цену предупреждения (Prevention cost) и цену контроля (Appraisal cost). Затраты предупреждения связаны с предупреждением дефектов прежде чем они произойдут. При разработке ПО примером затрат предупреждения являются затраты на обучение коллектива базовым методологиям, переход на современные технологии разработки, использование автоматизированных средств проектирования и разработки.

Цена контроля включают измерение, оценивание или ревизию продукта для обеспечения гарантии соответствия между требованиями, стандартами качества и результатом. Для разработки программного обеспечения, например, затраты оценки включают в себя инспекцию программ, тестирование и измерение программных показателей.

Несогласованная цена качества включает все издержки понесенные, вследствие выявления недостатков, возникновения ошибок и выхода из строя. Несогласованная цена качества включает внутренние и внешние издержки.

Внутренние издержки связаны с проблемами, выявленными до того, как продукт отправлен заказчику. Для разработки программного обеспечения сюда включены затраты на переработку программ, повторную инспекцию и тестирование. Затраты связанные с ошибками, проявившимися при эксплуатации продукта у заказчика, относятся к внешним издержкам. Для программного обеспечения, например, сюда включены затраты на сопровождение и поддержку, убытки от простоев и некорректного функционирования.

Статистические исследования влияния процессов разработки на качество результирующего продукта показывают, что:

  • Совершенствование процесса разработки и внедрения программного обеспечения значительно уменьшают относительную (в пересчете на единицу объема программного продукта в выбранной метрике) несогласованную стоимость качества при сохранении согласованной стоимости качества на прежнем уровне.
  • Инвестиции в совершенствование процесса разработки программного продукта при условии раннего и адресного внедрения процедур улучшения качества ведут к значительному сокращению дефектов и дают высокий положительный экономический эффект.
Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5184
Авторов
на СтудИзбе
436
Средний доход
с одного платного файла
Обучение Подробнее