Reqeditor-getting-started » History » Revision 54
Revision 53 (Илья Рудаков, 12/18/2009 09:16 AM) → Revision 54/76 (Илья Рудаков, 12/18/2009 09:17 AM)
h1. Getting started with ReqEditor ReqEditor является инструментом для организации каталога требований. Этот инструмент выполнен в виде расширения для Eclipse. Найти подробную информацию о ReqEditor можно по адресу: http://forge.ispras.ru/projects/show/reqdb h2. 1. Установка Для работы ReqEditor требуется установленный Eclipse. Если у Вас уже установлен Eclispe следующий пункт можно пропустить. h3. 1.1 Системные требования * Firefox 3.5 или выше; * Eclipse 3.5 или выше; h3. 1.2 Установка Eclipse Eclipse можно скачать, зайдя на сайт http://eclipse.org/ h3. 1.3 Установка ReqEditor Для установки ReqEditor необходимо скачать последнюю версию расширения с "сайта проекта":http://forge.ispras.ru/projects/list_files/reqdb и распаковать архив в директорию: <pre>%ECLIPSE%/dropinst</pre> где %%ECLIPSE%% - путь к Eclipse IDE. h2. 2. Разметка требований Рассмотрим подробнее работу инструмента на примере требований к функции g_array_sized_new() библиотеки glib. h3. 2.1 Подготовка к работе Перед началом работы необходимо открыть вкладки Documents и Requirements. Для этого нужно открыть Window -> Show View -> Other, как показано на следующем рисунке. !Views-menu-path.png! Перед вами появится диалоговое окно. Выберите Requirement Editor -> Requirements. !Views-show-reqs.png! Повторите туже операцию, но теперь выберете Documents. !Views-show-docs.png! После выполнения данных операций в основном окне Eclipse появятся две вкладки: Requirements и Documents. В первой вкладке будет отображаться иерархия требований, во второй - документы. Расположите эти вкладки так, как вам будет удобно. Например, как на рисунке ниже. !Views-result.png! h3. 2.2 Создание нового каталога Теперь нам нужно создать каталог требований. Под каталогом требований мы будем понимать контейнер, в котором хранятся документы и требования. Чтобы создать каталог требований, зайдите в File -> New -> Other, как показано ниже. !Catalog-call-wizards.png! Вы увидите диалоговое окно. Выберите Unitesk Wizards -> Catalogue of Requirements и нажмите Next. !Catalog-select-wizard.png! В следующем диалоговом окне нужно указать имя каталога. В нашем примере мы назвали его "Glib-Catalogue". Жмем Finish. !Catalog-_wizard_creates_new_cat.png! В итоге должно получиться следующее: !cat-after-creation.png! h3. 2.3 Импорт документа в каталог Теперь нам нужно добавить документ в каталог. Для этого в Requirements нажимаем правой кнопкой мыши на каталог требований "Glib-Catalogue". В появившемся меню выбираем "Import here". !Doc-import-call.png! В диалоговом окне в поле "Import file:" указываем путь к документу с помощью кнопки "Browse...". В нашем примере это glib-Arrays.html. В поле "Save to:" при помощи кнопки "Browse..." указываем путь к папке Documents, которая находится в каталоге требований "Glib-Catalogue". !Doc-import-dialog.png! !Docimport-dialog.png! Чтобы открыть документ, добавленный в каталог требований, нужно двойным щелчком мыши нажать на название документа в отображении Documents, как показано ниже. Чтобы функционал разметки документа работал, важно открывать документы именно через отображение "Documents", а не через отображение "Project Explorer"! !Doc-open.png! h3. 2.4 Создание требований Теперь давайте создадим простую иерархию требований. Для этого перейдем в "Requirements", выделим каталог требований "Glib-Catalogue" и нажмем на правую кнопку мыши. Далее нажимаем на "Add requirement", как показано ниже. !Req-new-call.png! Появится диалоговое окно, в котором нужно указать имя требования. В нашем примере это "g_array_sized_new". !Req-set-name.png! Следующий шаг - аналогичным образом добавим дочерние требования с именами: "01", "02", "03" и "04" к "g_array_sized_new". !Req-new-call2.png! h3. 2.5 Добавление выделенного текста из документа в требование Выберите в Documents нужный вам документ и двойным щелчком мыши откройте его. Далее выделите текст в документе, как показано ниже. !Req7.png! После того как текст выделен нажмите правую кнопку мыши и выберете "Add to requirement...". !Req9.png! Появится диалоговое окно, в котором вы можете выбрать к какому требованию добавить выделенный текст. В нашем примере мы добавляем текст к требованию g_array_sized_new.01. !Req-select.png! После нажатия кнопки "OK", выбранный текст будет подсвечен желтым цветом в документе, как показано ниже. !Req.png! Аналогичным образом размечаем еще три текстовых сегмента и добавляем их в требования g_array_sized_new.02, -03 и -04 соответственно. Сохраняем документ. После сохранения все размеченные текстовые фрагменты будут добавлены в базу требований. !Doc-save.png! h3. 2.6 Удаление размеченного текста из требования Чтобы удалить размеченный текст из требования, достаточно один раз кликнуть мышью по тексту. Текст поменяет цвет с желтого на розовый. Это значит, что вы, таким образом, выбрали именно этот участок текста. После этого нажмите правую кнопку мыши и выберите "Remove from requirement". !Req10.png! h3. 2.7 Редактирование требований Чтобы открыть окно редактирования требования, нужно в Requirements выбрать нужное требование и двойным щелчком мыши его открыть. В открывшемся окне вы увидите раздел "Main information". Здесь указана информация об id требования, об всех размеченных текстовых фрагментах из документа( поле "Description" ) и т.д. !Req11.png! Вы можете добавить к требованию альтернативное описание в поле "Alternative description". !Req-edit-desc.png! Так же, в графе "Additional information" вы можете добавить предикаты и атрибуты. !Req-erit-attr-pred.png! h2. 3. Генерация отчета Итак, мы дошли до генерации отчета о покрытии. Наведите курсор на название каталога требований во вкладке Requirements и нажмите на правую кнопку мыши - появится всплывающие меню. Выберите Generate Report, как показано ниже. !RepGen-call.png! Появится диалоговое окно. В нем четыре пункта для ввода: # *Root* - определяет корневое требование в вашей иерархии требований; # *Data* - путь к шаблону FreeMarker. Файл с расширением .ftl; # *Template* - путь к файлу template.xml; # *Save to* - путь к директории куда мы хотим сохранить получившийся отчет. !RepGen-dialog.png!