Project

General

Profile

ExplorerView » History » Version 57

Viktoria Kopach, 06/09/2011 07:57 PM

1 1 Viktoria Kopach
h1. Requality Explorer View
2 2 Viktoria Kopach
3 28 Alexey Khoroshilov
{{toc}}
4
5 1 Viktoria Kopach
Requality Explorer содержит все проекты, что и PackageExplorer, но развернуть можно только проекты типа Requality.
6
В Requality-проекте есть две папки: Documents и Requirements (содержащие, соответственно, документы с требованиями и сами требования).
7
8 39 Viktoria Kopach
h2. Кнопка Link with editor
9 40 Viktoria Kopach
10 39 Viktoria Kopach
Кнопка Link with editor, она же "стрелочки", должна иметь следующую функциональность:
11
- если эта кнопка включена, то при переключении между документами в Markup editor тот документ, вкладка которого открыта, выделяется в Requality explorer''е.
12
- если кнопка выключена, то переключение между вкладками документов в Markup editor не влияет на requality explorer.
13
14 15 Viktoria Kopach
h2. Папка проекта
15
16 41 Viktoria Kopach
(Перспектива Requality, Requality Explorer view)
17
Контекстное меню проекта:
18 42 Viktoria Kopach
* меню *New*, подменю Project.... Это стандартное окно создания проекта в Eclipse, но в нем по умолчанию будет выбран тип проекта - Requality. 
19 45 Viktoria Kopach
Создается папка проекта. По умолчанию в ней отображаются основная папка для документов Documents и основной узел требований Requirements. В основном контекстное меню папки проекта аналогично стандартному контекстному меню проекта в Eclipse.
20 1 Viktoria Kopach
* меню *Delete*   - Удаление проекта в перспективе Requality.
21 51 Viktoria Kopach
В контекстном меню проекта Requality есть пункт Delete с пиктограммой-крестиком (как у аналогичного меню в других перспективах Eclipse).
22 43 Viktoria Kopach
При выборе Delete возникает окно Delete Project с уточняющим вопросом об удалении проекта. В окне есть: 
23
** кнопка Cancel. При выборе Cancel окно закрывается, никаких изменений не происходит. 
24
** кнопка ОК. При выборе OK проект удаляется.
25
** чек-бокс для выбора удаления проекта с диска.
26 42 Viktoria Kopach
По умолчанию проект удаляется из Eclipse, но сохраняется на диске. Если выбран вышеупомянутый чек-бокс (стоит галочка), то проект удаляется с диска.
27 44 Viktoria Kopach
28 45 Viktoria Kopach
Таким образом удаление будет реализовано по аналогии со стандартным удалением проекта в Eclipse.
29 1 Viktoria Kopach
!http://forge.ispras.ru/attachments/692/Delete_Project.png!
30 49 Viktoria Kopach
31 55 Viktoria Kopach
* меню *Rename* позволяет переименовать проект
32 1 Viktoria Kopach
Открывается окно Rename Project. 
33
В нем есть редактируемое поле *New name:*, в котором изначально находится текущее имя проекта, отмеченное выделением. 
34
Есть две кнопки *OK* и *Cancel*. По умолчанию кнопка OK не активна, Сancel - активна.
35
Корректность имени проекта:
36 53 Viktoria Kopach
** Если в поле New name: вводится имя, которое совпадает с текущим именем проекта или с именем другого проекта или папки, находящихся в той же директории, что и текущий проект, то кнопка OK становится неактивной и в окне появляется сообщение красными буквами "А file or folder with this name already exists".
37
** Если в поле New name: пусто или есть знаки, которые не могут быть в имени проекта, то кнопка OK становится неактивной и в окне появляется сообщение красными буквами "This is an invalid name for a file or folder".
38
** В остальных случаях кнопка OK активна.
39
40
!http://forge.ispras.ru/attachments/880/Rename_Project.png!
41
42 1 Viktoria Kopach
* меню *Move* позволяет переместить проект в другое место на диске.
43 55 Viktoria Kopach
Открывается окно Move Project.
44
В нем есть редактируемое поле *Location*, рядом с ним - кнопка *Browse...* для выбора пути, внизу - кнопки OK и Cancel, над полем Location находится чек-бокс *Use default location*. По умолчанию кнопка OK не активна, Сancel - активна.
45
В поле Location изначально указан текущий путь к проекту, при этом кнопка ОК неактивна. После редактирования пути (в поле Location или с помощью кнопки Browse) кнопка ОК становится активна, но если при этом указанный путь совпадает с текущим, кнопка ОК становится неактивна и в окне появляется сообщение "Location is the current location" (цвет текста - красный). Если путь указан невалидный (содержит запрещенные символы или имеет неправильный формат), кнопка ОК становится неактивна и в окне появляется сообщение с пояснением проблемы (цвет текста - красный). 
46
При выборе чек-бокса Use default location в поле Location автоматически прописывается путь текущего воркспейса (+ имя проекта через слэш), при этом само поле Location ( и его название), а так же кнопка Browse становятся неактивными. При этом соблюдается сценарий для совпадающего пути.
47
При нажатии ОК окно закрывается и проект перемещается по указанному пути. При нажатии Cancel окно закрывается, проект остается где и был.
48 54 Viktoria Kopach
49 1 Viktoria Kopach
!http://forge.ispras.ru/attachments/881/Move_project.png!
50 54 Viktoria Kopach
51 55 Viktoria Kopach
В стандартном контекстном меню проекта в Eclipse есть пункт Refactor, содержащий подпункты Rename и Move. В случае Requality было решено обойтись без полноценного Refactor и вынести Rename и Move в основной список пунктов контекстного меню. Но работают они аналогично.
52 47 Viktoria Kopach
53 26 Viktoria Kopach
54 5 Viktoria Kopach
h2. Documents
55 4 Viktoria Kopach
56 38 Viktoria Kopach
В папке Documents элементы должны быть упорядочены следующим образом: сначала идут все папки в алфавитном порядке, потом все документы из текущей папки в алфавитном порядке.
57 29 Alexey Khoroshilov
58 5 Viktoria Kopach
h3. Действия с документами:
59 1 Viktoria Kopach
60 4 Viktoria Kopach
При *двойном клике на документ* он открывается в редакторе Markup editor.
61
62
*Контекстное меню документов* (по клику правой кнопки) содержит пункты:
63 49 Viktoria Kopach
* Remove Document - удаление документа. 
64 4 Viktoria Kopach
* Update Document - обновляет старую версию документа новой.
65
* HTML Headers Document Processor - создается требование для каждого тега <h#>...</h#>.
66
67 1 Viktoria Kopach
Замечание: Update Document и HTML Headers Document Processor - это вызов обработок, набор которых может расширяться.
68
69
*Create Folder*
70
При создании новой папки открывается окно с полем для ввода имени новой папки и кнопками OK и Cancel.  При  нажатии OK папка с заданным именем создается. При нажатии Cancel окно создания папки просто закрывается, никаких изменений не происходит. При папка с введенным именем уже существует на том же уровне иерархии, в окне создания папки появляется предупреждение об этом и кнопка OK становится неактивной.
71
72
*Remove Document*
73 49 Viktoria Kopach
При этом возникает окно для подтверждения удаления документа. В окне есть две кнопки ОК и Cancel. 
74 50 Viktoria Kopach
** При нажатии Cancel окно закрывается, документ не удаляется. 
75
** При выборе ОК окно закрывается, процесс удаления продолжается: 
76
*** если в документе нет размеченных location''ов, происходит удаление документа; 
77
*** если в документе есть размеченные location''ы, то возникает окно, которое об этом предупреждает и спрашивает, продолжать ли удаление. В окне есть две кнопки ОК и Cancel. 
78
**** При нажатии Cancel окно закрывается, документ не удаляется.
79
**** При выборе ОК окно закрывается, документ удаляется.
80 49 Viktoria Kopach
81
Location''ы, которые были в удаленном документе, удаляются из базы данных и из требований, в которых они находились. Сами требования не удаляются.
82 36 Alexey Khoroshilov
После удаления документа активным элементом в Requality Explorer становится родительский элемент удаленного документа.
83 45 Viktoria Kopach
84 4 Viktoria Kopach
*Update Document*
85
Обновить документ можно только документом, который добавлен в проект. При выборе этого пункта меню на текущем документе (назовем его обновляемым) открывается окно со списком всех документов (иерархически отсортированных по папкам) данного проекта для выбора обновляющего документа. Окно содержит кнопки OK (изначально неактивна) и Cancel. При  нажатии Cancel окно выбора документа закрывается и никаких изменений не происходит. При выборе обновляющего документа кнопка OK становится активна, при ее нажатии происходит обновление обновляемого документа (на котором был нажат пункт меню Update Document) выбранным документом. При этом содержимое обновляемого документа заменяется на содержимое обновляющего документа. Если location''ы, которые уже были размечены в старом документе, есть и в обновленном документе, то они сохраняются и размечаются аналогично старой разметке. Если в обновленном документе некоторые требования, которые были в старом, исчезли, то их location''ы удаляются. Процесс обновления документа иллюстрируется окном с прогресс-баром (сколько из размеченных требований обновляемого документа проанализировано) и завершается возникновением окна, в котором указывается количество найденных и перенесенных в новый документ location''ов.
86 1 Viktoria Kopach
Обновить документ самим собой нельзя. В окне выбора обновляющего документа при выборе самого себя кнопка OK становится неактивной.
87
88 4 Viktoria Kopach
*HTML Headers Document Processor*
89 5 Viktoria Kopach
При выборе в контекстном меню документа пункта HTML Headers Document Processor должно появиться окно с прогресс-баром, показывающее степень выполнения процесса. По завершении должно появиться окно, сообщающее об успешности выполнения и количестве созданных требований (если ни одного, то 0).
90 4 Viktoria Kopach
91 1 Viktoria Kopach
h3. Действия с папками документов:
92
93
*Контекстное меню папок Documents* (по клику правой кнопки) содержит пункты:
94
* [[DocumentImport|Import Document]] - импортирование документа
95 49 Viktoria Kopach
* Create Folder - создается папка внутри текущей папки.
96
* Remove Folder - удаляется папка (отсутствует для самой папки Documents).
97 10 Viktoria Kopach
98
Пункты Create Folder и Remove Folder сгруппированы в контекстном меню вместе.
99
100
*Create Folder*
101 49 Viktoria Kopach
При создании новой папки открывается окно с полем для ввода имени новой папки и кнопками OK и Cancel.  При  нажатии OK папка с заданным именем создается. При нажатии Cancel окно создания папки просто закрывается, никаких изменений не происходит. Если папка с введенным именем уже существует на том же уровне иерархии, в окне создания папки появляется предупреждение об этом и кнопка OK становится неактивной. Все процедуры происходят внутри папки, на которой вызывается контекстное меню.
102 10 Viktoria Kopach
103
*Remove Folder*
104 49 Viktoria Kopach
Появляется окно для подтверждения удаления папки и всех вложенных в нее папок и документов. Окно содержит кнопки OK и Cancel. 
105 32 Viktoria Kopach
* Для пустой папки: 
106
** При нажатии Cancel окошко просто закрывается, папка не удаляется, никаких изменений не происходит. 
107 33 Viktoria Kopach
** При нажатии OK папка удаляется. 
108 49 Viktoria Kopach
* Для не пустой папки:
109
** В случае Cancel окошко закрывается, ни документы, ни папка не удалены. 
110 33 Viktoria Kopach
** В случае OK: 
111
*** Если ни в одном документе в этой папке или ее подпапках нет ни одного размеченного location''а, то вся папка с документами удаляется.
112
*** Если размеченные location''ы есть, при нажатии ОК это окошко закрывается, но открывается другое окно с предупреждением о наличии размеченных требований в документах папки и двумя кнопками ОК и Cancel. 
113
**** При нажатии Cancel окно закрывается и ничего не происходит. 
114 34 Viktoria Kopach
**** При нажатии ОК вся папка удаляется.
115 33 Viktoria Kopach
116 49 Viktoria Kopach
Location''ы, которые были в удаленных документах, удаляются из базы данных и из требований, в которых они находились. Сами требования не удаляются.
117 36 Alexey Khoroshilov
После удаления папки активным элементом в Requality Explorer становится родительский элемент удаленной папки.
118
119 5 Viktoria Kopach
h2. Requirements
120 6 Viktoria Kopach
121 56 Viktoria Kopach
При *одинарном клике* на требовании:
122
# требование становится выделенным;
123
# во всех unpinned Properties View (если таковые есть) отображаются свойства выбранного требования.
124
125 57 Viktoria Kopach
При *двойном клике* или *переключении стрелочками* на требование:
126 1 Viktoria Kopach
# требование становится выделенным;
127
# если для документа первого location требования Document markup editor ещё не открыт, он открывается;
128
# вкладка с указанным Document markup editor становится видимой;
129
# в Outline view первый location требования становится выделенным (следующие два пункта выполняются при любом изменении выделения в Outline view);
130
# документ в указанном Document markup editor перематывается так, чтобы вверху видимой области редактора оказался текст первого location требования;
131 45 Viktoria Kopach
# текст этого location специально подсвечивается;
132 1 Viktoria Kopach
# если для выделенного требования есть pinned Properties view, вкладка с ним становится видимой. Иначе видимой становится вкладка с одним из unpinned Properties view, если такого нет, оно открывается.
133
# подробности выделенного требования отображаются во всех его pinned Properties view и во всех unpinned Properties View;
134
135 8 Viktoria Kopach
*Контекстное меню требований* (по клику правой кнопки) содержит пункты:
136 11 Viktoria Kopach
* Create Requirement - добавление требования.
137
* Remove Requirement - удаление требования
138
* Generate Report... - генерация отчета.
139
140
Create Requirement и Remove Requirement в контекстном меню находятся в одной группе рядом.
141
142
*Create Requirement*
143
Активно для всех требований, включая узел Requirements.
144
Создается требование внутри того требования, на котором открывалось контекстное меню. Имя задается автоматически. Имя - это число: если на этом уровне иерархии других требований нет - это 01, если требования уже есть, то это последний номер (максимальный) + 1. У только что созданного требования нет location''ов.
145
146
*Remove Requirement*
147 35 Viktoria Kopach
Удаление выделенного требования. Неактивно для корневого узла Requirements (этот узел удалить нельзя). Возникает окно для подтверждения удаления, содержащее кнопки OK и Cancel. При нажатии Cancel окно подтверждения просто закрывается, требование не удаляется, никаких изменений не происходит. При нажатии OK  требование удаляется. Все location''ы, входящие только в него, удаляются, их разметка удаляется.
148 36 Alexey Khoroshilov
149
После удаления требования активным элементом в Requality Explorer становится родительский элемент удаленного требования.
150 11 Viktoria Kopach
151
*Generate Report...*
152 14 Viktoria Kopach
Генерация отчета. Появляется окно для настройки отчета. Оно содержит три поля (к двум из которых прилагаются кнопки Browse...):
153 13 Viktoria Kopach
* *Root requirement* -  поле, в котором указывается узел, который будет корневым в отчете (в отчет попадет только этот узел и его "потомки"). По умолчанию указывается тот узел, на котором было открыто контекстное меню. Поле не редактируемое. Его содержимое можно менять только с помощью кнопки *Browse...*, которая расположена рядом. При нажатии этой кнопки открывается окно выбора требования, стандартное для Requality. Оно содержит все дерево требований текущего проекта. Окно выбора требования содержит кнопки create new, Cancel и OK. create new  и OK сначала неактивны, активируются после выбора одного из требований или основной папки проекта. Кнопка create new позволяет создать новое требование, открывает окно для задания его идентификатора. По кнопке Cancel окно выбора требования закрывается, в окне настроек отчета изменений не происходит. По кнопке OK окно выбора требования закрывается, в окне настроек отчета в поле Root requirement устанавливается выбранный узел.
154
* *Template* - поле-выпадающий список, не редактируется. В нем можно выбрать тип шаблона для отчета.
155
* *Save to*: - редактируемое поля для указания пути, по которому создается отчет. Путь можно ввести от руки или выбрать с помощью кнопки *Browse...* рядом с этим полем. По этой кнопке открывается стандартное окно обзора папок.
156 12 Viktoria Kopach
157 13 Viktoria Kopach
Кроме того в окне настройки отчета есть кнопки *OK* и *Cancel*. При нажатии Cancel окно настройки отчета закрывается, отчет не генерируется. При нажатии OK окно настройки отчета закрывается, по указанному пути генерируется отчет, в который включены только выбранный корневой узел и его потомки.