Reqdb » History » Revision 54
Revision 53 (Илья Рудаков, 12/18/2009 01:28 PM) → Revision 54/96 (Илья Рудаков, 12/18/2009 01:29 PM)
h1. ReqDB
h2. Краткое описание проекта
Проект ReqDB позволяет работать с иерархической базой данных требований к какой-либо системе. Этот проект реализует идею _reverse engineering_.
Принцип _reverse engineering_ подразумевает исследование некоторой системы или программы, а также документации для нее с целью понять принцип ее работы и, чаще всего, воспроизвести систему, программу или иной объект с аналогичными функциями, но без копирования как такового.
Например, имеется унаследованный код или готовое программное приложения без набора тестов. Необходимо иметь возможность вносить модификации в имеющиеся приложение или, например, портировать его на другую платформу. Для этого необходимо располагать списком требований, которые определяют поведение рассматриваемой системы. На базе этих требований создаются наборы тестов.
Инструменты, входящие в проект ReqDB, позволяют выделять требования к системе из документации, анализировать эти требования, связывать их с наборами тестов и генерировать отчет о покрытии.
Проект включает в себя:
* Библиотеку "reqdb":http://forge.ispras.ru/projects/list_files/reqdb, в которой реализован функционал для работы с иерархической базой данных требований.
* Инструмент для разметки требований "ReqEditor":http://forge.ispras.ru/projects/list_files/reqdb, являющийся расширением к Eclipse IDE и позволяющий организовывать базу данных требований, а так же размечать html документы.
-[[reqdb-model|Абстрактная модель данных базы требований]]-
h2. User guide
*+[[working-with-reqdb|Working with ReqDB console]]+*
*+[[reqeditor-getting-started|Getting started with ReqEditor]]+*
h2. ReqEditor
ReqEditor --- инструмент создания базы требований на основе разметки html документов.
"*+RreqEditor JSDoc+*":http://rothmans/
h2. ReqDB use cases
h3. Работа с данными
* Отображение дерева требований
* Создание требования
** Указать родительское требование
** Указать название требования
** Задать атрибуты
** Задать предикат
* Удаление требования
* Редактирование требования
** Переименовать требование
** Добавить новый атрибут
** Удалить Атрибут
** Изменить предикат
** Изменить родительское требование
** Изменить альтернативное описание требования
** Добавить Location
** Удалить Location
* Создание инстанцированного дерева требований
* Добавление Location в требование
* Удаление Location из требования (одновременно удаляется из документа)
* Удаление Location из документа (одновременно удаляется из требования)
* Получить location description из Location
* Установить альтернативный description у Location
* Очистка документа от всех Location
* Генерация отчета
* Перенос документов в каталог требований ( внешние документы конвертируются и переносятся в каталог )
* Получение списка каталогов требований
* Получение списка документов заданного каталога требований
* Создание каталога требований
* Получение каталога требований по идентификатору
h3. Работа с деревом требований
* Получить дерево требований (корень и ссылки на дочерние узлы)