Perspective » History » Version 55
Viktoria Kopach, 03/09/2011 05:34 PM
1 | 17 | Alexey Demakov | h1. Перспектива Requality |
---|---|---|---|
2 | 18 | Alexey Demakov | |
3 | 17 | Alexey Demakov | Перспектива Requality содержит: |
4 | # Requality Explorer view, в котором отображается дерево проектов и их содержимое (документы, требования и т.п.); |
||
5 | # Properties view, в котором отображаются подробности отдельных элементов проекта; |
||
6 | # Document Markup editor, в котором осуществляется редактирование и просмотр разметки документа; |
||
7 | # Document Markup Outline view, в котором отображается структура разметки документа. |
||
8 | |||
9 | 41 | Viktoria Kopach | h2. 1. Requality Explorer view |
10 | 6 | Viktoria Kopach | |
11 | Requality Explorer содержит все проекты, что и PackageExplorer, но развернуть можно только проекты типа Requality. |
||
12 | В Requality-проекте есть две папки: Documents и Requirements (содержащие, соответственно, документы с требованиями и сами требования). |
||
13 | 48 | Viktoria Kopach | |
14 | 47 | Viktoria Kopach | *Documents* |
15 | При двойном клике на документ он открывается в редакторе Markup editor. |
||
16 | Контекстное меню папки Documents содержит пункты: |
||
17 | 49 | Viktoria Kopach | * Import Document - импортирование документа |
18 | * Create Folder - создается папка внутри текущей папки. |
||
19 | 47 | Viktoria Kopach | |
20 | Контекстное меню документов содержит пункты: |
||
21 | 49 | Viktoria Kopach | * Create Folder - создается папка на уровне документа в той же папке. |
22 | * Remove Document - документ удаляется. Что происходит с location''ами и требованиями, у которых location''ы только в этом документе? |
||
23 | 47 | Viktoria Kopach | * Update Document |
24 | 49 | Viktoria Kopach | * HTML Headers Document Processor - создается требование для каждого тега <h#>...</h#>. |
25 | 47 | Viktoria Kopach | При выборе в контекстном меню документа пункта HTML Headers Document Processor должно появиться окно с прогресс-баром, показывающее степень выполнения процесса. По завершении должно появиться окно, сообщающее об успешности выполнения и количестве созданных требований (если ни одного, то 0) |
26 | |||
27 | *Requirements* |
||
28 | 19 | Alexey Demakov | При *двойном клике* на требование: |
29 | # требование становится выделенным; |
||
30 | # если для документа первого location требования Document markup editor ещё не открыт, он открывается; |
||
31 | 23 | Alexey Demakov | # вкладка с указанным Document markup editor становится видимой; |
32 | 20 | Alexey Demakov | # в Outline view первый location требования становится выделенным (следующие два пункта выполняются при любом изменении выделения в Outline view); |
33 | 19 | Alexey Demakov | # документ в указанном Document markup editor перематывается так, чтобы вверху видимой области редактора оказался текст первого location требования; |
34 | 22 | Alexey Demakov | # текст этого location специально подсвечивается; |
35 | 23 | Alexey Demakov | # если для выделенного требования есть pinned Properties view, вкладка с ним становится видимой. Иначе видимой становится вкладка с одними из unpinned Properties view, если такого нет, оно открывается. |
36 | 1 | Alexey Demakov | # подробности выделенного требования отображаются во всех pinned Properties view для него и во всех unpinned Properties View; |
37 | |||
38 | При *выборе требования (одинарный клик, переключение стрелочками)*: |
||
39 | # требование становится выделенным. |
||
40 | # подробности выделенного требования отображаются во всех pinned Properties view для него и во всех unpinned Properties View; |
||
41 | 49 | Viktoria Kopach | |
42 | Контекстное меню требований содержит пункты: |
||
43 | * Add Requirement... |
||
44 | * Remove Requirement |
||
45 | * Generate Report |
||
46 | 22 | Alexey Demakov | |
47 | 41 | Viktoria Kopach | h2. 2. Properties view (Редактор требований). |
48 | 1 | Alexey Demakov | |
49 | 2 | Viktoria Kopach | Properties view содержит вкладки: |
50 | * Main |
||
51 | ** Id |
||
52 | ** Name |
||
53 | ** Attributes |
||
54 | 3 | Viktoria Kopach | * Advanced |
55 | ** Predicate (возможно стоит его перенести на вкладку Main? Или он может быть слишком большой?) |
||
56 | ** Base requirement |
||
57 | * Descriptions |
||
58 | 1 | Alexey Demakov | ** Alternative description |
59 | 50 | Viktoria Kopach | ** список location''ов, отсортированный по документам. |
60 | 26 | Alexey Demakov | * Source |
61 | ** json |
||
62 | 1 | Alexey Demakov | |
63 | 44 | Viktoria Kopach | *Меню (view menu)* |
64 | * *Во view menu пункт Pin to Selection*. |
||
65 | * При выборе этого пункта меню нажимается кнопка Pin (это второй способ ее нажатия). Кнопка Pin выглядит нажатой. Этот пункт меню выделяется как нажатый. При повторном нажатии Pin отжимается и выделение пункта меню снимается. Кнопка Pin отжата. Все происходящие изменения такие же, как при нажатии кнопки Pin. |
||
66 | 1 | Alexey Demakov | |
67 | 44 | Viktoria Kopach | * *Во view menu пункт New Properties View* |
68 | * При выборе этого пункта открывается новая закладка с редактором того же требования и не нажатой кнопкой Pin. (Что будет, если в редакторе внести изменения, не сохранить и выбрать это меню?) |
||
69 | 43 | Viktoria Kopach | |
70 | 44 | Viktoria Kopach | * *Кнопка «Канцелярская кнопка» (Pin) для закрепления Properties view* |
71 | 45 | Viktoria Kopach | * Если кнопка Pin выглядит нажатой, то это Properties View отображает детали фиксированного требования, которое было выделенным в момент нажатия кнопки. Если кнопка Pin выглядит отжатой, то в этом Properties View отображаются детали выделенного требования. При изменении выделения меняется и отображаемое требование. |
72 | |||
73 | *Вкладка Main* |
||
74 | 1 | Alexey Demakov | Поля Id и Name имеют возможность редактирования. Изначально в поле Name стоит такое же значение, как и Id. |
75 | 50 | Viktoria Kopach | В таблице Attributes при двойном клике на атрибут можно его редактировать. Около таблицы есть кнопки Add (позволяет добавить новый атрибут) и Remove (позволяет удалить атрибут, который в данный момент выделен). Remove активна только тогда, когда выделен один из атрибутов в таблице. |
76 | 44 | Viktoria Kopach | |
77 | 1 | Alexey Demakov | *Вкладка Advanced* |
78 | 50 | Viktoria Kopach | Поле предиката может редактироваться. |
79 | Около таблицы Base Requirements есть кнопки Add (позволяет добавить новое базовое требование) и Remove (позволяет удалить базовое требование, которое в данный момент выделено). Remove активна только тогда, когда выделено одно из требований в таблице. |
||
80 | 43 | Viktoria Kopach | При нажатии на базовое требование (специальная кнопка? Ссылка?) происходит переход к редактору базового требования (если текущий редактор не закреплен кнопкой — см.ниже). |
81 | 55 | Viktoria Kopach | В качестве базового требования для текущего требования нельзя добавить само текущее требование. В реализации нужно либо исключить возможность выбрать само текущее требование (например, не отображать его в списке требований), либо при попытке нажать ОК в выборе требования выводить сообщение о недопустимости такого действия. |
82 | 4 | Viktoria Kopach | |
83 | 44 | Viktoria Kopach | -*Выбор другого документа* |
84 | Если на вкладке Documents нажать документ, который еще не был открыт, то он откроется на первом указанном в редакторе требования location, находящемся в этом документе (location пролистывается в верх видимой области и выделяется цветом). Этот же location выделяется в Outline.- |
||
85 | 1 | Alexey Demakov | |
86 | 46 | Viktoria Kopach | *Вкладка Description* |
87 | 38 | Viktoria Kopach | В Description находится список имен всех location''ов этого требования (из всех документов), отсортированный по документам (???). Имена location''ов выглядят так же, как и в outline: |
88 | user-visible-name(req) - это |
||
89 | * name, если name не пустое |
||
90 | * user-visible-name(req.parent).id, иначе. |
||
91 | |||
92 | При клике на имя location''а документ пролистывается на этот location. Если документ с этим location''ом не был еще открыт, то он открывается. Происходят все соответствующие переключения в Outline и Requality Explorer. |
||
93 | |||
94 | 27 | Alexey Demakov | *Кнопка переключения между location''ами* |
95 | 1 | Alexey Demakov | В редакторе требования есть кнопка для переключения на следующий и предыдущий location. Порядок location''ов соответствует их порядку в редакторе требования. При переключении на другой location этот location выделяется в Outline и редакторе документа (пролистывается в верх видимой области и выделяется цветом). |
96 | 51 | Viktoria Kopach | |
97 | 54 | Viktoria Kopach | *Внесение изменений на вкладке, кнопка Save* |
98 | Кнопка Save есть во вкладках Main, Advanced и Description. Она неактивны изначально. Становится активна при редактировании информации на ее вкладке. При нажатии сохраняет внесенные изменения, после чего становится неактивной (до внесения новых изменений). |
||
99 | При внесении изменений на вкладке в ее заголовке появляется значок "*" (звездочка). Исчезает после сохранения изменений. Если в окне Properties на одной из вкладок внести изменения, не сохранить и переключиться на другую вкладку, должно появляться окно с предупреждением о том, что есть несохраненные изменения, и предложением их сохранить. |
||
100 | 1 | Alexey Demakov | |
101 | 42 | Viktoria Kopach | h2. 3. Document Markup editor (Редактор документа) |
102 | 41 | Viktoria Kopach | |
103 | 53 | Viktoria Kopach | Это окно-браузер с текстом документа. В нем размечаются требования. Редактировать текст нельзя. |
104 | *Выделение требований из окна Document Markup editor.* |
||
105 | Выделить часть текста, в контекстном меню выбрать Add to requirement... Появляется окно Requirement selection со списком уже существующих требований. |
||
106 | +Окно Requirement selection.+ |
||
107 | Позволяет выбрать существующее требование для добавления в него location''а или создать новое. Имеет кнопки create new, OK и Cancel. Если одно из требований (или папка требований) выбрано, то все три кнопки активны, иначе активна только кнопка Cancel. Новое требование создается внутри выбранного требования. |
||
108 | При нажатии create new открывается окно редактора идентификатора, в котором есть строка для ввода идентификатора нового требования и кнопки OK и Cancel (обе активные). После ввода Id и нажатия OK в окне выбора требования в дереве требований появляется новое требование с введенным Id, расположенное внутри требования, которое было выбрано; новое требование теперь выделено. Если Id не было введено (поле осталось пустым), при нажатии OK появляется предупреждение о том, что Id не может быть пустым. Если требование с таким Id уже существует внутри узла выбранного требования, появляется предупреждение о том, что требование с таким Id уже есть. |
||
109 | При нажатии OK в окне выбора требования окно закрывается, а location добавляется к выбранному требованию. |
||
110 | Если этот location не был ранее выделен, то он маркируется выделением. |
||
111 | |||
112 | *В контекстном меню есть пункт Show identifiers.* При выборе этого пункта над всеми location''ами появляются всплывающие подсказки с их Id (или именами?). В контекстном меню этот пункт выделяется галочкой, как выбранный. При снятии галочки всплывающие подсказки исчезают. |
||
113 | Если Show identifiers не выбран, то при наведении курсора на требование возникает всплывающая подсказка с его именем. |
||
114 | |||
115 | *В контекстном меню есть пункт Show version.* При его выборе возникает окно с информацией о версии используемого браузера. |
||
116 | 41 | Viktoria Kopach | |
117 | 42 | Viktoria Kopach | h2. 4. Document Markup Outline view |
118 | 36 | Viktoria Kopach | |
119 | 34 | Viktoria Kopach | +Outline - плоский вид+ |
120 | 36 | Viktoria Kopach | |
121 | 34 | Viktoria Kopach | В Outline должен быть список location''ов в порядке их присутствия в html документе. |
122 | 1 | Alexey Demakov | |
123 | 34 | Viktoria Kopach | Каждый location отображается следующим образом: |
124 | 40 | Viktoria Kopach | # Если location соответствует ноль требований в базе, то отображается текст "orphan location" красным жирным шрифтом. |
125 | # Если location соответствует одно требование, то user-visible-name(req). |
||
126 | # Если location соответствует несколько требований, то user-visible-name(req1),user-visible-name(req2),user-visible-name(req3). |
||
127 | 1 | Alexey Demakov | |
128 | Если в данном документе у одного требования несколько location''ов, то в тексте выше user-visible-name(req) заменяется на user-visible-name(req)#i, где i - порядковый номер location''а среди всех location''ов данного требования в данном документе. |
||
129 | |||
130 | 40 | Viktoria Kopach | Определение user-visible-name(req) следующее: |
131 | * name, если name не пустое |
||
132 | * user-visible-name(req.parent).id, иначе |
||
133 | 34 | Viktoria Kopach | |
134 | Кроме того, Outline должет быть синхронизирован с Document''ом в том смысле, что |
||
135 | 40 | Viktoria Kopach | # всегда при событии приводящем к промотке документа на определенный location, этот location должен выделяться в Outline. |
136 | # при выделении location в Outline необходимо проматывать документ к этому location. |
||
137 | 1 | Alexey Demakov | |
138 | 36 | Viktoria Kopach | -(Зачеркнуто, т.к. неактуально, но может понадобиться потом)- |
139 | 35 | Viktoria Kopach | -В outline находится список всех location''ов. Список может быть в двух форматах:- |
140 | * -список location''ов в порядке их нахождения в документе (в текущем открытом документе или во всех документах?)- |
||
141 | * -список location''ов, сгруппированных по требованиям (требования - это узлы, раскрывающиеся в списки location''ов). Внутри группы location''ы упорядочены в порядке нахождения в документе. - надо разбить на два: в одном все location''ы только из текущего документа, в другом - все location''ы, принадлежащие требованиям, которые есть в этом документе (включая location''ы из других документов).- |
||
142 | 31 | Viktoria Kopach | |
143 | 30 | Viktoria Kopach | При выборе одного из location''ов: |
144 | # документ пролистывается так, чтобы это location оказалось вверху видимой области документа |
||
145 | 37 | Viktoria Kopach | # текст location''а в документе размечается выделением. |
146 | 30 | Viktoria Kopach | # если документ был закрыт, то он сначала открывается. - ? |
147 | 15 | Viktoria Kopach | При этом |
148 | 32 | Viktoria Kopach | # если выбирается location, принадлежащий документу, редактор которого открыт, но неактивен, этот редактор становится активен и выполняются все вышеперечисленные пункты. |
149 | 15 | Viktoria Kopach | # -если выбирается location, принадлежащий документу, редактор которого не открыт, этот редактор открывается и выполняются все вышеперечисленные пункты.- |
150 | 16 | Viktoria Kopach | # если выбирается location, принадлежащий другому требованию (которое сейчас не выбрано), это требование выделяется в Requality Explorer''е и открывается в Properties view и выполняются все вышеперечисленные пункты. |