stringtranslate.com

Аналитика программного обеспечения

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

Определения

Цели

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

Подход

Методы, приемы и инструменты аналитики программного обеспечения обычно опираются на сбор, измерение, анализ и визуализацию информации, найденной в многочисленных источниках данных, хранящихся в средах разработки программного обеспечения и экосистемах. Системы программного обеспечения хорошо подходят для применения аналитики, поскольку, с одной стороны, доступны в основном формализованные и точные данные, а с другой стороны, системами программного обеспечения чрезвычайно сложно управлять --- в двух словах: «программные проекты в высшей степени измеримы, но часто непредсказуемы». [2]

Основные источники данных включают исходный код , «регистрации, рабочие элементы, отчеты об ошибках и тестовые выполнения [...], записанные в репозиториях программного обеспечения, таких как CVS, Subversion, GIT и Bugzilla». [4] Также могут учитываться данные телеметрии , а также трассировки или журналы выполнения.

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

История

В мае 2009 года аналитика программного обеспечения была впервые придумана и предложена, когда Дунмэй Чжан основал группу аналитики программного обеспечения (SA) в Microsoft Research Asia (MSRA). Этот термин стал хорошо известен в сообществе исследователей программной инженерии после серии учебных пособий и докладов по аналитике программного обеспечения, которые Чжан и ее коллеги провели в сотрудничестве с Тао Сье из Университета штата Северная Каролина на конференциях по программной инженерии, включая учебное пособие на Международной конференции IEEE/ACM по автоматизированной программной инженерии (ASE 2011), [6] доклад на Международном семинаре по технологиям машинного обучения в программной инженерии (MALETS 2011), [7] учебное пособие и основной доклад, представленные Чжан на Конференции IEEE-CS по образованию и обучению в области программной инженерии, [8] [9] учебное пособие на Международной конференции по программной инженерии - Программная инженерия на практике, [10] и основной доклад, представленный Чжан на Рабочей конференции по репозиториям программного обеспечения для майнинга. [11]

В ноябре 2010 года аналитика разработки программного обеспечения (аналитика программного обеспечения с упором на разработку программного обеспечения) была предложена Томасом Циммерманном и его коллегами из Empirical Software Engineering Group (ESE) в Microsoft Research Redmond в их статье FoSER 2010. [12] Панельная дискуссия «Золотой аквариум» по аналитике разработки программного обеспечения была организована Циммерманном и Тимом Мензисом из Университета Западной Вирджинии на Международной конференции по программной инженерии, Программная инженерия на практике. [13]

Смотрите также

Ссылки

  1. ^ Д. Чжан, С. Хан, И. Дан, Дж.-Г. Лу, Х. Чжан: «Программная аналитика на практике». IEEE Software, сентябрь/октябрь 2013 г., стр. 30-35.
  2. ^ ab Raymond PL Buse и Thomas Zimmermann. «Информационные потребности в аналитике разработки программного обеспечения». В трудах 34-й Международной конференции по программной инженерии (ICSE 2012), Программная инженерия на практике, Цюрих, Швейцария, июнь 2012 г., стр. 987-996.
  3. ^ TM Abdellatif, LF Capretz, D. Ho. «Программная аналитика для программной практики: систематический обзор литературы». 1. Международный семинар по проектированию больших данных, 2015, стр. 30-36.
  4. ^ Харальд Галл, Тим Мензис, Лори Уильямс и Томас Циммерман. «Анализ разработки программного обеспечения». Dagstuhl Reports, том 4, выпуск 6, стр. 64-83.
  5. ^ Мартинес-Фернандес, Сильверио; Фоллмер, Анна Мария; Едличка, Андреас; Франч, Хавьер; Лопес, Лидия; Рам, Прабхат; Родригес, Пилар; Аарамаа, Санья; Баньято, Алессандра (2019). «Непрерывная оценка и улучшение качества программного обеспечения с помощью инструментов аналитики программного обеспечения: пример» (PDF) . IEEE Access . 7 : 68219–68239. Bibcode : 2019IEEEEA...768219M. doi : 10.1109/ACCESS.2019.2917403 . ISSN  2169-3536.
  6. ^ Дунмей Чжан и Тао Се. «xSA: eXtreme Software Analytics — объединение eXtreme Computing и Software Analytics». В трудах 26-й Международной конференции IEEE/ACM по автоматизированной программной инженерии (ASE 2011), Учебное пособие, Лоуренс, Канзас, ноябрь 2011 г.
  7. ^ Dongmei Zhang, Yingnong Dang, Jian-Guang Lou, Shi Han, Haidong Zhang и Tao Xie. «Программная аналитика как пример обучения на практике: подходы и опыт». В материалах Международного семинара по технологиям машинного обучения в программной инженерии (MALETS 2011), Лоуренс, Канзас, ноябрь 2011 г. PDFSlides
  8. ^ Дунмэй Чжан. «Программная аналитика на практике и ее значение для образования и обучения». Основной доклад. В трудах 24-й конференции IEEE-CS по образованию и обучению в области программной инженерии (CSEE&T 2012), Учебное пособие, Нанкин, Китай, апрель 2012 г.
  9. ^ Дунмэй Чжан, Иннун Дан, Ши Хан и Тао Се. «Преподавание и обучение аналитике программного обеспечения». В трудах 24-й конференции IEEE-CS по образованию и обучению в области программной инженерии (CSEE&T 2012), Учебное пособие, Нанкин, Китай, апрель 2012 г.
  10. ^ Dongmei Zhang и Tao Xie. "Software Analytics in Practice: Mini Tutorial". В трудах 34-й Международной конференции по программной инженерии (ICSE 2012), Software Engineering in Practice, Mini Tutorial, Цюрих, Швейцария, июнь 2012 г., стр. 997. Слайды
  11. ^ Дунмей Чжан. «MSR 2012 основной доклад: Аналитика программного обеспечения на практике — подходы и опыт». В трудах 9-й рабочей конференции по репозиториям программного обеспечения для горнодобывающей промышленности (MSR 2012), Цюрих, Швейцария, июнь 2012 г., стр. 1.
  12. ^ Рэймонд ПЛ Бьюз и Томас Циммерман. «Анализ для разработки программного обеспечения». В трудах семинара по будущему исследований в области программной инженерии (FoSER 2010), Санта-Фе, Нью-Мексико, США, ноябрь 2010 г., стр. 77-80.
  13. ^ Тим Мензис и Томас Циммерман. «Золотая рыбка: Аналитика разработки программного обеспечения». В трудах 34-й Международной конференции по программной инженерии (ICSE 2012), Программная инженерия на практике, Цюрих, Швейцария, июнь 2012 г., стр. 1032-1033.

Внешние ссылки