Project

General

Profile

Requirements » History » Version 18

Александр Шитнев, 03/16/2012 08:39 AM

1 17 Никита Давыдовский
h1. Список требований
2 1 Никита Артемов
3 16 Никита Давыдовский
{{TOC}}
4
5 1 Никита Артемов
h2. (URE) Работа с событиями
6
7 16 Никита Давыдовский
h3. (URE1) Создание события
8 1 Никита Артемов
9
Пользователь должен иметь возможность создавать новое событие и синхронизировать его с сервисом.
10
11 16 Никита Давыдовский
h3. (URE2) Редактирование события
12 1 Никита Артемов
13
Пользователь должен иметь возможность редактировать информацию о событии (если у него есть на это права) и синхронизировать изменения с сервисом.
14
15 16 Никита Давыдовский
h3. (URE3) Удаление события
16 3 Никита Давыдовский
17 1 Никита Артемов
Пользователь должен иметь возможность удаления(отммены) события, как из локального хранилища, так и с сервиса(если у него есть на это права).
18
19 16 Никита Давыдовский
h3. (URE4) Получение списка событий
20 1 Никита Артемов
21
Пользователь должен иметь возможность получать список событий из сервисов.
22
23 16 Никита Давыдовский
h3. (URE5) Поиск событий
24 3 Никита Давыдовский
25 1 Никита Артемов
Пользователь должен иметь возможность искать события в сервисах по средствам поискового запроса.
26
27 16 Никита Давыдовский
h3. (URE6) Хранение информации о событиях в кэше
28 1 Никита Артемов
29
Пользователь должен иметь возможность получать напоминания от приложения о грядущем событии (в соответствии с настройками).
30
31
h2. (URG) Работа с геолокацией
32
33 16 Никита Давыдовский
h3. (URG1) Получение списка мест
34 1 Никита Артемов
35
Пользователь должен иметь возможность получить список мест находящихся поблизости от него. Местоположение пользователя должно определяться посредством GPS.
36
37 16 Никита Давыдовский
h3. (URG2) Отметка на месте
38 3 Никита Давыдовский
39 1 Никита Артемов
Пользователь должен иметь возможность отметиться на найденном месте и оставить короткий комментарий. 
40
41 16 Никита Давыдовский
h3. (URG3) Создание нового места
42 3 Никита Давыдовский
43 1 Никита Артемов
Пользователь должен иметь возможность создать место, если ему не удалось его найти его в (URG1). Также пользователь должен иметь возможность отметиться на созданном месте.
44
45 16 Никита Давыдовский
h3. (URG4) Получение списка отметок
46 3 Никита Давыдовский
47 1 Никита Артемов
Пользователь должен иметь возможность получить список людей, отметившихся в местах поблизости. Также пользователь должен иметь возможность получить список последних отметок друзей.
48
49 2 Никита Артемов
h1. Предметная область
50
51 1 Никита Артемов
!Место.jpg! !Событие.jpg!
52
53 3 Никита Давыдовский
Модуль Places должен будет предоставлять методы для работы с геолокационными данными из социальных сетей(ВКонтакте, Facebook). Приложение позволяет пользователю производить поиск мест и людей поблизости. Также можно будет создать новое место или отметиться на одном из уже созданных. Отмечаясь, можно оставить короткий комментарий или отзыв о месте. Это дает пользователям возможность смотреть, как люди отзываются о некотором месте, будь то кафе или ресторан (Сущность "место" представлена на рисунке 1).
54 1 Никита Артемов
55 3 Никита Давыдовский
Модуль Events будет обеспечивать возможности для работы с событиями в социальных сетях. Под событиями здесь понимаются встречи(Vkontakte), мероприятия/events(Facebook), также планируется синхронизация с событиями из Google Calendar.
56 1 Никита Артемов
С помощью этого модуля будет возможно: получать список мероприятий(событий) в которых участвует пользователь и отображать их на календаре, создавать новые, редактировать уже существующие и удалять ненужные события. Также планируется сделать отображение дней рождений друзей пользователя (Сущность "событие" представлена на рисунке 2).
57
58 15 Александр Дремин
h1. Работа с геолокацией
59
60
h2. Поиск мест и отметка
61
62 4 Александр Дремин
# появляется форма "SearchPlaces form"
63
# пользователь вводит в поле для ввода поисковый запрос
64
# пользователь нажимает "Search"
65
# появляется список найденных мест
66
# пользователь нажимает на элемент одного из найденных мест
67
# появляется форма "CheckinsOfPlace Form", где отображается подробная информация о месте и список отметок
68
# пользователь нажимает кнопку "Checkin"
69 1 Никита Артемов
# появляется форма "CheckinDialog form"
70
# пользователь вводит комментарий к отметке
71
# пользователь нажимает "OK" для отправки или "Cancel" для закрытия формы
72 15 Александр Дремин
73
h2. Просмотр отметок
74 4 Александр Дремин
75
# появляется форма "Checkins form"
76
# пользователь нажимает на вкладку "Friends"
77 1 Никита Артемов
# появляется список последних отметок друзей
78 4 Александр Дремин
# пользователь нажимает на вкладку "Nearby"
79
# появляется список отметок сделанных людьми поблизости
80
81 8 Александр Дремин
h2.  Отображение отметок или мест на карте
82 4 Александр Дремин
83 1 Никита Артемов
# на странице со списками мест или отметок пользователь нажимает "On Map"
84 4 Александр Дремин
# появляется форма "Map form"
85
# на карте отображаются отметки или места
86
# пользователь нажимает "Cancel" для выхода
87
88 13 Александр Дремин
h1. Работа с событиями и встречами
89
90 14 Александр Дремин
h2. Поиск событий (URE5)
91 4 Александр Дремин
92
# появляется форма "SearchEvents form"
93
# пользователь вводит в поле для ввода поисковый запрос
94
# пользователь нажимает "Search"
95
# появляется список найденных событий
96
# пользователь нажимает на элемент одного из найденных событий
97
# появляется форма "Event Form", где отображается подробная информация о событии
98
# пользователь нажимает кнопку "Attend", "Maybe" или "Decline", тем самым заявив о своем участии/возможном участии/не участии в мероприятии(в случае если мероприятие открыто для участия)
99
# пользователь может оставить комментарий на стене события
100 1 Никита Артемов
# пользователь может нажать на кнопку пригласить друзей
101 4 Александр Дремин
# чтобы перейти обратно к списку событий пользователь нажимает кнопку "Back"
102
103 6 Александр Дремин
h2. Получение списка событий (URE4)
104 4 Александр Дремин
105 5 Александр Дремин
# пользователь нажимает кнопку "Update" на главной странице для обновления(загрузке при первом запуске) списка событий
106 4 Александр Дремин
107 8 Александр Дремин
h2.  Получение информации о событии
108 4 Александр Дремин
109
# в общем списке событий пользователь щелкает на одно из них
110
# появляется форма отображения информации о событии
111
# пользователь может нажать кнопку "Edit event" для редактирования события
112
# в этом случае появляется форма "EditEvent form", где пользователь может редактировать поля события и статус своего участия
113
# пользователь нажимает кнопки "Save" ил "Cancel" 
114
# пользователь может нажать на кнопку "Invate friends" для приглашение пользователя(ей)
115
# чтобы перейти обратно к списку событий пользователь нажимает кнопку "Back"
116 18 Александр Шитнев
117
h1. Функциональные требования
118
119
h2. Системные функции
120
121
h3. Ядро
122
123
|_.ID |_.Описание |_.Приоритет |_.Аттестация |
124
|SR.FSYSA.01|+Функция+ 
125
 Получить данные от сервиса 
126
+Описание+ 
127
 Посылка запроса через библиотеку текущего сервиса, получение ответа 
128
+Предусловие+ 
129
 Правильно заданы параметры запроса 
130
+Постусловие+ 
131
 Ответ от сервиса или уведомление об ошибке 
132
+Входные данные+ 
133
 идентификатор запроса, идентификатор драйвера 
134
+Выходные данные+ 
135
 сигнал для менеджеру событий, идентификатор ответа, ответ в формате xml|Высокий||
136
|SR.FSYSA.02|+Функция+ 
137
 Создание аккаунта 
138
+Описание+ 
139
 Создание аккаунта в приложении для доступа к сервисам 
140
+Предусловие+ 
141
 Установлены библиотеки сервисов 
142
+Постусловие+ 
143
 Учетная запись в программе 
144
+Входные данные+ 
145
 идентификатор сервиса 
146
+Выходные данные+ 
147
 сообщение об ошибке или вывод списка уже созданных аккаунтов|Высокий||
148
|SR.FUSRP.03|+Функция+ 
149
 Настройки сети 
150
+Описание+ 
151
 Изменение настроек прокси 
152
+Предусловие+ 
153
 У приложения есть доступ к сети 
154
+Постусловие+ 
155
 нет 
156
+Входные данные+ 
157
 тип прокси, хост, порт 
158
+Выходные данные+ 
159
 конфигурация приложения|Высокий||
160
|SR.FUSRP.04|+Функция+ 
161
 Выбор сервиса 
162
+Описание+ 
163
 Пользователь выбирает сервис перед запросом(поиск места, отметка) 
164
+Предусловие+ 
165
 В приложение уже зарегистрированы аккаунты сервисов 
166
+Постусловие+ 
167
 Сервис выбран для отправки следующего запроса 
168
+Входные данные+ 
169
 идентификатор аккаунта 
170
+Выходные данные+ 
171
 сообщение о статусе выполнения|Средний||
172
173
h2. Пользовательские функции
174
175
h3. Функции работы с местами
176
177
|_.ID |_.Описание |_.Приоритет |_.Аттестация |
178
|SR.FUSRP.01|+Функция+ 
179
 Поиск места по названию 
180
+Описание+ 
181
 Получение списка мест 
182
+Предусловие+ 
183
 Пользователь прошел авторизацию 
184
+Постусловие+ 
185
 нет 
186
+Входные данные+ 
187
 строка поискового запроса (если не указано - поиск ближайших мест), координаты 
188
+Выходные данные+ 
189
 список найденных мест|Высокий|Пользователь вводит в поле для ввода название места, нажимает на кнопку. Отображается список найденных мест или (если не найдено) сообщение о том что место не найдено.|
190
|SR.FUSRP.02|+Функция+ 
191
 Получение списка отметок 
192
+Описание+ 
193
 Пользователь получает список людей, кто уже отметился на конкретном месте или поблизости. 
194
+Предусловие+ 
195
 Если поиск отметок по месту, то должен быть получен список мест 
196
+Постусловие+ 
197
 нет 
198
+Входные данные+ 
199
 координаты, идентификатор места или ничего(для получения ленты обновления отметок друзей) 
200
+Выходные данные+ 
201
 список отметок пользователей|Высокий|Пользователь нажимает на кнопку получения отметок. Отображается список полученных отметок или (если не найдено) сообщение о том что отметки не найдены.|
202
|SR.FUSRP.03|+Функция+ 
203
 Создание нового места 
204
+Описание+ 
205
 Создание нового места в базе сервиса 
206
+Предусловие+ 
207
 Пользователь не нашел нужное место, чтобы отметиться 
208
+Постусловие+ 
209
 нет 
210
+Входные данные+ 
211
 Название места, координаты, тип места, адрес места, свой комментарий (опционально) 
212
+Выходные данные+ 
213
 Сообщение об успехе или ошибке|Высокий|Пользователь заполняет поля нового места. Выводится сообщение об успехе или (если ошибка с сетью или не заполнены обязательные поля) сообщение об ошибке.|
214
|SR.FUSRP.04|+Функция+ 
215
 Отметка 
216
+Описание+ 
217
 Регистрация на месте, что вы там были или просто оставление комментария о месте 
218
+Предусловие+ 
219
 Пользователь получил список мест 
220
+Постусловие+ 
221
 нет 
222
+Входные данные+ 
223
 идентификатор места, свой комментарий (опционально) 
224
+Выходные данные+ 
225
 Сообщение об успехе или ошибке|Высокий|Пользователь вводит комментарий к отметке (или не вводит). Выводится сообщение об ошибке или успехе.|
226
227
h3. Функции работы с событиями
228
229
|_.ID |_.Описание |_.Приоритет |_.Аттестация |
230
|SR.FUSRE.01|+Функция+ 
231
 Получение всех мероприятий 
232
+Описание+ 
233
 Получение списка событий 
234
+Предусловие+ 
235
 Пользователь прошел авторизацию 
236
+Постусловие+ 
237
 нет 
238
+Входные данные+ 
239
 id пользователя
240
временной интервал (опционально) 
241
+Выходные данные+ 
242
 список событий|Высокий|При запуске приложения список всех событий получается(обновляется) автоматически. Также пользователь может нажать кнопку "Update" для принудительного обновления списка.|
243
|SR.FUSRE.02|+Функция+ 
244
 Создание нового события 
245
+Описание+ 
246
 Создание своего события и добавление его к общему списку 
247
+Предусловие+ 
248
 Пользователь прошел авторизацию (со специальными правами) 
249
+Постусловие+ 
250
 нет 
251
+Входные данные+ 
252
 обязательно: название, время начала, время завершения необязательно: описание, место проведения, приватность 
253
+Выходные данные+ 
254
 id созданного события|Высокий|Пользователь заполняет поля нового события. Выводится сообщение об успехе или (если ошибка с сетью или не заполнены обязательные поля или др.) сообщение об ошибке.|
255
|SR.FUSRE.03|+Функция+ 
256
 Редактирование события 
257
+Описание+ 
258
 Редактирование события при наличии прав 
259
+Предусловие+ 
260
 Пользователь прошел авторизацию и имеет права на редактирование 
261
+Постусловие+ 
262
 нет 
263
+Входные данные+ 
264
 (новые): название, время начала, время завершения и тд.(Все опционально) 
265
+Выходные данные+ 
266
 успех, неудача|Высокий|Пользователь нажимает на элемент нужного события в списке, далее в общей форме события нажимает кнопку "Edit", после в форме редактирования вносит в поля изменения и нажимает кнопку "Save", либо "Cancel". Выводится сообщение об успехе или (если ошибка с сетью или др.) сообщение об ошибке.|
267
|SR.FUSRE.04|+Функция+ 
268
 Удаление события 
269
+Описание+ 
270
 Удаление события при наличии прав 
271
+Предусловие+ 
272
 Пользователь прошел авторизацию и имеет права на удаление(те же что и для создания) 
273
+Постусловие+ 
274
 нет 
275
+Входные данные+ 
276
 id события 
277
+Выходные данные+ 
278
 успех, неудача|Высокий|Пользователь нажимает на элемент нужного события в списке, далее в общей форме события нажимает кнопку "Cancel". Выводится сообщение об успехе или (если ошибка с сетью или др.) сообщение об ошибке.|
279
|SR.FUSRE.05|+Функция+ 
280
 Установка статуса 
281
+Описание+ 
282
 Установка(изменение) своего статуса участия в мероприятии 
283
+Предусловие+ 
284
 Пользователь прошел авторизацию 
285
+Постусловие+ 
286
 нет 
287
+Входные данные+ 
288
 id события, статус(declined, maybe, attending) 
289
+Выходные данные+ 
290
 успех, неудача|Высокий|Пользователь нажимает на элемент нужного события в списке, далее в общей форме события нажимает кнопку "Change RSVP". Открывается форма где пользователь устанавливает статус и нажимает кнопку "Save", либо "Cancel". Выводится сообщение об успехе или (если ошибка с сетью или др.) сообщение об ошибке.|
291
|SR.FUSRE.06|+Функция+ 
292
 Получение списка участников 
293
+Описание+ 
294
 Получение списка содержащего: id пользователей и их статусы, относительно данного события 
295
+Предусловие+ 
296
 Пользователь прошел авторизацию 
297
+Постусловие+ 
298
 нет 
299
+Входные данные+ 
300
 id события 
301
+Выходные данные+ 
302
 список участников|Высокий|Пользователь нажимает на элемент нужного события в списке, далее в общей форме события нажимает кнопку "Members". Выводится список участников, либо сообщение "No memebers", либо сообщение об ошибке (если ошибка с сетью или др.).|
303
|SR.FUSRE.07|+Функция+ 
304
 Поиск событий по названию 
305
+Описание+ 
306
 Получение списка событий, удовлетворяющих поисковому запросу 
307
+Предусловие+ 
308
 Пользователь прошел авторизацию 
309
+Постусловие+ 
310
 нет 
311
+Входные данные+ 
312
 поисковая строка 
313
+Выходные данные+ 
314
 список событий|Средний|Пользователь вводит в поле для ввода название события, нажимает на кнопку. Отображается список найденных событий или (если не найдено) сообщение о том что событий не найдено.|
315
|SR.FUSRE.08|+Функция+ 
316
 Приглашение пользователей 
317
+Описание+ 
318
 Приглашение пользователей принять участие в мероприятии 
319
+Предусловие+ 
320
 Пользователь прошел авторизацию 
321
+Постусловие+ 
322
 нет 
323
+Входные данные+ 
324
 id события, список id пользователей 
325
+Выходные данные+ 
326
 успех, неудача|Средний|Пользователь нажимает на элемент нужного события в списке, далее в общей форме события нажимает кнопку "Invate ". В появившейся форме вводит имя пользователя в поле ввода и нажимает "OK". Выводится сообщение об успехе или (если ошибка с сетью, проблемы приватностью, пользователь не найден) сообщение об ошибке.|