5095b8c5e53340fe146c3fc8296d171f22495c96
[PFCLatex/.git] / capitulo4 / capitulo4.tex
1 \chapter{Análisis de las aplicaciones Web y Android}
2
3 A lo largo de esta primera sección se intentará explicar de forma detallada todos los requisitos y los casos de uso de las dos aplicaciones de las que se compone este proyecto fin de carrera: la aplicación web y la aplicación basada en Android.
4
5 \section{Análisis de requisitos}
6
7 Todo desarrollo software comienza con la toma de requisitos y el análisis de la aplicación por parte de los \emph{analistas de software}. A lo largo del desarrollo, la especificación de los requisitos suele variar bien porque el usuario o cliente final cambia de idea o bien por motivos técnicos relacionados con la implementación de la funcionalidad inicialmente solicitada.
8
9 En este apartado se especificarán los principales requisitos de la aplicación Web y la basada en Android. Para la extracción de requisitos existen diversas técnicas, en el caso de este proyecto el cliente y desarrollador son la misma persona por tanto no es necesario emplear ninguna técnica en particular.
10
11 Se se usará un formato tabular para la formulación de los requisitos software. Los campos de los que se compondrán las tablas serán los siguientes:
12
13 \begin{itemize}
14     \item \textbf{Título de la tabla}: nombre con el cual se identifica el requisito.
15     \item \textbf{Código}: identificador único del requisito.
16     \item \textbf{Tipo}: los tipos funcionales, no funcionales y de usabilidad serán descritos en la siguiente sección.
17     \item \textbf{Descripción}: como su nombre indica es la descripción breve y detallada del requisito en sí mismo.
18     \item \textbf{Prioridad}: puede ser alta, media o baja y define la prioridad con la cual un requisito en particular debe ser cumplido durante el desarrollo del software. 
19 \end{itemize}
20
21 \subsection{Requisitos software}
22
23 La fase de especificación de requisitos software (SRS por sus siglas en Inglés) está diseñada para documentar y describir el comportamiento de un sistema que se desea desarrollar. Supone un acuerdo entre el usuario y el desarrollador respecto a la especificación del producto software solicitado~\cite{C4:Specifications}. El principal propósito de la especificación de requisitos software consiste en proporcionar una completa y clara descripción de los requisitos solicitados por el usuario~\cite{C4:Specifications}, dicha descripción puede ser usada como referencia en etapas posteriores del desarrollo del software solicitado.
24
25 Identificaremos tres tipos de requisitos:
26
27 \begin{itemize}
28     \item Requisitos funcionales: suponen una funcionalidad propia del sistema software que se debe desarrollar.
29     \item Requisitos no funcionales: suelen estar relacionados con funcionalidades del software a implementar. No son una funcionalidad en sí mismos. Por ejemplo, requisitos relacionados con el rendimiento o con algún tipo de restricción.
30     \item Requisitos de usabilidad: relacionados con cómo el usuario interactúa con las aplicaciones.
31 \end{itemize}
32
33 \subsection{Requisitos software, aplicación Web}
34
35 \subsubsection{Funcionales}
36
37 \captionsetup[table]{list=no}
38
39 \begin{table}[H]
40 \centering
41 \scriptsize
42     \begin{tabularx}{\textwidth}{|l|X|}
43         \hline
44         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Roles de usuario}} \\
45         \hline
46         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-01}} \\
47         \hline
48         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
49         \hline
50         \normalsize\textbf{Descripción} & \normalsize{Se deben definir dos roles para el acceso a la aplicación: por un lado los usuarios tipo empresa pueden generar nuevo contenido y por el otro los usuarios ``normales'' accederán y recibirán en sus teléfonos dicho contenido. Estos últimos solo pueden asociarse a categorías de las cuales recibirán notificaciones en sus dispositivos móviles.} \\
51         \hline
52         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
53         \hline
54     \end{tabularx}
55     \caption{\emph{Tabla Requisito Aplicación Web 1.}}
56     \label{tab:requisitoSW1}
57 \end{table}
58
59 \begin{table}[H]
60 \centering
61 \scriptsize
62     \begin{tabularx}{\textwidth}{|l|X|}
63         \hline
64         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Registro nuevos usuarios}} \\
65         \hline
66         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-02}} \\
67         \hline
68         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
69         \hline
70         \normalsize\textbf{Descripción} & \normalsize{Se deben poder registrar nuevos usuarios de cualquier rol de los definidos en el RSW-01.} \\
71         \hline
72         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Media}} \\
73         \hline
74     \end{tabularx}
75     \caption{\emph{Tabla Requisito Aplicación Web 2.}}
76     \label{tab:requisitoSW2}
77 \end{table}
78
79 \begin{table}[H]
80 \centering
81 \scriptsize
82     \begin{tabularx}{\textwidth}{|l|X|}
83         \hline
84         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Debe existir una sección donde se puedan listar los anuncios.}} \\
85         \hline
86         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-03}} \\
87         \hline
88         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
89         \hline
90         \normalsize\textbf{Descripción} & \normalsize{El sistema debe poder listar todos los anuncios creados o asignados a un determinado usuario con rol empresarial.} \\
91         \hline
92         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Media}} \\
93         \hline
94     \end{tabularx}
95     \caption{\emph{Tabla Requisito Aplicación Web 3.}}
96     \label{tab:requisitoSW3}
97 \end{table}
98
99 \begin{table}[H]
100 \centering
101 \scriptsize
102     \begin{tabularx}{\textwidth}{|l|X|}
103         \hline
104         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Edición de anuncios}} \\
105         \hline
106         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-04}} \\
107         \hline
108         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
109         \hline
110         \normalsize\textbf{Descripción} & \normalsize{Se deberá poder editar anuncios ya existentes en el sistema.} \\
111         \hline
112         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Media}} \\
113         \hline
114     \end{tabularx}
115     \caption{\emph{Tabla Requisito Aplicación Web 4.}}
116     \label{tab:requisitoSW4}
117 \end{table}
118
119 \begin{table}[H]
120 \centering
121 \scriptsize
122     \begin{tabularx}{\textwidth}{|l|X|}
123         \hline
124         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Añadir nuevos anuncios}} \\
125         \hline
126         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-05}} \\
127         \hline
128         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
129         \hline
130         \normalsize\textbf{Descripción} & \normalsize{El sistema debe permitir añadir nuevos anuncios.} \\
131         \hline
132         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Media}} \\
133         \hline
134     \end{tabularx}
135     \caption{\emph{Tabla Requisito Aplicación Web 5.}}
136     \label{tab:requisitoSW5}
137 \end{table}
138
139 \begin{table}[H]
140 \centering
141 \scriptsize
142     \begin{tabularx}{\textwidth}{|l|X|}
143         \hline
144         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Asociar anuncios con categorías definidas por una empresa determinada}} \\
145         \hline
146         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-06}} \\
147         \hline
148         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
149         \hline
150         \normalsize\textbf{Descripción} & \normalsize{Los anuncios deben poder asociarse con categorías previamente descritas por el propio usuario con rol empresarial.} \\
151         \hline
152         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Media}} \\
153         \hline
154     \end{tabularx}
155     \caption{\emph{Tabla Requisito Aplicación Web 6.}}
156     \label{tab:requisitoSW6}
157 \end{table}
158
159 \begin{table}[H]
160 \centering
161 \scriptsize
162     \begin{tabularx}{\textwidth}{|l|X|}
163         \hline
164         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Anuncios con textos descriptivos en múltiples idiomas}} \\
165         \hline
166         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-07}} \\
167         \hline
168         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
169         \hline
170         \normalsize\textbf{Descripción} & \normalsize{Los anuncios deben estar ``internacionalizados''. Es decir, el sistema debe admitir más de un tipo de idioma para describir un anuncio. El usuario con rol ``normal'' recibirá el anuncio en el idioma que él o ella elijan.} \\
171         \hline
172         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
173         \hline
174     \end{tabularx}
175     \caption{\emph{Tabla Requisito Aplicación Web 7.}}
176     \label{tab:requisitoSW7}
177 \end{table}
178
179 \begin{table}[H]
180 \centering
181 \scriptsize
182     \begin{tabularx}{\textwidth}{|l|X|}
183         \hline
184         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Geo localizar anuncios}} \\
185         \hline
186         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-08}} \\
187         \hline
188         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
189         \hline
190         \normalsize\textbf{Descripción} & \normalsize{Los anuncios deben poder ser localizados geográficamente mediante coordenadas GPS.} \\
191         \hline
192         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Baja}} \\
193         \hline
194     \end{tabularx}
195     \caption{\emph{Tabla Requisito Aplicación Web 8.}}
196     \label{tab:requisitoSW8}
197 \end{table}
198
199 \begin{table}[H]
200 \centering
201 \scriptsize
202     \begin{tabularx}{\textwidth}{|l|X|}
203         \hline
204         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Ver y editar datos personales}} \\
205         \hline
206         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-09}} \\
207         \hline
208         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
209         \hline
210         \normalsize\textbf{Descripción} & \normalsize{El sistema debe permitir que cualquier usuario con cualquier rol pueda ver y editar sus datos personales.} \\
211         \hline
212         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Baja}} \\
213         \hline
214     \end{tabularx}
215     \caption{\emph{Tabla Requisito Aplicación Web 9.}}
216     \label{tab:requisitoSW9}
217 \end{table}
218
219 \begin{table}[H]
220 \centering
221 \scriptsize
222     \begin{tabularx}{\textwidth}{|l|X|}
223         \hline
224         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Añadir nuevas oficinas o sucursales}} \\
225         \hline
226         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-10}} \\
227         \hline
228         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
229         \hline
230         \normalsize\textbf{Descripción} & \normalsize{Se debe permitir que el usuario con rol empresarial añada nuevas oficinas o sucursales de una determinada empresa.} \\
231         \hline
232         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
233         \hline
234     \end{tabularx}
235     \caption{\emph{Tabla Requisito Aplicación Web 10.}}
236     \label{tab:requisitoSW10}
237 \end{table}
238
239 \begin{table}[H]
240 \centering
241 \scriptsize
242     \begin{tabularx}{\textwidth}{|l|X|}
243         \hline
244         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Edición de los datos de las oficinas y sucursales}} \\
245         \hline
246         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-11}} \\
247         \hline
248         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
249         \hline
250         \normalsize\textbf{Descripción} & \normalsize{Se deberá permitir la edición de los datos de las oficinas o sucursales existentes en el sistema y pertenecientes a un determinado usuario con rol empresarial.} \\
251         \hline
252         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
253         \hline
254     \end{tabularx}
255     \caption{\emph{Tabla Requisito Aplicación Web 11.}}
256     \label{tab:requisitoSW11}
257 \end{table}
258
259 \begin{table}[H]
260 \centering
261 \scriptsize
262     \begin{tabularx}{\textwidth}{|l|X|}
263         \hline
264         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Asociar oficinas y sucursales con anuncios}} \\
265         \hline
266         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-12}} \\
267         \hline
268         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
269         \hline
270         \normalsize\textbf{Descripción} & \normalsize{El sistema debe permitir que las oficinas y sucursales pertenecientes a un determinado usuario con rol empresarial se asocien con anuncios pertenecientes a ese mismo usuario y por tanto a la empresa a la que pertenecen esas oficinas o sucursales.} \\
271         \hline
272         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Media}} \\
273         \hline
274     \end{tabularx}
275     \caption{\emph{Tabla Requisito Aplicación Web 12.}}
276     \label{tab:requisitoSW12}
277 \end{table}
278
279 \begin{table}[H]
280 \centering
281 \scriptsize
282     \begin{tabularx}{\textwidth}{|l|X|}
283         \hline
284         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Las oficinas y sucursales deben estar localizadas geográficamente}} \\
285         \hline
286         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-13}} \\
287         \hline
288         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
289         \hline
290         \normalsize\textbf{Descripción} & \normalsize{Se debe poder localizar geográficamente las oficinas y sucursales.} \\
291         \hline
292         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Media}} \\
293         \hline
294     \end{tabularx}
295     \caption{\emph{Tabla Requisito Aplicación Web 13.}}
296     \label{tab:requisitoSW13}
297 \end{table}
298
299 \begin{table}[H]
300 \centering
301 \scriptsize
302     \begin{tabularx}{\textwidth}{|l|X|}
303         \hline
304         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Añadir nuevas categorías de empresa}} \\
305         \hline
306         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-14}} \\
307         \hline
308         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
309         \hline
310         \normalsize\textbf{Descripción} & \normalsize{El sistema debe permitir añadir nuevas categorías de empresa por parte del usuario con rol empresarial.} \\
311         \hline
312         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
313         \hline
314     \end{tabularx}
315     \caption{\emph{Tabla Requisito Aplicación Web 14.}}
316     \label{tab:requisitoSW14}
317 \end{table}
318
319 \begin{table}[H]
320 \centering
321 \scriptsize
322     \begin{tabularx}{\textwidth}{|l|X|}
323         \hline
324         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Editar categorías de empresa}} \\
325         \hline
326         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-15}} \\
327         \hline
328         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
329         \hline
330         \normalsize\textbf{Descripción} & \normalsize{Se debe permitir la edición de las categorías de empresa que el usuario con rol empresarial haya creado previamente.} \\
331         \hline
332         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
333         \hline
334     \end{tabularx}
335     \caption{\emph{Tabla Requisito Aplicación Web 15.}}
336     \label{tab:requisitoSW15}
337 \end{table}
338
339 \begin{table}[H]
340 \centering
341 \scriptsize
342     \begin{tabularx}{\textwidth}{|l|X|}
343         \hline
344         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Sección para el listado de oficinas y sucursales de una empresa}} \\
345         \hline
346         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-16}} \\
347         \hline
348         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
349         \hline
350         \normalsize\textbf{Descripción} & \normalsize{El sistema debe permitir el listado de las oficinas y sucursales creadas previamente por el usuario con rol empresarial.} \\
351         \hline
352         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
353         \hline
354     \end{tabularx}
355     \caption{\emph{Tabla Requisito Aplicación Web 16.}}
356     \label{tab:requisitoSW16}
357 \end{table}
358
359 \begin{table}[H]
360 \centering
361 \scriptsize
362     \begin{tabularx}{\textwidth}{|l|X|}
363         \hline
364         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Sección para el listado de las categorías de una empresa}} \\
365         \hline
366         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-17}} \\
367         \hline
368         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
369         \hline
370         \normalsize\textbf{Descripción} & \normalsize{Se debe permitir el listado de todas las categorías creadas previamente por el usuario con rol empresarial.} \\
371         \hline
372         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
373         \hline
374     \end{tabularx}
375     \caption{\emph{Tabla Requisito Aplicación Web 17.}}
376     \label{tab:requisitoSW17}
377 \end{table}
378
379 \begin{table}[H]
380 \centering
381 \scriptsize
382     \begin{tabularx}{\textwidth}{|l|X|}
383         \hline
384         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Las categorías de las empresas deben tener un orden jerárquico}} \\
385         \hline
386         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-18}} \\
387         \hline
388         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
389         \hline
390         \normalsize\textbf{Descripción} & \normalsize{Las categorías de las empresas deben ordenarse de forma jerárquica. Por ejemplo, de una categoría llamada ``Calzado'' podrán depender jerárquicamente otras como por ejemplo pueden ser ``Sandalias'', ``Mocasines'', etc. Las relaciones jerárquicas serán creadas por el usuario con rol empresarial y el sistema debe facilitar la creación de nuevas jerarquías y debe mostrar correctamente las relaciones entre categorías creadas por este usuario.} \\
391         \hline
392         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
393         \hline
394     \end{tabularx}
395     \caption{\emph{Tabla Requisito Aplicación Web 18.}}
396     \label{tab:requisitoSW18}
397 \end{table}
398
399 \begin{table}[H]
400 \centering
401 \scriptsize
402     \begin{tabularx}{\textwidth}{|l|X|}
403         \hline
404         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Las categorías de las empresas deben asociarse a categorías genéricas}} \\
405         \hline
406         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-19}} \\
407         \hline
408         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
409         \hline
410         \normalsize\textbf{Descripción} & \normalsize{Toda categoría de empresa debe estar asociada con una categoría de tipo general que es la que el usuario final (el usuario con rol ``normal'') finalmente verá y a la que se asociará para recibir notificaciones de nuevos anuncios de su interés. Estas categorías generales pueden ser creadas directamente por un súper usuario con permisos de administración de la aplicación Web.} \\
411         \hline
412         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
413         \hline
414     \end{tabularx}
415     \caption{\emph{Tabla Requisito Aplicación Web 19.}}
416     \label{tab:requisitoSW19}
417 \end{table}
418
419 \begin{table}[H]
420 \centering
421 \scriptsize
422     \begin{tabularx}{\textwidth}{|l|X|}
423         \hline
424         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Usuario rol ``normal'' asociado a categorías generales}} \\
425         \hline
426         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-20}} \\
427         \hline
428         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
429         \hline
430         \normalsize\textbf{Descripción} & \normalsize{Los usuarios que no tienen rol empresarial únicamente pueden asociarse a categorías de tipo general. El sistema debe permitir que el usuario se asocie de forma fácil e intuitiva con las categorías generales que se hallen en la Web. El usuario acabará recibiendo anuncios relacionados con esas categorías generales.} \\
431         \hline
432         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Baja}} \\
433         \hline
434     \end{tabularx}
435     \caption{\emph{Tabla Requisito Aplicación Web 20.}}
436     \label{tab:requisitoSW20}
437 \end{table}
438
439 \begin{table}[H]
440 \centering
441 \scriptsize
442     \begin{tabularx}{\textwidth}{|l|X|}
443         \hline
444         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Al entrar en la aplicación se mostrarán los datos del usuario.}} \\
445         \hline
446         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-21}} \\
447         \hline
448         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
449         \hline
450         \normalsize\textbf{Descripción} & \normalsize{Al hacer login por primera vez, el sistema mostrará los datos del usuario. En caso de ser el usuario con rol empresarial se mostrarán los datos de la empresa creada por dicho usuario.} \\
451         \hline
452         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Baja}} \\
453         \hline
454     \end{tabularx}
455     \caption{\emph{Tabla Requisito Aplicación Web 21.}}
456     \label{tab:requisitoSW21}
457 \end{table}
458
459 \begin{table}[H]
460 \centering
461 \scriptsize
462     \begin{tabularx}{\textwidth}{|l|X|}
463         \hline
464         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Framework Symfony PHP.}} \\
465         \hline
466         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-23}} \\
467         \hline
468         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{No funcional}} \\
469         \hline
470         \normalsize\textbf{Descripción} & \normalsize{Se usará para el desarrollo web el framework PHP Symfony.} \\
471         \hline
472         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Baja}} \\
473         \hline
474     \end{tabularx}
475     \caption{\emph{Tabla Requisito Aplicación Web 23.}}
476     \label{tab:requisitoSW22}
477 \end{table}
478
479 \subsubsection{No funcionales}
480
481 \begin{table}[H]
482 \centering
483 \scriptsize
484     \begin{tabularx}{\textwidth}{|l|X|}
485         \hline
486         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Código abierto.}} \\
487         \hline
488         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-24}} \\
489         \hline
490         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{No funcional}} \\
491         \hline
492         \normalsize\textbf{Descripción} & \normalsize{Las herramientas empleadas deben ser de código abierto.} \\
493         \hline
494         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
495         \hline
496     \end{tabularx}
497     \caption{\emph{Tabla Requisito Aplicación Web 24.}}
498     \label{tab:requisitoSW22}
499 \end{table}
500
501 \subsubsection{Usabilidad}
502
503 \begin{table}[H]
504 \centering
505 \scriptsize
506     \begin{tabularx}{\textwidth}{|l|X|}
507         \hline
508         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{El nombre del usuario debe ser siempre visible.}} \\
509         \hline
510         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSW-22}} \\
511         \hline
512         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Usabilidad}} \\
513         \hline
514         \normalsize\textbf{Descripción} & \normalsize{El nombre del usuario debe mostrarse en la esquina superior derecha de la aplicación.} \\
515         \hline
516         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Baja}} \\
517         \hline
518     \end{tabularx}
519     \caption{\emph{Tabla Requisito Aplicación Web 22.}}
520     \label{tab:requisitoSW22}
521 \end{table}
522
523
524 \subsection{Requisitos software, aplicación Android}
525
526 \subsubsection{Funcionales}
527
528 \begin{table}[H]
529 \centering
530 \scriptsize
531     \begin{tabularx}{\textwidth}{|l|X|}
532         \hline
533         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{El usuario debe hacer login para recibir notificaciones}} \\
534         \hline
535         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSA-01}} \\
536         \hline
537         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
538         \hline
539         \normalsize\textbf{Descripción} & \normalsize{Para poder empezar a recibir nuevas notificaciones o anuncios el usuario debe hacer login en el sistema remoto.} \\
540         \hline
541         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
542         \hline
543     \end{tabularx}
544     \caption{\emph{Tabla Requisito Aplicación Android 1.}}
545     \label{tab:requisitoSA1}
546 \end{table}
547
548 \begin{table}[H]
549 \centering
550 \scriptsize
551     \begin{tabularx}{\textwidth}{|l|X|}
552         \hline
553         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Administrar notificaciones/anuncios sin login}} \\
554         \hline
555         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSA-02}} \\
556         \hline
557         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
558         \hline
559         \normalsize\textbf{Descripción} & \normalsize{El usuario debe poder administrar los anuncios recibidos incluso cuando no tiene conexión con el sistema remoto, es decir, cuando no tiene conexión con la aplicación Web.} \\
560         \hline
561         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
562         \hline
563     \end{tabularx}
564     \caption{\emph{Tabla Requisito Aplicación Android 2.}}
565     \label{tab:requisitoSA2}
566 \end{table}
567
568 \begin{table}[H]
569 \centering
570 \scriptsize
571     \begin{tabularx}{\textwidth}{|l|X|}
572         \hline
573         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Recepción de notificaciones en segundo plano}} \\
574         \hline
575         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSA-03}} \\
576         \hline
577         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
578         \hline
579         \normalsize\textbf{Descripción} & \normalsize{Se debe permitir que el usuario pueda recibir notificaciones en segundo plano acerca de la recepción de nuevos anuncios. La aplicación no tiene por qué estar ejecutándose en primer plano para recibir notificaciones de anuncios de interés.} \\
580         \hline
581         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
582         \hline
583     \end{tabularx}
584     \caption{\emph{Tabla Requisito Aplicación Android 3.}}
585     \label{tab:requisitoSA3}
586 \end{table}
587
588 \begin{table}[H]
589 \centering
590 \scriptsize
591     \begin{tabularx}{\textwidth}{|l|X|}
592         \hline
593         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Habilitar/deshabilitar la recepción de notificaciones}} \\
594         \hline
595         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSA-04}} \\
596         \hline
597         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
598         \hline
599         \normalsize\textbf{Descripción} & \normalsize{Debe existir una opción por la cual el usuario de la aplicación Android pueda habilitar y deshabilitar la recepción de nuevas notificaciones o anuncios.} \\
600         \hline
601         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Baja}} \\
602         \hline
603     \end{tabularx}
604     \caption{\emph{Tabla Requisito Aplicación Android 4.}}
605     \label{tab:requisitoSA4}
606 \end{table}
607
608 \begin{table}[H]
609 \centering
610 \scriptsize
611     \begin{tabularx}{\textwidth}{|l|X|}
612         \hline
613         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Visionado rápido de notificaciones no leídas}} \\
614         \hline
615         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSA-05}} \\
616         \hline
617         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
618         \hline
619         \normalsize\textbf{Descripción} & \normalsize{A través de una ventana emergente y en cualquier momento (incluso cuando la aplicación está ejecutándose en segundo plano) el usuario debe poder tener acceso a las notificaciones o anuncios que haya recibido y que todavía no ha leído.} \\
620         \hline
621         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Media}} \\
622         \hline
623     \end{tabularx}
624     \caption{\emph{Tabla Requisito Aplicación Android 5.}}
625     \label{tab:requisitoSA5}
626 \end{table}
627
628 \begin{table}[H]
629 \centering
630 \scriptsize
631     \begin{tabularx}{\textwidth}{|l|X|}
632         \hline
633         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Administración de notificaciones y anuncios}} \\
634         \hline
635         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSA-06}} \\
636         \hline
637         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Funcional}} \\
638         \hline
639         \normalsize\textbf{Descripción} & \normalsize{El sistema debe facilitar la administración de los anuncios y notificaciones recibidas. Para ello el usuario debe poder eliminar o borrar los anuncios y notificaciones que haya recibido y que ya no desea continuar teniendo en su dispositivo móvil.} \\
640         \hline
641         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Alta}} \\
642         \hline
643     \end{tabularx}
644     \caption{\emph{Tabla Requisito Aplicación Android 6.}}
645     \label{tab:requisitoSA6}
646 \end{table}
647
648 \subsubsection{Usabilidad}
649
650 \begin{table}[H]
651 \centering
652 \scriptsize
653     \begin{tabularx}{\textwidth}{|l|X|}
654         \hline
655         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Configuración de pantalla}} \\
656         \hline
657         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSA-07}} \\
658         \hline
659         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Usabilidad}} \\
660         \hline
661         \normalsize\textbf{Descripción} & \normalsize{Solo es necesario que la aplicación Android se muestre correctamente en modo vertical.} \\
662         \hline
663         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Media}} \\
664         \hline
665     \end{tabularx}
666     \caption{\emph{Tabla Requisito Aplicación Android 7.}}
667     \label{tab:requisitoSA7}
668 \end{table}
669
670 \begin{table}[H]
671 \centering
672 \scriptsize
673     \begin{tabularx}{\textwidth}{|l|X|}
674         \hline
675         \multicolumn{2}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Lenguaje sencillo}} \\
676         \hline
677         \normalsize\textbf{Código identificador} & \multicolumn{1}{c|}{\cellcolor[gray]{0.8}\normalsize\textbf{RSA-08}} \\
678         \hline
679         \normalsize\textbf{Tipo} & \multicolumn{1}{c|}{\normalsize{Usabilidad}} \\
680         \hline
681         \normalsize\textbf{Descripción} & \normalsize{El sistema debe ser fácilmente entendible por cualquier usuario.} \\
682         \hline
683         \normalsize\textbf{Prioridad} & \multicolumn{1}{c|}{\normalsize{Media}} \\
684         \hline
685     \end{tabularx}
686     \caption{\emph{Tabla Requisito Aplicación Android 8.}}
687     \label{tab:requisitoSA7}
688 \end{table}
689
690 \captionsetup[table]{list=yes}
691
692
693 \section{Modelando los requisitos, casos de uso}
694
695 Los casos de uso son técnicas para la captura de los requerimientos funcionales de un sistema. Los casos de uso describen las interacciones típicas entre los usuarios de un sistema y el sistema en sí mismo, proporcionando una descripción narrativa de cómo un sistema es usado. En lugar de empezar describiendo casos de uso, en muchas ocasiones es mucho más fácil describir escenarios. Un \textbf{escenario} es una secuencia de pasos describiendo una interacción entre un usuario y un sistema. Un caso de uso puede ser descrito como un conjunto de escenarios unidos por una meta de usuario común; por ejemplo, comprar un producto. La meta por tanto es la clave de los casos de uso~\cite{C4:UMLDistilled}.
696
697 En la terminología del lenguaje de modelado UML los usuarios son llamados actores. Un \textbf{actor} es un rol que un usuario juega dentro de un sistema. Los actores pueden ser clientes, gestores de ventas, analistas, directores de marketing, etc. Un único actor puede realizar muchos casos de uso; de igual forma, un caso de uso puede tener varios actores asociados~\cite{C4:UMLDistilled}.
698
699 En realidad el término \emph{actor} no es el adecuado, rol define mejor lo que un actor en terminología UML representa.
700
701 \subsection{Diagrama de casos de uso aplicación Web}
702
703 En la Figura~\ref{fig:MobiAdsUseCaseWeb}) se representa el diagrama de casos de uso de la aplicación Web desarrollada. Ha sido descrito con el estándar UML 2.0.
704
705 \begin{figure}[H]
706     \centering
707         \includegraphics[width=\textwidth]{fig/MobiAdsUseCaseWeb}
708     \caption{\emph{Diagrama de casos de uso de la aplicación Web}}
709     \label{fig:MobiAdsUseCaseWeb}
710 \end{figure}
711
712 Se puede observar como los principales casos están relacionados con el listado de la información con la que el usuario debe trabajar. También se comprueba que todos los casos de uso pueden ser extendidos o ampliados para la edición de los datos.
713
714 Por otra parte, se muestra la existencia de usuarios sin registrar y de usuarios registrados. El usuario no registrado lo único que puede hacer es autenticarse en la aplicación o registrarse como nuevo usuario. Además se muestra claramente la existencia de dos tipos de usuarios: el usuario ``empresa'' y el usuario ``normal''.
715
716 Los usuarios de tipo empresa son los encargados de introducir los datos en el sistema, siendo estos datos los anuncios que posteriormente recibirán los usuarios en sus teléfonos móviles.
717
718 \subsection{Descripción textual de los casos de uso de la aplicación Web}
719
720 No existe un estándar para la escritura de los casos de uso de las aplicaciones, y diferentes formatos funcionan bien en diferentes casos~\cite{C4:UMLDistilled}. Para este proyecto se ha creado un formato de tabla común para todos los casos de uso indicados en la Figura~\ref{fig:MobiAdsUseCaseWeb}), con los campos recomendados por el lenguaje de modelado gráfico UML en su versión 2.0 (Unified Modeling Language 2.0) y algunos más que si bien no están completamente estandarizados por el lenguaje UML sí se recomienda hacer uso de ellos~\cite{C4:UMLDistilled}. 
721
722 Con el objetivo de no sobrecargar la memoria del proyecto con datos irrelevantes, en esta sección no se describirán todos los casos de uso, si no simplemente aquellos que se consideren más importantes y que mejoren la compresión global de la aplicación Web.
723
724 \captionsetup[table]{list=no}
725
726 \begin{table}[H]
727 \centering
728 \scriptsize
729     \begin{tabularx}{\textwidth}{|l|X|}
730         \hline
731         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Listar Anuncios}} \\
732         \hline
733         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-01}} \\
734         \hline
735         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Generar un listado con todos los anuncios pertenecientes a un usuario.} \\
736         \hline
737         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
738         \hline
739         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Login en el sistema.} \\
740         \hline
741         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{El usuario visualizará los anuncios asignados a su empresa. Desde este listado se podrá editar, añadir o borrar anuncios.} \\
742         \hline
743         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
744         \normalsize{
745             \begin{enumerate}
746                 \setlength{\itemsep}{0pt}
747                 \setlength{\parskip}{0pt}
748                 \setlength{\parsep}{0pt}
749                 \item En la aplicación el usuario selecciona Listar Anuncios.
750             \end{enumerate}
751         } \\
752         \hline
753     \end{tabularx}
754     \caption{\emph{Tabla de caso de uso Web 1.}}
755     \label{tab:casodeusoW1}
756 \end{table}
757
758 \begin{table}[H]
759 \centering
760 \scriptsize
761     \begin{tabularx}{\textwidth}{|l|X|}
762         \hline
763         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Ver Detalles Anuncio}} \\
764         \hline
765         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-02}} \\
766         \hline
767         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Mostrar los datos relacionados con un anuncio.} \\
768         \hline
769         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
770         \hline
771         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Haber hecho login en el sistema y haber obtenido el listado de anuncios.} \\
772         \hline
773         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{El sistema mostrará los detalles del anuncio y permitirá su edición.} \\
774         \hline
775         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
776         \normalsize{
777             \begin{enumerate}
778                 \setlength{\itemsep}{0pt}
779                 \setlength{\parskip}{0pt}
780                 \setlength{\parsep}{0pt}
781                 \item En la aplicación el usuario obtiene un listado de todos los anuncios. CUW-01.
782                 \item Desde el listado de los anuncios el usuario puede seleccionar la opción de ver los detalles de un anuncio en concreto.
783             \end{enumerate}
784         } \\
785         \hline
786     \end{tabularx}
787     \caption{\emph{Tabla de caso de uso Web 2.}}
788     \label{tab:casodeusoW2}
789 \end{table}
790
791 \begin{table}[H]
792 \centering
793 \scriptsize
794     \begin{tabularx}{\textwidth}{|l|X|}
795         \hline
796         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Crear Anuncio}} \\
797         \hline
798         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-03}} \\
799         \hline
800         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Formulario para la creación de nuevos anuncios.} \\
801         \hline
802         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
803         \hline
804         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Debe haberse hecho login en la aplicación.} \\
805         \hline
806         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Una vez creado y grabado el anuncio la aplicación permitirá al usuario volver a editar sus datos (le lleva a la ventana de edición del anuncio que acaba de ser creado).} \\
807         \hline
808         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
809         \normalsize{
810             \begin{enumerate}
811                 \setlength{\itemsep}{0pt}
812                 \setlength{\parskip}{0pt}
813                 \setlength{\parsep}{0pt}
814                 \item En la aplicación el usuario puede elegir crear un nuevo anuncio desde un botón presente en el sistema.
815                 \item El usuario introduce los datos del anuncio: posición geográfica, textos, identificador, etc.
816                 \item La aplicación permite que el usuario guarde los datos y una vez grabados le dirige a otra ventana donde puede volver a editarlos si lo desea.
817             \end{enumerate}
818         } \\
819         \hline
820     \end{tabularx}
821     \caption{\emph{Tabla de caso de uso Web 3.}}
822     \label{tab:casodeusoW3}
823 \end{table}
824
825 \begin{table}[H]
826 \centering
827 \scriptsize
828     \begin{tabularx}{\textwidth}{|l|X|}
829         \hline
830         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Borrar Anuncio}} \\
831         \hline
832         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-04}} \\
833         \hline
834         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Icono o botón que permite borrar un anuncio de los listados por la aplicación.} \\
835         \hline
836         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
837         \hline
838         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Login previo en el sistema y encontrarse en la ventana donde la aplicación lista los anuncios.} \\
839         \hline
840         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Se actualiza automáticamente la ventana que lista los anuncios.} \\
841         \hline
842         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
843         \normalsize{
844             \begin{enumerate}
845                 \setlength{\itemsep}{0pt}
846                 \setlength{\parskip}{0pt}
847                 \setlength{\parsep}{0pt}
848                 \item El usuario se encuentra en la ventana que muestra los anuncios en forma de lista.
849                 \item Existe un icono o botón que permite borrar un anuncio en concreto.
850                 \item El sistema pregunta al usuario si realmente desea borrar el anuncio.
851                 \item Si el usuario acepta el anuncio es finalmente borrado, en caso contrario no se hace nada.
852             \end{enumerate}
853         } \\
854         \hline
855     \end{tabularx}
856     \caption{\emph{Tabla de caso de uso Web 4.}}
857     \label{tab:casodeusoW4}
858 \end{table}
859
860 \begin{table}[H]
861 \centering
862 \scriptsize
863     \begin{tabularx}{\textwidth}{|l|X|}
864         \hline
865         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Editar Datos Anuncio}} \\
866         \hline
867         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-05}} \\
868         \hline
869         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Icono o botón que permite borrar un anuncio de los listados por la aplicación.} \\
870         \hline
871         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
872         \hline
873         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Login previo en el sistema y encontrarse en la ventana donde la aplicación lista los anuncios.} \\
874         \hline
875         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Se permite la grabación de los nuevos datos y si lo desea el usuario puede volver a modificarlos pues el sistema no saca al usuario de la ventana de edición.} \\
876         \hline
877         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
878         \normalsize{
879             \begin{enumerate}
880                 \setlength{\itemsep}{0pt}
881                 \setlength{\parskip}{0pt}
882                 \setlength{\parsep}{0pt}
883                 \item El usuario se encuentra en la ventana que muestra los anuncios en forma de lista.
884                 \item Existe un icono o botón que permite editar un anuncio en concreto.
885             \end{enumerate}
886         } \\
887         \hline
888     \end{tabularx}
889     \caption{\emph{Tabla de caso de uso Web 5.}}
890     \label{tab:casodeusoW5}
891 \end{table}
892
893 \begin{table}[H]
894 \centering
895 \scriptsize
896     \begin{tabularx}{\textwidth}{|l|X|}
897         \hline
898         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Listar Sucursales}} \\
899         \hline
900         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-06}} \\
901         \hline
902         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Generar un listado con todas las oficinas o sucursales que ha creado o que pertenecen a un determinado usuario.} \\
903         \hline
904         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
905         \hline
906         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Login en la aplicación Web.} \\
907         \hline
908         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{El usuario obtiene una lista con todas las sucursales u oficinas que su empresa tiene en el sistema.} \\
909         \hline
910         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
911         \normalsize{
912             \begin{enumerate}
913                 \setlength{\itemsep}{0pt}
914                 \setlength{\parskip}{0pt}
915                 \setlength{\parsep}{0pt}
916                 \item En la aplicación Web el usuario puede seleccionar la opción de Listar Sucursales.
917             \end{enumerate}
918         } \\
919         \hline
920     \end{tabularx}
921     \caption{\emph{Tabla de caso de uso Web 6.}}
922     \label{tab:casodeusoW6}
923 \end{table}
924
925 \begin{table}[H]
926 \centering
927 \scriptsize
928     \begin{tabularx}{\textwidth}{|l|X|}
929         \hline
930         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Asociar Sucursal con Anuncios}} \\
931         \hline
932         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-07}} \\
933         \hline
934         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Se debe poder asignar a una determinada oficina o sucursal anuncios relacionados con productos que dichas oficinas o sucursales de una determinada empresa ofrecen.} \\
935         \hline
936         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
937         \hline
938         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{El usuario debe haber hecho previamente login en la aplicación web y deben existir anuncios que pertenecen a la empresa que administra el usuario.} \\
939         \hline
940         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{La aplicación debe permitir asociar o desasociar tantos anuncios como el usuario quiera.} \\
941         \hline
942         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
943         \normalsize{
944             \begin{enumerate}
945                 \setlength{\itemsep}{0pt}
946                 \setlength{\parskip}{0pt}
947                 \setlength{\parsep}{0pt}
948                 \item El usuario se encuentra en la ventana donde se listan las sucursales que su empresa tiene en el sistema.
949                 \item Existe un botón o icono que permite selección una sucursal u oficina del listado.
950                 \item El anterior botón o icono lleva al usuario a una nueva ventana donde se pueden asociar anuncios con la oficina seleccionada.
951                 \item Se sale de esta ventana cuando el usuario pulsa en algún botón que le lleve a otro lugar del sistema.
952             \end{enumerate}
953         } \\
954         \hline
955     \end{tabularx}
956     \caption{\emph{Tabla de caso de uso Web 7.}}
957     \label{tab:casodeusoW7}
958 \end{table}
959
960 \begin{table}[H]
961 \centering
962 \scriptsize
963     \begin{tabularx}{\textwidth}{|l|X|}
964         \hline
965         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Ver Detalles Sucursal}} \\
966         \hline
967         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-08}} \\
968         \hline
969         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Botón o icono en el listado de las sucursales que permite ver los datos asignados a una oficina o sucursal en particular.} \\
970         \hline
971         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
972         \hline
973         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{El usuario debe haber hecho login previamente en el sistema.} \\
974         \hline
975         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{La aplicación debe permitir la posterior edición de los datos.} \\
976         \hline
977         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
978         \normalsize{
979             \begin{enumerate}
980                 \setlength{\itemsep}{0pt}
981                 \setlength{\parskip}{0pt}
982                 \setlength{\parsep}{0pt}
983                 \item Desde el listado de las sucursales el usuario puede seleccionar una en particular.
984                 \item Se mostrará una nueva ventana de la aplicación que permite ver los datos de la oficina o sucursal.
985                 \item En esta ventana, si el usuario lo desea, podrá accederse a la edición de los datos mostrados.
986             \end{enumerate}
987         } \\
988         \hline
989     \end{tabularx}
990     \caption{\emph{Tabla de caso de uso Web 8.}}
991     \label{tab:casodeusoW8}
992 \end{table}
993
994 \begin{table}[H]
995 \centering
996 \scriptsize
997     \begin{tabularx}{\textwidth}{|l|X|}
998         \hline
999         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Añadir Sucursal}} \\
1000         \hline
1001         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-09}} \\
1002         \hline
1003         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{El sistema debe permitir añadir nuevas sucursales u oficinas.} \\
1004         \hline
1005         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
1006         \hline
1007         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Se debe haber hecho login en la aplicación web.} \\
1008         \hline
1009         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Después de añadir una sucursal el usuario debe poder tener la opción de editar los datos que acaban de ser grabados en el sistema.} \\
1010         \hline
1011         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1012         \normalsize{
1013             \begin{enumerate}
1014                 \setlength{\itemsep}{0pt}
1015                 \setlength{\parskip}{0pt}
1016                 \setlength{\parsep}{0pt}
1017                 \item Login en el sistema Web.
1018                 \item Desde cualquier punto de la aplicación debe poderse añadir una nueva sucursal.
1019                 \item Tras añadir la nueva sucursal u oficina el usuario debe poder editar los datos que acaban de ser grabados.
1020             \end{enumerate}
1021         } \\
1022         \hline
1023     \end{tabularx}
1024     \caption{\emph{Tabla de caso de uso Web 9.}}
1025     \label{tab:casodeusoW9}
1026 \end{table}
1027
1028 \begin{table}[H]
1029 \centering
1030 \scriptsize
1031     \begin{tabularx}{\textwidth}{|l|X|}
1032         \hline
1033         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Borrar Sucursal}} \\
1034         \hline
1035         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-10}} \\
1036         \hline
1037         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Icono o botón que permita borrar una sucursal listada por el sistema.} \\
1038         \hline
1039         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
1040         \hline
1041         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Login en la aplicación y que existan sucursales pertenecientes a la empresa que administra el usuario.} \\
1042         \hline
1043         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Se actualizará el listado de las oficinas o sucursales en la ventana sobre la que se encuentra el usuario.} \\
1044         \hline
1045         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1046         \normalsize{
1047             \begin{enumerate}
1048                 \setlength{\itemsep}{0pt}
1049                 \setlength{\parskip}{0pt}
1050                 \setlength{\parsep}{0pt}
1051                 \item El usuario se encuentra en la ventana donde se listan todas las oficinas o sucursales pertenecientes a la empresa que administra.
1052                 \item Existe un botón o icono por cada sucursal u oficina que permite su borrado del sistema.
1053                 \item La aplicación Web avisa al usuario acerca del borrado de los datos y se permite que éste finalmente elija si borrarlos o no.
1054                 \item El listado se actualiza sin la sucursal u oficina borrada.
1055             \end{enumerate}
1056         } \\
1057         \hline
1058     \end{tabularx}
1059     \caption{\emph{Tabla de caso de uso Web 10.}}
1060     \label{tab:casodeusoW10}
1061 \end{table}
1062
1063 \begin{table}[H]
1064 \centering
1065 \scriptsize
1066     \begin{tabularx}{\textwidth}{|l|X|}
1067         \hline
1068         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Editar Datos Sucursal}} \\
1069         \hline
1070         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-11}} \\
1071         \hline
1072         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Icono que permite editar una sucursal listada por el sistema.} \\
1073         \hline
1074         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
1075         \hline
1076         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Login en la aplicación y encontrarse en la ventana que lista las sucursales que pertenecen a una empresa.} \\
1077         \hline
1078         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{El usuario permanece en la ventana de edición incluso después de grabar los nuevos datos.} \\
1079         \hline
1080         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1081         \normalsize{
1082             \begin{enumerate}
1083                 \setlength{\itemsep}{0pt}
1084                 \setlength{\parskip}{0pt}
1085                 \setlength{\parsep}{0pt}
1086                 \item El usuario se encuentra en la ventana que lista todas las oficinas o sucursales.
1087                 \item Existe un icono o botón por cada oficina o sucursal que lleva al usuario a la ventana de edición.
1088                 \item Incluso después de grabar los datos el usuario permanece en la ventana de edición hasta que navega hacia otra ubicación del sistema.
1089             \end{enumerate}
1090         } \\
1091         \hline
1092     \end{tabularx}
1093     \caption{\emph{Tabla de caso de uso Web 11.}}
1094     \label{tab:casodeusoW11}
1095 \end{table}
1096
1097 \begin{table}[H]
1098 \centering
1099 \scriptsize
1100     \begin{tabularx}{\textwidth}{|l|X|}
1101         \hline
1102         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Listar Categorías Empresa}} \\
1103         \hline
1104         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-12}} \\
1105         \hline
1106         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Ventana que presente un listado con todas las categorías que una empresa tiene.} \\
1107         \hline
1108         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
1109         \hline
1110         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Login previo en el sistema.} \\
1111         \hline
1112         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Desde este listado se podrá añadir, editar o borrar categorías seleccionadas.} \\
1113         \hline
1114         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1115         \normalsize{
1116             \begin{enumerate}
1117                 \setlength{\itemsep}{0pt}
1118                 \setlength{\parskip}{0pt}
1119                 \setlength{\parsep}{0pt}
1120                 \item El usuario navega hasta el listado de categorías de empresa.
1121                 \item La lista se presenta de un modo jerárquico.
1122                 \item Por cada categoría debe existir la posibilidad de editar sus datos o borrarla.
1123             \end{enumerate}
1124         } \\
1125         \hline
1126     \end{tabularx}
1127     \caption{\emph{Tabla de caso de uso Web 12.}}
1128     \label{tab:casodeusoW12}
1129 \end{table}
1130
1131 \begin{table}[H]
1132 \centering
1133 \scriptsize
1134     \begin{tabularx}{\textwidth}{|l|X|}
1135         \hline
1136         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Ver Detalles Categoría}} \\
1137         \hline
1138         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-13}} \\
1139         \hline
1140         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Icono o botón por cada categoría listada en la ventana definida en el CUW-12.} \\
1141         \hline
1142         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
1143         \hline
1144         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Login en el sistema y una categoría de empresa válida.} \\
1145         \hline
1146         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Se muestran los detalles de la categoría y se permite su edición.} \\
1147         \hline
1148         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1149         \normalsize{
1150             \begin{enumerate}
1151                 \setlength{\itemsep}{0pt}
1152                 \setlength{\parskip}{0pt}
1153                 \setlength{\parsep}{0pt}
1154                 \item El usuario se encuentra en la ventana sobre la cual se listas las categorías de la empresa que administra en el sistema.
1155                 \item Debe permitirse por cada categoría el visionado de sus datos.
1156                 \item Desde la ventana que muestra los datos de una categoría se debe poder editar y grabar dichos datos.
1157             \end{enumerate}
1158         } \\
1159         \hline
1160     \end{tabularx}
1161     \caption{\emph{Tabla de caso de uso Web 13.}}
1162     \label{tab:casodeusoW13}
1163 \end{table}
1164
1165 \begin{table}[H]
1166 \centering
1167 \scriptsize
1168     \begin{tabularx}{\textwidth}{|l|X|}
1169         \hline
1170         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Crear Categoría}} \\
1171         \hline
1172         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-14}} \\
1173         \hline
1174         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{La aplicación debe permitir el añadir nuevas categorías de empresa.} \\
1175         \hline
1176         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
1177         \hline
1178         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Debe haberse hecho login previamente.} \\
1179         \hline
1180         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Tras la creación de la categoría el usuario debe poder editar los datos recién guardados.} \\
1181         \hline
1182         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1183         \normalsize{
1184             \begin{enumerate}
1185                 \setlength{\itemsep}{0pt}
1186                 \setlength{\parskip}{0pt}
1187                 \setlength{\parsep}{0pt}
1188                 \item El usuario ha hecho login en la aplicación.
1189                 \item Desde cualquier punto del sistema el usuario si lo desea debe poder añadir una nueva categoría de empresa.
1190                 \item Tras grabar los datos en el sistema el usuario debe poder editarlos si lo desea.
1191             \end{enumerate}
1192         } \\
1193         \hline
1194     \end{tabularx}
1195     \caption{\emph{Tabla de caso de uso Web 14.}}
1196     \label{tab:casodeusoW14}
1197 \end{table}
1198
1199 \begin{table}[H]
1200 \centering
1201 \scriptsize
1202     \begin{tabularx}{\textwidth}{|l|X|}
1203         \hline
1204         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Borrar Categoría}} \\
1205         \hline
1206         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-15}} \\
1207         \hline
1208         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Eliminación de una categoría de empresa del sistema.} \\
1209         \hline
1210         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
1211         \hline
1212         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Debe haber categorías de empresa creadas previamente por el usuario.} \\
1213         \hline
1214         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Se actualiza el listado jerárquico con las categorías de empresas que todavía permanezcan en el sistema.} \\
1215         \hline
1216         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1217         \normalsize{
1218             \begin{enumerate}
1219                 \setlength{\itemsep}{0pt}
1220                 \setlength{\parskip}{0pt}
1221                 \setlength{\parsep}{0pt}
1222                 \item Desde la ventana que lista las categorías de un modo jerárquico.
1223                 \item Por cada categoría debe existir un botón o icono que permita el borrado de dicha categoría.
1224             \end{enumerate}
1225         } \\
1226         \hline
1227     \end{tabularx}
1228     \caption{\emph{Tabla de caso de uso Web 15.}}
1229     \label{tab:casodeusoW15}
1230 \end{table}
1231
1232 \begin{table}[H]
1233 \centering
1234 \scriptsize
1235     \begin{tabularx}{\textwidth}{|l|X|}
1236         \hline
1237         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Ver Datos Usuario Empresa}} \\
1238         \hline
1239         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-16}} \\
1240         \hline
1241         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Mostrar los datos del usuario empresarial registrado.} \\
1242         \hline
1243         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
1244         \hline
1245         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Login en el sistema.} \\
1246         \hline
1247         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Se debe permitir la modificación de los datos mostrados.} \\
1248         \hline
1249         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1250         \normalsize{
1251             \begin{enumerate}
1252                 \setlength{\itemsep}{0pt}
1253                 \setlength{\parskip}{0pt}
1254                 \setlength{\parsep}{0pt}
1255                 \item Desde cualquier lugar de la aplicación el usuario debe poder ver sus datos personales asociados con su cuenta.
1256             \end{enumerate}
1257         } \\
1258         \hline
1259     \end{tabularx}
1260     \caption{\emph{Tabla de caso de uso Web 16.}}
1261     \label{tab:casodeusoW16}
1262 \end{table}
1263
1264 \begin{table}[H]
1265 \centering
1266 \scriptsize
1267     \begin{tabularx}{\textwidth}{|l|X|}
1268         \hline
1269         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Editar Datos Usuario Empresa}} \\
1270         \hline
1271         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-17}} \\
1272         \hline
1273         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Los usuarios registrados deben poder editar los datos asociados con su cuenta.} \\
1274         \hline
1275         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario empresarial} \\
1276         \hline
1277         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Login previo en el sistema.} \\
1278         \hline
1279         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Una vez guardados los nuevos datos, el usuario puede volver a modificarlos si lo desea tantas veces como quiera.} \\
1280         \hline
1281         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1282         \normalsize{
1283             \begin{enumerate}
1284                 \setlength{\itemsep}{0pt}
1285                 \setlength{\parskip}{0pt}
1286                 \setlength{\parsep}{0pt}
1287                 \item El usuario navega a la ventana en la cual se muestran sus datos personales.
1288                 \item Debe existir un botón que le permita editar dichos datos.
1289                 \item Se muestra un formulario que el usuario puede rellenar con nuevos datos.
1290                 \item Después de grabar los datos el usuario permanece en la ventana de edición hasta que navega a otra zona de la aplicación.
1291             \end{enumerate}
1292         } \\
1293         \hline
1294     \end{tabularx}
1295     \caption{\emph{Tabla de caso de uso Web 17.}}
1296     \label{tab:casodeusoW17}
1297 \end{table}
1298
1299 \begin{table}[H]
1300 \centering
1301 \scriptsize
1302     \begin{tabularx}{\textwidth}{|l|X|}
1303         \hline
1304         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Listar y seleccionar preferencias}} \\
1305         \hline
1306         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-18}} \\
1307         \hline
1308         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Los usuarios no empresariales deben seleccionar categorías de las cuales desean recibir notificaciones.} \\
1309         \hline
1310         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario} \\
1311         \hline
1312         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{El usuario debe haber hecho previamente login en el sistema.} \\
1313         \hline
1314         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Se actualiza la ventana indicando a qué categorías el usuario se encuentra registrado.} \\
1315         \hline
1316         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1317         \normalsize{
1318             \begin{enumerate}
1319                 \setlength{\itemsep}{0pt}
1320                 \setlength{\parskip}{0pt}
1321                 \setlength{\parsep}{0pt}
1322                 \item El usuario tras hacer login en el sistema navega a la ventana en la cual puede registrarse a categorías para recibir notificaciones sobre ellas.
1323                 \item Las categorías se presentan en formato jerárquico.
1324                 \item Se permite la selección de tantas categorías como haya en el sistema.
1325             \end{enumerate}
1326         } \\
1327         \hline
1328     \end{tabularx}
1329     \caption{\emph{Tabla de caso de uso Web 18.}}
1330     \label{tab:casodeusoW}
1331 \end{table}
1332
1333 \begin{table}[H]
1334 \centering
1335 \scriptsize
1336     \begin{tabularx}{\textwidth}{|l|X|}
1337         \hline
1338         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Registrar}} \\
1339         \hline
1340         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUW-19}} \\
1341         \hline
1342         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Nuevos usuarios pueden registrarse automáticamente en el sistema.} \\
1343         \hline
1344         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario} \\
1345         \hline
1346         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{El usuario no existe o no hay un usuario igual previamente registrado.} \\
1347         \hline
1348         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Se generan automáticamente las estructuras necesarias en la base de datos del sistema.} \\
1349         \hline
1350         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1351         \normalsize{
1352             \begin{enumerate}
1353                 \setlength{\itemsep}{0pt}
1354                 \setlength{\parskip}{0pt}
1355                 \setlength{\parsep}{0pt}
1356                 \item El usuario nuevo desea crear una cuenta en el sistema.
1357                 \item La ventana de registro permite la introducción de los datos necesarios para el correcto uso de la aplicación por parte del usuario.
1358                 \item Se hará uso de los elementos de seguridad que se consideren necesarios.
1359             \end{enumerate}
1360         } \\
1361         \hline
1362     \end{tabularx}
1363     \caption{\emph{Tabla de caso de uso Web 19.}}
1364     \label{tab:casodeusoW}
1365 \end{table}
1366
1367 \captionsetup[table]{list=yes}
1368
1369 \subsection{Diagrama de casos de uso aplicación Android}
1370
1371
1372 En esta sección se encuentra el diagrama de casos de uso de la aplicación Android desarrollada. En la Figura~\ref{fig:MobiAdsUseCaseAndroid}) el lector puede ver el diagrama descrito con el estándar UML 2.0 al igual que se hizo con la aplicación Web.
1373
1374 \begin{figure}[H]
1375     \centering
1376         \includegraphics[width=\textwidth]{fig/MobiAdsUseCaseAndroid}
1377     \caption{\emph{Diagrama de casos de uso de la aplicación Android}}
1378     \label{fig:MobiAdsUseCaseAndroid}
1379 \end{figure}
1380
1381 La aplicación requiere de un usuario y permite que éste pueda listar los anuncios descargados desde el servidor Web. Los anuncios se guardan de forma permanente y únicamente son borrados en caso de que el usuario así lo quiera. También se puede ver que el sistema ofrece al usuario la posibilidad de configurar diferentes parámetros de la aplicación así como habilitar o deshabilitar la recepción de nuevas notificaciones o anuncios. 
1382
1383 Por último indicar, que el usuario necesita hacer login para poder recibir nuevas actualizaciones pero para todo lo de más (gestionar sus anuncios recibidos, leer los anuncios descargados, configurar la aplicación, etc) no requiere de autenticación. El \emph{Login} se realiza contra un servidor remoto y por tanto requerirá de conexión a Internet.
1384
1385
1386 \subsection{Descripción textual de los casos de uso de la aplicación Android}
1387
1388 Se hará uso del mismo formato de tabla para la descripción textual de los casos de uso que el empleado para la aplicación Web. Se recuerda al lector que el lenguaje UML recomienda que se usen determinados campos para la descripción textual de los casos de uso, pero en general se deja en manos de los analistas de software añadir o eliminar campos en las descripciones, según éstos crean más o menos conveniente.
1389
1390 También, del mismo modo que para la aplicación Web, tampoco se describirán todos los casos de uso si no simplemente aquellos que sirvan para que el lector pueda obtener una idea clara del funcionamiento de la aplicación Android.
1391
1392 \begin{table}[H]
1393 \centering
1394 \scriptsize
1395     \begin{tabularx}{\textwidth}{|l|X|}
1396         \hline
1397         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Listar Anuncios Descargados}} \\
1398         \hline
1399         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUA-01}} \\
1400         \hline
1401         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Presentar un listado con todos los anuncios descargados mostrando los campos que permitan la correcta identificación de cada uno de ellos.} \\
1402         \hline
1403         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario} \\
1404         \hline
1405         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Iniciar aplicación.} \\
1406         \hline
1407         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Se debe poder seleccionar y borrar los anuncios que ya no sean de interés para el usuario.} \\
1408         \hline
1409         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1410         \normalsize{
1411             \begin{enumerate}
1412                 \setlength{\itemsep}{0pt}
1413                 \setlength{\parskip}{0pt}
1414                 \setlength{\parsep}{0pt}
1415                 \item El usuario inicia la aplicación.
1416                 \item Se presenta un listado con todos los anuncios descargados.
1417                 \item Debe permitirse la selección y borrado de anuncios.
1418             \end{enumerate}
1419         } \\
1420         \hline
1421     \end{tabularx}
1422     \caption{\emph{Tabla de caso de uso Android 1.}}
1423     \label{tab:casodeusoA1}
1424 \end{table}
1425
1426 \begin{table}[H]
1427 \centering
1428 \scriptsize
1429     \begin{tabularx}{\textwidth}{|l|X|}
1430         \hline
1431         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Configurar Aplicación}} \\
1432         \hline
1433         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUA-2}} \\
1434         \hline
1435         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Mostrar una ventana que permita configurar diversos parámetros de la aplicación.} \\
1436         \hline
1437         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario} \\
1438         \hline
1439         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{Ejecutar la aplicación.} \\
1440         \hline
1441         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{El comportamiento de la aplicación se modificará en base a la configuración introducida por el usuario.} \\
1442         \hline
1443         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1444         \normalsize{
1445             \begin{enumerate}
1446                 \setlength{\itemsep}{0pt}
1447                 \setlength{\parskip}{0pt}
1448                 \setlength{\parsep}{0pt}
1449                 \item El usuario lanza la aplicación.
1450                 \item Se elige el icono de la aplicación que permite el acceso a la ventana de configuración.
1451                 \item Si el usuario todavía no ha hecho login no puede lanzar el servicio desatendido de descarga de anuncios en segundo plano.
1452             \end{enumerate}
1453         } \\
1454         \hline
1455     \end{tabularx}
1456     \caption{\emph{Tabla de caso de uso Android 2.}}
1457     \label{tab:casodeusoA2}
1458 \end{table}
1459
1460 \begin{table}[H]
1461 \centering
1462 \scriptsize
1463     \begin{tabularx}{\textwidth}{|l|X|}
1464         \hline
1465         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Nombre}} & \multicolumn{1}{c|}{\normalsize{Listar Últimos Anuncios Recibidos}} \\
1466         \hline
1467         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Identificador}} & \multicolumn{1}{c|}{\normalsize{CUA-03}} \\
1468         \hline
1469         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Objetivo}} & \normalsize{Durante la recepción de notificaciones y anuncios, incluso si la aplicación se encuentra en background, el usuario debe ser capaz de ver los últimos anuncios descargados en su dispositivo móvil.} \\
1470         \hline
1471         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Actores}} & \normalsize{Usuario} \\
1472         \hline
1473         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Precondiciones}} & \normalsize{El usuario tiene que hacer login y debe lanzar el servicio que descarga anuncios de forma desatendida.} \\
1474         \hline
1475         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Postcondiciones}} & \normalsize{Se muestra una ventana emergente que permite la selección y borrado de los últimos anuncios descargados.} \\
1476         \hline
1477         \multicolumn{1}{|c|}{\cellcolor[gray]{0.8}\normalsize\textbf{Escenario de éxito}} & 
1478         \normalsize{
1479             \begin{enumerate}
1480                 \setlength{\itemsep}{0pt}
1481                 \setlength{\parskip}{0pt}
1482                 \setlength{\parsep}{0pt}
1483                 \item El usuario ha hecho login y ha lanzado el servicio en segundo plano que se encarga de descargar anuncios y notificaciones de la Web.
1484                 \item Al recibir nuevos anuncios se muestra un notificación en la barra de tareas del sistema Android.
1485                 \item Cuando se pulsa sobre el icono de la notificación, automáticamente se abre una ventana emergente que permite la administración y visionado de los últimos anuncios recibidos que no han sido todavía leídos.
1486                 \item Desde la ventana emergente también es posible seleccionar y borrar los últimos anuncios descargados.
1487             \end{enumerate}
1488         } \\
1489         \hline
1490     \end{tabularx}
1491     \caption{\emph{Tabla de caso de uso Android 3.}}
1492     \label{tab:casodeusoA3}
1493 \end{table}
1494
1495