(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Отчётность IBM Rational ClearCase.Часть 1

Источник: developerworks
Рустам Зайдуллин, ведущий инженер, ТатАСУнефть" ОАО "Татнефть" Александр Новичков, руководитель отдела внедрения и консалтинга, СМ-Консалт

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

Метрики сложности программ принято разделять на четыре основные группы:

  1. метрики размера программ;
  2. метрики стилистики и понятности программ;
  3. метрики сложности потока управления программ;
  4. метрики сложности потока данных программ.

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

Метрики второй группы показывают полноту комментирования исходного кода. При этом учитывается не просто число строк комментариев, а насколько плотно комментирован исходный код. Например, код сначала был документирован хорошо, затем - плохо; или так: шапка функции или класса документирована и комментирована, а код - нет. Суть метрики проста: код разбивается на n-равные куски и для каждого из них определяется коэффициент.

Метрики третьей группы базируются на анализе управляющего графа программы. Представителем данной группы является метрика Мак-Кейба. Управляющий граф программы, который используют метрики данной группы, может быть построен на основе алгоритмов модулей. В процессе автоматизированного вычисления показателя цикломатической сложности, как правило, применяется упрощенный подход, в соответствии с которым построение графа не осуществляется, а вычисление показателя производится на основании подсчета числа операторов управляющей логики (if, switch и т.д.) и возможного количества путей исполнения программы. Цикломатическое число Мак-Кейба показывает требуемое число проходов для покрытия всех контуров сильносвязанного графа или число тестовых прогонов программы, необходимых для исчерпывающего тестирования по принципу "работает каждая ветвь".

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

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

Итак, далее речь пойдёт собственно о получении отчётов по изменённым версиям исходного кода и вычислении метрик по ним. В ClearCase есть инструмент формирования отчётности - Report Builder. Он содержит ряд предустановленных отчётов, позволяет экспортировать полученные отчёты в различных форматах. Инструмент Report Builder вполне удовлетворяет потребности в начале использования ClearCase. Но со временем, рано или поздно, появится потребность расширения возможностей системы отчётности, например, понадобится получать метрики размера и сложности исходного кода.

Архитектура описываемого решения изображена на рисунке 1.

Рисунок 1. Архитектура решения
Рисунок 1. Архитектура решения

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

Скрипт выполняет следующие функции:

  • собирает входящую информацию для отчёта (временной промежуток, метки, обозначающие базовые линии, список разработчиков);
  • формирует строку запроса cleartool find для выборки нужных версий;
  • производит анализ выбранных версий - описание, подсчёт числа изменённых версий, рассчитывает метрики, создаёт атрибуты со значениями полученных метрик на обработанных версиях;
  • формирует результат отчёта в удобочитаемом виде (мы будем использовать формат MS Excel).

Для расчёта метрик мы используем бесплатно распространяемую утилиту сссс.exe. Для получения метрик необходимо запустить утилиту с указанием в аргументах пути к анализируемому файлу (версии элемента в нашем случае). Результат работы утилиты выводится в xml-файл.

Для создания атрибутов на элементах версионного хранилища необходимо предварительно создать типы атрибутов. Для этого переходим к списку типов версионного хранилища и открываем каталог attribute types. Создаём типы атрибутов (рисунок 2).

Рисунок 2. Создание типов атрибутов
Рисунок 2. Создание типов атрибутовы

Читать часть 2

Ссылки по теме


 Распечатать »
 Правила публикации »
  Обсудить материал в конференции IBM Rational/Telelogic - системный инжиниринг, управление требованиями, изменениями, жизненным циклом ИС, умное управление проектами »
Написать редактору 
 Рекомендовать » Дата публикации: 01.12.2009 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Rational ClearQuest Floating User License
IBM RATIONAL Clearcase Floating User License + Sw Subscription & Support 12 Months
IBM RATIONAL Clearcase Floating User From Rational Clearcase Lt Floating User Trade Up License + Sw Subscription & Support 12 Months
IBM Rational Functional Tester Floating User License
IBM Rational Method Composer Authorized User License
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
CASE-технологии
Программирование в AutoCAD
Мир OLAP и Business Intelligence: новости, статьи, обзоры
Мастерская программиста
Каждый день новые драйверы для вашего компьютера!
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
Обсуждения в форумах
Как выбрать матрас (5)
Подскажите как правильно выбрать матрас и на что в целом следует обратить внимание на ваш...
 
ErWin to Access Relation Error (2)
Всем привет! ErWin при попытке генерации в Ассеss выдаёт: ERwinDatabase.Relations.Append...
 
Смена типа уровня модели (1)
Здравствуйте. При запуске программы выбрал уровень "Логический" вместо "Логический и...
 
Process Modeler (BPwin). Не добавляются Referent Tool, Ext Ref Tool и Data Store Tool (4)
Process Modeler (BPwin). В диаграммы не добавляются Referent Tool, External Reference Tool и...
 
Проектирование курсовой работы в BPWin (33)
Здравствуйте.Подскажите пожалуйста где можно найти примерное проектирование курсовой работы...
 
 
 



    
rambler's top100 Rambler's Top100