Project

General

Profile

Reqdb » History » Revision 55

Revision 54 (Илья Рудаков, 12/18/2009 01:29 PM) → Revision 55/96 (Yuriy Shekochihin, 12/18/2009 01:37 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 документов. 

 "*+ReqEditor "*+RreqEditor JSDoc+*":http://rothmans/ 

 h2. ReqDB use cases 

 h3. Работа с данными 

 * Отображение дерева требований 
 * Создание требования 
 ** Указать родительское требование 
 ** Указать название требования 
 ** Задать атрибуты 
 ** Задать предикат 
 * Удаление требования 
 * Редактирование требования 
 ** Переименовать требование 
 ** Добавить новый атрибут 
 ** Удалить Атрибут 
 ** Изменить предикат 
 ** Изменить родительское требование 
 ** Изменить альтернативное описание требования 
 ** Добавить Location 
 ** Удалить Location 
 * Создание инстанцированного дерева требований 


 * Добавление Location в требование 
 * Удаление Location из требования (одновременно удаляется из документа) 
 * Удаление Location из документа (одновременно удаляется из требования) 
 * Получить location description из Location 
 * Установить альтернативный description у Location 
 * Очистка документа от всех Location 

 * Генерация отчета 
 * Перенос документов в каталог требований ( внешние документы конвертируются и переносятся в каталог ) 

 * Получение списка каталогов требований 
 * Получение списка документов заданного каталога требований 
 * Создание каталога требований 
 * Получение каталога требований по идентификатору 

 h3. Работа с деревом требований 

 * Получить дерево требований (корень и ссылки на дочерние узлы)