Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
YAIS_2012_магистры.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
3.84 Mб
Скачать

1.3 Завдання на лабораторну роботу

1.3.1 Ознайомитися з IBM Rational Clear Case.

1.3.2 Створити VOB курсового проекту з об’єктно-орієнтованого програмування.

1.3.3 Створити View коду проекту та пояснювальної записки.

1.3.4 Поставити проект під конфігураційне керування.

1.3.5 Оформити звіт з роботи.

1.3.6 Відповісти на контрольні питання.

1.4 Зміст звіту

1.4.1 Тема та мета роботи.

1.4.2 Короткі теоретичні відомості.

1.4.3 Результати роботи з IBM Rational Clear Case.

1.4.4 Висновки, що містять відповіді на контрольні запитання, а також відображують результати виконання роботи.

1.5 Контрольні запитання

1.5.1 Для чого використовується IBM Rational Clear Case?

1.5.2 Яке програмне забезпечення дозволяє котролювати IBM Rational Clear Case?

1.5.3 До яких середовищ може відбуватися інтегрування IBM Rational Clear Case?

1.5.4 Порядок створення VOB? Які операції можна виконувати над VOB?

1.5.5 Порядок створення View?

1.5.6 Основні команди роботи з можливостями IBM Rational Clear Case?

Лабораторна робота №2 Обчислення метрик розміру та складності програм з використанням IBM Rational ClearCase

2.1 Мета роботи

Вивчити основні метрики програмних систем та реалізувати їх в IBM Rational ClearCase.

2.2 Основні теоретичні відомості

Виконання скрипта обчислення метрик. Скрипт обчислення метрик запускається з контекстного меню елементів версійного сховища. Для цього в меню слід додати пункт його запуску. Отже, для запуску редактора Context Menu Editor виконуємо: Start Programs Rational Software Rational ClearCase Context Menu Editor(рис.6.1).

Рисунок 2.1 – ClearCase Context Menu Editor

У верхній панелі вікна вибираємо Application  ClearCase Explorer. В деревоподібному списку «Object Type» Вибираємо "Snapshot View"  "VOB".

У списку Object State вибираємо «Checked In».

Потім натискаємо «New». Далі у вікні, приклад якого показано на малюнку, призначаємо значення полям так, як показано на малюнку.

Слід звернути увагу на поля «Сommand». У першому полі вибираємо «Executable», а в другому вказуємо шлях до *.bat файл в якому міститься Perl-скрипт. Текст Perl-скрипта буде розглянуто далі. Рекомендується, щоб цей файл знаходився в каталозі з загальним доступом.

Рисунок 2.2 – Вікно властивостей елемента меню

Після того, як значення полів задані, натискаємо «ОК». Назва створеного нами пункту меню повинне з'явитися в списку «Available Menu Choices». Вибираємо його і натискаємо на «Add». Тепер назва цього пункту меню з'явилося у списку «The Menu Contents».

Далі натискаємо Configuration -> Apply. Потім - Configuration -> Save to File ... і вибираємо каталог, в якому буде зберігатися дана конфігурація меню. Ця конфігурація буде мати вигляд. Reg файлу.

Далі слід застосувати це меню. Для в Windows провіднику переходимо в каталог, у якому тільки що зберегли *.reg файл. Натискаємо на нього правою кнопкою, і вибираємо «Злиття». Ймовірно, дану дія слід здійснювати з правами адміністратора.

Тепер створений пункт меню з'явився в контекстному меню елемента. Приклад його виклику відображений на рис.2.3.

Рисунок 2.3 – Виклик меню елемента VOB

Perl-скрипт для розрахунку метрик. Скрипт виконується за допомогою ccperl.exe. який знаходиться «Program Files \ ... \ ClearCase \ bin», тому слід додати цей каталог до змінної оточення «Path».

Аналіз метрик виконується за допомогою утиліти CCCC, шлях до неї також необхідно додати до змінної оточення «Path».

Текст скрипта:

@rem= 'PERL for Windows NT -- ccperl must be in search path

@echo off

@echo %0 %1

ccperl %0 %1 %2 %3 %4 %5 %6 %7 %8 %9

pause

goto endofperl

@rem ';

use Win32;

use Cwd;

$cwdir = cwd();

print "Current directory: $cwdir \n";

DoCommand("cleartool find -all -name \"*.cpp\" -print");

sub DoCommand

{

my $cmd = shift;

$count=0;

my $line;

open(CMD, "$cmd 2>&1 |");

foreach $line (<CMD>)

# Ми виконали пошук, і перехоплюємо результат з консолі в змінну $ line. Обробляємо отримане значення: {

chop($line);

print "execution result: \"$line\" \n";

$end = substr ($line, length($line)-2, length($line));

if ($end ne "\\0")

# Перевіряємо закінчення рядка. Ми не будемо враховувати нульові версії, так як вони не містять інформації. Решта версій піддаються аналізу.

{

$tmpname = substr ($line, 0, index($line, "@@"));

print "$tmpname\n";

# У змінній $ tmpname ми сформували стандартне ім'я файлу, тобто завершується розширенням. Використовувана в прикладі утиліта розрахунку метрик не може оперувати назвами файлів, що містять повний шлях ClearCase, тобто назвами версій.

system("cleartool co -unr -nc -version \"$tmpname\" ");

system ("\"C:\\Program Files\\CCCC\\cccc.exe\" \"$tmpname\" --xml_outfile=c:\\temp\\cccc\\tmp.xm --outdir=c:\\temp\\cccc");

# Далі скасовуємо CheckOut, створюємо на версії атрибути, що містять відповідні значення метрик і додаємо прирощення до змінної покажчика рядка таблиці.

system("cleartool unco -rm \"$tmpname\" ");

# system("cleartool mkattr LOC $LOC \"$line \"");

# system("cleartool mkattr MVG $MVG \"$line \"");

# system("cleartool mkattr L_C $L_C \"$line \"");

};

}

close CMD;

}

Результат роботи скрипта збережеться в каталозі зазначеному в скрипті. В даному випадку це «c:\\temp\\cccc»

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]