ݺߣ

ݺߣShare a Scribd company logo
КАК ОЦЕНИВАТЬ СОСТОЯНИЕ
ПРОЕКТА ПО РАЗРАБОТКЕ С
ПОМОЩЬЮ ФОРМАЛЬНЫХ
МЕТРИК И ОТЧЕТОВ.
Дмитрий Андреев
dmitryan@microsoft.com
Twitter: @dmandreev
• Какое количество рисков связано
с вашим текущим проектом?
• Насколько хорошо вы понимаете
«что вы сейчас делаете»?
• Все ли идет так как
запланировано по проекту?
Предвидение – это искусство видеть
то что не видно другим.
Джонатан Свифт.
Работайте с
проектами
прозрачно
Отслеживание задач
• Рабочие элементы
интегрированы в
весь процесс
• Статусы
обновляются с
каждым действием
• Это исходные
данные для отчетов
Всё взаимосвязано
• Взаимосвязи
обеспечивают
сквозное
отслеживание
• Взаимосвязи
позволяют
формировать
ранние индикаторы
проблем
Как оценивать состояние проекта по разработке с помощью формальных метрик и отчетов.
Как идут дела?
• Вы считаете что:
– Создание отчетов
сложно и требует
много времени
– Данные трудно собрать
и еще труднее понять
– Вам нужен аналитик
чтобы создавать
отчетность по
прогрессу
Архитектура
АдаптерыАдаптеры Реляционное
хранилище КубыКубыОбработкаОбработка
Таблицы фактов
Build Changeset Contains one row for each changeset included in this build but not included in a previous build of the same type. This
enables build information to be correlated with check-ins, and also with the work items that are associated with the
check-ins.
Build Coverage Contains one row for each time code when metrics were gathered for a build.
Build Details Contains one row for each time a build is performed.
Build Project Contains one row for each time a project within a build is built.
Code Churn Contains one new row for each revision of any file.
Current Work Item Contains one row for each work item currently in the system.
Load Test Counter Summary information for each performance counter value read for each load test executed. Contains the counter ID,
value, and the computer from which it came.
Load Test Details Contains one row for each time a load test is executed.
Load Test Page Summary Contains one row for each URL visited during each load test. Summarizes information for each top-level page, but does
not include detailed information for dependent requests; for instance, images.
Load Test Summary Contains one row for each test run as part of a load test. Contains the number of times the test ran, how many times it
failed, how long it took to run on average, and so forth.
Load Test Transaction Contains the average time for each transaction. For example, if unit tests are run under load, timers in the tests are
reported here as the average time taken for each transaction.
Run Coverage Contains one row for each time a test run is executed that collects code coverage metrics.
Test Result Contains one row for each execution of each test. Contains the outcome of the test, start and end times, and metadata
about the test (category, CSS nodes, and so forth.)
Work Item Changeset Contains one row for each relationship between a work item revision and a changeset.
Work Item History Versioned file of work items using transition count and record count to aggregate information at a point in time.
Измерения
• Длинный список  их более 60
– Даты/время
– Области
– Итерации
– Модули
– Персоны
– Категории тестов
– Проекты
– …
Правильные средства
• Отчеты из коробки
– SQL Server Reporting
Services
• Excel Reports
– Быстрые и гибкие
• Информационные
панели Sharepoint
– Публикация и
автоматическое
обновление
SQL Server Reporting Services
Другие отчетыДругие отчеты
Текущий прогресс по сценариям
и ошибкам
Текущий прогресс по сценариям
и ошибкам
О чем этот отчет?О чем этот отчет?
Статусы ошибок
Тренды
Реактивация
Индикаторы качества
Успешные сборки
Суммарный отчет по
сборкам
Burndown
Предстоящая работа
Статусы по итерациям
Прогресс по требованиям
Незапланированные работы
Прогресс по тестированию
Как оценивать состояние проекта по разработке с помощью формальных метрик и отчетов.
Отчеты Microsoft Excel
• Гибкие, быстрые,
качественные.
• Никаких затрат на
создание
• Знакомый
инструмент
• Швейцарский нож
Как оценивать состояние проекта по разработке с помощью формальных метрик и отчетов.
Информационные панели
• Выбирайте –
Sharepoint Foundation
или Portal
• Готовые панели
общего характера
• Изменяйте и
создавайте свои
Информационные панели
Как оценивать состояние проекта по разработке с помощью формальных метрик и отчетов.
Технологии
• Вы можете создавать свои собственные
измерения и фактические значения
• На работающем проекте или шаблоне
• Требуется модификация Work Item
Definition
– Всего лишь объявите поле «Reportable»
Как оценивать состояние проекта по разработке с помощью формальных метрик и отчетов.
Коварство метрик
Отметим
высокий
уровень
прохождения
тестов и
низкий
уровень
ошибок
Отметим
высокий
уровень
прохождения
тестов и
низкий
уровень
ошибок
Коварство метрик
Отметим
низкий
уровень
покрытия
кода тестами
и высокий
уровень
модификации
кода (code
churn)
Отметим
низкий
уровень
покрытия
кода тестами
и высокий
уровень
модификации
кода (code
churn)
Заключение
• VSTS обладает мощным набором средств
создания отчетов
• Получение актуальной информации – два,
три клика
• Используйте множество измерений
• Метрики – это только аппроксимация
целей бизнеса
Ссылки
• Работа с отчетами и метриками Team System
http://msdn.microsoft.com/en-
us/library/ms181634(v=VS.80).aspx
• Sunder Ramans’ blog
http://blogs.msdn.com/sunder/
• Описания отчетов
– Agile http://msdn.microsoft.com/en-
us/library/dd380702(v=VS.100).aspx
– CMMI http://msdn.microsoft.com/en-
us/library/ee461536(v=VS.100).aspx
Как оценивать состояние проекта по разработке с помощью формальных метрик и отчетов.

More Related Content

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

Editor's Notes

  1. Implication: How much risk are your projects in right now? How much do you know about “what you’re doing?” Every day activity happens in your projects—new code is written, bugs are fixed, tests are run. But what does that mean to your project? Are you on track to deliver a successful project? Can you answer the following questions? Are we going to deliver a quality project on time? What do I need to know now to course correct? What ‘fires’ will we have to put out that we don’t know about? What can I do to reduce the risk?
  2. You track progress by knowing what your team is doing. You need a way to gather data continuously as the project progresses You want your tools to help not hinder your progress.
  3. Excel workitem managing
  4. Excel workitem managing
  5. Excel workitem managing
  6. Excel workitem managing
  7. Excel workitem managing