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