Классификация ортогональных дефектов
Классификация ортогональных дефектов ( ODC ) [1] превращает семантическую информацию в потоке дефектов программного обеспечения в измерение процесса. [2] Идеи были развиты в конце 1980-х - начале 1990-х годов Рамом Чиллареджем. [3] в IBM Research . Это привело к разработке новых аналитических методов, используемых для разработки программного обеспечения и анализа процессов тестирования. ODC не зависит от модели процесса, языка и предметной области. Несколько корпораций сообщили о применении ODC на различных платформах и процессах разработки: каскадном , спиральном, закрытом и гибком. [4] [5] процессы развития . Одним из популярных приложений ODC является анализ первопричин программного обеспечения .
Известно, что ODC сокращает время, необходимое для анализа первопричин, более чем в 10 раз . Преимущества в первую очередь связаны с другим подходом к анализу первопричин, при котором данные ODC генерируются быстро (за считанные минуты, а не часы на каждый дефект), а для анализа причин и следствий используется аналитика. Это переносит бремя анализа с чисто человеческого метода на метод, требующий большего объема данных. [6]
ODC, как предлагалось в его первоначальных статьях, имеет определенные наборы значений атрибутов, которые позволяют измерить процесс разработки. Две из пяти наиболее известных категорий — это тип дефекта и триггер дефекта . Тип дефекта фиксирует изменения, внесенные в код в результате дефекта. Существует семь значений типа дефекта, и они были установлены эмпирически для обеспечения измерения продукта в процессе его распространения. Идея заключается в том, что изменения в распределении типов дефектов являются функцией модели процесса разработки и, таким образом, обеспечивают внутреннюю оценку хода продукта в этом процессе.
Триггер дефекта аналогичным образом обеспечивает измерение процесса тестирования. Концепция триггера является ключевым вкладом, который появился благодаря ODC и в настоящее время довольно широко используется в технических и исследовательских публикациях. [7] Программный триггер определяется как сила, вызвавшая неисправность и вызвавшая сбой. Полный набор триггеров доступен в документации ODC.
Тип дефекта и триггер вместе предоставляют большой объем причинно-следственной информации о дефектах. Дополнительная информация о дефекте, фиксируемая в стандартных реализациях ODC, включает «влияние», «источник» и «возраст». В учебных курсах ODC сообщается, что после обучения человек может классифицировать дефект с помощью ODC менее чем за 3 минуты при ретроспективном выполнении задачи. [8] Затрачиваемое время намного меньше, когда все делается в полете или в процессе. Категоризацию нельзя напрямую сравнивать с анализом первопричин, поскольку данные ODC касаются того, «что есть», а не «почему». Однако анализ первопричин очень часто выполняется с использованием ODC. Анализ, изучающий данные ODC, выполняет первый этап анализа первопричин, который подтверждается обсуждением результатов с командой разработчиков. Этот подход имеет пять основных отличий между классическим методом и методом ODC. [9]
Анализ первопричин — это лишь одно из применений ODC. Первоначальный замысел ODC заключался в создании системы измерения для разработки программного обеспечения с использованием потока дефектов в качестве источника внутренних измерений. Таким образом, атрибуты либо по отдельности, либо в сочетании с одним из других обеспечивают конкретные измерения определенных аспектов инженерного процесса. Эти измерения могут использоваться для одного или нескольких аналитических методов, поскольку они были разработаны с учетом общих принципов измерения. На сегодняшний день в нескольких исследовательских работах они применяются для различных целей. Совсем недавно появились исследовательские статьи, в которых ODC используется для оценки методов, используемых для оценки безопасности, и расширили сферу применения ODC. [10]
Ссылки
[ редактировать ]- ^ Классификация ортогональных дефектов - концепция измерений в процессе, IEEE Transactions on Software Engineering, ноябрь 1992 г. (том 18, № 11). http://www.chillarege.com/articles/odc-concept.html
- ^ Что такое ОДК? https://www.youtube.com/watch?v=mno4pQMqtBM
- ^ Компьютерное общество IEEE, Премия за технические достижения 2002 г. https://www.computer.org/profiles/ram-chillarege
- ^ Классификация ортогональных дефектов (ODC) в гибкой разработке. М. Джагиа, С. Мина, Дополнительные слушания IEEE ISSRE 2009, ноябрь 2009 г.
- ^ Классификация ортогональных дефектов: Agile Test/QA Primer, Конференция по гибкой разработке, ноябрь 2012 г.
- ^ «ODC - 10-кратный анализ первопричин», Р. Чилларедж, 2006 г.
- ^ Дефекты программного обеспечения и их влияние на доступность системы — исследование сбоев в операционных системах. М. Салливан и Р. Чилларедж, 21-я отказоустойчивая вычислительная система IEEE, 1991.
- ^ Бриллианты из дефектов, Основной доклад LADC, http://www.unicauca.edu.co/ladc2016/?q=node/22
- ^ "5 различий между классическим анализом первопричин и анализом первопричин ODC. https://www.youtube.com/watch?v=fTJr2Pgnxco
- ^ П. Дж. Моррисон, Р. Пандита, К. Сяо, Р. Чилларедж и Л. Уильямс, «Обнаруживаются и устраняются ли уязвимости, как и другие дефекты?», Empir Software Eng, vol. 23, нет. 3, стр. 1383–1421, июнь 2018 г., номер документа: 10.1007/s10664-017-9541-1.