Project

General

Profile

Reqeditor-getting-started » History » Version 71

Yuriy Shekochihin, 01/11/2010 05:30 PM

1 15 Илья Рудаков
h1. Getting started with ReqEditor
2 1 Yuriy Shekochihin
3 4 Yuriy Shekochihin
ReqEditor является инструментом для организации каталога требований. Этот инструмент выполнен в виде расширения для Eclipse. 
4 2 Yuriy Shekochihin
5
Найти подробную информацию о ReqEditor можно по адресу: http://forge.ispras.ru/projects/show/reqdb
6
7 30 Илья Рудаков
h2. 1. Установка
8 1 Yuriy Shekochihin
9 16 Илья Рудаков
h3. 1.1 Системные требования
10 1 Yuriy Shekochihin
11 70 Yuriy Shekochihin
* Firefox 3.5 или выше ( http://www.mozilla.com/ );
12
* Eclipse Classic 3.5 или выше ( http://www.eclipse.org/downloads/ );
13
* XULRunner 1.9 или выше ( https://developer.mozilla.org/En/XULRunner );
14 2 Yuriy Shekochihin
15 16 Илья Рудаков
h3. 1.2 Установка Eclipse
16 1 Yuriy Shekochihin
17 30 Илья Рудаков
Eclipse можно скачать, зайдя на сайт http://eclipse.org/
18 2 Yuriy Shekochihin
19 16 Илья Рудаков
h3. 1.3 Установка ReqEditor
20 2 Yuriy Shekochihin
21 32 Илья Рудаков
Для установки ReqEditor необходимо скачать последнюю версию расширения с "сайта проекта":http://forge.ispras.ru/projects/list_files/reqdb и распаковать архив в директорию: 
22 56 Илья Рудаков
<pre>%ECLIPSE%/dropins</pre> где %%ECLIPSE%% - путь к Eclipse IDE.
23 1 Yuriy Shekochihin
24 19 Илья Рудаков
25 21 Илья Рудаков
h2. 2. Разметка требований
26 20 Илья Рудаков
27 34 Илья Рудаков
Рассмотрим подробнее работу инструмента на примере требований к функции g_array_sized_new()
28 2 Yuriy Shekochihin
библиотеки glib.
29
30 20 Илья Рудаков
h3. 2.1 Подготовка к работе
31 1 Yuriy Shekochihin
32 63 Илья Рудаков
Перед началом работы необходимо открыть перспективу ReqEditor. Для этого нажмите на значок "Open Perspective", находящийся в верхнем правом углу, как показано на следующем рисунке.
33 1 Yuriy Shekochihin
34 60 Илья Рудаков
!choose_persp1.png!
35 23 Илья Рудаков
36 63 Илья Рудаков
Далее выберите "Other..."
37 11 Yuriy Shekochihin
38 61 Илья Рудаков
!choose_persp2.png!
39 11 Yuriy Shekochihin
40 64 Илья Рудаков
Появится диалоговое окно, в котором нужно выбрать ReqEditor и после нажать кнопку "OK", как показано на рисунке ниже.
41 24 Илья Рудаков
42 60 Илья Рудаков
!select-persp-dialog.png!
43 24 Илья Рудаков
44 65 Илья Рудаков
В перспективе ReqEditor по умолчанию открыты отображения "Documents" и "Requirements". В "Documents" будет отображаться дерево документов, в "Requirements" - дерево требований.
45 11 Yuriy Shekochihin
46 60 Илья Рудаков
!persp-view.png!
47 11 Yuriy Shekochihin
48 20 Илья Рудаков
h3. 2.2 Создание нового каталога
49 1 Yuriy Shekochihin
50 26 Илья Рудаков
Теперь нам нужно создать каталог требований. Под каталогом требований мы будем понимать контейнер, в котором хранятся документы и требования. Чтобы создать каталог требований, зайдите в File -> New -> Other, как показано ниже.
51 25 Илья Рудаков
52 1 Yuriy Shekochihin
!Catalog-call-wizards.png!
53 26 Илья Рудаков
54 27 Илья Рудаков
Вы увидите диалоговое окно. Выберите Unitesk Wizards -> Catalogue of Requirements  и нажмите Next.
55 10 Yuriy Shekochihin
56 1 Yuriy Shekochihin
!Catalog-select-wizard.png!
57 27 Илья Рудаков
58
В следующем диалоговом окне нужно указать имя каталога. В нашем примере мы назвали его "Glib-Catalogue". Жмем Finish.
59 9 Yuriy Shekochihin
60
!Catalog-_wizard_creates_new_cat.png!
61
62 12 Yuriy Shekochihin
В итоге должно получиться следующее:
63
64
!cat-after-creation.png!
65
66 20 Илья Рудаков
h3. 2.3 Импорт документа в каталог
67 1 Yuriy Shekochihin
68 66 Илья Рудаков
<pre>
69
В данный момент инструмент ReqEditor позволяет работать с документами в кодировке UTF-8.
70
</pre>
71
72 57 Илья Рудаков
Теперь нужно добавить документ в каталог. Для этого в Documents нажимаем правой кнопкой мыши на каталог требований "Glib-Catalogue". В появившемся меню выбираем "Import here".
73 53 Илья Рудаков
74 52 Илья Рудаков
!Doc-import-call.png!
75 53 Илья Рудаков
76 67 Илья Рудаков
В диалоговом окне в поле "Import file:" указываем путь к документу с помощью кнопки "Browse...". В нашем примере это "glib-Arrays.html":http://forge.ispras.ru/attachments/113/glib-Arrays-utf8.html.
77 53 Илья Рудаков
В поле "Save to:" при помощи кнопки "Browse..." указываем путь к папке Documents, которая находится в каталоге требований "Glib-Catalogue".
78
79 54 Илья Рудаков
!Doc-import-dialog.png!
80 53 Илья Рудаков
81
Чтобы открыть документ, добавленный в каталог требований, нужно двойным щелчком мыши нажать на название документа в отображении Documents, как показано ниже. Чтобы функционал разметки документа работал, важно открывать документы именно через отображение "Documents", а не через отображение "Project Explorer"!
82
83 52 Илья Рудаков
!Doc-open.png!
84 2 Yuriy Shekochihin
85 40 Илья Рудаков
h3. 2.4 Создание требований
86 1 Yuriy Shekochihin
87 42 Илья Рудаков
Теперь давайте создадим простую иерархию требований. Для этого перейдем в "Requirements", выделим каталог требований "Glib-Catalogue" и нажмем на правую кнопку мыши. Далее нажимаем на "Add requirement", как показано ниже.
88 40 Илья Рудаков
89 1 Yuriy Shekochihin
!Req-new-call.png!
90 42 Илья Рудаков
91
Появится диалоговое окно, в котором нужно указать имя требования. В нашем примере это "g_array_sized_new".
92
93 1 Yuriy Shekochihin
!Req-set-name.png!
94 42 Илья Рудаков
95
Следующий шаг - аналогичным образом добавим дочерние требования с именами: "01", "02", "03" и "04" к "g_array_sized_new". 
96
97 41 Илья Рудаков
!Req-new-call2.png!
98 40 Илья Рудаков
99
h3. 2.5 Добавление выделенного текста из документа в требование
100
101 35 Илья Рудаков
Выберите в Documents нужный вам документ и двойным щелчком мыши откройте его. Далее выделите текст в документе, как показано ниже.
102
103
!Req7.png!
104
105
После того как текст выделен нажмите правую кнопку мыши и выберете "Add to requirement...".
106
107
!Req9.png!
108
109 38 Илья Рудаков
Появится диалоговое окно, в котором вы можете выбрать к какому требованию добавить выделенный текст. В нашем примере мы добавляем текст к требованию g_array_sized_new.01.
110
111
!Req-select.png!
112
113 49 Илья Рудаков
После нажатия кнопки "OK", выбранный текст будет подсвечен желтым цветом в документе, как показано ниже.
114 36 Илья Рудаков
115 1 Yuriy Shekochihin
!Req.png!
116 49 Илья Рудаков
117 50 Илья Рудаков
Аналогичным образом размечаем еще три текстовых сегмента и добавляем их в требования g_array_sized_new.02, -03 и -04 соответственно. Сохраняем документ. После сохранения все размеченные текстовые фрагменты будут добавлены в базу требований.
118 49 Илья Рудаков
119
!Doc-save.png!
120 36 Илья Рудаков
121 43 Илья Рудаков
h3. 2.6 Удаление размеченного текста из требования
122 1 Yuriy Shekochihin
123 43 Илья Рудаков
Чтобы удалить размеченный текст из требования, достаточно один раз кликнуть мышью по тексту. Текст поменяет цвет с желтого на розовый. Это значит, что вы, таким образом, выбрали именно этот участок текста.
124 44 Илья Рудаков
После этого нажмите правую кнопку мыши и выберите "Remove from requirement".
125
126
!Req10.png!
127 43 Илья Рудаков
128 45 Илья Рудаков
h3. 2.7 Редактирование требований
129 1 Yuriy Shekochihin
130 47 Илья Рудаков
Чтобы открыть окно редактирования требования, нужно в Requirements выбрать нужное требование и двойным щелчком мыши его открыть.
131
В открывшемся окне вы увидите раздел "Main information". Здесь указана информация об id требования, об всех размеченных текстовых фрагментах из документа( поле "Description" ) и т.д.
132
133 1 Yuriy Shekochihin
!Req11.png!
134 47 Илья Рудаков
135
Вы можете добавить к требованию альтернативное описание в поле "Alternative description".
136
137 1 Yuriy Shekochihin
!Req-edit-desc.png!
138
139 48 Илья Рудаков
Так же, в графе "Additional information" вы можете добавить предикаты и атрибуты.
140 47 Илья Рудаков
141
!Req-erit-attr-pred.png!
142 9 Yuriy Shekochihin
143 28 Илья Рудаков
h2. 3. Генерация отчета
144
145 1 Yuriy Shekochihin
Итак, мы дошли до генерации отчета о покрытии. Наведите курсор на название каталога требований во вкладке Requirements и нажмите на правую кнопку мыши - появится всплывающие меню. Выберите Generate Report, как показано ниже.
146 9 Yuriy Shekochihin
147 29 Илья Рудаков
!RepGen-call.png!
148
149
Появится диалоговое окно. 
150
В нем четыре пункта для ввода:
151
# *Root* - определяет корневое требование в вашей иерархии требований;
152
# *Data* - путь к шаблону FreeMarker. Файл с расширением .ftl;
153
# *Template* - путь к файлу template.xml;
154 8 Yuriy Shekochihin
# *Save to* - путь к директории куда мы хотим сохранить получившийся отчет.
155 1 Yuriy Shekochihin
156
!RepGen-dialog.png!