Sunteți pe pagina 1din 265

1

CERTIFICACIN

Ing. Ketty Delfina Palacios Montalvn DOCENTE DEL REA DE LA ENERGA, LAS INDUSTRIAS Y LOS RECURSOS NATURALES NO RENOVABLES DE LA UNIVERSIDAD NACIONAL DE LOJA CERTIFICA: Haber dirigido, revisado y corregido en todas sus partes el desarrollo de la tesis de Ingeniera en Sistemas titulada: DESARROLLO DE UNA PLATAFORMA EMPRESARIAL PARA DAR SOPORTE A LOS PROCESOS DE

ADMINISTRACIN DE CONEXIN A INTERNET, ADMINISTRACIN DE USUARIOS, ADMINISTRACIN DE FACTURAS, GESTIN DE BANNERS PUBLICITARIOS, ADMINISTRACIN DE CARGA Y DESCARGA DE

ARCHIVOS DESDE EL SERVIDOR Y GESTIN DE CONTENIDOS DEL PORTAL WEB, PARA LA EMPRESA PROVEEDORA DE INTERNET NECUSOFT DE LA CIUDAD DE LOJA, con autora de Katty Lucia Tapia Torres y Diego Fernando Dvila Tinizaray. En razn de que la misma rene a satisfaccin los requisitos de fondo y forma, exigidos para una investigacin de este nivel, autorizo su presentacin, sustentacin y defensa ante el tribunal designado para el efecto.

Loja, Septiembre del 2010

.. Ing. Ketty Delfina Palacios Montalvn DIRECTOR DE TESIS

AUTORA

Las ideas y conceptos vertidos en el presente trabajo de investigacin han sido elaboradas bajo criterio de los autores, por lo tanto se declaran como autores legtimos de este trabajo.

Katty Lucia Tapia Torres

.. Diego Fernando Dvila Tinizaray

CESIN DE DERECHOS

Katty Lucia Tapia Torres y Diego Fernando Dvila Tinizaray, autores intelectuales del presente trabajo de investigacin, autorizamos a la Universidad Nacional de Loja, hacer uso del mismo con la finalidad que estime conveniente.

Katty Lucia Tapia Torres

.. Diego Fernando Dvila Tinizaray

AGRADECIMIENTO

Queremos dejar constancia de nuestro agradecimiento sincero y consideracin profunda, a la Universidad Nacional de Loja y en particular al rea de La Energa, las Industrias y los Recursos Naturales no Renovables, por concedernos la oportunidad de ser estudiantes de la carrera de Ingeniera en Sistemas, agradecer tambin a cada de uno de los ingenieros que buscan sin escatimar esfuerzo, la superacin de los dems, tratando de esa manera dar al pas nuevos elementos que brinden soluciones a los problemas que afectan a nuestra sociedad.

Agradecemos de forma muy especial a la Ingeniera Ketty Palacios Montalvn, por ser la principal personera en la direccin y revisin del presente proyecto.

Adems queremos expresar nuestro reconocimiento a la empresa Nettplus de la ciudad de Loja en la persona del Ing. Oscar Jimnez, quien de forma desinteresada colabor en el desarrollo del presente trabajo de investigacin.

Finalmente queremos agradecer a nuestros familiares que con su apoyo y esfuerzo nos impulsaron hacia la culminacin de nuestro proyecto de tesis.

Los Autores

DEDICATORIA

Dedicado principalmente a Dios por darme la fuerza suficiente para culminar con mis estudios, a mi esposo y a mis hijos por ser el pilar fundamental y mi inspiracin durante toda mi carrera a mi madre y hermanos por su apoyo

incondicional, a Cumita y Honorio mis suegros por sus sabios consejos que no permitieron que desmaye y todos mis familiares que momento. me apoyaron en todo

Katty L. Tapia T.

Dedico este trabajo con todo cario: A Carmen, mi Madre, por darme la vida, a Luis, mi Padre, por ensearme a vivirla, a Diana, Julyssa y Andresito por apoyarme en ella, a Cecilia, mi novia, por el amor, y por creer siempre en m, y a mis amigos; Jaherus, Galo, Cristian, Jorge con los cuales compartimos sueos y me ayudaron a crecer como persona y como profesional.

Diego F. Dvila T.

1. RESUMEN

El presente proyecto inicia en el mes de junio del 2009, con el objetivo de realizar una Plataforma Empresarial para dar soporte a los procesos de administracin de conexin a internet, administracin de usuarios, administracin de facturas, gestin de banners publicitarios, administracin de carga y descarga de archivos para la empresa Nettplus de la ciudad de Loja a fin de que los procesos antes mencionados se ejecuten de una manera eficiente y eficaz.

El proceso de recoleccin de requerimientos y de toda la informacin requerida para la etapa de anlisis se ha realizado en base a tcnicas investigativas como encuestas y

entrevistas dirigidas a los directivos, empleados, y una muestra significativa de los clientes de la empresa. La informacin ha sido analizada y organizada con el enfoque provisto por los mtodos inductivo-deductivo y cientfico, los cuales permitieron obtener informacin de calidad as como los requerimientos funcionales y no funcionales de la plataforma.

Para iniciar el proceso de desarrollo de diseo de la plataforma, se realiza una comparativa entra las metodologas de desarrollo existentes, de entre las cuales la metodologa de desarrollo de software utilizada es ICONIX, que es una metodologa flexible, iterativa e incremental que hace uso de la herramienta UML para modelar la interaccin del sistema, generando la documentacin pertinente para obtener una

plataforma eficiente, acorde con las necesidades de la empresa. La plataforma empresarial para la empresa Nettplus ha sido diseada con una arquitectura clienteservidor, y el patrn modelo-vista-controlador adecuados para un entorno web.

Para la etapa de desarrollo de la plataforma se realiz un anlisis para elegir de entre las tecnologas disponibles para desarrollo de aplicaciones web actualmente, y se decide unilateralmente trabajar con la plataforma Java Enterprise 5, y las tecnologas basadas en ella, propuestas la divisin Jboss de Red Hat, en vista de la robustez, estabilidad, portabilidad y perfecta integracin constituyen la opcin perfecta para el desarrollo de este tipo de plataformas.

Luego de cumplir con la codificacin del diseo, se procede a disear y aplicar un plan de depuracin y de validacin, el cual fue creado a la medida de la plataforma, pensando en obtener como resultado final la plataforma libre de errores y con la mxima aceptacin por parte de los directivos de la empresa.

Con la presente plataforma se logra cubrir con los requerimientos de la empresa Nettplus de la ciudad de Loja en una manera eficiente y ptima.

SUMMARY

The present project initiates in the month of June of the 2009 for the sake of selling off an Entrepreneurial Platform to support connection administration's processes to internet, administration of users, administration of invoices, step of publicity banners, carrying administration and archival unloading for the company Nettplus of the city of Loja so that the above mentioned processes enforce themselves of an efficient and efficacious way.

The collecting process of requests and of the whole information required for the stage of analysis has come true on the basis of investigating techniques as opinion polls and interviews addressed to the executives, employees, and a significant sample of the company customers. The information has been analyzed and organized with the focus supplied by the methods inductive deductive and scientific, which allowed obtaining high quality information as well as the functional requests and no functional of the platform.

In order to initiate the process of designing development of the platform, a comparison comes true enter the existing methodologies of development, of the ones that the methodology of development of software used is ICONIX between, that UML is a flexible, iterative and incremental methodology that makes use of the tool for to model the interaction of the system, generating the pertinent documentation to obtain an efficient platform, chord with the business necessity. The entrepreneurial platform for the company Nettplus has been designed with an architecture customer servant, and the model boss sight controlling adequate for a surroundings web.

For the developmental stage of the platform an analysis to elect from among the available technologies for development of applications web at present came true, and it is decided unilaterally to work with the platform Java Enterprise 5, and the technologies based in her, proposals the division Jboss of Red Hat, in view of robustness, stability, portability and perfect integration constitute the perfect option for the suchlike development of platforms.

Right after fulfilling the encoding of the design, it is proceeded to design and to apply a plan of depuration and of validation, which was created in proportion to the platform, thinking about to get ending as a result the free platform of errors and with the maximum acceptance on behalf of the company executives.

With the present platform it takes advantage of to cover him with the company requests Nettplus the city of Loja in an efficient and optimal way.

10

2. NDICE Contenidos CERTIFICACIN AUTORA ... .. . Pag. 1 2 3 4 5 6 10 20 22 22 23 24 27 27 27 27 27 28 33 34 34 34 35 35 36 36 37 39 41 41 42

CESIN DE DERECHOS AGRADECIMIENTO DEDICATORIA 1. RESUMEN 2. NDICE

.. .. ...

...

3. INTRODUCCIN 4. METODOLOGA 4.1. Mtodos 4.2. Tcnicas

4.3. Metodologa para el Desarrollo del Software 5. FUNDAMENTACIN TEORICA 5.1. EMPRESA NECUSOFT 5.1.1. Antecedentes Histrico 5.1.2. Visin 5.1.3. Misin 5.1.4. Servicios

... .. .. .

5.1.5. Beneficios para la Empresa

5.2. ARQUITECTURA EMPRESARIAL 5.2.1. Introduccin

. ... ..

5.2.2. Categoras de Informacin en el marco de la Arquitectura Empresarial .. 5.2.3. Plataforma Empresarial

5.2.4. Arquitectura Web Empresarial 5.2.5. World Wide Web 5.2.6. Servicios Web Empresariales 5.2.7. Gestores de Contenidos 5.2.8. Banners Publicitarios 5.3. TECNOLOGAS

. ... ...

5.3.1. JEE 5 (Java, Enterprise Edition) 5.3.2. EJB (Enterprise JavaBeans)

11

5.3.3. JSF (JavaServer Faces) 5.3.4. JPA 5.3.5. AJAX

43 44 44 45 47 47 48 49 50 54 54 56 57 60 61 64 66

... ... .. ... ... .. .

5.3.6. Uniendo EJB3 Y JSF 5.3.7. Jboss Seam

5.3.8. Servidor de Aplicaciones Jboss 5.3.9. Jboss Rich Faces 5.3.10. Jboss Hibernate 6. 7.

EVALUACIN DEL OBJETO DE TRANSFORMACIN DESARROLLO DE LA PROPUESTA ALTERNATIVA

7.1. Requerimientos Funcionales

..

7.2. Requerimientos No Funcionales 7.3. Glosario de Trminos 7.4. Modelo del Dominio

. .. . . . ..

7.5. Identificacin de los Casos de Uso 7.6. Casos de Uso por Paquetes 7.7. Diagrama de Casos de Uso 7.8.

Descripcion de los Casos de Uso, Prototipados de Pantalla, Diagramas de Robustez y Diagramas de Secuencia por cada Caso de Uso 67 67 78 90 104 108 120 126 131 143 146 158 172 177 184 ... .. ... .. .. . . . ... ..

7.8.1. Caso de Uso: Administrar Mens 7.8.2. Caso de Uso: Administrar MenuItem 7.8.3. Caso de Uso: Administrar Artculos 7.8.4. Caso de Uso: Administrar Imgenes

7.8.5. Caso de Uso: Administrar Banners Publicitarios 7.8.6. Caso de Uso: Administrar Enlaces

7.8.7. Caso de Uso: Interactuar con los Contenidos del Front_End 7.8.8. Caso de Uso: Administrar Facturas 7.8.9. Caso de Uso: Consultar Facturas

7.8.10. Caso de Uso: Administrar Cuenta Administrativa 7.8.11. Caso de Uso: Administrar Cuentas Clientes 7.8.12. Caso de Uso: Autentificar Usuario

7.8.13. Caso de Uso: Administrar Cuenta Cliente 7.8.14. Caso de Uso: Registrar Cliente

...

12

7.8.15. Caso de Uso: Realizar Test De Velocidad 7.8.16. Caso de Uso: Generar Informe

..

189 192 195 204 215 216 219 220 220 221 222 222 222 223 224 226 228 239 257 260 362 263 265

... . ..

7.8.17. Caso de Uso: Administrar Descargas

7.8.18. Caso de Uso: Administrar Planes Internet 7.8.19. Diagrama de Paquetes

. ... ..

7.8.20. Diagrama de Clases por cada Caso de Uso 7.8.21. Diagrama de Despliegue 7.8.22. Diseo de la Base de Datos 7.8.22.1. Modelo Entidad Relacin 7.8.22.2. Modelo Fsico

7.9. Plan de Pruebas de Depuracin 7.9.1. Introduccin

. ... ... ... . .

7.9.2. Objetos a ser Evaluados

7.9.3. Descripcin del Juego de Pruebas 7.9.4. Criterios de Inicio y Fin de Pruebas

7.9.5. Planificacin de los Juegos de Pruebas

7.9.6. Definicin Clases de Equivalencia Casos de Prueba 7.10. Pruebas de Validacin 8. 9. 10. 11. 12.

...

VALORACIN TCNICO-ECONMICA-AMBIENTAL CONCLUSIONES

..

RECOMENDACIONES BIBLIOGRAFA ANEXOS

13

NDICE DE FIGURAS Nombre Figura Figura 1. Proceso de los Servicios Empresariales Figura 2. (Plataforma Empresarial JEE 5) ........ ........ Pag. 37 41

Figura 3. (Orgnico Estructural de la Empresa Nettplus de la ciudad de Loja)........ Figura 4. Modelo del Dominio .. . . .. ... Figura 5. Diagrama de Casos de Uso por Paquetes (Paq. Contenidos) Figura 6. Diagrama de Casos de Uso por Paquetes (Paq. Facturas) Figura 7. Diagrama de Casos de Uso por Paquetes (Paq. Seguridad) Figura 8. Diagrama de Casos de Uso por Paquetes (Paq. Conexin) Figura 9. Diagrama de Casos de Uso Figura 10. Diagrama de Robustez CU: Administrar Mens 51 60 64 64 65 65 66 73 74 75 76

..

Figura 11. Diagrama de Secuencia CU: Administrar Mens (Crear). Figura 12. Diagrama de Secuencia CU: Administrar Mens (Editar)........ Figura 13. Diagrama de Secuencia CU: Administrar Mens (Eliminar) ... Figura 14. Diagrama de Secuencia CU: Administrar Mens (Buscar y Visualizar) ... ... Figura 15. Diagrama de Robustez CU: Administrar MenuItem ........ Figura 16. Diagrama de Secuencia CU: Administrar MenuItem (Crear) Figura 17. Diagrama de Secuencia CU: Administrar MenuItem (Editar) ....... Figura 18. Diagrama de Secuencia CU: Administrar MenuItem (Eliminar) . Figura 19. Diagrama de Secuencia CU: Administrar MenuItem (Buscar y Visualizar) Figura 20. Diagrama de Robustez CU: Administrar Articulo ....... Figura 21. Diagrama de Secuencia CU: Administrar Articulo (Crear) ........ Figura 22. Diagrama de Secuencia CU: Administrar Articulo (Editar) ... Figura 23. Diagrama de Secuencia CU: Administrar Articulo (Eliminar) . Figura 24. Diagrama de Secuencia CU: Administrar Articulo (Buscar) Figura 25. Diagrama de Secuencia CU: Administrar Articulo (Visualizar).. Figura 26. Diagrama de Secuencia CU: Administrar Articulo (Seleccionar Portada) ... Figura 27. Diagrama de Robustez CU: Administrar Imgenes ..

77 85 86 87 88

89 98 99 100 101 102 102

103 106

14

Figura 28. Diagrama de Secuencia CU: Administrar Imgenes (Insertar/Editar Imagen Articulo) Figura 29. Diagrama de Robustez CU: Administrar Banners Publicitarios . Figura 31. Diagrama de Secuencia CU: Administrar Banners Publicitarios (Editar).................................................................................................................... Figura 31. Diagrama de Secuencia CU: Administrar Banners Publicitarios (Editar).................................................................................................................... Figura 32. Diagrama de Secuencia CU: Administrar Banners Publicitarios (Eliminar) . Figura 33. Diagrama de Secuencia CU: Administrar Banners Publicitarios (Buscar) .. Figura 34. Diagrama de Secuencia CU: Administrar Banners Publicitarios (Visualizar) ........ 119 123 Figura 35. Diagrama de Robustez CU: Administrar Enlaces . Figura 36. Diagrama de Secuencia CU: Administrar Enlaces (Asignar Enlace Texto Articulo) Texto Articulo) Imagen Articulo) .. .. ................... 124 Figura 37. Diagrama de Secuencia CU: Administrar Enlaces (Asignar Enlace 124 Figura 38. Diagrama de Secuencia CU: Administrar Enlaces (Asignar Enlace 125 Figura 39. Diagrama de Robustez CU: Interactuar con los Contenidos del Front-End .. Figura 40. Diagrama de Secuencia CU: Interactuar con los Contenidos del Front-End ............. 130 138 139 140 141 142 144 145 153 Figura 41. Diagrama de Robustez CU: Administrar Facturas .. Figura 42. Diagrama de Secuencia CU: Administrar Facturas (Asignar) ........ Figura 43. Diagrama de Secuencia CU: Administrar Facturas(Modificar)....... Figura 44. Diagrama de Secuencia CU: Administrar Facturas (Eliminar) .. Figura 45. Diagrama de Secuencia CU: Administrar Facturas (Visualizar).. Figura 46. Diagrama de Robustez CU: Consultar Facturas... Figura 47. Diagrama de Secuencia CU: Consultar Factura . Figura 48. Diagrama de Robustez CU: Administrar Cuenta Administrativa ... Figura 49. Diagrama de Secuencia CU: Administrar Cuenta Administrativa 129 119 118 117 116 107 115

15

(Crear) Figura 50. Diagrama de Secuencia CU: Administrar Cuenta Administrativa (Modificar) ... ... Figura 51. Diagrama de Secuencia CU: Administrar Cuenta Administrativa (Eliminar) .. Figura 52. Diagrama de Secuencia CU: Administrar Cuenta Administrativa (Buscar). Figura 53. Diagrama de Secuencia CU: Administrar Cuenta Administrativa (Visualizar) .................................. Figura 54. Diagrama de Robustez CU: Administrar Cuentas Clientes .. Figura 55. Diagrama de Secuencia CU: Administrar Cuentas Clientes (Crear). Figura 56. Diagrama de Secuencia CU: Administrar Cuentas Clientes (Editar) Figura 57. Diagrama de Secuencia CU: Administrar Cuentas Clientes (Eliminar)........ Figura 58. Diagrama de Secuencia CU: Administrar Cuentas Clientes (Buscar).. Figura 59. Diagrama de Secuencia CU: Administrar Cuentas Clientes (Visualizar) ... Figura 60. Diagrama de Robustez CU: Autentificar Usuario ... Figura 61. Diagrama de Secuencia CU: Autentificar Usuario . Figura 62. Diagrama de Robustez CU: Administrar Cuenta Cliente.. Figura 63. Diagrama de Secuencia CU: Administrar Cuenta Cliente (Editar)........ Figura 64. Diagrama de Secuencia CU: Administrar Cuenta Cliente (Visualizar) .. Figura 65. Diagrama de Robustez CU: Registrar Cliente ........ Figura 66. Diagrama de Secuencia CU: Registrar Cliente ... Figura 67. Diagrama de Robustez CU: Realizar Test de Velocidad ........ Figura 68. Diagrama de Secuencia CU: Realizar Test de Velocidad .. Figura 69. Diagrama de Robustez CU: Generar Informe ....... Figura 70. Diagrama de Secuencia CU: Generar Informe ... Figura 71. Diagrama de Robustez CU: Administrar Descargas ....... Figura 72. Diagrama de Secuencia CU: Administrar Descargas (Crear) .

154

155

156

157

157 167 168 169

170

171

171 175 176 181

182

183 187 188 190 191 193 194 200 201

16

Figura 73. Diagrama de Secuencia CU: Administrar Descargas (Modificar) Figura 74. Diagrama de Secuencia CU: Administrar Descargas (Eliminar).. Figura 75. Diagrama de Secuencia CU: Administrar Descargas (Buscar) Figura 76. Diagrama de Robustez CU: Administrar Planes Internet ....... Figura 77.Diagrama de Secuencia CU: Administrar Planes Internet (Crear). Figura78.Diagrama de Secuencia CU: Administrar Planes Internet (Editar). Figura 79. Diagrama de Secuencia CU: Administrar Planes Internet (Eliminar) . Figura 80. Diagrama de Secuencia CU: Administrar Planes Internet (Buscar).. Figura 81. Diagrama de Secuencia CU: Administrar Planes Internet (Visualizar) Figura 82. Diagrama de Paquetes ...

202 203 203 210 211 212

213

214 214 215

Figura 83. Diagrama de Casos de Clases Final por Paquetes A1:(Paquete Modelo).. Figura 84. Diagrama de Casos de Clases Final por Paquetes A2:(Paquete Modelo) .. Figura 85. Diagrama de Casos de Clases Final por Paquetes (Paquete Servicios) ............................ Figura 86. Diagrama de Casos de Clases Final por Paquetes (Paquete Validator) Figura 87. Diagrama de Despliegue ....... Figura 88. Diagrama Entidad-Relacin (Base de Datos) Figura 89. Modelo Fsico (Base de Datos) .. Figura 90. Grfico Estadstico Accesibilidad. Figura 91. Grfico Estadstico Autentificar Usuario ... Figura 92. Grfico Estadstico Funcionalidad 1A ... Figura 93. Grfico Estadstico Funcionalidad 1B Figura 94. Grfico Estadstico Funcionalidad 1C Figura 95. Grfico Estadstico Funcionalidad 1D Figura 96. Grfico Estadstico Funcionalidad 1E .. . . . 219 219 220 221 242 243 247 247 247 248 248 249 249 250 218 217 216

Figura 97. Grfico Estadstico Funcionalidad Back-End . Figura 98. Grfico Estadstico Funcionalidad Interfaz Grfica ........ Figura 99. Grfico Estadstico Funcin Accesibilidad ........

17

Figura 100. Grfico Estadstico Autentificar Usuario .. Figura 101. Grfico Estadstico Registro de Usuarios Figura 103. Grfico Estadstico Consulta de Facturas .. ... Figura 102. Grfico Estadstico Administrar Cuenta Cliente .. Figura 104. Grfico Estadstico Test de Velocidad ........ Figura 105. Grfico Estadstico Funcionalidad Plataforma .. Figura 106. Grfico Estadstico Funcionalidad Front-End ..

251 251 252 253 253 255 255

18

NDICE DE TABLAS Nombre Tabla Tabla 1. Tabla Comparativa de las Metodologas de Desarrollo Tabla 2. Fortalezas y Debilidades de la Empresa Nettpluss ....... Tabla 3. Planificacin de Pruebas ... ....... Pag. 25 52 225 228 229 229 230 230 231 231 233

Tabla 4. Tabla de Responsabilidades para la Realizacin de Pruebas

Tabla 5. Tabla de Clase de Equivalencia Autentificar Usuario ... Tabla 6. Tabla de Clase de Equivalencia Administrar Mens Tabla 7. Tabla de Clase de Equivalencia Administrar MenuItems . Tabla 8. Tabla de Clase de Equivalencia Administrar Artculos Tabla 9. Clase de Equivalencia Administrar Banners Publicitarios ........ Tabla 10. Tabla de Clase de Equivalencia Administrar Planes de Internet........ Tabla 11. Tabla de Clase de Equivalencia Administrar Cuenta Administrativa Tabla 12. Tabla de Clase de Equivalencia Administrar Cuentas Clientes, Registrar Cliente, Administrar Cuenta Cliente .. .

237 239 241 242 242 247 248 249 250 250 251 252 252 253 254 255 257 258 258

Tabla 13. Tabla de Clase de Equivalencia Administrar Descargas . Tabla 14. Tabla de Planificacin de Pruebas de Validacin Tabla 15. Tabla de Interpretacin de datos Ingreso al Front_End ... Tabla 16. Tabla de Interpretacin de datos Ingresar al Back_End .. Tabla 17. Tabla de Interpretacin de datos Administracin de Contenido Tabla 18. Tabla de Interpretacin de datos Usabilidad del Back_End ........ Tabla 19. Tabla de Interpretacin de datos Amigabilidad de Interfaz Grfica.. Tabla 20. Tabla de Interpretacin de datos Ingreso al Front_End Cliente. Tabla 21. Tabla de Interpretacin de datos Ingreso a Cuenta Cliente . Tabla 22. Tabla de Interpretacin de datos Registrarse en la Plataforma.. Tabla 23. Tabla de Interpretacin de datos Modificar Cuenta Cliente... Tabla 24. Tabla de Interpretacin de datos Consulta de Facturas . ........

Tabla 25. Tabla de Interpretacin de datos Testeador de Velocidad

Tabla 26. Tabla de Interpretacin de datos Manipulacin de la Plataforma.. Tabla 27. Tabla de Interpretacin de datos Amigabilidad de Pantallas ....... Tabla 28. Tabla Valoracin Tcnico-Econmica-Ambiental (Recurso Humano). Tabla 29. Tabla Valoracin Tcnico-Econmica-Ambiental (Recurso Material). Tabla 30. Tabla Valoracin Tcnico-Econmica-Ambiental (Recurso Tcnico).

19

Tabla

31.

Tabla

Valoracin

Tcnico-Econmica-Ambiental

(Recurso 259 259

Tecnolgico)

.. .......

Tabla 32. Tabla de Resumen de Presupuesto

20

3. INTRODUCCION

El presente trabajo de investigacin es el resultado del desarrollo de un proyecto con el fin de obtener el ttulo de Ingenieros en Sistemas, a ms de servir como una gua a los lectores que inicien investigaciones afines a la temtica de la presente tesis.

Cada uno de los apartados del presente informe del proyecto de tesis representa un punto fundamental dentro del desarrollo de la Plataforma Empresarial para la empresa Nettplus de la ciudad de Loja y se estructura de la siguiente manera: La Metodologa permite la planificacin de tareas que se debe realizar para obtencin de la informacin necesaria, con el fin de entregar como resultado una plataforma de calidad que solvente las necesidades de la empresa. La Fundamentacin Terica rene toda la informacin relacionada de manera directa con el presente proyecto. La Evaluacin del Objeto de Investigacin da a conocer la situacin actual de la Empresa Nettplus de la ciudad de Loja. El desarrollo de la Propuesta Alternativa, explica la solucin planteada para solventar los requerimientos de la Empresa Nettplus de la ciudad de Loja desarrollndose los siguientes componentes de software: El componente de software de gestin de contenidos es el encargado de permitir mostrar y administrar de forma dinmica los mens, artculos, enlaces e imgenes que se mostraran en el Front-End de la plataforma. El componente de software de administracin de usuarios en el encargado de permitir la administracin de las cuentas de clientes de la empresa, de las cuentas administrativas de la plataforma, el registro on-line de los clientes, y mostrar los datos pertinentes en el espacio de la plataforma destinado a las cuentas de clientes. El componente de software de administracin de facturas es el encargado de realizar los clculos, la asignacin y la administracin de las facturas a los respectivos

clientes, as como demostrarlas en las cuentas correspondientes a cada cliente. El componente de software de administracin de la conexin a internet permite al cliente realizar un test de velocidad adsl de su conexin a internet e imprimir el respectivo reporte.

21

El componente de software de gestin de banners publicitarios permite la manipulacin dinmica de los banners publicitarios del front-end de la plataforma. El componente de software de carga y descarga de archivos desde el servidor permite al administrador de la plataforma desde el Back-End poner utilitarios para ser descargados por el cliente desde el Front-End de la plataforma. Adems se realiz la Valoracin tcnico-econmica-ambiental es en donde se expone principalmente las inversiones realizadas para cumplir con la culminacin del presente trabajo investigativo. Se desarrollaron conclusiones, las cuales dan una valoracin del grado de cumplimiento de los objetivos trazados y los resultados alcanzados, y las Recomendaciones en donde se brindan consejos pertinentes a tomar en cuenta en desarrollos de proyectos de esta ndole. Se detalla la Bibliografa que contiene: libro y pginas de internet consultados. Y por ltimo los Anexos en donde se detalla informacin complementaria y tambin necesaria para el proyecto.

22

4. METODOLOGA Los resultados obtenidos de los diversos estudios realizados a distintos proyectos de desarrollo de software apuntan hacia la necesidad de emplear metodologas giles de desarrollo, las cuales se componen de un determinado nmero de procesos, encaminados haca una mejora continua del modelo del sistema, una documentacin minuciosa de cada uno de los componentes, configuraciones y manuales que permitirn al sistema ser mantenible y escalable.

4.1. Mtodos Los mtodos utilizados para la presente investigacin son los siguientes: Mtodo Cientfico: Lo utilizamos como gua principal de toda la investigacin, ya que a travs de este planteamos el problema, los objetivos: general y especfico, adems nos permiti la organizacin, procesamiento, anlisis, e interpretacin de la informacin obtenida acerca de la Empresa Nettpluss. Mtodo Inductivo-Deductivo: A travs de los cuales seguimos un proceso analtico sinttico que satisfacen los requerimientos propios de las ciencias informticas (recoleccin de datos, anlisis de la informacin e interpretacin de los hechos y descubrimiento de nuevos procedimientos). Mtodo Ciclo de Vida de un Sistema: Comprende las diferentes etapas por la que tiene que pasar un sistema, ste mtodo nos guio a establecer los principales elementos que intervendrn en el desarrollo, las mejores guas para implementar y las tcticas que tomamos en las diferentes etapas: o Anlisis: Se trata de utilizar las diferentes tcnicas para recoger la informacin, seleccionar y categorizar para poder utilizar en la siguiente etapa de la planificacin sin tener dificultad en futuro. o Diseo: Con la informacin seleccionada se elabora un prototipo que permitir definir la apariencia principal que tomar el Software y hacemos una breve idea de las prestaciones que dar.

23

o Desarrollo: Para poder empezar con la codificacin es necesario seguir las especificaciones del prototipo final que se realiz en la etapa de diseo, de esta manera disminuimos conflictos no esperados. o Pruebas: Una vez terminada la codificacin de la aplicacin, realizamos las respectivas pruebas para comprobar que el Software est realizando lo deseado y que los resultados sean los correctos. o Implementacin: Comprobado ya el Software implantamos la Aplicacin en el lugar que se lo necesita o para lo que fue creado, teniendo en cuenta ciertos requerimientos como Recursos de Hardware y Software. o Mantenimiento: Luego de un tiempo prudencial (2-3 meses) se comprueba si el Software sigue realizando las tareas correctas, caso contrario se harn las modificaciones correspondientes, cabe destacar que adems el software puede tener actualizaciones peridicas denominadas mantenimiento. 4.2 Tcnicas

Para la recoleccin de informacin utilizamos las siguientes tcnicas: La Entrevista: Es la tcnica ms significativa y productiva de que dispone el analista para recabar datos, la utilizamos para obtener la informacin en forma verbal, a travs de preguntas a los clientes, directivos y personal que labora en la Empresa Nettpluss. La Observacin: La tcnica de la observacin es muy til para reconocer la forma en que se labora en la Empresa Nettpluss. El propsito de la observacin es mltiple, nos permiti determinar; Qu se est haciendo?, Cmo se est haciendo?, Quin lo hace?, Cundo se lleva a cabo?, Cunto tiempo toma?, Dnde y Porqu se hace?, las cuales son pautas que nos sirvieron para el desarrollo del presente proyecto.

24

Encuesta: Esta tcnica es utilizada para las pruebas de validacin del software, obteniendo informacin necesaria por parte de los usuarios del sistema para conocer si existe algn tipo de inconveniente al manipular el sistema o si faltan requerimientos que deben cubrirse. 4.3 Metodologa para el Desarrollo del Software Existen diversas metodologas giles de desarrollo de software entre las cuales describiremos las ms utilizadas:

25

RUP

XP
software unificado que

ICONIX
ICONIX es una metodologa del desarrollo del integra ambos: Proceso

Forma disciplinada de asignar tareas y Desarrollo iterativo e incremental responsabilidades (quin hace qu, cundo Pruebas unitarias continuas, frecuentemente y cmo) Pretende implementar las mejores repetidas y automatizadas, incluyendo pruebas de regresin. Programacin en parejas Frecuente de requisitos basada integracin del equipo de

racional

(RUP),

Programacin

extrema(XP) y Desarrollo gil del software. Como RUP, el proceso de ICONIX es UML Utiliza el caso conducido pero ms ligero que RUP.

prcticas en Ingeniera de Software Desarrollo iterativo Administracin Uso de

programacin con el cliente o usuario.

arquitectura

en Correccin de todos los errores antes de aadir Semejante del XP y de los acercamientos nueva funcionalidad. Hacer entregas frecuentes. Refactorizacin del cdigo, es decir, reescribir ciertas partes del cdigo para aumentar su legibilidad y mantenibilidad. giles, ICONIX proporciona la suficiente documentacin del requisito y del diseo, pero sin parlisis del anlisis. El proceso de ICONIX utiliza diagramas de clases, de casos de uso, de robustez, de secuencia, de interaccin; para representar el modo de funcionamiento de un sistema.

componentes Control de cambios Modelado visual del software Verificacin de la calidad del software

La metodologa RUP es ms apropiada Propiedad del cdigo compartida: en vez de para proyectos grandes (Aunque tambin pequeos), dado que requiere un equipo de trabajo capaz de administrar un proceso complejo en varias etapas. En proyectos dividir la responsabilidad en el desarrollo de cada mdulo en grupos de trabajo distintos, este

mtodo promueve el que todo el personal pueda El anlisis de robustez que ICONIX realiza corregir y extender cualquier parte del proyecto. permite integrar fcil e intuitivamente aspectos del anlisis con el diseo y la iteracin del mismo.

pequeos, es posible que no se puedan Simplicidad en el cdigo: es la mejor manera de cubrir los costos de dedicacin del equipo de profesionales necesarios. que las cosas funcionen.

Tabla 1. Tabla Comparativa de las Metodologas de Desarrollo

26

Para el desarrollo de la plataforma empresarial hemos seleccionado la metodologa de desarrollo ICONIX, la cual nos permiti analizar, modelar, disear e implementar la plataforma, ya que es una metodologa flexible, iterativa e incremental. Cabe mencionar que esta metodologa utiliza el uso de la herramienta UML, (Lenguaje Unificado de Modelado) que sirve para modelar la interaccin del sistema.

27

5. FUNDAMENTACIN TERICA 5.1. EMPRESA NECUSOFT 5.1.1. Antecedentes Histricos

Necusoft Nettplus , es una empresa creada con capital ecuatoriano, la misma inicia sus operaciones en el ao 2007 en la ciudad de Loja. Necusoft -Nettplus, Mas que Internet , presta servicios actuales y futuros a sus clientes, mejorando de esta forma sus procesos productivos y administrativos, siempre respaldados con la experiencia nica de su personal adquirida a nivel nacional e internacional. Las soluciones que esta empresa ofrece van desde la Planificacin, Diseo, Ejecucin y Mantenimiento de los proyectos tecnolgicos a sus clientes, estableciendo una relacin de largo plazo y adems del compromiso tecnolgico-comercial, tambin humano con el desarrollo de sus clientes y del pas y en especial de Loja y toda su provincia. Tambin ofrece los servicios de Asesora y Consultora tanto tcnica como legal para ofrecer la mejor alternativa como solucin a sus proyectos actuales y futuros. 5.1.2. Visin Liderar y ser la mejor empresa en brindar Soluciones Integrales de Tecnologa de Telecomunicaciones e Informtica siempre con calidad, logrando la satisfaccin total de sus clientes para que se conviertan en sus socios estratgicos.1 5.1.3. Misin Ofrecer soluciones eficientes de Telecomunicaciones e Informtica a sus clientes, elevando as la productividad de su empresa e impulsando el desarrollo de la misma y el pas, respaldado siempre con servicios y productos de ltima tecnologa.2

Empresa Nettplus

28

5.1.4. Servicios

Entre los principales servicios que esta empresa ofrece a la ciudad de Loja y provincia podemos mencionar los siguientes: Alta Velocidad:

Nettplus 300/20 kbps Acceso: inalmbrico: 1 PC Bsico, practico, econmico e ilimitado. Velocidad de bajada 20Kbps en el da y 300Kbps en la noche Velocidad de subida 200Kbps

Nettplus 300/130 Kbps Acceso: inalmbrico: 1 PC Estudiantes, Busca en Internet toda la informacin que necesites Velocidad de bajada 130Kbps en el da y 300Kbps en la noche Velocidad de subida 300Kbps

Nettplus 400/260 Kbps Acceso: inalmbrico: 1 PC Descarga todas tus canciones y videos favoritos Velocidad de bajada 260Kbps en el da y 400Kbps en la noche Velocidad de subida 400Kbps

Nettplus 512/512 Kbps Acceso: inalmbrico: 1 PC

Empresa Nettplus

29

Video Conferencia., conctate con tus amigos todo el tiempo Velocidad de bajada 512Kbps Velocidad de subida 512Kbps Nettplus (Internet Corporativo) Actualmente el Internet es una de las principales herramientas que las empresas necesitan para realizar ms eficientemente sus procesos operativos y productivos, por tal razn Necusoft-Nettplus, pone a su consideracin sus diversos servicios de Internet dirigido a empresas en especial. Todas sus soluciones cuentan con los siguientes servicios: Acceso al Backbone de Internet directo en USA y el mundo entero Este servicio le permite acceder a todos los recursos que se encuentran presentes en toda la Red de Internet. Asignacin de direcciones Ip El cliente tendr sus propias direcciones IP como el requiera segn sus necesidades. Registro de Dominios El servicio incluye el registro y administracin de dominios del cliente por parte de NECUSOFT-NETTPLUS. Los nombres genricos top-level-domain son asignados por NIC del Ecuador. Para el registro del Dominio el cliente ser el contacto de Billing y NECUSOFT-NETTPLUS el contacto administrativo y tcnico. Dns Primario / Secundario El servicio incluye el almacenamiento del dominio del cliente, direcciones nombre del servidor en el DNS primarios y secundarios. NECUSOFT-NETTPLUS y sus asociados dispone de servidores de altsima capacidad, totalmente redundantes para el servicio de WebHosting, DNS y Mail, en

30

caso de que el cliente lo requiera puede hacer uso de los mismos como servidores secundarios o de respaldo. Routing El servicio incluye ruteo de las direcciones asignadas, en condiciones en las cuales no ocasione riesgos o cause interrupcin de operaciones para otros clientes. Servicio de Co-Location de un Servidor a la Red de Internet Dedicado a empresas con necesidades extremadamente altas de ancho de banda. Este servicio permite a sus clientes colocar sus servidores en el telepuerto de su asociado, optimizando as los costos de operacin. Filtrado Automtico de accesos a Internet (Optenet) Es un servicio que permite optimizar los recursos de Internet de la empresa as como el tiempo empleado en la utilizacin de los mismos. Ya que hace posible el definir, por grupos de usuarios, horarios y tipos de contenidos a los que se inhabilita el acceso por carecer de inters para la empresa. Cableado Estructurado Y Networking: Redes Lan Multicapa Entre los servicios que ofrece referente a cableado son: o Reinstalaciones de cableado o Cambios, movimientos y ampliaciones o Actualizacin de sistemas de cableado obsoletos a tecnologas recientes o Integracin de equipo activo para redes (concentradores, routers o ruteadores, bridges, gateways, multiplexores, etc.) o Anlisis de desempeo de redes y documentacin o Certificacin de sistemas o Prueba y monitoreo de los componentes de su red Interconexin de Redes Corporativas

31

Es un servicio para aquellas empresas que requieren soluciones de Comunicacin entre sus sucursales remotas, provee soluciones de Acceso y de Enrutamiento.

Algunas de las tecnologas que manejan son: o Wireless: Enlaces de Microondas punto a punto (PAP) y punto- Multipunto con diversos tipos de tecnologa o Cobre: DSL o Fibra ptica o Satelitales Administracin de Trfico y Ancho de Banda de una Red Corporativa

NECUSOFT ofrece Packetshaper que es un sistema de administracin de trfico y ancho de banda que provee un desempeo eficiente y previsible de las aplicaciones que corren a travs de la red WAN e Internet. La combinacin de sus capacidades de clasificacin en capa 7, anlisis, control y reportes permite a los administradores de red mantener el movimiento de trfico apropiado cuando existen cuellos de botella en los canales de telecomunicaciones y previene que algn tipo de trfico monopolice la red. Seguridad Informtica

Los servicios de seguridad informtica que NECUSOFT ha incorporado incluyen: Firewalls, VPN (Check Point) Sistemas de deteccin de intrusos (NFR Security) PKI & Certificados digitales (Baltimore) Sistemas de Antivirus Corporativo (Symantec) Asesoras en Seguridad

Video y Audio Conferencia: Videoconferencias: La videoconferencia es un sistema de comunicacin que permite mantener reuniones colectivas entre varias personas que se encuentran en lugares

32

distantes. Esta comunicacin se realiza en tiempo real, va telefnica (ISDN) o va Ethernet (Canal Dedicado), y se transmite tanto la imagen como el sonido, en ambos sentidos. Audioconferencias: Permite reunir en una sola conversacin telefnica a varias personas de puntos geogrficos distantes, como si se tratar de una sola llamada. Tambin permite la conversacin simultnea de varios participantes, conectndose desde telfonos convencionales. Voz Sobre IP Una de las ventajas de estar implantando Voz Sobre IP, es integrar su red de datos con su red de voz. Su empresa precisa apenas estar ligada con sus filiales a travs de enlaces de datos dedicados, para que de esta forma se pueda integrar los servicios de datos y voz. Sistemas de Proteccin Elctrica

Se comprometen proteger sus equipos de: Estaciones de trabajo Servidores Centrales Telefnicas Equipos activos de Networking Equipos de Telecomunicaciones Sistemas Computacionales Notebooks Computadoras de escritorio Impresoras Scanners Suministros de computacin Hardware en general

33

5.1.5. Beneficios para la Empresa Para Recursos Humanos: Modernizacin sin riesgo de mal uso. Evita accesos no convenientes Prdida de tiempo de los empleados. tica/imagen de la compaa. Deteccin de empleados no diligentes (base para establecer la poltica del uso de Internet en la empresa). Definicin flexible adaptada a necesidades de: empresa, convenios, comit de empresa, etc. Para el Departamento de Informtica: Optimizacin de recursos tcnicos/ancho de banda Menos congestin informtica. Software de alto nivel tecnolgico. Sin impacto en velocidad (carga) ni en recursos hardware. Plataformas estndar (no es necesario ningn cambio en infraestructura tcnica). Mnima necesidad de participacin del Departamento de Informtica (Ahorro recursos). Sistema de administracin va web.

34

5.2.

ARQUITECTURA EMPRESARIAL

5.2.1. Introduccin

Una empresa es una asociacin de negocio que consiste en un grupo desconocido de procesos de negocio que obran recprocamente. Es capaz de operar como una entidad autnoma, independiente. Con esta definicin puede haber empresas dentro de las empresas, la empresa se puede considerar tambin como una Empresa Extendida significando que el alcance del impacto de un esfuerzo de la arquitectura de la empresa podra tambin incluir correlaciones con las entidades externas. Por ejemplo: proveedores, socios de negocio y clientes.

La arquitectura empresarial describe a la empresa como una estructura coherente. La arquitectura documenta el estado actual de la organizacin, el estado deseado y la brecha entre ambos. El modelo de arquitectura de sistemas no debe ser visto como una cpsula. Las caractersticas de la arquitectura deben haber sido consecuencia de un anlisis del negocio del cual se partir para determinar la Estrategia de Sistemas. La arquitectura proporciona el marco subyacente. Esto define y describe la plataforma requerida por la empresa de modo que pueda lograr sus objetivos y lograr su visin del negocio. Puede ser definida como: el grupo de principios, de pautas, de polticas, de modelos, de estndares y de procesos que, alineados con los requisitos de estrategia y la informacin del negocio, esto estar conduciendo la seleccin , la creacin y la puesta en prctica de las soluciones que se alinean con la direccin futura del negocio.3 5.2.2. Categoras de Informacin en el marco de la Arquitectura Empresarial Los datos manipulados por una organizacin qu? Sus funciones y procesos cmo? Locaciones en donde se conduce el negocio dnde? Acontecimientos que accionan actividades econmicas cundo? Gente y organizaciones implicadas quin?
3

http://www.tuobra.unam.mx/publicadas/040702105342-Arquitec.html

35

Motivaciones y apremios que determinan como el negocio se comporta por qu?

5.2.3. Plataforma Empresarial

No existe hoy en da una solucin global para desarrollos de aplicaciones web que d respuesta a todas las necesidades de una empresa. Por ello las infraestructuras diseadas para Internet se componen de mltiples soluciones de desarrollo para aplicaciones web.

Un mal anlisis inicial de la aplicacin web a desarrollar una mala seleccin de las distintas tecnologas que la componen pueden complicar de forma importante el proceso de integracin, condicionando la estrategia de negocio o llegando incluso a hacerla no viable.

La plataforma empresarial es un nuevo modelo de desarrollo de aplicaciones que se basa en el funcionamiento en red. Los programas deben ser capaces de interactuar cooperando con otras aplicaciones a travs de una intranet o en Internet.4 Conscientes de esta demanda, los fabricantes han creado herramientas tiles para desarrollar este tipo de programas. La plataforma .NET, JEE 5, PHP5 entre los ms importantes.

5.2.4. Arquitectura Web Empresarial

Tener un diseo web empresarial en la actualidad es verdaderamente importante para cualquier empresa por razones claras de tener una imagen para el mundo en la internet y a la vez la oferta del trabajo que realizan, su personal, los servicios que ofrecen y las formas de contacto con la empresa

El paquete de web empresarial contempla los siguientes aspectos:

1. Arquitectura de la informacin: textos e imgenes correctamente ubicados. 2. Imgenes de calidad que representen sus servicios. 3. Logotipo empresarial para su sitio.

http://apliweb.uned.es/guia-cursos-eduper/guia_curso.asp?id=86111&curso=2009

36

4. Gestor de contenido web. 5. Publicacin de artculos Online. 6. Formularios de Contacto. 7. Pginas web segn seccin o categoras. 8. Foros debates. 9. Acceso de usuarios registrados. 10. Galera de fotografas. 11. Lo que el cliente pida.

5.2.5. World Wide Web

La World Wide Web o simplemente la Web, cuya traduccin podra ser Red Global Mundial, es un sistema de documentos de hipertexto y/o hipermedios enlazados y accesibles a travs de Internet. Con un navegador web, un usuario visualiza sitios web compuestos de pginas web que pueden contener texto, imgenes, vdeos u otros contenidos multimedia, y navega a travs de ellas usando hiperenlaces.5

5.2.6. Servicios Web Empresariales

Existen mltiples definiciones sobre lo que son los Servicios Web, lo que muestra su complejidad a la hora de dar una adecuada definicin que englobe todo lo que son e implican. Una posible sera hablar de ellos como un conjunto de aplicaciones o de tecnologas con capacidad para interoperar en la Web. Estas aplicaciones o tecnologas intercambian datos entre s con el objetivo de ofrecer unos servicios. Los proveedores ofrecen sus servicios como procedimientos remotos y los usuarios solicitan un servicio llamando a estos procedimientos a travs de la Web.6

Estos servicios proporcionan mecanismos de comunicacin estndares entre diferentes aplicaciones, que interactan entre s para presentar informacin dinmica al usuario. Para proporcionar interoperabilidad y extensibilidad entre estas aplicaciones, y que al

5 6

http://es.wikipedia.org/wiki/World_Wide_Web http://www.webtaller.com/maletin/articulos/guia_breve_de_servicios_web.php

37

mismo tiempo sea posible su combinacin para realizar operaciones complejas, es necesaria una arquitectura de referencia estndar.

Los Servicios Web surgen de la necesidad de establecer un sistema de intercambio de datos normalizado entre aplicaciones. Es decir de la necesidad de integrar datos y procesos entre distintas aplicaciones que se estn programadas con lenguajes diversos (Cobol, C, Java, Pearl...) que se ejecutan en equipos diferentes (Mainframe, servidor, PC...) con sistemas operativos distintos (UNIX, AIX, Windows, MacOS...). A este reto hay que aadir una caracterstica ms, el aprovechamiento de Internet para conseguir dicha integracin. Para tener una mayor comprensin podemos visualizar la figura 1

Figura 1. Proceso de los Servicios Empresariales

5.2.7. Gestores de Contenidos

Un Sistema de gestin de contenidos (Content Management System en ingls, abreviado CMS) es un programa que permite crear una estructura de soporte (framework) para la creacin y administracin de contenidos, principalmente en pginas web, por parte de los participantes.7

Consiste en una interfaz que controla una o varias bases de datos donde se aloja el contenido del sitio. El sistema permite manejar de manera independiente el contenido y el diseo. As, es posible manejar el contenido y darle en cualquier momento un diseo distinto al sitio sin tener que darle formato al contenido de nuevo, adems de permitir la
7

http://es.wikipedia.org/wiki/Sistema_de_gesti%C3%B3n_de_contenidos

38

fcil y controlada publicacin en el sitio a varios editores. Un ejemplo clsico es el de editores que cargan el contenido al sistema y otro de nivel superior (directorio) que permite que estos contenidos sean visibles a todo el pblico (los aprueba).

Un sistema de administracin de contenido siempre funciona en el servidor web en el que est alojado el portal. El acceso al gestor se realiza generalmente a travs del navegador web, y se puede requerir el uso de FTP para subir contenido.

Cuando un usuario accede a una URL, se ejecuta en el servidor esa llamada, se selecciona el esquema grfico y se introducen los datos que correspondan de la base de datos. La pgina se genra dinmicamente para ese usuario, el cdigo HTML final se genera en esa llamada. Normalmente se predefine en el gestor varios formatos de presentacin de contenido para darle la flexibilidad a la hora de crear nuevos apartados e informaciones.

Los gestores de contenido se pueden segmentar segn diferentes criterios: Segn el lenguaje de programacin empleado: Active Server Pages, Java, PHP, ASP.NET, Ruby On Rails Segn la propiedad del cdigo: Open Source (cdigo abierto); permite que se desarrolle sobre el cdigo, Cdigo propietario; slo su desarrollador puede desarrollar la aplicacin. Segn el tipo de uso o funcionalidades: Plataformas generales Sistemas especficos Blogs; pensados para pginas personales Wikis; pensados para el desarrollo colaborativo e-learning; plataforma para contenidos de enseanza on-line e-commerce; plataforma de gestin de usuarios, catlogo, compras y pago Publicaciones digitales Difusin de contenido multimedia

39

El gestor de contenidos facilita el acceso a la publicacin de contenidos a un rango mayor de usuarios. Permite que sin conocimientos de programacin ni maquetacin cualquier usuario pueda indexar contenido en el portal. Adems permite la gestin dinmica de usuarios y permisos, la colaboracin de varios usuarios en el mismo trabajo, la interaccin mediante herramientas de comunicacin. Los costes de gestin de la informacin son mucho menores ya que se elimina un eslabn de la cadena de publicacin, el maquetador. La maquetacin es hecha al inicio del proceso de implantacin del gestor de contenidos. La actualizacin, backup y reestructuracin del portal son mucho ms sencillas al tener todos los datos vitales del portal, los contenidos, en una base de datos estructurada en el servidor.

5.2.8. Banners Publicitarios

Un banner es un formato publicitario en Internet. Esta forma de publicidad online consiste en incluir una pieza publicitaria dentro de una pgina web. Prcticamente en la totalidad de los casos, su objetivo es atraer trfico hacia el sitio web del anunciante que paga por su inclusin.8

Los banners se crean a partir de imgenes (GIF, JPEG y PNG), o de animaciones creadas a partir de tecnologas como Java, Adobe Shockwave y, fundamentalmente, Flash, diseadas con la intencin de atraer la atencin, resultar notorias y comunicar el mensaje deseado. Por lo tanto, estos banners no necesariamente mantienen la lnea grfica del sitio.

Todo tipo de sitios web son susceptibles de incluir toda clase de banners y otros formatos publicitarios, aunque en la mayora de los casos, son los sitios con contenidos de mayor inters o con grandes volmenes de trfico los que atraen las mayores inversiones de los anunciantes.

http://es.wikipedia.org/wiki/Banner

40

Cada vez que un usuario accede a una pgina web concreta en la que se ha previsto la inclusin de un banner, ste es mostrado. Esto se conoce como impresin. En los formatos habituales, cuando el usuario clickea sobre el banner, automticamente es redirigido a otro sitio web, decidido por el anunciante, lo que se conoce como click through.

41

5.3. TECNOLOGAS

5.3.1. JEE 5 (Java, Enterprise Edition)

Java EE (anteriormente conocido como Java 2 Platform, Enterprise Edition o J2EE hasta la versin 1.4), es una plataforma de programacin para desarrollar y ejecutar software de aplicaciones en Lenguaje de programacin Java con arquitectura de N niveles distribuida, basndose ampliamente en componentes de software modulares ejecutndose sobre un servidor de aplicaciones. La plataforma Java EE est definida por una especificacin, es tambin considerada informalmente como un estndar debido a que los suministradores deben cumplir ciertos requisitos de conformidad para declarar que sus productos son conformes a Java EE.9

Java EE incluye varias especificaciones de API, tales como JDBC, RMI, e-mail, JMS, Servicios Web, XML, etc y define cmo coordinarlos. Java EE tambin configura algunas especificaciones nicas para Java EE, para componentes. Estas incluyen

Enterprise JavaBeans, servlets, portlets (siguiendo la especificacin de Portlets Java), JavaServer Pages y varias tecnologas de servicios web. Esto permite al desarrollador crear una Aplicacin de Empresa portable entre plataformas y escalable, a la vez que integrable con tecnologas anteriores. Para tener mayor compresin visualizando la figura 2

Figura 2. (Plataforma Empresarial JEE 5)

http://es.wikipedia.org/wiki/Java_EE

42

5.3.2. EJB (Enterprise JavaBeans)

Los Enterprise JavaBeans son una de las API que forman parte del estndar de construccin de aplicaciones empresariales J2EE (ahora JEE 5.0) de Oracle Corporation. Su especificacin detalla cmo los servidores de aplicaciones proveen objetos desde el lado del servidor que son, precisamente, los EJB. Comunicacin remota utilizando CORBA Transacciones Control de la concurrencia Eventos utilizando JMS (Java messaging service) Servicios de nombres y de directorio Seguridad Ubicacin de componentes en un servidor de aplicaciones.

La especificacin de EJB define los papeles jugados por el contenedor de EJB y los EJB, adems de disponer los EJB en un contenedor.

Los EJB proporcionan un modelo de componentes distribuido estndar del lado del servidor. El objetivo de los EJB es dotar al programador de un modelo que le permita abstraerse de los problemas generales de una aplicacin empresarial (concurrencia, transacciones, persistencia, seguridad, etc.) para centrarse en el desarrollo de la lgica de negocio en s. El hecho de estar basado en componentes permite que stos sean flexibles y sobre todo reutilizables.

No hay que confundir los Enterprise JavaBeans con los JavaBeans. Los JavaBeans tambin son un modelo de componentes creado por Oracle-Sun Microsystems para la construccin de aplicaciones, pero no pueden utilizarse en entornos de objetos distribuidos al no soportar nativamente la invocacin remota (RMI).10

10

http://www.scribd.com/Java-en-la-web/d/19250007

43

5.3.3. JSF (JavaServer Faces)

Es una tecnologa y framework para aplicaciones Java basadas en web que simplifica el desarrollo de interfaces de usuario en aplicaciones Java EE. 11 JSF usa JavaServer Pages (JSP) como la tecnologa que permite hacer el despliegue de las pginas, pero tambin se puede acomodar a otras tecnologas como XUL. JSF incluye:

Un conjunto de APIs para representar componentes de una interfaz de usuario y administrar su estado, manejar eventos, validar entrada, definir un esquema de navegacin de las pginas y dar soporte para internacionalizacin y accesibilidad. Un conjunto por defecto de componentes para la interfaz de usuario. Dos bibliotecas de etiquetas personalizadas para JavaServer Pages que permiten expresar una interfaz JavaServer Faces dentro de una pgina JSP. Un modelo de eventos en el lado del servidor. Administracin de estados. Beans administrados. Estos objetivos de diseo representan el foco de desarrollo de JSF: Definir un conjunto simple de clases base de Java para componentes de la interfaz de usuario, estado de los componentes y eventos de entrada. Estas clases tratarn los aspectos del ciclo de vida de la interfaz de usuario, controlando el estado de un componente durante el ciclo de vida de su pgina. Proporcionar un conjunto de componentes para la interfaz de usuario, incluyendo los elementos estndares de HTML para representar un formulario. Estos componentes se obtendrn de un conjunto bsico de clases base que se pueden utilizar para definir componentes nuevos. Proporcionar un modelo de JavaBeans para enviar eventos desde los controles de la interfaz de usuario del lado del cliente a la aplicacin del servidor.
11

http://carlosweb2.wordpress.com/2008/12/19/jsf/

44

Definir APIs para la validacin de entrada, incluyendo soporte para la validacin en el lado del cliente. Especificar un modelo para la internacionalizacin y localizacin de la interfaz de usuario. Automatizar la generacin de salidas apropiadas para el objetivo del cliente, teniendo en cuenta todos los datos de configuracin disponibles del cliente, como versin del navegador.

5.3.4. JPA

Es la API de persistencia desarrollada para la plataforma Java EE e incluida en el estndar EJB3. Esta API busca unificar la manera en que funcionan las utilidades que proveen un mapeo objeto-relacional. El objetivo que persigue el diseo de esta API es no perder las ventajas de la orientacin a objetos al interactuar con una base de datos, como s pasaba con EJB2, y permitir usar objetos regulares (conocidos como POJOs).12

5.3.5. AJAX

Acrnimo de Asynchronous JavaScript And XML, es una tcnica de desarrollo web para crear aplicaciones interactivas o RIA (Rich Internet Applications). Estas aplicaciones se ejecutan en el cliente, es decir, en el navegador de los usuarios mientras se mantiene la comunicacin asncrona con el servidor en segundo plano. De esta forma es posible realizar cambios sobre las pginas sin necesidad de recargarlas, lo que significa aumentar la interactividad, velocidad y usabilidad en las aplicaciones.13 Ajax es una combinacin de cuatro tecnologas ya existentes: XHTML (o HTML) y hojas de estilos en cascada (CSS) para el diseo que acompaa a la informacin. Document Object Model (DOM) accedido con un lenguaje de scripting por parte del usuario, especialmente implementaciones ECMAScript como JavaScript y JScript, para mostrar e interactuar dinmicamente con la informacin presentada.
12 13

http://es.wikipedia.org/wiki/Java_Persistence_API http://es.wikipedia.org/wiki/Ajax

45

El objeto XMLHttpRequest para intercambiar datos de forma asncrona con el servidor web. En algunos frameworks y en algunas situaciones concretas, se usa un objeto iframe en lugar del XMLHttpRequest para realizar dichos intercambios. XML es el formato usado generalmente para la transferencia de datos solicitados al servidor, aunque cualquier formato puede funcionar, incluyendo HTML preformateado, texto plano, JSON y hasta EBML.

Como el DHTML, LAMP o SPA, Ajax no constituye una tecnologa en s, sino que es un trmino que engloba a un grupo de stas que trabajan conjuntamente. 5.3.6. Uniendo EJB3 Y JSF JBoss Seam es un framework que integra y unifica los distintos standars de la plataforma Java EE 5.0, pudiendo trabajar con todos ellos siguiendo el mismo modelo de programacin. Ha sido diseado intentado simplificar al mximo el desarrollo de aplicaciones, basando el diseo en Plain Old Java Objects (POJOs) con anotaciones. Estos componentes se usan desde la capa de persistencia hasta la de presentacin, poniendo todas las capas en comunicacin directa. 14

El ncleo principal de Seam est formado por las especificaciones Enterprise JavaBeans 3 (EJB3) y JavaServer Faces (JSF). A grandes rasgos podemos definir EJB3 como una arquitectura para un sistema transaccional (como bases de datos) de objetos distribuidos basado en componentes que permite construir aplicaciones portables, reusables y escalables. JSF es un framework de la capa de presentacin que define componentes para el interfaz grfico y managed beans para la lgica de la aplicacin que interactan a travs de un sistema de eventos.

Sin embargo, estos frameworks tienen algunas limitaciones y no han sido concebidos para trabajar juntos (esto pretende resolverse con la futura especificacin web beans); tienen distinto tipo de configuraciones (JSF usa archivos XML mientras que EJB3 usa anotaciones), distinto ciclo de vida y no pueden comunicarse directamente a nivel de framework. Para hacerlos cooperar necesitaramos escribir clases fachada y multitud

14

http://es.debugmodeon.com/articulo/que-es-jboss-seam

46

de cdigo de relleno que se encargase de pasar las llamadas de una capa de la aplicacin a otra. Ah es donde entra en juego Seam. Que elimina la barrera existente entre estas tecnologas, permitiendo usar EJBs directamente como backing beans de JSF y atender peticiones, podemos ver Jboss Seam como el framework perdido que debera haber sido incluido en Java EE 5.0. Seam se sienta encima de Java EE 5.0 para proporcionar un consistente y comprensible modelo de programacin para todos los componentes en una aplicacin Web empresarial. Los principales Frameworks en Java EE 5.0 son EJB (Enterprise JavaBeans) 3.0 y JSF (Java Server Faces. EJB 3.0 es un framework basado en Plain Old Java Objects (POJO) para servicios de negocios y persistencia de base de datos. El objetivo de los EJBs es dotar al programador de un modelo que le permita abstraerse de los problemas generales de una aplicacin empresarial (concurrencia, transacciones, persistencia, seguridad, etc.) para centrarse en el desarrollo de la lgica de negocio en s. El hecho de estar basado en componentes permite que stos sean flexibles y sobre todo reutilizables. JSF es un framework de desarrollo basado en el patrn MVC (Modelo-Vista-Controlador), JSF pretende normalizar y estandarizar el desarrollo de aplicaciones Web. La mayor parte de las aplicaciones Web de Java EE 5.0 utilizan ambos Frameworks, EJB 3.0 como mdulo para la lgica del negocio y un mdulo JSF para la interfaz Web, sin embargo aunque EJB 3.0 y JSF se complementan entre s ellos estn diseados como frameworks separados, cada uno con su propia filosofa Seam elimina la capa artificial que existe entre EJB 3.0 y JSF y provee un consistente sistema de anotaciones para integrar estos dos frameworks. En JBoss Seam los datos de los formularios se almacenan en entity beans y los eventos se manejan con sesin beans, Seam permite a los desarrolladores usar anotaciones POJOs para todos los componentes de la aplicacin. Comparada con aplicaciones desarrolladas en otros frameworks, las aplicaciones Seam son conceptualmente simples y requieren significativamente menos cdigo (en Java y en XML) para obtener las mismas funcionalidades15

15

Joseph Faisal Nusairat, Seam: From Novice to Professional, Lead Editor, New York, 2007,cap 1

47

5.3.7 Jboss Seam

JBoss Seam es un framework desarrollado por JBoss, una divisin de Red Hat. El lder del proyecto es Gavin King, tambin autor del framework para mapeo objeto relacional Hibernate. Combina a los 2 frameworks Enterprise JavaBeans EJB3 y JavaServerFaces JSF. Se puede acceder a cualquier componente EJB desde la capa de presentacin refirindote a l mediante su nombre de componente seam.

Seam introduce el concepto de contextos. Cada componente de Seam existe dentro de un contexto. El contexto conversacional por ejemplo captura todas las acciones del usuario hasta que ste sale del sistema o cierra el navegador - inclusive puede llevar un control de mltiples pestaas y mantiene un comportamiento consistente cuando se usa el botn de regresar de el navegador.

5.3.8 Servidor de Aplicaciones Jboss

JBoss es un servidor de aplicaciones J2EE de cdigo abierto implementado en Java puro. Al estar basado en Java, JBoss puede ser utilizado en cualquier sistema operativo que lo soporte. Los principales desarrolladores trabajan para una empresa de servicios, JBoss Inc., adquirida por Red Hat en Abril del 2006, fundada por Marc Fleury, el creador de la primera versin de JBoss. El proyecto est apoyado por una red mundial de colaboradores. Los ingresos de la empresa estn basados en un modelo de negocio de servicios.

JBoss implementa todo el paquete de servicios de J2EE. JBoss AS es el primer servidor de aplicaciones de cdigo abierto, preparado para la produccin y certificado J2EE 1.4, disponible en el mercado, ofreciendo una plataforma de alto rendimiento para aplicaciones de e-business. Combinando una arquitectura orientada a servicios revolucionaria con una licencia de cdigo abierto, JBoss AS puede ser descargado, utilizado, incrustado y distribuido sin restricciones por la licencia. Por este motivo es la

48

plataforma ms popular de middleware para desarrolladores, vendedores independientes de software y, tambin, para grandes empresas.16

Las caractersticas destacadas de JBoss incluyen: Producto de licencia de cdigo abierto sin coste adicional. Cumple los estndares. Confiable a nivel de empresa Incrustable, orientado a arquitectura de servicios. Flexibilidad consistente Servicios del middleware para cualquier objeto de Java Ayuda profesional 24x7 de la fuente Soporte completo para JMX

5.3.9 Jboss Rich Faces

RichFaces es un marco muy til de cdigo abierto que le permite aadir capacidades de Ajax a sus aplicaciones JSF (usando los componentes estndar JSF), sin la necesidad de escribir cdigo JavaScript y administrar la compatibilidad de JavaScript entre navegadores. Se integra con el ciclo de vida de JSF y otras caractersticas de JSF estndar como la validacin, la conversin y administracin de recursos.

RichFaces proporciona dos conjuntos de bibliotecas de componentes: Core Ajax: la biblioteca principal contiene componentes que son tiles para ajaxizar pginas JSF y componentes estndar de JSF. Es muy sencillo definir reas de Ajax y para invocar peticiones Ajax con el fin de actualizar las reas (veremos cmo se hace esto muy pronto). Adems, proporciona un componente de generacin de recursos binarios sobre la marcha (por ejemplo, el cdigo generado por las imgenes, archivos PDF, archivos CSV, y as sucesivamente).

16

Jamae Javid & Johson Peter, Jboss in Action, 2009 by Manning Publications Co, Part 1

49

La interfaz de usuario: La biblioteca RichFaces interfaz de usuario es un conjunto de componentes avanzados de JSF que Ajax utiliza para agregar caractersticas de la interfaz de usuario ricas a sus aplicaciones. Los componentes Ajax fuera de la caja se integran perfectamente con la biblioteca principal. Asimismo, apoyan plenamente los temas y pueden ser adaptados segn las necesidades de los usuarios.17

5.3.10 Jboss Hibernate

Hibernate es una fuente abierta, un objeto ligero solucin de cartografa relacional. La caracterstica principal de Hibernate es su soporte para el modelado basado en objetos, que le permite proporcionar un mecanismo transparente para la persistencia. Se utiliza XML para mapear una base de datos a una aplicacin y soporta objetos de grano fino. La versin actual de Hibernate es 3.x, y es compatible con anotaciones de Java y, por tanto satisface la especificacin de EJB. Hibernate incluye un lenguaje de consulta muy poderoso llamado Hibernate Query Language o HQL. HQL es muy similar a SQL, y tambin define algunos convenios adicionales. HQL es completamente orientado a objetos, lo que le permite aprovechar la fuerza completa de la orientacin a objetos pilares de la herencia, polimorfismo y asociacin. Consultas HQL son maysculas y minsculas, a excepcin de los nombres de las clases Java y las propiedades que se utiliza. HQL devuelve resultados de la consulta como los objetos que se puede acceder directamente y manipulado por el programador. HQL tambin soporta muchas caractersticas avanzadas de la paginacin y los perfiles de SQL dinmico que nunca ha apoyado. HQL no requiere ningn explcitas cuando se trabaja con varias tablas.18

17 18

http://docs.jboss.org/richfaces/latest_3.3.X/en/devguide/html/ http://docs.jboss.org/hibernate/stable/core/reference/en/pdf/hibernate_reference.pdf

50

6.

EVALUACIN DEL OBJETO DE TRANSFORMACIN fue creada con capital ecuatoriano, la misma inicia sus

La empresa Nettplus

operaciones en el ao 2007 en la ciudad de Loja, se encuentra ubicada en las calles Sucre entre Mercadillo y Azuay.

Cuenta con el espacio fsico, recurso tcnico, humano, y el equipamiento necesario para proveer internet y dar soporte a sus clientes, cuya visin es liderar el mercado y ser la mejor empresa en brindar Soluciones Integrales de Tecnologa en Telecomunicaciones e Informtica siempre con calidad, logrando la satisfaccin total de sus clientes para que se conviertan en sus socios estratgicos.

Cabe destacar que es una empresa que se enfoca en proveer soluciones completas que satisfagan las necesidades actuales y futuras de sus clientes, mejorando de esta forma sus procesos productivos y administrativos, siempre respaldados con la experiencia y conocimientos de su personal adquirida a nivel nacional e internacional. La empresa Nettplus esta consiente que en la actualidad cuentan con una pgina de Internet que no satisface las necesidades de sus clientes, ya que carece de diversos servicios, lo que dificulta su crecimiento. La empresa Nettplus de la ciudad de Loja posee un orgnico estructural, el cual se muestra en la figura 3.

51

Figura 3. (Orgnico Estructural de la Empresa Nettplus de la ciudad de Loja)

Finalmente hemos utilizado el anlisis FODA el mismo que nos permiti identificar y evaluar los factores positivos y negativos internos y externos de la empresa Nettplus, con el objetivo de mejorar los servicios que esta empresa brinda a sus usuarios.

LISTA DE FORTALEZAS FACTORES INTERNOS F1. Planta fsica bien ubicada, en la parte cntrica de la FACTORES EXTERNOS ciudad, con oficinas amplias para cada departamento.

LISTA DE DEBILIDADES

D1. Software comercial adaptado a las necesidades de la empresa.

52

F2. Equipos de trasmisin ubicados estratgicamente por toda la ciudad, lo cual le FACTORES INTERNOS brinda una cobertura casi total de la misma. F3. Disponibilidad de un hosting y un dominio propios www.nettplus.net. F4. Disponibilidad de un servidor propio, para venta de hosting, con caractersticas para necesarias para dar soporte a diversas tecnologas web, adems de un servidor de base de datos MySQL. FACTORES F5. Equipo administrativo EXTERNOS bien definido (Gerente General, Gerente Tcnico, Contabilidad, Facturacin, Mantenimiento, Atencin al Cliente). F6. Disponibilidad de una red interna con cableado estructurado colocado adecuadamente.

D2. El sitio web de la empresa ha sido tomado como un medio nicamente informativo para la misma. Y no como una plataforma de soporte empresarial en donde puedan integrarse diferentes componentes de software, que respondan a las necesidades actuales de la empresa. D3. El servidor de la empresa est configurado con pocos servicios para aplicaciones web D4.Falta de un departamento de sistemas

Tabla 2. Fortalezas y Debilidades de la Empresa Nettpluss

Sabiendo que la Universidad Nacional de Loja aplica El SAMOT (Sistema Acadmico Modular por Objetos de Transformacin) como modelo de aprendizaje, el cual tiene como principal objetivo mejorar la pertinencia social y la calidad de la formacin profesional, impulsar la investigacin cientfica y tecnolgica, y potenciar la

53

vinculacin con la colectividad, de manera de incidir ms efectivamente en el desarrollo de la Regin Sur del Ecuador y del pas. Ello implica que, lo ms relevante de la formacin es que los estudiantes conozcan las problemticas concretas del desarrollo relacionados con la profesin o especialidad, en los niveles local, regional, nacional y universal; y que, mejoren sus capacidades, tanto para explicar y comprender estos problemas en sus mltiples dimensiones y contextos (es decir, en su complejidad), como para construir alternativas de solucin a las mismas.

Consientes de las dificultades que atraviesa la Empresa Nettplus de la ciudad de Loja y tomando como punto de partida el SAMOT, hemos credo conveniente el desarrollo de una Plataforma Empresarial que satisfaga las necesidades tanto internas como externas de la empresa; la misma que les permitir obtener el nivel competitivo que como empresa se han planteado en el medio en el que se desenvuelve.

54

7.

DESARROLLO DE LA PROPUESTA ALTERNATIVA

A continuacin se detalla toda la informacin obtenida durante el transcurso del proyecto tomando como base las fases de la metodologa ICONIX detalladas anteriormente: 7.1. Requerimientos Funcionales La Plataforma permitir: CDIGO RF0001 DESCRIPCIN Al administrador autentificarse ingresando (nombre de usuario y contrasea) Al administrador modificar su cuenta (e-mail, CATEGORA Oculto

RF0002

contrasea) Al administrador poder administrar (modificar

Evidente

RF0003

eliminar) las facturas generadas para cada uno de los Evidente clientes registrados en la plataforma Al administrador generar facturas mensualmente para

RF0004

cada uno de los clientes de la plataforma de acuerdo al Oculto plan contratado por cada cliente Al administrador tener acceso a un listado de los clientes de la plataforma en donde pueda crear,

RF0005

eliminar y modificar los datos de la cuenta de cada Evidente cliente y adicionar los datos de la hoja de trabajo, y plan contratado

RF0006

Al administrador crear, modificar, eliminar, buscar y visualizar banners publicitarios Al administrador crear, modificar, eliminar, buscar y visualizar artculos Al administrador crear, modificar, eliminar, buscar y visualizar mens Al administrador crear, modificar, eliminar, buscar y visualizar MenuItems

Evidente

RF0007

Evidente

RF008

Evidente

RF009 RF0010

Evidente

Al administrador insertar imgenes dentro de los Evidente

55

artculos RF0011 Al administrador insertar link hacia otros sitios desde los artculos, imgenes y banners Al administrador crear, eliminar, buscar y visualizar descargas de programas utilitarios Al administrador crear, modificar, eliminar, buscar y visualizar Planes Nettplus Al cliente descargar programas utilitarios Al cliente registrarse en la plataforma Al cliente interactuar, y navegar en la plataforma Al cliente realizar un test de velocidad adsl de la conexin a internet Al cliente generar un informe con los resultados del test de velocidad adsl Al cliente autentificarse ingresando (nombre de usuario y contrasea) Al cliente modificar su cuenta (e-mail y contrasea) Al cliente consultar su historial de facturas desde su cuenta Evidente

RF0012

Evidente

RF0013 RF0014 RF0015 RF0016 RF0017

Evidente Evidente Evidente Evidente Oculto

RF0018

Oculto

RF0019 RF0020 RF0021

Evidente Oculto Evidente

56

7.2.

Requerimientos No Funcionales DESCRIPCIN Sistema operativo de 32 bits Linux Ubuntu,Debian,Fedora,Suse, Windows (Multiplataforma)

CDIGO RNF0001

RNF0002

Soportar Lenguajes de Programacin Java (JDK 1.6 o superior) Java Standart Edition 1.6 o superior Java Eterprisse Edition 1.5 (JEE 5) JBoss Seam 2.2 GA

RNF0003

Mecanismos de persistencia: MySQL 5.0 o superior JBoss Hibernate 3.3.2 GA

RNF0004 RNF0005

Front-End basado en JBoss Rich Faces 3.3.2 SR1 Requerimientos mnimos de hardware para usuarios: Procesador Intel Pentiun 4 de 1.4 GHz o superior(Willmate, Northwood, Presscott, Dual Core, Core 2 Duo) / Amd(Seprom, Atlon, Amdx2) Memoria RAM 512 MB o superior Disco Duro mnimo 40 GB

RNF0006 RNF0007

Servidor de Aplicaciones JBoss Server 5.1.x GA Browser. Internet Explorer V7 o superior Mozilla V3.0 o superior Opera V10.X o superior

RNF0008 RNF0009 RNF0010

Driver JDBC-ODBC conexin de base de datos MySQL Mantenimiento semestral del sistema y del hardware Escalable a ser un software de acceso al servidor por lo que puede se implementado en la red interna de la empresa, o de acceso via Http

RNF0011

Amigable con el usuario

57

7.3. Glosario de Trminos Plataforma Empresarial: Es un paquete de software que nos ayuda en el desempeo de un negocio, permitiendo simplificar y automatizar tareas para

aumentar el rendimiento de los procesos del negocio, expandir el negocio que ya tenemos e incluso transformndolo. FrontEnd: Parte de la plataforma que interacta con un usuario remoto. Back-End: Parte de la plataforma en la que el administrador interacta realizando diversas configuraciones administrativas, que se vern reflejadas en el Front-End. Administrador: Usuario que posee permisos para operar en el Back-End de la plataforma. Cliente: Usuario que se puede conectar remotamente a la direccin de la plataforma o interactuar con el Front-End de la misma. Componente de Software: Es un recurso desarrollado para un fin concreto y que se pueden formar solo junto con otros en un entorno funcional requerido por cualquier proceso predefinido. Son independientes entre ellos, y tienen su propia estructura e implementacin. Men: Componente visual que nos permite agrupar los submens de acuerdo a un criterio de homogeneidad en el carcter de la informacin a la que los submens conectan al usuario. Menutem: Componente que hace una referencia visual y a su vez permite establecer un enlace para a acceder al componente de sw o a la informacin a la que referencia. Artculo: Contenidos de tipo informativo administrados en el gestor de contenidos y consideracin del cliente cuando y navega por la plataforma. Browser: Navegador de internet favorito del cliente o administradores. (Consulte requerimientos no funcionales de la plataforma para mayor informacin).

58

Servidor: Programa que presta servicios necesarios para el correcto funcionamiento de la plataforma. Consulte requerimientos no funcionales de la plataforma para mayor informacin). Test de velocidad adsl: Herramienta que permite medir inmediatamente y de forma gratuita la velocidad de su lnea ADSL y de conexin a Internet. Banner Publicitario: Un banner es un formato publicitario en Internet. Esta forma de publicidad online consiste en incluir una pieza publicitaria dentro de una pgina web. Prcticamente en la totalidad de los casos, su objetivo es atraer trfico hacia el sitio web del anunciante que paga por su inclusin. Link: Enlace o hiperenlace, recurso usado en los documentos web para referirse a otro sitio web. Descarga de Archivos: Es la accin informtica por la cual un archivo que no reside en la mquina de un usuario pasa a estarlo mediante una transferencia a travs de una red desde otra computadora que s lo alberga; la accin se denomina download en ingls. Carpeta raz del servido: Tipo especial de fichero que almacena en forma de ndice las subcarpetas y ficheros que componen cada carpeta. El directorio raz ocupa una posicin nica y concreta en el sistema de ficheros Enlace fpt: Es uno de los diversos protocolos de la red Internet, concretamente significa File Transfer Protocol (Protocolo de Transferencia de Archivos) y es el ideal para transferir datos por la red y hoy en dia es uno de los protocolos ms usados para este fin. Enlace: Es su capacidad de enlazar fcilmente diferentes documentos entre s. Descarga: Copiar a travs de una red (Internet, BBS, etc.) un elemento que se encuentra ubicado fsicamente en un directorio de un servidor (Un fichero, un programa, un documento, etc.) a nuestro disco duro.

59

Filtro: Es una capacidad de tipo administrativo que permite realizar bsquedas dentro de una base de datos, teniendo en cuenta ciertos parmetros o criterios de bsqueda como: por nombre, por ubicacin, por nmero de cdula, etc. Subir al servidor: Accin de copiar programas, documentos o archivos va FTP que sern puestos en las descargas. Velocidad de subida: La velocidad de subida es el trfico existente desde una PC hacia la internet (por ejemplo cuando se una imagen o se enva un mail). Velocidad de bajada: Es una velocidad con la que navegamos, descargamos archivos desde internet y es contratada como un plan a un proveedor de Internet. CNT: Corporacin Nacional de Telecomunicaciones, mximo organismo que regula las telecomunicaciones en el Ecuador.

60

7.4. Modelo del Dominio


class modelo Serializable Cliente apellido: String cedula: String celular: String direccion: String email: String facturasCliente: List<Factura> fechaInstalacion: Date id: Long ipAsignada: String lastAccessOn: Date nombre: String numeroEquiposInstalados: String password: String planElegido: String rePassword: String role: String serialVersionUID: long = 1L {readOnly} sugerenciaClave: String tecnicoResponsable: String telefono: String tempLastAccesOn: Date tipoPago: String tipoServicio: String username: String Menu descripcion: String enable: Boolean id: Long menuItemsAsignados: List<MenuItem> nombre: String orden: Integer serialVersionUID: long = 1L {readOnly} Comparable Serializable Serializable Administrador email: String id: Long LastAccessOn: Date password: String rePassword: String role: String serialVersionUID: long = 1L {readOnly} tempLastAccesOn: Date userName: String

-menuPropietario_mi

Serializable Banner 0..* Serializable Comparable MenuItem articuloVinculado: String descripcion: String id: Long menuPropietario_mi: Menu nombre: String orden: Integer serialVersionUID: long = 1L {readOnly} 1 Serializable Articulo estado: Boolean id: Long name: String serialVersionUID: long = 1L {readOnly} urlEnlace: String urlImagen: String

-clientePropietario

Serializable Download descripcion: String id: Long name: String urlDownload: String

0..* Serializable Factura clientePropietario: Cliente descripcion: String estado: String fechaEmision: Date fechaMaxPAgo: Date formaDePago: String id: Long numeroPlanes: Integer serialVersionUID: long = 1L {readOnly} subTotal: String valorIva: String valorTotal: String valorUnitario: String -

autor: String contenido: String descripcion: String fechaCreacion: Date id: Long nombre: String serialVersionUID: long = 1L {readOnly} Portada - actualFrontName: String - discriminator: String 1 - id: Long

1..*

1 Serializable PlanNettplus costPlain: Double description: String id: Long planName: String releaseDate: Date

Figura 4. Modelo del Dominio

61

7.5. Identificacin de los Casos de Uso ACTOR METAS Registrarse, ingresando Registrar Cliente CASO DE USO PAQUETES

sus datos personales y obtener una cuenta de cliente con usuario y contrasea vlidos. Modificar cuenta requiera. Valida usuario, valida datos de su cuando lo

Seguridad

Administrar Cuenta Cliente

Seguridad

contrasea, identifica el tipo de usuario (Cliente o Administrador) Cliente y le Autentificar Usuario Seguridad

asigna la navegabilidad segn el caso. Verificar el estado de su conexin a Internet. Generar un Informe de los resultados obtenidos en el Test de Velocidad. Navegar, visualizar, y Interactuar con los Contenidos del Front-End Contenidos Generar Informe Conexin Realizar Test de Velocidad Conexin

utilizar los componentes de software puestos a la disposicin del cliente. Visualizar desde su

cuenta un historial de sus facturas. Crear, eliminar, modificar buscar y

Consultar Facturas

Facturas

Administrar Mens Administrar

Contenidos

visualizar mens Crear, modificar, asignar,

Contenidos

62

buscar

visualizar

MenItems

MenuItems y vincular a un artculo. Crear, eliminar, modificar, buscar y Administrar Artculos

Contenidos

visualizar Artculos. Insertar, organizar y

eliminar enlaces dentro de un artculo, imagen o banner publicitario. Insertar, organizar y

Administrar Enlaces

Contenidos

eliminar imgenes dentro de un artculo o un Administrador banner publicitario. Crear, modificar,

Administrar imgenes

Contenidos

eliminar, buscar asignar una imagen y un link los banners publicitarios que sern mostrados dentro de la plataforma. Asignar, modificar y

Administrar Banners Publicitarios Contenidos

eliminar las facturas del cliente. Crear, eliminar, modificar, buscar y

Administrar Facturas

Facturas

Administrar Descargas

visualizar descargas para los clientes. Crear, eliminar, modificar, buscar y

Conexin

Administrar Cuentas Administrativas Seguridad

visualizar las cuentas de los administradores de la plataforma.

63

Crear,

modificar,

habilitar, eliminar, buscar y visualizar las cuentas de los clientes. Valida usuario, valida

Administrar Cuentas Clientes Seguridad

contrasea, identifica el tipo de usuario (Cliente o Administrador) y le

Autentificar Usuario

Seguridad

asigna la navegabilidad. Crear, eliminar, modificar, buscar y

Administrar Planes de Interenet

visualizar los planes de Internet.

64

7.6. Casos de Uso por Paquetes


uc Contenidos Contenidos

Administrar Menus

Administrar MenuItems

AdministrarArticulos

Interactuar con los Contenidos del Front-End Adminstrar Imagenes Administrador Cliente

Administrar Banners Publicitarios

Administrar Enlaces

Figura 5. Diagrama de Casos de Uso por Paquetes (Paq. Contenidos)


uc Facturas Facturas

Administrar Facturas

precedes Administrador Administrar Planes Internet

Consultar Facturas

Cliente

Figura 6. Diagrama de Casos de Uso por Paquetes (Paq. Facturas)

65

uc Seguridad Seguridad

Administrar Cuenta Administrativ a

Administrar Cuentas Clientes Administrador

Autentificar Usuario

Administrar Cuenta Cliente

Cliente

Registrar Cliente

Figura 7. Diagrama de Casos de Uso por Paquetes (Paq. Seguridad)


uc Conexion Conexion

Realizar Test Velocidad

Generar Informe Cliente

Administrar Descargas Administrador

Figura 8. Diagrama de Casos de Uso por Paquetes (Paq. Conexin)

66

7.7. Diagrama de Casos de Uso


uc DIAGRAMA DE CASOS DE USO

PLATAFORMA EMPRESARIAL NETTPLUS


Administrar Planes Internet
precedes

Registrar Cliente Administrar Facturas

(from Facturas)

(from Seguridad)
i nvokes precedes precedes

Administrar Cuentas Administrativas :Administrador (from Seguridad)


precedes precedes precedes

(from Facturas)

Administrar Cuentas Clientes (from Seguridad)


precedes

Interactuar con el Front-End Administrar Cuenta Cliente


precedes i nvokes

:Cliente

(from Contenidos)

precedes

(from Seguridad)
i nvokes precedes

Autentificar Usuario

(from Seguridad)

i nvokes precedes

precedes

Consultar Facturas
precedes precedes i nvokes

(from Facturas) Administrar Descargas Generar Informe (from Conexion) Administrar Banners Publicitarios (from Contenidos)
i ncl ude

(from Conexion) Administrar Menus


precedes

Administrar Enlaces

(from Contenidos)
i ncl ude

i ncl ude

(from Contenidos)
i ncl ude i ncl ude

Realizar Test Velocidad Administrar MenuItems


precedes

Adminstrar Imagenes
i ncl ude

(from Conexion) (from Contenidos)

AdministrarArticulos

(from Contenidos) (from Contenidos)

Figura 9. Diagrama de Casos de Uso

67

7.8.

Descripcion de los Casos de Uso, Prototipados de Pantalla, Diagramas de Robustez y Diagramas de Secuencia por cada Caso de Uso.

7.8.1.

Caso de Uso: Administrar Mens Cdigo C.U: 0001

Nombre C.U: ADMINISTRAR MENS Req. Funcional: Objetivo(s): RF0008

Permitir al administrador crear, modificar, eliminar, visualizar y buscar mens, de forma dinmica en la plataforma.

Descripcin:

El

administrador

podr

administrar

los

mens

distribuyndolos

adecuadamente para que faciliten la

navegabilidad dentro de la plataforma. Actor(s): Tipo Caso Uso: Pre-condiciones: Post-condiciones: Administrador Sistema -Haber ejecutado el caso de uso autentificar usuario -Se ha administrado correctamente los mens existentes dentro de la plataforma. FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin Crear) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Menu y MenuItem. 2. La plataforma muestra la pgina MenuList.seam, y enlista los mens creados previamente. 3. El administrador hace click en el botn Crear. 4. La plataforma muestra la pgina MenuEdit.seam. 5. El administrador ingresa el nombre del PLATAFORMA

68

men, una breve descripcin, el estado del men (habilitado o deshabilitado) y hace click en el botn Guardar. 6. La plataforma verifica campos vacios, que el nombre del men sea nico guarda los datos en la base de datos y muestra la pgina Menu.seam en donde se despliegan un mensaje Creado con xito, a ms de un detalle de los datos del men creado. 7. El administrador hace click en el botn Nuevo. 8. La plataforma muestra la pgina MenuList.seam. 9. (Opcin Editar) El administrador en pgina MenuList.seam visualiza un

listado de los mens creados y en la columna Opciones selecciona la opcin Editar o Eliminar del men a editar. 10. La plataforma despliega la

pgina MenuEdit.seam y carga en un formulario el detalle del men seleccionado. 11. El administrador modifica los datos y hace click en el botn Guardar. 12. La plataforma verifica campos vacios, que el nombre del men sea nico guarda los datos en la base de datos y muestra la pgina Menu.seam despliegan en un donde se

mensaje

69

Actualizado con xito, a ms de un detalle de los datos del men modificado y los Items asignados. 13. El administrador hace click en el botn Nuevo. 14. La plataforma muestra la pgina MenuList.seam. 15. (Opcin Eliminar) El administrador en pgina MenuList.seam visualiza un

listado de los mens creados y en la columna Opciones selecciona la opcin Editar o Eliminar del men a eliminar. 16. La plataforma despliega la

pgina MenuEdit.seam, carga en un formulario el detalle del men seleccionado y muestra los

MenuItems vinculados a ese men en caso de existir. 17. El administrador hace click en el botn Eliminar. 18. La plataforma elimina el men seleccionado conjuntamente con todos los datos vinculados al mismo, de la base de datos, despliega MenuList.seam, la pgina muestra un

mensaje Borrado con xito y un listado de los mens creados. 19. (Opcin Buscar) El administrador en la pgina MenuList.seam dentro del panel ingresa el criterio de bsqueda del men

70

deseado y hace click en el botn Buscar Menu. 20. La plataforma enlista los mens que coinciden con el criterio de bsqueda. 21. (Opcin Visualizar) El administrador en la pgina MenuList.seam visualiza un listado de los menus creados, en la columna Opciones selecciona la opcin Visualizar. 22. La plataforma muestra la pgina Menu.seam con los datos del men seleccionado

conjuntamente con los Items asignados. 23. El caso de uso finaliza. FLUJO ALTERNOS DE EVENTOS A. CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos B. MEN YA EXISTENTE B.5. La plataforma muestra el mensaje Existe otro men registrado con este nombre en la plataforma B.6. El caso de uso contina en el numeral 5 del flujo normal de eventos C. CAMPOS OBLIGATORIOS VACIOS C.11. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos C.12. El caso de uso contina en el numeral 11 del flujo normal de eventos D. MEN YA EXISTENTE D.11. La plataforma muestra el mensaje Existe otro men registrado con este nombre en la plataforma

71

D.12. El caso de uso contina en el numeral 11 del flujo normal de eventos. Prototipados de Pantalla CU: Administrar Mens Opcion Buscar Opcion Crear

Opcion Editar y Eliminar

Opcion Visualizar

72

Cursos Alternos

73

DR001 CU: Administrar Mens


uc ADMINISTRAR MENUS
Opcion Crear Menu

Back_End.seam

MenuList.seam

Instanciar Menu Menu

Selec "Administrar Menu y MenuItem" Click "Crear" Ingresa Datos Click "Guardar"

MenuEdit.seam

Verificar Campos Vacios Mensaje "Ingrese los datos requeridos en los campos" Verificar Nombre Menu

Administrador

"Nuevo" Mensaje "Existe otro menu registrado con este nombre en la plataforma" Menu.seam Guardar Menu Mensaje "Creado con exito" MenuList.seam

Opcion Editar Menu

Visualiza

MenuList.seam

Cargar Menus Creados

"Opciones" Selec "Editar" Modifica Datos Click "Guardar" MenuEdit.seam Administardor Mensaje "Ingrese los datso requeridos en los campos" Verificar Campos Instanciar Menu

Menu

Mensaje "Existe otro menu registrado con este menu en la plataforma" Menu.seam

Verificar Nombre Menu

Mensaje "Actualizado con exito"


Opcion Eliminar Menu

Guardar

Visualiza

MenuList.seam

Cargar Menus Creados Menu

Selec "Editar o Eliminar" Select "Eliminar" MenuEdit.seam Administrador Eliminar Instanciar Menu

MenuList.seam Mensaje "Eliminado con exito"

Opcion Buscar Menu

MenuList.seam Ingresa Criterio de Busqueda Click "Iniciar Busqueda" Administrador

Cargar Menus Creados

Menu

Buscar Menus

Opcion Visualizar Menu

Mostrar Coincidencias

MenuList.seam "Opciones" Select "Visualizar" Cargar Menus Creados Menu

Administrador

Mostrar Menu.seam

Figura 10. Diagrama de Robustez CU: Administrar Mens

74

DS001 CU: Administrar Mens


sd ADM INISTRAR M ENU (CREAR)

sd ADMINISTRAR MENUITEM(CREAR)
Adm i ni strador Back_End.seam

1.

2. 3. 4. 5.

(Opcin Crear) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Menu y MenuItem. La plataforma muestra la pgina MenuList.seam, y enlista los mens creados previamente. El administrador hace click en el botn Crear. La plataforma muestra la pgina MenuEdit.seam. El administrador ingresa el nombre del men, una breve descripcin, el estado del men (habilitado o deshabilitado) y hace click en el botn Guardar. La plataforma verifica campos vacios, que el nombre del men sea nico guarda los datos en la base de datos y muestra la pgina Menu.seam en donde se despliegan un mensaje Creado con xito, a ms de un detalle de los datos del men creado. El administrador hace click en el botn Nuevo. La plataforma muestra la pgina MenuList.seam.

[M enu Pri nci pal

sel ec Adm ni strar M enu y M enu Item ]:

new() M enuLi st.seam new() M enuLi st getResul tLi st() :Li st<M enu>

new() M enu [cargarLi stadoM enu]:

[cl i ck ""crear"]:

M enuEdi t.seam new() M enuHom e i sM anaged() :Bool ean

6.

[i ngresa datos cl i ck "Guardar"]:

[veri fi car cam pos vaci os]:

"Ingrese l os datos requeri dos en l os cam pos"

[nom bre m enu ya regi strado]: new()


Exi ste otro m enu regi strado con este nom bre en el si stem a

M enuActi on

exi stT hi sM enu(m enu:m enu) :Bool ean

7. 8.

new() Query new() Enti tyM anager

enti tyM anager.CreateQuery(sentenci asParaBusquedaM enu:Stri ng) :Query :Query

CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos MEN YA EXISTENTE B.5. La plataforma muestra el mensaje Existe otro men registrado con este nombre en la plataforma B.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

persi st() :Stri ng

new() M enu getInstance() :M enu

[M ensaj e "Creado con exi to"]:

[cl i ck "Nuevo"]:

Figura 11. Diagrama de Secuencia CU: Administrar Mens (Crear)

75

sd ADM INIST RAR M ENU (M ODIFICAR)

sd ADMINISTRAR MENU(EDITAR)
Adm i ni strador Back_End.seam [M enu Pri nci pal sel ec Adm ni strar M enu y M enu Item ]:

1. (Opcin Editar) El administrador en pgina MenuList.seam visualiza un listado de los mens creados y en la columna Opciones selecciona la opcin Editar o Eliminar del men a editar. 2. La plataforma despliega la pgina MenuEdit.seam y carga en un formulario el detalle del men seleccionado. 3. El administrador modifica los datos y hace click en el botn Guardar. 4. La plataforma verifica campos vacios, que el nombre del men sea nico guarda los datos en la base de datos y muestra la pgina Menu.seam en donde se despliegan un mensaje Actualizado con xito, a ms de un detalle de los datos del men modificado y los Items asignados. 5. El administrador hace click en el botn Nuevo. 6. La plataforma muestra la pgina MenuList.seam. CAMPOS OBLIGATORIOS VACIOS C.11. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos C.12. El caso de uso contina en el numeral 11 del flujo normal de eventos MEN YA EXISTENTE D.11. La plataforma muestra el mensaje Existe otro men registrado con este nombre en la plataforma D.12. El caso de uso contina en el numeral 11 del flujo normal de eventos.

new() M enuLi st.seam new() M enuLi st getResul tLi st() :Li st<M enu>

new() M enu [cargarLi stadoM enu]:

[Opci ones cl i ck "Edi tar"]:

M enuEdi t.seam new() M enuHom e i sM anaged() :Bool ean

getInstance() :M enu

[cargar datos m enu actual ]:

[m odi fi ca datos cl i ck "Guardar"]:

[veri fi car cam pos vaci os]:

"Ingrese l os datos requeri dos en l os cam pos"

[nom bre m enu ya regi strado]: new()


Exi ste otro m enu regi strado con este nom bre en el si stem a

M enuActi on

exi stT hi sM enu(m enu:m enu) :Bool ean

new() Query new() Enti tyM anager

enti tyM anager.CreateQuery(sentenci asParaBusquedaM enu:Stri ng) :Query :Query

update() : Stri ng

new() M enu getInstance() :M enu

[M ensaj e "M odi fi cado con exi to"]:

[cl i ck "Nuevo"]:

Figura 12. Diagrama de Secuencia CU: Administrar Mens (Editar)

76

sd ADMINISTRAR MENU (ELIMINAR)

sd ADMINISTRAR MENU(ELIMINAR)
Administrador Back_End.seam

1. (Opcin Eliminar) El administrador en pgina MenuList.seam visualiza un listado de los mens creados y en la columna Opciones selecciona la opcin Editar o Eliminar del men a eliminar. 2. La plataforma despliega la pgina MenuEdit.seam, carga en un formulario el detalle del men seleccionado y muestra los MenuItems vinculados a ese men en caso de existir. 3. El administrador hace click en el botn Eliminar. 4. La plataforma elimina el men seleccionado conjuntamente con todos los datos vinculados al mismo, de la base de datos, despliega la pgina MenuList.seam, muestra un mensaje Borrado con xito y un listado de los mens creados

[Menu Principal selec Admnistrar Menu y Menu Item]:

new() MenuList.seam new() MenuList getResultList() :List<Menu>

new() Menu [cargarListadoMenu]:

[Opciones click "Editar"]:

MenuEdit.seam new() MenuHome isManaged() :Boolean

getInstance() :Menu

[cargar datos menu actual]:

[modifica datos click "Eliminar"]:

remove() : String

[Mensaje "Eliminado con exito"]:

Figura 13. Diagrama de Secuencia CU: Administrar Mens (Eliminar)

77

s d ADM INIST RAR M ENU (BUSCAR)

sd ADMINISTRAR MENU(BUSCAR Y VISUALIZAR)


Ad m i n i s tra d o r Ba ck En d .s a m _ e

1.

2. 3.

4.

(Opcin Buscar) El administrador en la pgina MenuList.seam dentro del panel ingresa el criterio de bsqueda del men deseado. La plataforma enlista los mens que coinciden con el criterio de bsqueda. (Opcin Visualizar) El administrador en la pgina MenuList.seam visualiza un listado de los menus creados, en la columna Opciones selecciona la opcin Visualizar. La plataforma muestra la pgina Menu.seam con los datos del men seleccionado conjuntamente con los Items asignados.

[M e n u Pri n ci p a l

s l e c Ad m n i s e tra r M e n u y M e n u Ite m ]:

n e w() M enuLi s t.s a m e n e w() M enuLi s t g e tRe s l tL i s u t() :L i s t<M e n u >

n e w() M enu [ca rg a rL i s ta d o M e n u ]:

[i n g re s a cri te ri o

cl i ck " In i ci a r Bu s u e d a " ]: q

g e tRe s l tL i s u t() :L i s t<M e n u >

[ca rg a rL i s ta d o Co i n ci d e n ci a s M e n u ]:

s d ADM INIST RAR M ENU (BUSCAR)

Ad m i n i s tra d o r

Ba ck En d .s a m _ e

[M e n u Pri n ci p a l

s l e c Ad m n i s e tra r M e n u y M e n u Ite m ]:

n e w() M enuLi s t.s a m e n e w() M enuLi s t g e tRe s l tL i s u t() :L i s t<M e n u >

n e w() M enu [ca rg a rL i s ta d o M e n u ]:

[i n g re s a cri te ri o

cl i ck " In i ci a r Bu s u e d a " ]: q

g e tRe s l tL i s u t() :L i s t<M e n u >

[ca rg a rL i s ta d o Co i n ci d e n ci a s M e n u ]:

Figura 14. Diagrama de Secuencia CU: Administrar Mens (Buscar y Visualizar)

78

7.8.2. Caso de Uso: Administrar MenuItem Nombre C.U: ADMINISTRAR MENUITEM Req Funcional: Objetivo(s): RF0009 Permitir al administrador crear, modificar, eliminar y visualizar MenuItems, asignarlo a un men y vincularlo a un artculo de forma dinmica en la plataforma. Descripcin: Se podr administrar los MenuItems agrupndolos y Cdigo C.U: 0002

distribuyndolos

adecuadamente dentro de los mens y de tal forma que faciliten la

vinculndolos con un artculo

navegabilidad al cliente en la plataforma. Actor(s): Tipo Caso Uso: Administrador Sistema

Pre-condiciones: -Haber ejecutado el caso de uso autentificar usuario -Haber ejecutado el caso de uso administrar mens -Haber ejecutado de uso administrar artculos Postcondiciones: -Se ha administrado correctamente los MenuItems que se enlazan con los artculos existentes dentro de la plataforma.

FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin Crear) El PLATAFORMA

administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar MenuItem. 2. La plataforma enlista los mens creados. 3. El administrador en la columna Opciones hace click en la opcin Editar 4. La plataforma muestra la pgina Menu y

MenuEdit.seam y muestra un listado de los

79

MenuItems asignados al men seleccionado. 5. El administrador hace click en el botn Agregar MenuItem. 6. La plataforma navega hacia la pgina MenuItemEdit.seam. 7. El administrador ingresa el nombre del MenuItem, una breve descripcin, selecciona un artculo, selecciona el orden que debe ocupar dentro del men y hace click en el botn Guardar. 8. La plataforma navega hacia la pgina MenuItem.seam en donde muestra un mensaje Creado con exito y un detalle del MenuItem creado. 9. El administrador hace click en el botn Nuevo. 10. La plataforma navega hacia a pgina Menu.seam. 11. (Opcin Editar) El

administrador en la pgina MenuList.seam en la columna Opciones selecciona la opcin Visualizar del men al que esta asignado el

MenuItem. 12. La plataforma navega hacia la pgina Menu.seam, en donde enlista todos los MenuItems asignados al men seleccionado. 13. El administrador en la columna Accion selecciona la accin

80

Ir a MenuItem del MenuItem elegido. 14. La plataforma navega hacia la pgina MenuItem.seam, en donde se detalla los

datos del MenuItem seleccionado. 15. El administrador hace click en el botn Editar o Eliminar. 16. La plataforma navega hacia

MenuItemEdit.seam, carga los datos del MenuItem seleccionado en un formulario. 17. El administrador modifica el nombre, el artculo vinculado, el orden que ocupa dentro del men o puede cambiar la asignacin de dicho MenuItem hacia otro men y hace click en el botn Guardar. 18. La plataforma verifica campos vacios, que el nombre del MenuItem sea nico, guarda los datos en la base de datos, navega hacia la pgina MenuItem.seam, muestra un mensaje Modificado con exito y muestra un detalle del MenuItem modificado. 19. El administrador hace click en el botn Otro. 20. (Opcin Eliminar) El

administrador en la pgina MenuList.seam en la columna Opciones selecciona la opcin Visualizar. 21. La plataforma navega hacia la pgina Menu.seam, en donde enlista todos los

81

MenuItems asignados al men seleccionado. 22. El administrador en la columna Accion selecciona la accin Ir a MenuItem del MenuItem elegido. 23. La plataforma navega hacia la pgina MenuItem.seam, en donde se detalla los

datos del MenuItem seleccionado. 24. El administrador hace click en el botn Editar o Eliminar. 25. La plataforma navega hacia

MenuItem.seam. 26. El administrador hace click en el botn Eliminar. 27. La plataforma elimina el MenuItem

seleccionado de la base de datos y muestra un mensaje Borrado con exito. 28. (Opcin Buscar) El

administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar MenuItem. 29. La plataforma navega hacia la pgina MenuList.seam. 30. El administrador ingresa el criterio de bsqueda y hace click en el botn Buscar MenuItem. 31. La plataforma navega hacia la pgina MenuItemList.seam, donde enlista todos los MenuItems creados que coincidan con el Menu y

82

criterio de bsqueda. 32. (Opcin Visualizar) ) El

administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar MenuItem. 33. La plataforma navega hacia la pgina MenuList.seam. 34. El administrador selecciona de la columna Opciones la opcin Visualizar, del men al que est asignado el Menu y

MenuItem a visualizar. 35. La plataforma navega hacia la pgina Menu.seam y muestra un listado de los MenuItems asignados a este men. 36. El administrador hace click en la opcin Ir a MenuItem. 37. La plataforma navega hacia la pgina MenuItem.seam y muestra los datos del MenuItem seleccionado. 38. El caso de uso finaliza FLUJO ALTERNOS DE EVENTOS A. CAMPOS OBLIGATORIOS VACIOS A.7. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.8. El caso de uso contina en el numeral 7 del flujo normal de eventos B. MENUITEM YA EXISTENTE B.7. La plataforma muestra el mensaje Existe otro MenuItem registrado con este nombre en la plataforma B.8. El caso de uso contina en el numeral 7 del flujo normal de eventos

83

C. CAMPOS OBLIGATORIOS VACIOS C.17. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos C.18. El caso de uso contina en el numeral 17 del flujo normal de eventos D. MENUITEM YA EXISTENTE D.17. La plataforma muestra el mensaje Existe otro MenuItem registrado con este nombre en la plataforma D.18. El caso de uso contina en el numeral 17 del flujo normal de eventos. Prototipdo de Pantalla CU: Administrar MenuItem Opcin Buscar MenuItem Opcin Agregar MenuItem

Opcin Editar y Eliminar

84

Opcion Visualizar

Cursos Alternos

85

DR002 CU: Administrar MenuItem


uc ADMINISTRAR MENUITEMS
Opci on Crear MenuItem

Back_End.seam Select "Administrar Menu y MenuItem" "Editar" "Opciones" Click

MenuList.seam

Cargar Listado Menus

Menu

Click "Agregar MenuItem" Ingresa Datos Click "Guardar"

MenuEdit.seam

Cargar MenuItems Creados Instanciar MenuItems

Administrador

Click "Nuevo" MenuItemEdit.seam Mensaje "Ingrese los datos requeridos en los campos" Mensaje "Existe otro MenuItem registrado con este nombre en la plataforma" Verificar Nombre Repetido Mensaje "Creado con exito" Verificar Campos Vacios

MenuItem.seam

Menu.seam

Opci on Edi tar MenuItem

"Opciones" Select "Editar" MenuList.seam "Accion" Select "Ir a MenuItem" Click "Editar o Eliminar" Click "Otro" MenuItem.seam Modifica datos Click "Guardar" Instanciar MenuItem Detallar Datos Menu.seam Cargar MenuItems Menu

Administrador

MenuItemEditseam Mensaje "Ingrese los datos requeridos en los campos"

Verificar Campos vacios

Verificar Nombre Mensaje "Existe otro MenuItem MenuItem con este nombre registrado en la plataforma"

Mensaje "Modificado con exito"


Opci on El i mi nar MenItem

MenuList.seam "Opciones" Select "Visualizar" "Accion" Select "Ir a MenuItem" Click "Editar o Eliminar" Click "Eliminar" Administrador MenuItem.seam MenuItemEdit.seam

Enlistar MenuItems Asignados Menu.seam

Menu

Detallar Datos

Mesaje "Borrado con exito"


Opci on Buscar MenuItem

Back_End.seam Select "Administrar Menu y MenuItem" Buscar MenuItems Ingresa Criterio de Busqueda Click "Iniciar Busqueda" Administrador MenuList.seam Menu

Opci on Vi sual i zar MenuItem

Mostra Coincidencias

Back_End.seam Select "Administrar Menu y MenuItem" "Opciones" Select "Visualizar" Click "Ir a MenuItem" Motrar Listado Administrador Menu.seam MenuList.seam

Menu

MenuItem.seam

Mostrar Datos

Figura 15. Diagrama de Robustez CU: Administrar MenuItem

86

DS002 CU: Administrar MenuItem


sd ADM INISTRAR M ENUITEM (CREAR)

sd ADMINISTRAR MENUITEM(CREAR)
Adm i ni strador Back_End.seam [M enuPri nci pal Sel ec "Adm i ni strar M enu y M enuItem "]:

1.

2. 3. 4.

5. 6. 7.

8.

9.

(Opcin Crear) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Menu y MenuItem. La plataforma enlista los mens creados. El administrador en la columna Opciones hace click en la opcin Editar La plataforma muestra la pgina MenuEdit.seam y muestra un listado de los MenuItems asignados al men seleccionado. El administrador hace click en el botn Agregar MenuItem. La plataforma navega hacia la pgina MenuItemEdit.seam. El administrador ingresa el nombre del MenuItem, una breve descripcin, selecciona un artculo, selecciona el orden que debe ocupar dentro del men y hace click en el botn Guardar. La plataforma navega hacia la pgina MenuItem.seam en donde muestra un mensaje Creado con exito y un detalle del MenuItem creado. El administrador hace click en el botn Nuevo.

new() M enuLi st.seam new() getResul tLi st() : Li st<M enu> M enuLi st

new() M enu [Cargal ar Li sta T ab]:

[ "Opci ones" Sel ect "Edi tar"]:

new() M enuEdi t.seam new() M enuHom e getInstance() :M enu

[Cargar Datos M enu]:

getM enuItem sAsi gnados() :Li st <M enuItem s>

[Carga Datos T abl a]:

[Agregar M enuItem ]:

new() M enuItem Edi t.seam new() M enuItem Hom e i sM anaged() :Bool ean

new() M enuItem new() M enuItem Acti on getArti cl esNam eLi st() :Li st<Sel ectItem >

new() Query new() Enti tyM anager enti tyM anager.createQuery(consul taObtenerLi stadoArti cul os:Stri ng) :Query

[Cargar Li sta Arti cul os]: new() ordersAvai bl es() :Li st<Sel ectItem s> Arti cul o

getM enuPropi etari o_m i () :M enu getM enuItem sAsi gnados() :Li sta <M enuItem s>

10. La plataforma navega hacia a pgina Menu.seam.


[Contabi l i zar M enuItem s Creados]: [Ingresa Datos Cl i ck "Guardar"]:

A. CAMPOS OBLIGATORIOS VACIOS A.7. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.8. El caso de uso contina en el numeral 7 del flujo normal de eventos B. MENUITEM YA EXISTENTE B.7. La plataforma muestra el mensaje Existe otro MenuItem registrado con este nombre en la plataforma B.8. El caso de uso contina en el numeral 7 del flujo normal de eventos

Ingrese l os datos requeri dos en l os cam pos

[Veri fi ca Cam pos]:

"Exi ste otro M enuItem regi strado con este nom bre en l a pl ataform a"

[Veri fi ca M enuItem ya Regi strado]: exi stT hi sM enuItem (m enuItem :M enuItem ) : Bool ean enti tyM anager.createQuery(sentenci aBusquedaM enuItem : Stri ng) :Query setInstance() :M enuItem

new() StatusM essages persi st() :Stri ng

new() M enuItem .seam getInstance() :M enuItem

[M ensaj e "Creado con exi to"]: [Cl i ck "Nuevo"]:

getM enuPropi etari o_m i () :M enu

getM enuItem sAsi gnados() :Li st<M enuItem s>

[Contabi l i za M enuItem s Obteni dos]:

Figura 16. Diagrama de Secuencia CU: Administrar MenuItem (Crear)

87

sd ADMINISTRAR MENUITEM(EDITAR)

sd ADMINISTRAR MENUITEM(EDITAR)

Admi ni strador

Back_End.seam

new()

1.

2.

3.

(Opcin Editar) El administrador en la pgina MenuList.seam en la columna Opciones selecciona la opcin Visualizar del men al que esta asignado el MenuItem. La plataforma navega hacia la pgina Menu.seam, en donde enlista todos los MenuItems asignados al men seleccionado. El administrador en la columna Accion selecciona la accin Ir a MenuItem del MenuItem elegido. La plataforma navega hacia la pgina MenuItem.seam, en donde se detalla los datos del MenuItem seleccionado. El administrador hace click en el botn Editar o Eliminar. La plataforma navega hacia MenuItemEdit.seam, carga los datos del MenuItem seleccionado en un formulario. El administrador modifica el nombre, el artculo vinculado, el orden que ocupa dentro del men o puede cambiar la asignacin de dicho MenuItem hacia otro men y hace click en el botn Guardar. La plataforma verifica campos vacios, que el nombre del MenuItem sea nico, guarda los datos en la base de datos, navega hacia la pgina MenuItem.seam, muestra un mensaje Modificado con exito y muestra un detalle del MenuItem modificado. El administrador hace click en el botn Otro.

MenuLi st.seam new() getResul tLi st() : Li st<Menu> MenuLi st

new() MenuHome [Cargar Li sta T abl a]: [MenuPri nci pal "Admi ni strar Menu y MenuItems"]:

["Opci ones" Sel ect "Vi sual i zar"]:

new() Menu.seam new() MenuHome getInstance() :Menu

getMenuItemsAsi gnados() :Li st<MenuItems>

4.

new() Menu [Carga Datos T abl a]:

5. 6.

["Acci on" Sel ect "Ir a"]:

new() MenuItem.seam new() MenuItemHome getIstance() :MenuItem

[Sel ec "Edi tar o El i mi nar"]:

7.

new() MenuItemEdi t.seam new() MenuItemActi on i sManaged() :Bool ean getIsntance() :MenuItem getArti cl eNameLi st() :Li st<Sel ectItems>

new()

8.

Query new() enti tyManager.createQuery(sentenci aLi stadoArti cul os: Stri ng) :Query Enti tyManager

new() Arti cul o [Cargar Li sta Arti cul os]: new() MenuItem getMenuItemsAsi gnados() :Li sta<MenuItems> OrderAvai bl es() :Li st<Sel ectItems>

9.

getMenuPropi etari o_mi () :Menu

[Contabi l i zar MenuItems Creados]:

CAMPOS OBLIGATORIOS VACIOS C.17. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos C.18. El caso de uso contina en el numeral 17 del flujo normal de eventos MENUITEM YA EXISTENTE D.17. La plataforma muestra el mensaje Existe otro MenuItem registrado con este nombre en la plataforma D.18. El caso de uso contina en el numeral 17 del flujo normal de eventos.

[Modi fi ca Datos Cl i ck "Guardar"]:

Ingrese l os datos requeri dos en l os campos [Veri fi ca Campos Vaci os]:

Exi ste otro MenuItem regi strado con este nombre en l a pl ataforma

[Veri fi ca MenuItem Regi strados]:

exi stT hi sMenuItem(menuItem:MenuItem) :Bool ean

enti tyManager.createQuery(sentenci aBusquedaMenuItem:Sttri ng) :Query

update() :Stri ng

new() StatusMessage

getInstance() :MenuItem

[Mensaj e "Actual i zado con exi to"]:

Figura 17. Diagrama de Secuencia CU: Administrar MenuItem (Editar)

88

sd ADMINISTRAR MENUITEM(ELIMINAR)

sd ADMINISTRAR MENUITEM(ELIMINAR)
Administrador Back_End.seam [Menu Principal "Administrar Menu y MenuItems"]: new() MenuList.seam new() MenuList new() Menu ["Opciones" Select "Visualizar"]:

getResultList() :List<Menu>

(Opcin Eliminar) El administrador en la pgina MenuList.seam en la columna Opciones selecciona la opcin Visualizar. La plataforma navega hacia la pgina Menu.seam, en donde enlista todos los MenuItems asignados al men seleccionado. El administrador en la columna Accion selecciona la accin Ir a MenuItem del MenuItem elegido. La plataforma navega hacia la pgina MenuItem.seam, en donde se detalla los datos del MenuItem seleccionado. El administrador hace click en el botn Editar o Eliminar. La plataforma navega hacia MenuItem.seam. El administrador hace click en el botn Eliminar. La plataforma elimina el MenuItem seleccionado de la base de datos y muestra un mensaje Borrado con exito.

[Cargar Lista]:

new() Menu.seam new() MenuHome getIstance() :Menu getMenuItemsAsignados() :List<MenuItems>

["Accion" Select "Ir a"]:

new() MenuItem.seam new() getIstance() :MenuItem MenuItemHome

[Click "Editar"]:

new() MenuItemEdit.seam new() getIstance() :MenuItem MenuItem

isManaged() :Boolean

new() MenuItemAction getArticleNameList() :Lista<SelectItems>

new() Query new() EntityManager entityManager.createQuery(sentenciaListadoArticulos:String) :Query

new() Articulo ordersAvaible() :List<SelectItem>

getMenuPropietario() :Menu

new() Menu getMenuItemsAsignados() :List<MenuItems>

[Contabilizar MenuItems Creados]:

[Click "Eliminar"]:

remove() :String

[Mensaje "Eliminado con exito"]:

Figura 18. Diagrama de Secuencia CU: Administrar MenuItem (Eliminar)

89

sd ADMINISTRAR MENUITEM(BUSCAR Y VISUALIZAR)

sd ADMINISTRAR MENUITEM(BUSCARYVISUALIZAR)
Administrador
Opcion Buscar

Back_End.seam

1.

2. 3. 4.

(Opcin Buscar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Menu y MenuItem. La plataforma navega hacia la pgina MenuList.seam. El administrador ingresa el criterio de bsqueda y hace click en el botn Buscar MenuItem. La plataforma navega hacia la pgina MenuItemList.seam, donde enlista todos los MenuItems creados que coincidan con el criterio de bsqueda. (Opcin Visualizar) ) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Menu y MenuItem. La plataforma navega hacia la pgina MenuList.seam. El administrador selecciona de la columna Opciones la opcin Visualizar, del men al que est asignado el MenuItem a visualizar. La plataforma navega hacia la pgina Menu.seam y muestra un listado de los MenuItems asignados a este men. El administrador hace click en la opcin Ir a MenuItem. La plataforma navega hacia la pgina MenuItem.seam y muestra los datos del MenuItem seleccionado. El caso de uso finaliza

[Menu Principal "Administrar Menu y MenuItem"]:

new() MenuList.seam

[Click "Buscar MenuItem"]:

new() MenuItemList.seam

[ingresaCriterio Click "Buscar"]: new() MenuItemHome getResultList() :List<MenuItem>

Opcion Visualizar

1.

[Menu Principal "Administrar Menu y MenuItem"]:

2. 3.

new() MenuHome getResultList() :List<Menu>

new() Menu

[Click "Visualizar"]:

4.

new() Menu.seam getInstance() :Menu

5. 6.

getMenuItemsAsignados() :List<MenuItems>

new() MenuItem [Click "Ir a"]:

new() MenuItem.seam getIstance() :MenuItem

Figura 19. Diagrama de Secuencia CU: Administrar MenuItem (Buscar y Visualizar)

90

7.8.3. Caso de Uso: Administrar Artculos Nombre C.U: ADMINISTRAR ARTICULOS Req. Funcional: Objetivo(s): RF0007 Permitir al administrador crear, modificar, eliminar, visualizar y buscar artculos informativos Descripcin: Se podr administrar de forma dinmica los Artculos creados en la plataforma. Actor(s): Tipo Caso Uso: Precondiciones: Postcondiciones: -Se ha administrado correctamente los artculos existentes dentro de la plataforma. Administrador Sistema -Haber ejecutado el caso de uso autentificar usuario Cdigo C.U: 0003

FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin Crear) El PLATAFORMA

administrador en la pgina Back_end.seam opcin Articulos. 2. La plataforma navega y hacia carga la un pgina listado selecciona Administrar

en el Menu Principal, la

ArticuloList.seam

detallando los artculos creados. 3. El administrador hace click en el botn Crear. 4. La plataforma navega hacia la pgina

ArticuloEdit.seam. 5. El administrador llena los datos requeridos en el el

formulario,

ingresa

91

contenido del artculo dentro del editor de texto, si desea incluir imgenes dentro del artculo hace click en el cono insertar o editar

imgenes del editor de texto del formulario. 6. La plataforma ejecuta el caso de uso Administrar Imagenes. 7. Si el administrador desea insertar un link selecciona la porcin de texto o la imagen a la cul le desea incluir el link y hace click en el cono Insertar Link de la barra de herramientas del editor de texto del formulario. 8. La plataforma ejecuta el caso de uso Administrar Enlaces. 9. El administrador hace click en el botn Guardar. 10. La plataforma verifica los campos vacos, verifica el nombre, habilita los mecanismos de persistencia para guardar los datos del Artculo creado en la base de datos, navega hacia la pgina Articulo.seam y muestra un mensaje Creado con exito. 11. El administrador hace click en el botn Nuevo. 12. La plataforma navega hacia la pgina

ArticuloList.seam. 13. (Opcin Editar) ) El

92

administrador en la pgina Back_end.seam opcin Articulos. 14. La plataforma navega y hacia carga la un pgina listado selecciona Administrar

en el Menu Principal, la

ArticuloList.seam

detallando los artculos creados. 15. El administrador selecciona de la columna Opciones la opcin Editar del artculo que va ha ser modificado. 16. La plataforma navega hacia la pgina

ArticuloEdit.seam y muestra un formulario con todos los datos del artculo seleccionado. 17. El administrador modifica los datos que desea en el formulario y hace click en el botn Guardar. 18. La plataforma verifica los campos vacos, verifica el nombre, habilita los mecanismos de persistencia para guardar los datos del Artculo modificado en la base de datos, navega hacia la pgina Articulo.seam y muestra un mensaje Modificado con exito. 19. El administrador hace click en el botn Nuevo 20. La plataforma navega hacia la pgina

ArticuloList.seam. 21. (Opcin Eliminar) El

administrador en la pgina Back_end.seam selecciona

93

en el Menu Principal, la opcin Articulos. 22. La plataforma navega y hacia carga la un pgina listado Administrar

ArticuloList.seam

detallando los artculos creados. 23. El administrador selecciona de la columna Opciones el Artculo a eliminar y elige la opcin Editar. 24. La plataforma navega hacia la pgina

ArticuloEdit.seam, y muestra en un formulario los datos del artculo a eliminar. 25. El administrador hace click en el botn Eliminar. 26. La plataforma habilita los mecanismos de persistencia para eliminar los datos del Artculo elegido de la base de datos, navega hacia la pgina ArticuloList.seam, actualiza el listado de Artculos y muestra un mensaje Eliminado con exito. 27. (Opcin Buscar ) El

administrador en la pgina Back_end.seam opcin Articulos. 28. La plataforma navega hacia la pgina selecciona Administrar

en el Menu Principal, la

ArticuloList.seam, y carga un listado de los artculos creados. 29. El administrador ingresa el criterio de bsqueda y hace

94

click en el botn Buscar Articulo 30. La plataforma navega hacia la pgina

ArticuloList.seam, donde enlista todos los Artculos creados que coincidan con el

criterio de bsqueda ingresado. 31. (Opcin Visualizar) El

administrador en la pgina Back_end.seam opcin Articulos. 32. La plataforma navega hacia la pgina selecciona Administrar

en el Menu Principal, la

ArticuloList.seam, y muestra un listado de los artculos creados. 33. El administrador selecciona de la columna Opciones la opcin Visualizar del

articulo a visualizar. 34. La plataforma navega hacia la pagina

Articulo.seam, y muestra en un formulario los datos del articulo seleccionado. 35. El administrador visualiza el artculo y hace click en el botn Regresar. 36. La plataforma navega hacia la pgina

ArticuloList.seam. 37. (Opcin Seleccionar

Portada) El administrador en la pgina ArticuloList.seam hace click sobre el botn Seleccionar Portada.

95

38. La plataforma abre un cuadro de dialogo. 39. El administrador ingresa el nombre del artculo que va a ser la portada y hace de la click

plataforma

sobre el botn Guardar. 40. La plataforma actualiza la portada en la base de datos. 41. El caso de uso finaliza FLUJO ALTERNOS DE EVENTOS

A. CAMPOS OBLIGATORIOS VACIOS A.9. El sistema muestra el mensaje Ingrese los datos requeridos en los campos A.10. El caso de uso contina en el numeral 9 del flujo normal de eventos

B. ARTCULO YA EXISTENTE B.9. El sistema muestra el mensaje Nombre del Artculo ya existe en la plataforma B.10. El caso de uso contina en el numeral 9 del flujo normal de eventos C. CAMPOS OBLIGATORIOS VACIOS C.17. El sistema muestra el mensaje Ingrese los datos requeridos en los campos C.18. El caso de uso contina en el numeral 17 del flujo normal de eventos D. ARTCULO YA EXISTENTE D.17. El sistema muestra el mensaje Nombre del Artculo ya existe en la plataforma D.18. El caso de uso contina en el numeral 17 del flujo normal de eventos

96

Prototipados de Pantalla CU: Administrar Articulos Opcin Buscar Opcin Crear

Opcin Visualizar

Opcin Editar y Eliminar

97

Cursos Alternos

98

DR003 CU: Administrar Artculo


uc ADM INISTRAR ARTICULO

Opci on Crear Arti cul o

Back_End.seam M enu Pri nci pal opci on "Adm i ni strar Arti cul os" Cl i ck "Crear" Arti cul oLi st.seam

Cargar Li stado

Arti cul o Administrar Imagenes Administrar Enlaces

Ll ena datos, Inserta Im agen o enl ace Cl i ck "Guardar" Arti cul oEdi t.seam Administrador M ensaj e "Ingrese l os datos requeri dos en l os cam pos" Instanci ar Arti cul o

Arti cul o

Cl i ck "Nuevo"

Veri fi car Cam pos M ensaj e "Nom bre del arti cul o ya exi ste en l a pl ataform a" Arti cul o.seam Veri fi car Nom bre Guardar Datos

Arti cul oLi st.seam M ensaj e "Creado con exi to"

Opci on Edi tar Arti cul o

Back_end.seam M enu Pri nci pal "Adm i ni strar Arti cul o" "Opci ones" Sel ect "Edi tar" Arti cul oLi st.seam M odi fi ca datso Cl i ck "Guardar" Administrador

Cargar Li stado

Arti cul o

Cargar Arti cul o Sel ecci onado Cl i ck "Nuevo" Arti cul oEdi t.seam Instanci ar Arti cul o

M ensaj e "Ingrese l os datos requeri dos en Veri fi car Cam pos l os cam pos"

Arti cul o.seam

M ensaj e "Nom bre delVeri fi car Nom bre Arti cul o ya exi ste en l a pl ataform a"

Guardar Datos

Arti cul oLi st.seam

M ensaj e "M odi fi cado con exi to"

Opci on El i m i nar Arti cul o

Back_end.seam M enu Pri nci pal "Adm i ni strar Arti cul o" "Opci ones" Sel ect "Edi tar" Arti cul oLi st.seam

Cargar Li stado

Arti cul o

Cl i ck "El i m i nar" Administrador

Cargar Arti cul o Sel ecci onado Arti cul oEdi t.seam

El i m i nar Arti cul o

Arti cuoLi st.seam

M ensaj e "El i m i nado con exi to"

Opci on Buscar Arti cul o

Back_End.seam M enu Pri nci pal "Adm i ni strar Arti cul o" Ingresa Cri teri o de Busqueda Cl i ck "Buscar Arti cul o" Arti cul oLi st.seam

Cargar Li stado Arti cul o

Cargar Arti cul os Encontrados

Administrador

Instanci ar Arti cul o

Opci on Vi sual i zar Arti cul o

Back_End.seam M enu Pri nci pal "Adm i ni strar Arti cul o"

Cargar Li stado

Arti cul o

"Opci ones" Sel ect "Vi sual i zar" Arti cul oLi st.seam Administrador M ostrar Form ul ari o

Instanci ar Arti cul o

Opci on Sel ecci onar Portada

Arti cul oLi st.seam Cl i ck "sel ecci onar Portada" Sel ect Arti cul o Cl i ck "Guardar"

Cargar Li stado

Arti cul o

Sel ecci onar Portada Administrador

Actual i zar Portada

Portada

Instanci ar Portada

Figura 20. Diagrama de Robustez CU: Administrar Articulo

99

DS003 CU: Administrar Articulo


sd ADMINISTRAR ARTICULO (CREAR)
sd ADMINITRAR ARTICULOS (CREAR)

Administrador

Back_End.seam

1.

2.

3. 4. 5.

(Opcin Crear) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Articulos. La plataforma navega hacia la pgina ArticuloList.seam y carga un listado detallando los artculos creados. El administrador hace click en el botn Crear. La plataforma navega hacia la pgina ArticuloEdit.seam. El administrador llena los datos requeridos en el formulario, ingresa el contenido del artculo dentro del editor de texto, si desea incluir imgenes dentro del artculo hace click en el cono insertar o editar imgenes del editor de texto del formulario. La plataforma ejecuta el caso de uso Administrar Imagenes. Si el administrador desea insertar un link selecciona la porcin de texto o la imagen a la cul le desea incluir el link y hace click en el cono Insertar Link de la barra de herramientas del editor de texto del formulario. La plataforma ejecuta el caso de uso Administrar Enlaces. El administrador hace click en el botn Guardar. La plataforma verifica los campos vacos, verifica el nombre, habilita los mecanismos de persistencia para guardar los datos del Artculo creado en la base de datos, navega hacia la pgina Articulo.seam y muestra un mensaje Creado con exito. El administrador hace click en el botn Nuevo. La plataforma navega hacia la pgina ArticuloList.seam.

[Menu Principal "Administrar Articulos"]:

new() ArticuloList.seam new() getResultList() : List<Articulo> ArticuloList

[Crgar Articulo]:

new() Articulo

[Click "Crear"]:

new() ArticuloEdit.seam new() isManaged() :Boolean ArticuloHome

6. 7.

[Ingresa Datos Click "Guardar"]: Administrar Imagenes Administrar Enlaces


"Ingrese los datos requeridos en los campos"

8. 9. 10.

[Verifica Campos]:
"Nombre del articulo ya registrado"

[Verifica nombre]: persist() :String

new() ArticuloAction thisArticleExist(a:Articulo)

new() Query entityManager.createQuery(sentenciaBusquedaArticulo) :Query

11. 12.

new() EntityManager new()

CAMPOS OBLIGATORIOS VACIOS A.9. El sistema muestra el mensaje Ingrese los datos requeridos en los campos A.10. El caso de uso contina en el numeral 9 del flujo normal de eventos B. ARTCULO YA EXISTENTE B.9. El sistema muestra el mensaje Nombre del Artculo ya existe en la plataforma B.10. El caso de uso contina en el numeral 9 del flujo normal de eventos
new() [Click "Nuevo"]: Articulo

Articulo.seam getInstance() :Articulo

[Mensaje "Creado con exito"]:

Figura 21. Diagrama de Secuencia CU: Administrar Articulo (Crear)

100

sd ADMINISTRAR ARTICULOS (EDITAR)

sd ADMINISTRAR ARTICULO (EDITAR)


Administrador Back-End.seam

1.

2.

3.

4.

5. 6.

7. 8.

(Opcin Editar) ) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Articulos. La plataforma navega hacia la pgina ArticuloList.seam y carga un listado detallando los artculos creados. El administrador selecciona de la columna Opciones la opcin Editar del artculo que va ha ser modificado. La plataforma navega hacia la pgina ArticuloEdit.seam y muestra un formulario con todos los datos del artculo seleccionado. El administrador modifica los datos que desea en el formulario y hace click en el botn Guardar. La plataforma verifica los campos vacos, verifica el nombre, habilita los mecanismos de persistencia para guardar los datos del Artculo modificado en la base de datos, navega hacia la pgina Articulo.seam y muestra un mensaje Modificado con exito. El administrador hace click en el botn Nuevo La plataforma navega hacia la pgina ArticuloList.seam.

[Menu Principal "Administrar Articulos"]:

new() ArticuloList.seam new() ArticuloList getResultList() :List<Articulos> new() Articulo ["Opciones" Select "Editar"]:

new() ArticuloEdit.seam new() ArticuloHome isManaged() :Boolean

getInstance() :Articulo

Administrar Imagenes Administrar Enlaces

[Carga Datos]:

[Modifica Datos Click "Guardar"]:

persist() :String

"Ingrese los datos requeridos en los campos"

[Verifica Campos]:

[Verifica Nombre]:
"Nombre de articulo ya registrado"

new() ArticuloAction thisArticleExist(articulo:Articulo) :Boolean

CAMPOS OBLIGATORIOS VACIOS C.17. El sistema muestra el mensaje Ingrese los datos requeridos en los campos C.18. El caso de uso contina en el numeral 17 del flujo normal de eventos D. ARTCULO YA EXISTENTE D.17. El sistema muestra el mensaje Nombre del Artculo ya existe en la plataforma D.18. El caso de uso contina en el numeral 17 del flujo normal de eventos

new() Query entityManager.createQuery(BuscarArticulo:String) :Query

new() EntityManager

Articulo getInstance() :Articulo

[Mensaje "Modificado con exito"]:

[Click "Nuevo"]:

Figura 22. Diagrama de Secuencia CU: Administrar Articulo (Editar)

101

sd ADMINISTRAR ARTICULO(ELIMINAR)

sd ADMINISTRAR ARTICULO (ELIMINAR)


Administrador Back_End.seam

1. (Opcin Eliminar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Articulos. 2. La plataforma navega hacia la pgina ArticuloList.seam y carga un listado detallando los artculos creados. 3. El administrador selecciona de la columna Opciones el Artculo a eliminar y elige la opcin Editar. 4. La plataforma navega hacia la pgina ArticuloEdit.seam, y muestra en un formulario los datos del artculo a eliminar. 5. El administrador hace click en el botn Eliminar. 6. La plataforma habilita los mecanismos de persistencia para eliminar los datos del Artculo elegido de la base de datos, navega hacia la pgina ArticuloList.seam, actualiza el listado de Artculos y muestra un mensaje Eliminado con exito.

[Menu Principal selec AdmnistrarArticulos]:

new() ArticuloList.seam new() ArticuloList getResultList() :List<Articulo>

new() Articulo [cargarListadoArticulo]:

[Opciones click "Editar"]:

ArticuloEdit.seam new() ArticuloHome isManaged() :Boolean

getInstance() :Menu

[cargar datos Articulo actual]:

[modifica datos click "Eliminar"]:

remove() : String

[Mensaje "Eliminado con exito"]:

Figura 23. Diagrama de Secuencia CU: Administrar Articulo (Eliminar)

102

sd ADM INISTRAR ARTICULO(BUSCAR)

sd ADMINISTRAR ARTICULO (BUSCAR)


Adm i ni strador Back_End.seam

1.

2.

3. 4.

(Opcin Buscar ) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Articulos. La plataforma navega hacia la pgina ArticuloList.seam, y carga un listado de los artculos creados. El administrador ingresa el criterio de bsqueda y hace click en el botn Buscar Articulo La plataforma navega hacia la pgina ArticuloList.seam, donde enlista todos los Artculos creados que coincidan con el criterio de bsqueda ingresado.

[M enu Pri nci pal

sel ec Adm ni strarArti cul os]:

new() Arti cul oLi st.seam new() Arti cul oLi st getResul tLi st() :Li st<Arti cul o>

new() Arti cul o [cargarLi stadoArti cul o]:

[i ngresa cri teri o

cl i ck "Ini ci ar Busqueda"]:

getResul tLi st() :Li st<Arti cul o>

[cargar l i sta arti cul os encontrados]:

Figura 24. Diagrama de Secuencia CU: Administrar Articulo (Buscar)


sd ADM INIST RAR ART ICULO(VISUALIZAR)

sd ADMINISTRAR ARTICULO (VISUALIZAR)


Adm i ni s trador Back _End.s eam

1.

2.

3.

4.

5. 6.

(Opcin Visualizar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Articulos. La plataforma navega hacia la pgina ArticuloList.seam, y muestra un listado de los artculos creados. El administrador selecciona de la columna Opciones la opcin Visualizar del articulo a visualizar. La plataforma navega hacia la pagina Articulo.seam, y muestra en un formulario los datos del articulo seleccionado. El administrador visualiza el artculo y hace click en el botn Regresar. La plataforma navega hacia la pgina ArticuloList.seam.

[M enu Pri nci pal

s el ec Adm ni s trarArti cul os ]:

new() Arti cul oLi s t.s eam new() Arti cul oLi s t getRes ul tLi s t() :Li s t<Arti cul o>

new() Arti cul o [cargarLi s tadoArti cul o]:

[Opci ones cl i ck "Vi s ual i zar"]: Arti cul o.s eam new() Arti cul oHom e getIns tance() :M enu

[cargar datos Arti cul o actual ]:

Figura 25. Diagrama de Secuencia CU: Administrar Articulo (Visualizar)

103

sd ADMINISTRAR ARTICULO(PORTADA)

sd ADMINISTRAR ARTICULO (SELECCIONAR PORTADA)


Administrador ArticuloList.seam

1. (Opcin Seleccionar Portada) El administrador en la pgina ArticuloList.seam hace click sobre el botn Seleccionar Portada. 2. La plataforma abre un cuadro de dialogo. 3. El administrador ingresa el nombre del artculo que va a ser la portada de la plataforma y hace click sobre el botn Guardar. 4. La plataforma actualiza la portada en la base de datos. 5. El caso de uso finaliza

Seleccionar portada Articulolist [click selc "portada"]: getResultlist() :Lista<Articulos> new() Articulo [cargar lista articulos]:

[selec articulo click guardar]:

persist() :String

PortadaHome

Portada

Figura 26. Diagrama de Secuencia CU: Administrar Articulo (Seleccionar Portada)

104

7.8.4. Caso de Uso: Administrar Imgenes

Nombre C.U: ADMINISTRAR IMAGENES Req. Funcional: Objetivo(s): RF0010

Cdigo C.U:0004

Permitir al administrador realizar la asignacin de un artculo o un Banner Publicitario.

Descripcin:

El administrador podr agregar y modificar las imgenes asignadas a los artculos o banners publicitarios.

Actor(s): Tipo Caso Uso: Pre-condiciones:

Administrador Sistema -Haber ejecutado el caso de uso autentificar usuario -Haber ejecutado el caso de Administrar artculos -Haber ejecutado el caso de uso Administrar banners publicitarios

Post-condiciones:

-El

administrador ha podido asignar correctamente las

imgenes dentro de los artculos o Banners Publicitarios. FLUJO NORMAL DE EVENTOS ACTOR 1. (Insertar o Modificar Imagen en Artculo) El administrador ubica las imgenes que desea adicionar en los artculos en una carpeta en el directorio \view\img, a continuacin ejecuta el caso de uso administrar artculos, en la opcin Crear, en el cono Insertar\Editar Imagen. 2. La plataforma muestra la ventana Insertar\Editar Imagen. 3. El administrador ingresa la ruta relativa de la imagen dentro del directorio \view\img, ingresa una breve descripcin, el tamao, el PLATAFORMA

105

aliniamiento y hace click en el botn Insertar. 4. La plataforma genera el cdigo

necesario para insertar la imagen dentro del artculo en base a los parmetros administrador. 5. El caso de uso finaliza FLUJO NORMAL DE EVENTOS provistos por el

Prototipdo de Pantalla CU: Administrar Imgenes

106

DR004 CU: Administrar Imgenes

uc ADMINISTRAR IMAGENES
Insertar o Modificar Imagen Articulo

ArticuloEdit.seam Click "Insertar/Editar Imagen"

Generar Codigo

Ingresa Direccion Imagen Click "insertar"

Insertar/Editar Imagen

Administardor

Asignar Imagen Banner

Click "Examinar"

BannerEdit.seam

Select Imagen Click "Aceptar" Navegador Archivos Administrador Guardar y Asignar Imagen

Instanciar Banner

Banner

Figura 27. Diagrama de Robustez CU: Administrar Imgenes

107

DS 004 CU: Administrar Imgenes

sd ADMINISTRAR IMAGENES (INSERTAR IMAGEN ARTICU...

sd ADMINISTRAR IMAGENES(Insertar/editar imagen en articulo)

Administrador

ArticuloEdit.seam

1. (Insertar o Modificar Imagen en Artculo) El administrador ubica las imgenes que desea adicionar en los artculos en una carpeta en el directorio \view\img, a continuacin ejecuta el caso de uso administrar artculos, en la opcin Crear, en el cono Insertar\Editar Imagen. 2. La plataforma muestra la ventana Insertar\Editar Imagen. 3. El administrador ingresa la ruta relativa de la imagen dentro del directorio \view\img, ingresa una breve descripcin, el tamao, el aliniamiento y hace click en el botn Insertar. 4. La plataforma genera el cdigo necesario para insertar la imagen dentro del artculo en base a los parmetros provistos por el administrador.

[click insertar/editar imagen]:

Inserta/editar Imagen

[inserta url click insertar]: [genera codigo para la insertar la imagen ]:

Figura 28. Diagrama de Secuencia CU: Administrar Imgenes (Insertar/Editar Imagen Articulo)

108

7.8.5. Caso de Uso: Administrar Banners Publicitarios Nombre C.U: ADMINISTRAR BANNERS Cdigo C.U: 0005

PUBLICITARIOS Req. Funcional: Objetivo(s): RF0006 Permitir al administrador crear, modificar, eliminar, visualizar y buscar banners publicitarios. Descripcin: Se podr administrar de forma dinmica los banners

publicitarios de la plataforma. Actor(s): Tipo Caso Uso: Pre-condiciones: Administrador Sistema -Haber ejecutado el caso de uso Autentificar Usuario -Haber ejecutado el caso de uso Administrar Imgenes -Haber ejecutado el caso de uso Administrar Enlaces Post-condiciones: -El administrador ha creado correctamente los banners

publicitarios en base a las imgenes contenidas en la carpeta banner. FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin Crear) El administrador en la pgina Back_end.seam Banners PLATAFORMA

selecciona en el Menu Principal, la opcin Administrar Publicitarios. 2. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. La plataforma soporta la creacin de diez banners, cuando despliega el listado contabiliza cuantos banners han sido creados, mientras el numero de banners creados sea menor a diez o igual a diez la

109

plataforma muestra el botn Crear caso contrario este no se renderiza. 3. El administrador hace click en el botn Crear. 4. La plataforma navega hacia la pgina BannerEdit.seam y carga un formulario con varios campos, en el primero carga un listado de los banners disponibles para la creacin. 5. El administrador selecciona el nombre de un banner, para la asignacin de las imgenes ejecuta el caso de uso Imagen Banner, Administrar para la Imgenes la opcin Asignar

asignacin del enlace al banner ejecuta Asignar el caso de Banner, uso y Administrar Enlace la opcin Enlace

selecciona el estado del banner (Habilitado o Deshabilitado) y hace click en el botn Guardar 6. La plataforma verifica campos los

obligatorios

vacios,

habilita

mecanismos de persistencia, guarda los datos en la base de datos, navega hacia la pgina Banner.seam, despliega un mensaje Creado con exito y muestra el detalle del banner creado. 7. El administrador visualiza los datos y hace click en el botn Nuevo.

110

8. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. 9. (Opcin Editar) El administrador en la pgina Back_end.seam Banners

selecciona en el Menu Principal, la opcin Administrar Publicitarios. 10. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. 11. El administrador selecciona de la columna Opciones la opcin Editar del banner a modificar. 12. La plataforma navega hacia la pgina BannerEdit.seam formulario seleccionado. 13. El administrador asigna una nueva imagen al banner. 14. La plataforma ejecuta el caso de uso Administrar Imgenes la opcin Asignar Imagen Banner. 15. El administrador ejecuta el caso de uso Administrar Enlace la opcin Asignar Enlace Banner, selecciona el estado del banner y hace click en el botn Guardar. 16. La plataforma verifica campos los y carga del en un

datos

banner

obligatorios, habilita los mecanismos de persistencia, navega hacia la pgina Banner.seam y muestra un mensaje

111

Modificado con xito. 17. El administrador visualiza los resultados y hace click en el botn Nuevo. 18. La plataforma navega hacia la pgina BannerList.seam. 19. (Opcin administrador Eliminar) en la El pgina

Back_end.seam selecciona en el Menu Principal, la opcin Banners Administrar Publicitarios. 20. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. 21. El administrador en la columna Opciones selecciona la opcin Editar del banner a eliminar 22. La plataforma navega hacia la pgina BannerEdit.seam y carga los datos en un formulario del banner seleccionado. 23. El administrador hace click en el botn Eliminar. 24. La plataforma elimina el banner de la base de datos, navega hacia

BannerList.seam, muestra un mensaje Borrado con exito y enlista los banners disponibles. 25. (Opcin Buscar) El administrador en la pgina Back_end.seam Banners

selecciona en el Menu Principal, la opcin Administrar

112

Publicitarios. 26. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. 27. El administrador ingresa el

nombre del banner a buscar y hace click en el botn buscar banner. 28. La plataforma busca en la base de datos las coincidencias y del criterio la los de

bsqueda

muestra con

pgina banners

BannerList.seam encontrados. 29. (Opcin administrador Visualizar) en la El pgina

Back_end.seam selecciona en el Menu Principal, la opcin Banners Administrar Publicitarios. 30. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. 31. El administrador selecciona de la columna Opciones la opcin Visualizar, visualizar. 32. La plataforma navega hacia la pgina Banner.seam y carga los datos en un formulario del banner seleccionado. 33. El caso de uso finaliza FLUJO ALTERNOS DE EVENTOS A. CAMPOS OBLIGATORIOS VACIOS A.5. El sistema muestra el mensaje Ingrese los datos requeridos en los del banner a

113

campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos B. CAMPOS OBLIGATORIOS VACIOS A.15. El sistema muestra el mensaje Ingrese los datos requeridos en los campos A.16. El caso de uso contina en el numeral 16 del flujo normal de eventos Prototipdo de Pantalla CU: Administrar Banners Publicitarios Opcin Buscar

Opcin Crear

114

Opcion Visualizar

Opcion Editar y Eliminar

Curso Alterno

115

DR005 CU: Administrar Banners Publicitarios


uc ADM INISTRAR BANNERS PUBLICITARIOS

Opci on Crear Banner

BannerEdi t.seam

Cargar Li stado

Banner

M enu Pri nci pal "Adm i ni strar Banners Publ i ci tari os" Habi l i tar No. Banners BannerLi st.seam Habi l i ta o Deshabi l i ta "Crear" Administrador Veri fi car No. < 10 Ll ena datos Cl i ck "Guardar"

Cl i ck "Crear"

Cl i ck "Nuevo"

M ostrar Li stado Banners Di sponi bl es

Administrar Imagenes

BannerEdi t.seam

Administrar Enlaces

Veri fi car Cam pos

M ensaj e "Ingrese l os datos requeri dos en l os cam pos" Banner.seam

Guardar Banner Banner

Instanci ar Banner

BannerLi st.seam M ensaj e "creaod con exi to"

Opci on Edi tar Banner

Back_End.seam M enu Pri nci pal "Adm i ni strar Banners Publ i ci tari os" "Opci ones" Sel ect "Edi tar" BannerLi st.seam Cargar Banner Administrador Instanci ar Banner M ostrar Li stado

Banners

Asi gnar Im agen

Administrar Imagenes

Cl i ck "Nuevo" BannerEdi t.seam

Administrar Enlaces

Veri fi car Cam pos M ensaj e "Ingrese l os datos requeri dos en l os cam pos" Banner.seam Guardar Banner Banner Istanci ar Banner

BannerLi st.seam

M ensaj e "Edi tado con exi to"

Opci on El i m i nar Banner

Back_End.seam M ostrar Li stado M enu Pri ci pal "Adm i ni strar Banners Publ i ci tari os" "Opci ones" Sel ect "Edi tar" BannerLi st.seam Cl i ck "El i m i nar" Administrar Cargar Datos Instanci ar Banner BannerEdi t.seam El i m i nar Banner

Banner

BannerLi st.seam

M ensaj e "el i m i nado con exi to"

Opci on Buscar Banner

Back_End.seam M enu Pri nci pal "Adm i ni strar Banners Publ i ci tari os" M ostrar Li stado

Banner

Ingresa Cri teri o de Busqueda Cl i ck "Buscar Banner" BannerLi st.seam Buscar Coi ci denci as

Administrador Cargar Li stado

Opci on Vi sual i zar Banner

Back_End.seam M enu Pri nci pal "Adm i ni strar Banners Publ i ci tari os" "Opci ones" Sel ect "Vi sual i zar" BannerLi st.seam Administrador

Cargar Li stado

Banner

Instanci ar Banner

Cargar Datos

Banner.seam

Figura 29. Diagrama de Robustez CU: Administrar Banners Publicitarios

116

DS005 CU: Administrar Banners Publicitarios


sd ADM INIST RAR BANNERS PUBLICIT ARIOS (CREAR)

sd AADMINISTRAR BANNERS PUBLICITARIOS (CREAR)


Adm i ni strador Back _End.seam

1.

2.

3. 4.

(Opcin Crear) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Banners Publicitarios. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. La plataforma soporta la creacin de diez banners, cuando despliega el listado contabiliza cuantos banners han sido creados, mientras el numero de banners creados sea menor a diez o igual a diez la plataforma muestra el botn Crear caso contrario este no se renderiza. El administrador hace click en el botn Crear. La plataforma navega hacia la pgina BannerEdit.seam y carga un formulario con varios campos, en el primero carga un listado de los banners disponibles para la creacin. El administrador selecciona el nombre de un banner, para la asignacin de las imgenes ejecuta el caso de uso Administrar Imgenes la opcin Asignar Imagen Banner, para la asignacin del enlace al banner ejecuta el caso de uso Administrar Enlace la opcin Asignar Enlace Banner, y selecciona el estado del banner (Habilitado o Deshabilitado) y hace click en el botn Guardar La plataforma verifica campos obligatorios vacios, habilita los mecanismos de persistencia, guarda los datos en la base de datos, navega hacia la pgina Banner.seam, despliega un mensaje Creado con exito y muestra el detalle del banner creado. El administrador visualiza los datos y hace click en el botn Nuevo La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados.

[M enu Pri nci pal

sel ec Adm i ni strar Banners P]:

new() BannerLi st.seam new() BannerLi st getResul tLi st() :Li st<Banner>

new() Banner [cargarLi stadoBanners]: new() BannerActi on suportM oreBanners() :Bool ean

new() Enti tyM anager new() Query [sentenci aObneterLi stadoBanners Creados]:

[contabi l i zar banners creados <= 10]:

[habi l i ta/desabi l i ata boton "Crear"]:

5.

[cl i ck ""crear"]:

BannerEdi t.seam new() BannerHom e i sM anaged() :Bool ean

avai bl eBanners() :Li st<Sel ectItem >

enti tyM anager.CreateQuery(sentenci asParaObtenerLi staBannersCreador:Stri ng) :Query

6.

[ retorna un l i stado banner aun di sponi bl es]:

[i ngresa datos cl i ck "Guardar"]:

"Ingrese l os datos requeri dos en l os cam pos"

7. 8.

[veri fi car cam pos vaci os]: persi st() :Stri ng

new() Banner getInstance() :Banner

[M ensaj e "Creado con exi to"]:

CAMPOS OBLIGATORIOS VACIOS A.5. El sistema muestra el mensaje Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

[cl i ck "Nuevo"]:

Figura 30. Diagrama de Secuencia CU: Administrar Banners Publicitarios (Crear)

117

sd ADM INIST RAR BANNERS PUBLICIT ARIOS (M ODIFICAR)

sd AADMINISTRAR BANNERS PUBLICITARIOS (EDITAR)


Adm i ni strador Back_End.seam

1.

(Opcin Editar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Banners Publicitarios. 2. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. 3. El administrador selecciona de la columna Opciones la opcin Editar del banner a modificar. 4. La plataforma navega hacia la pgina BannerEdit.seam y carga en un formulario los datos del banner seleccionado. 5. El administrador asigna una nueva imagen al banner. 6. La plataforma ejecuta el caso de uso Administrar Imgenes la opcin Asignar Imagen Banner. 7. El administrador ejecuta el caso de uso Administrar Enlace la opcin Asignar Enlace Banner, selecciona el estado del banner y hace click en el botn Guardar. 8. La plataforma verifica campos obligatorios, habilita los mecanismos de persistencia, navega hacia la pgina Banner.seam y muestra un mensaje Modificado con xito. 9. El administrador visualiza los resultados y hace click en el botn Nuevo. 10. La plataforma navega hacia la pgina BannerList.seam. CAMPOS OBLIGATORIOS VACIOS A.15. El sistema muestra el mensaje Ingrese los datos requeridos en los campos A.16. El caso de uso contina en el numeral 16 del flujo normal de eventos

[M enu Pri nci pal

sel ec Adm i ni strar Banners P]:

new() BannerLi st.seam new() BannerLi st getResul tLi st() :Li st<Banner>

new() Banner [cargarLi stadoBanners]: new() BannerActi on suportM oreBanners() :Bool ean

new() Enti tyM anager new() Query [sentenci aObneterLi stadoBanners Creados]:

[contabi l i zar banners creados <= 10]:

[habi l i ta/desabi l i ata boton "Crear"]:

[opci ones cl i ck "Edi tar"]:

BannerEdi t.seam new() BannerHom e i sM anaged() :Bool ean

getInstance() :Banner

[cargar datos banner sel ecci onado]: avai bl eBanners() :Li st<Sel ectItem >

enti tyM anager.CreateQuery(sentenci asParaObtenerLi staBannersCreador:Stri ng) :Query

[ retorna un l i stado banner aun di sponi bl es]:

[i ngresa datos cl i ck "Guardar"]:

"Ingrese l os datos requeri dos en l os cam pos"

[veri fi car cam pos vaci os]: Update() : Stri ng

new() Banner getInstance() :Banner [M ensaj e "M odi fi cado con exi to"]:

[cl i ck "Nuevo"]:

Figura 31. Diagrama de Secuencia CU: Administrar Banners Publicitarios (Editar)

118

sd ADM INISTRAR BANNERS PUBLICITARIOS (ELIM INAR)

sd AADMINISTRAR BANNERS PUBLICITARIOS (ELIMINAR)


Adm i ni strador Back_End.seam [M enu Pri nci pal sel ec Adm i ni strar Banners P]:

new() BannerLi st.seam

1. (Opcin Eliminar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Banners Publicitarios. 2. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. 3. El administrador en la columna Opciones selecciona la opcin Editar del banner a eliminar
[opci ones cl i ck "Edi tar"]:

new() BannerLi st getResul tLi st() :Li st<Banner>

new() Banner [cargarLi stadoBanners]: new() BannerActi on suportM oreBanners() :Bool ean

new() Enti tyM anager new() Query [sentenci aObneterLi stadoBanners Creados]:

[contabi l i zar banners creados <= 10]:

[habi l i ta/desabi l i ata boton "Crear"]:

4. La plataforma navega hacia la pgina BannerEdit.seam y carga los datos en un formulario del banner seleccionado. 5. El administrador hace click en el botn Eliminar. 6. La plataforma elimina el banner de la base de datos, navega hacia BannerList.seam, muestra un mensaje Borrado con exito y enlista los banners disponibles.

BannerEdi t.seam new() BannerHom e i sM anaged() :Bool ean

getInstance() :Banner

[cargar datos banner sel ecci onado]: avai bl eBanners() :Li st<Sel ectItem >

enti tyM anager.CreateQuery(sentenci asParaObtenerLi staBannersCreador:Stri ng) :Query

[ retorna un l i stado banner aun di sponi bl es]:

[i ngresa datos cl i ck "El i m i nar"]: rem ove() :Stri ng

[M ensaj e "El i m i nado con exi to"]:

Figura 32. Diagrama de Secuencia CU: Administrar Banners Publicitarios (Eliminar)

119

sd AADMINISTRAR BANNERS PUBLICITARIOS (BUSCAR)

s d ADM INIST RAR BANNERS PUBLICIT ARIOS (BUSCAR)

Ad m i n i s tra d o r

Ba ck En d .s a m _ e

[M e n u Pri n ci p a l

s l e c Ad m i n i s e tra r Ba n n e rs P]:

1.

2.

3.

(Opcin Buscar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Banners Publicitarios. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. El administrador ingresa el nombre del banner a buscar y hace click en el botn buscar banner. La plataforma busca en la base de datos las coincidencias del criterio de bsqueda y muestra la pgina BannerList.seam con los banners encontrados.

n e w() Ba n n e rL i s t.s a m e n e w() Ba n n e rL i s t g e tRe s l tL i s u t() :L i s t<Ba n n e r>

n e w() Ba n n e r [ca rg a rL i s ta d o Ba n n e rs ]:

[i n g re s a cri te ri o

cl i ck " In i ci a r Bu s u e d a " ]: q

g e tRe s l tL i s u t() :L i s t<Ba n n e r>

4.

[ca rg a r l i s ta d o b a n n e rs ]:

Figura 33. Diagrama de Secuencia CU: Administrar Banners Publicitarios (Buscar)


sd AADMINISTRAR BANNERS PUBLICITARIOS (VISUALIZAR)
sd ADM INIST RAR BANNERS PUBLICIT ARIOS (BUSCAR)

Adm i ni s trador

Back _End.s eam

1.

2.

3.

4.

5.

(Opcin Visualizar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal, la opcin Administrar Banners Publicitarios. La plataforma navega hacia la pgina BannerList.seam y muestra un listado de los banners creados. El administrador selecciona de la columna Opciones la opcin Visualizar, del banner a visualizar. La plataforma navega hacia la pgina Banner.seam y carga los datos en un formulario del banner seleccionado. El caso de uso finaliza

[M enu Pri nci pal

s el ec Adm i ni s trar Banners P]:

new() BannerLi s t.s eam new() BannerLi s t getRes ul tLi s t() :Li s t<Banner>

new() Banner [cargarLi s tadoBanners ]:

[i ngres a cri teri o

cl i ck "Ini ci ar Bus queda"]:

getRes ul tLi s t() :Li s t<Banner>

[cargar l i s tado banners ]:

Figura 34. Diagrama de Secuencia CU: Administrar Banners Publicitarios (Visualizar)

120

7.8.6. Caso de Uso: Administrar Enlaces Nombre C.U: ADMINISTRAR ENLACES Req.Funciona: Objetivo(s): RF0011 Permitir al administrador asignar enlaces hacia otros sitios dentro de un artculo o un banner publicitario. Descripcin: El administrador podr adicionar enlaces hacia otros sitios desde los artculos contenidos en la plataforma o banners publicitarios, mediante el uso de un componente visual de intuitivo. Actor(s): Tipo Uso: Precondiciones: -Haber ejecutado el caso de uso autentificar usuario -Haber ejecutado el caso de Administrar Artculos -Haber ejecutado el caso de uso Administrar Banners Administrador Caso Sistema manejo fcil e Cdigo C.U: 0006

Publicitarios -Haber ejecutado el caso de Administrar Imgenes Postcondiciones: FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin Asignar Enlace Texto Artculo) El PLATAFORMA -El administrador ha podido asignar enlaces de forma dinmica.

administrador

selecciona

la porcin de texto a la que desea insertar el link y hace click en el cono Insertar\Editar Link. 2. La plataforma muestra la ventana

Insertar\Editar Link. 3. El administrador ingresa el

121

url de la pgina a la que desea enlazar la porcin de texto y hace click en el botn Insert 4. La plataforma muestra el mensaje url debe estar presidida por el prefijo http://. 5. El click administrador en el hace botn

Aceptar. 6. La plataforma inserta el cdigo necesario para la asignacin de la url. 7. (Opcin Asignar Enlace Imagen Artculo) El

administrador

selecciona

la imagen a la que desea insertar el link y hace click en el cono Insertar\Editar Link. 8. La plataforma muestra la ventana

Insertar\Editar Link. 9. El administrador ingresa el url de la pgina a la que desea enlazar la imgen seleccionada y hace click en el botn Insert 10. La plataforma muestra el mensaje url debe estar presidida por el prefijo http://. 11. El click administrador en el hace botn

Aceptar. 12. La plataforma inserta el cdigo necesario para la asignacin de la url.

122

13. El caso de uso finaliza CURSO ALTERNO DE EVENTOS

Prototipado de Pantallas CU: Administrar Enlaces

123

DR006 CU: Administrar Enlaces


uc ADMINISTRAR ENLACES

Asignar Enlace Texto Articulo

ArticuloEdit.seam Select texto Select "Insertar/Editar Link" Ingresa "URL" Select "Insert" Aadir Prefijo

Click "Aceptar" Insertar/Editar Link Administrador Insertar Codigo

Asignar Enlace Articulo

ArticuloEdit.seam Select Imagen Select "Insertar/Editar Imagen" Ingresa "URL" Click "Insertar" Click "Aceptar" Insertar/Editar Imagen Aadir Prefijo

Administrador

Insertar Codigo

Figura 35. Diagrama de Robustez CU: Administrar Enlaces

124

DS006 CU: Administrar Enlaces


sd ADMINISTRAR ENLACES (ASIGNAR ENLACE TEXTO)
s d ADM INIST RAR IM AGENES(As igna r Enla c e T x to Artic ulo) e Ad m i n i s tra d o r Arti cu l o Ed i t.s a m e

1.

2. 3.

4. 5. 6.

(Opcin Asignar Enlace Texto Artculo) El administrador selecciona la porcin de texto a la que desea insertar el link y hace click en el cono Insertar\Editar Link. La plataforma muestra la ventana Insertar\Editar Link. El administrador ingresa el url de la pgina a la que desea enlazar la porcin de texto y hace click en el botn Insert La plataforma muestra el mensaje url debe estar presidida por el prefijo <a href="http://">http://</a>. El administrador hace click en el botn Aceptar. La plataforma inserta el cdigo necesario para la asignacin de la url.

[s l e c IM AGEN cl i ck e i n s rta r/e d i ta r l i n k e ]:

In s rta /e d i ta r l i n k e

[i n s rta u rl cl i ck i n s rta r]: e e

m ens j e a [m s m " Url d e b e s r p re s d i d a p o r Http //" ]: e e

[cl i ck " Ace p ta r" ]: [g e n e ra co d i g o p a ra l a i n s rta r l a i m a g e n e ]:

Figura 36. Diagrama de Secuencia CU: Administrar Enlaces (Asignar Enlace Texto Articulo)
sd ADMINISTRAR ENLACES (ASIGNAR ENLACE IMAGEN ...
s d ADM INIS T RAR IM AGE NE S (a s igna r e nla c e Ima ge n Artic ulo) Ad m i n i s tra d o r A rti cu l o E d i t.s a m e

1.

2. 3.

4. 5. 6. 7.

(Opcin Asignar Enlace Imagen Artculo) El administrador selecciona la imagen a la que desea insertar el link y hace click en el cono Insertar \Editar Link. La plataforma muestra la ventana Insertar\Editar Link. El administrador ingresa el url de la pgina a la que desea enlazar la imgen seleccionada y hace click en el botn Insert La plataforma muestra el mensaje url debe estar presidida por el prefijo <a href="http://">http://</a>. El administrador hace click en el botn Aceptar. La plataforma inserta el cdigo necesario para la asignacin de la url. El caso de uso finaliza

[s l e c txt cl i ck i n s rta r/e d i ta r e e l i nk ]:

In s rta /e d i ta r l i n k e

[i n s rta e

u rl

cl i ck i n s rta r]: e

m ens j e a [m s m " Url debe s r p re s d i d a e e p o r Http //" ]:

[cl i ck " A ce p ta r" ]: [g e n e ra co d i g o p a ra la i n s rta r l a e i m agen ]:

Figura 37. Diagrama de Secuencia CU: Administrar Enlaces (Asignar Enlace Texto Articulo)

125

sd ADMINISTRAR ENLACES (ASIGNAR ENLACE IMAGEN ...

sd ADMINISTRAR IMAGENES(asignar enlace Imagen Articulo)

Administrador

ArticuloEdit.seam

1. (Opcin Asignar Enlace Imagen Artculo) El administrador selecciona la imagen a la que desea insertar el link y hace click en el cono Insertar \Editar Link. 2. La plataforma muestra la ventana Insertar\Editar Link. 3. El administrador ingresa el url de la pgina a la que desea enlazar la imgen seleccionada y hace click en el botn Insert 4. La plataforma muestra el mensaje url debe estar presidida por el prefijo <a href="http://">http://</a>. 5. El administrador hace click en el botn Aceptar. 6. La plataforma inserta el cdigo necesario para la asignacin de la url. 7. El caso de uso finaliza

[selec txt click insertar/editar link]:

Inserta/editar link

[inserta url click insertar]:

mensaje [msm "Url debe ser presedida por Http//"]:

[click "Aceptar"]: [genera codigo para la insertar la imagen ]:

Figura 38. Diagrama de Secuencia CU: Administrar Enlaces (Asignar Enlace Imagen Articulo)

126

7.8.7.

Caso de Uso: Interactuar con los Contenidos del Front_End

Nombre C.U: INTERACTUAR CON LOS Cdigo C.U: 0007 CONTENIDOS DEL FRONT-END Req. Funcional: Objetivo(s): RF0016 Permitir al cliente contar con un espacio de navegabilidad e intuitivo para usar la plataforma empresarial. Descripcin: El cliente podr acceder a un espacio organizado en donde puede visualizar de forma ordenada los mens, los artculos, los banners, descargas y todas las configuraciones realizadas desde el BackEnd. Actor(s): Tipo Caso Uso: Precondiciones: Postcondiciones: Cliente Sistema -Haber ingresado a travs de un browser la direccin pblica de la empresa. -El usuario ha podido utilizar y visualizar correctamente la plataforma empresarial.

FLUJO NORMAL DE EVENTOS ACTOR PLATAFORMA 1. El servidor JBoss busca la pgina Index.html, en esta se realiza la un

redireccionamiento

hacia

pgina

Front_End.seam. La plataforma inicia cargando la plantilla principal, dentro de esta consulta los Banners habilitados, la portada seleccionada para la plataforma, carga los Mens con sus respectivos MenuItems, definidos. 2. (Opcin Navegabilidad Banners) El cliente visualiza cada uno de los Banners contenidos en la y el resto de enlaces

127

plataforma, hace click en el banner de su inters. 3. La plataforma verifica el enlace asignado a dicho banner y navega hacia esa ruta. 4. (Opcin Navegabilidad Mens) El cliente visualiza cada uno de los MenuItems de los Mens mostrados selecciona en el la plataforma, que

Menuitem

desea visualizar. 5. La plataforma consulta el Artculo

vinculado a dicho MenuItem y lo carga en un panel en la pgina Front_End.seam. 6. El cliente visualiza el contenido, imgenes y enlaces del Artculo y selecciona la imagen o enlace de su inters. 7. La plataforma verifica la existencia de la url asignada a la imagen o texto seleccionado y navega hacia ella. 8. (Opcin Testador de Velocidad) El cliente visualiza el enlace en el Testeador de Velocidad y hace click sobre el mismo. 9. La plataforma ejecuta el caso de uso Realizar Test de Velocidad. 10. El cliente hace click en el botn Informe. 11. La plataforma ejecuta el caso de uso Generar Informe. 12. (Opcin Descargas) El cliente hace click sobre el botn

128

Descargas. 13. La plataforma ejecuta el caso de uso Administrar Descargas opcin Ver. 14. El cliente hace click sobre la descarga de su inters. 15. La plataforma enlaza hacia la descarga seleccionada. 16. (Opcin Iniciar Sesin) El cliente selecciona la opcin Iniciar Sesin. 17. La plataforma ejecuta el caso de uso Autentificar Usuario. 18. El caso de uso finaliza. FLUJO ALTERNOS DE EVENTOS A. PORTADA NO DEFINIDA A.1. La plataforma muestra el mensaje No se ha definido portada para el sitio A.2. El caso de uso contina en el numeral 1 del flujo normal de eventos. Prototipado de Pantalla CU: Interactuar con los Contenidos del Front-End

129

DR007 CU: Interactuar con los Contenidos del Front_End


uc INTERACTUAR CON LOS CONTENIDOS DEL FRONT_END
Opcion Navegabilidad Banners

www.nettplus.net Index.html Cargar Banners Habilitados Instanciar Banner Banner

Click "Banner"

Front_End.seam Cliente Mensaje "nnnn" Cargar Portada Instanciar Articulo Articulo

Cargar Menus Pagina hacia la que apunta el banner

Instanciar Menu

Menu

Cargar MenuItems Navegar Enlace Banner

MenuItem

Opcion Navegabilidad Menus

Cargar Enlaces

Click "Item Elegido" Front_End.seam Select Imagen o Enlace Articulo

Cargar Articulo Vinculado

Instanciar Articulo

Articulo

Administrador Obtener Enlace

Pagina hacia donde apunta el enlace

Navegar Hacia Nueva Pagina

Opcion Testeador de Velocidad

Realizar Test de Velocidad Front_End.seam Click Testeador Velocidad Generar Informe Generar Informe Test.seam Administrador

Opcion Descagas

Administrar Descargas Click "Descargas" Front_End.seam

Click Descarga de su Interes DownloadList.seam Administrador Enlazar Descarga

Pagina Descarga
Opcion Iniciar Sesion

Autentificar Usuario Front_End.seam Administrador

Figura 39. Diagrama de Robustez CU: Interactuar con los Contenidos del Front-End

130

DS007 CU: Interactuar con los Contenidos del Front_End


sd INTERACTUAR CON LOS CONTENIDOS DEL FRONT-END
sd INTERACTUAR CON LOS CONTENIDOS DEL FRONT-END

1.

2.

El servidor JBoss busca la pgina Index.html, en esta se realiza un redireccionamiento hacia la pgina Front_End.seam. La plataforma inicia cargando la plantilla principal, dentro de esta consulta los Banners habilitados, la portada seleccionada para la plataforma, carga los Mens con sus respectivos MenuItems, y el resto de enlaces definidos. (Opcin Navegabilidad Banners) El cliente visualiza cada uno de los Banners contenidos en la plataforma, hace click en el banner de su inters. La plataforma verifica el enlace asignado a dicho banner y navega hacia esa ruta. (Opcin Navegabilidad Mens) El cliente visualiza cada uno de los MenuItems de los Mens mostrados en la plataforma, selecciona el Menuitem que desea visualizar. La plataforma consulta el Artculo vinculado a dicho MenuItem y lo carga en un panel en la pgina Front_End.seam. El cliente visualiza el contenido, imgenes y enlaces del Artculo y selecciona la imagen o enlace de su inters. La plataforma verifica la existencia de la url asignada a la imagen o texto seleccionado y navega hacia ella. (Opcin Testador de Velocidad) El cliente visualiza el enlace en el Testeador de Velocidad y hace click sobre el mismo. La plataforma ejecuta el caso de uso Realizar Test de Velocidad. El cliente hace click en el botn Informe. La plataforma ejecuta el caso de uso Generar Informe. (Opcin Descargas) El cliente hace click sobre el botn Descargas. La plataforma ejecuta el caso de uso Administrar Descargas opcin Ver. El cliente hace click sobre la descarga de su inters.

Admi ni strador

Index.html

Front_End.seam

cargarPl anti l l a()

cargarBannersHabi l i tados()

3. 4.

BannerActi on obtai nXBanner() :Banner

5.

Query

6.

Enti tyManager

7.

Banner cargarPortada()

8.

PortadaActi on

9. 10. 11. 12. 13. 14.

Portada cargarMenu()

15. La plataforma enlaza hacia la descarga seleccionada. 16. (Opcin Iniciar Sesin) El cliente selecciona la opcin Iniciar Sesin. 17. La plataforma ejecuta el caso de uso Autentificar Usuario. 18. El caso de uso finaliza.

MenuActi on

Menu

Figura 40. Diagrama de Secuencia CU: Interactuar con los Contenidos del Front-End

131

7.8.8. Caso de Uso: Administrar Facturas Nombre C.U: ADMINISTRAR FACTURAS Req. Funcional: RF0003, RF0004 Objetivo(s): Permitir al administrador asignar facturas a una cuenta de cliente de una forma dinmica. Descripcin: Se podr asignar, modificar, eliminar, editar, y ver las facturas asignadas a un determinado cliente. Actor(s): Tipo Caso Uso: Precondiciones: Postcondiciones: Administrador Sistema -Haber ejecutado el caso de uso Registrar Cliente -Haber ejecutado el caso de uso Administrar Cuentas Clientes -Se ha podido administrar de forma correcta las facturas de los clientes de la empresa. Cdigo C.U: 0008

FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin Asignar) El PLATAFORMA

administrador ingresa a la pgina Back_End.seam, selecciona en el Menu Principal la opcin Administrar Cuentas Clientes y Facturas. 2. La plataforma navega hacia la pgina ClienteList.seam. 3. El administrador ingresa un dato en el formulario de bsqueda de dicha pgina y selecciona el botn Buscar Cliente. 4. La plataforma ejecuta el caso de uso Administrar Buscar. 5. El administrador selecciona en la Cuentas Clientes opcin

132

columna Opciones la opcin Visualizar. 6. La plataforma navega hacia la pgina Cliente.seam en donde carga los datos del cliente seleccionado y un listado de las facturas asignadas. 7. El administrador hace click sobre el botn Generar Factura. 8. La plataforma navega hacia la pgina FacturaEdit.seam, en donde se muestra el contenido de la factura de acuerdo a los datos proporcionados desde la cuenta del cliente, calcula el total a pagar, el Iva, establece la fecha en que se gener la factura y la fecha mxima de pago. 9. El administrador selecciona el estado de la factura (Pagada o Pago Pendiente) y hace click sobre el botn Guardar. 10. La plataforma habilita los mecanismos de persistencia para guardar las facturas, las asignaciones correspondientes al cliente, navega hacia la pgina Factura.seam y muestra un mensaje Creada con exito y los detalles de la factura creada. 11. El administrador hace click sobre el botn Salir. 12. La plataforma navega hacia pgina ClienteList.seam. 13. (Opcin administrador pgina Editar) ingresa a El la

Back_End.seam,

133

selecciona en el Menu Principal la opcin Administrar Cuentas Clientes y Facturas. 14. La plataforma navega hacia la pgina ClienteList.seam. 15. El administrador ingresa el nombre del cliente que desea modificar y hace click sobre el botn Buscar Cliente. 16. La plataforma busca en la base de datos el cliente solicitado y lo muestra en la pgina ClienteList.seam 17. El administrador selecciona de la columna Opciones la opcin Visualizar. 18. La plataforma navega hacia la pgina Cliente.seam y muestra un listado de las facturas asignadas al cliente. 19. El administrador selecciona la opcin Ver Detalle. 20. La plataforma navega hacia la pgina Factura.seam. 21. El administrador visualiza los datos y hace click sobre el botn Editar Factura. 22. La plataforma navega hacia la pgina FactraEdit.seam y carga los datos de la factura. 23. El administrador selecciona el estado de la factura Pagada o No Pagada y hace click sobre el botn Guardar.

134

24. La plataforma guarda los cambios y navega hacia la pgina FacturaEdit.seam y muestra los cambios realizados. 25. (Opcin administrador pgina Eliminar) ingresa a El la

Back_End.seam,

selecciona en el Menu Principal la opcin Administrar Cuentas Clientes y Facturas. 26. La plataforma navega hacia la pgina ClienteList.seam. 27. El administrador ingresa el nombre del cliente que desea eliminar y hace click sobre el botn Buscar Cliente. 28. La plataforma busca en la base de datos el cliente solicitado y lo muestra en la pgina ClienteList.seam. 29. El administrador selecciona de la columna Opciones la opcin Visualizar. 30. La plataforma navega hacia la pgina Cliente.seam y muestra un listado de las facturas asignadas al cliente. 31. El administrador selecciona la opcin Ver Detalle. 32. La plataforma navega hacia la pgina Factura.seam. 33. El administrador visualiza los datos y hace click sobre el botn Editar Factura. 34. La plataforma navega hacia la pgina

135

FactraEdit.seam y carga los datos de la factura. 35. El administrador hace click sobre el botn Eliminar. 36. La plataforma elimina la factura de la base de datos, y navega hacia la pgina Cliente.seam. 37. (Opcin Visualizar) ingresa a El la

administrador pgina

Back_End.seam,

selecciona en el Menu Principal la opcin Administrar Cuentas Clientes y Facturas. 38. La plataforma navega hacia la pgina ClienteList.seam. 39. El administrador ingresa el nombre del cliente que desea visualizar y hace click sobre el botn Buscar. 40. La plataforma busca en la base de datos el cliente solicitado y lo muestra en la pgina ClienteList.seam. 41. El administrador selecciona de la columna Opciones la opcin Visualizar. 42. La plataforma navega hacia la pgina Cliente.seam y muestra un listado de las facturas asignadas al cliente. 43. El administrador selecciona la opcin Ver Detalle. 44. La plataforma navega hacia la pgina Factura.seam.

136

45. El administrador visualiza los datos, y hace click sobre el botn Regresar. 46. La plataforma navega hacia la pgina Cliente.seam. 47. El caso de uso finaliza. FLUJO ALTERNOS DE EVENTOS A. DATOS INCOMPLETOS DEL CLIENTE A.5. La plataforma muestra el mensaje Aun no llena la hoja de trabajo del cliente A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos. Prototipdo de Pantalla CU: Administrar Facturas Opcin Asignar

137

Opcin Editar y Eliminar

Opcin Visualizar

138

DR008 CU: Administrar Facturas


uc ADM INIST RAR FACT URAS

Opci on Asi gnar Factura


Administrar Cuentas Clientes Back_End.seam M enu Pri nci pal "Adm i ni strar Cuentas Cl i entes y Facturas"

Ingresa datos "Buscar Cl i ente" "Opci ones" Sel ect "Vi sual i zar"

Cl i enteLi st.seam

Cl i ck "Generar Factura" Administrador

M ensaj e "Aun no l l ena l a hoj a de trabaj o del cl i ente"

Sel ect Estado Pagada o No Pagada Cl i ck "Guardar"

Cargar Datos Cl i ente.seam

Instanci ar Facturas

Factura Cl i ck "Sal i r"

FacturaEdi t.seam

M ostrar Conteni do y Cal cul ar Val ores

Instanci ar Factura

Guardar Datos Factura.seam

Cl i enteLi st.seam

M ensaj e "Creada con exi to"

Opci on Edi tar Factura

Back_End.seam M enu Pri nci pal "Adm i ni strar Cuentas Cl i entes y Facturas" Ingresa Nom bre Cl i ck "Buscar Cl i ente" "Opci ones" Sel ect "Vi sual i zar" Cl i enteLi st.seam Administrador Sl ect "Ver Detal l e" M ostrar Li stado Cl i curak "Edi tar Factura" Cl i ente.seam Cl i ente Buscar Cl i ente Instanci ar Cl i ente

Sel ect estado "Pagada o no Pagada" Cl i ck "Guardar"

Factura.seam

FacturaEdi t.seam

Cargar Datos Factura

Instanci ar Factura

Guardar Cam bi os

Factura

M ostrar Cam bi os

Opci on El i m i nar Factura

Back_End.seam Buscar Cl i ente M enu Pri nci pal "Adm i ni strar Cuentas Cl i entes y Facturas" Ingresa Nom bre Cl i ck "Buscar Cl i ente" "Opci ones" Sel ect "Vi sual i zar" Cl i enteLi st.seam Administrador Sel ect "Ver Detal l e" M ostrar Cl i ente Cl i ente Instanci ar Cl i ente

Cl i ck "Edi tar Factura" Instanci ar Factura Cl i ente.seam Cl i ck "El i m i nar" M ostrar Li stado Facturas

Factura.seam Instanci ar Factura Factura

FacturaEdi t.seam

Cargar Datos Factura

Cl i ente.seam

El i m i nar Factura

Opci on Vi sual i zar Factura

Back_End.seam M enu Pri nci pal "Adm i ni strar Cuentas Cl i entes y Facturas" Ingresa Nom bre Cl i ck "Buscar" "Opci ones" Sel ect "Vi sual i zar" Cl i enteLi st.seam Administrador Sel ect "Ver Detal l e" M ostrar Cl i ente Buscar Cl i ente Instanci ar Cl i ente Cl i ente

Vi sual i za Datos Cl i ck "Regresar" Cl i ente.seam M ostrar Detal l e Facturas Instanci ar Factura Factura

Factura.seam

Cl i ente.seam

Figura 41. Diagrama de Robustez CU: Administrar Facturas

139

DS008 CU: Administrar Facturas


s d ADM NIS T RAR FACT URAS (AS IGNAR)

sd ADMINISTRAR FACTURAS (ASIGNAR)


Ad m i n i s tra d o r B a ck _ E n d .s eam [M e n u P ri n ci p a l s e l e c Ad m i n i s tra r Cu e n ta s Cl i e n te s ]:

1.

(Opcin Asignar) El administrador ingresa a la pgina Back_End.seam, selecciona en el Menu Principal la opcin Administrar Cuentas Clientes y Facturas. 2. La plataforma navega hacia la pgina ClienteList.seam. 3. El administrador ingresa un dato en el formulario de bsqueda de dicha pgina y selecciona el botn Buscar Cliente. 4. La plataforma ejecuta el caso de uso Administrar Cuentas Clientes opcin Buscar. 5. El administrador selecciona en la columna Opciones la opcin Visualizar. 6. La plataforma navega hacia la pgina Cliente.seam en donde carga los datos del cliente seleccionado y un listado de las facturas asignadas. 7. El administrador hace click sobre el botn Generar Factura. 8. La plataforma navega hacia la pgina FacturaEdit.seam, en donde se muestra el contenido de la factura de acuerdo a los datos proporcionados desde la cuenta del cliente, calcula el total a pagar, el Iva, establece la fecha en que se gener la factura y la fecha mxima de pago. 9. El administrador selecciona el estado de la factura (Pagada o Pago Pendiente) y hace click sobre el botn Guardar. 10. La plataforma habilita los mecanismos de persistencia para guardar las facturas, las asignaciones correspondientes al cliente, navega hacia la pgina Factura.seam y muestra un mensaje Creada con exito y los detalles de la factura creada. 11. El administrador hace click sobre el botn Salir. 12. La plataforma navega hacia pgina ClienteList.seam.

n e w() Cl i e n te L i s t.s eam n e w() Cl i e n te L i s t g e tRe s u l tL i s t() :L i s t<Cl i e n te >

n e w() Cl i e n te [ca rg a rL i s ta d o Cl i e n te s ]:

[i n g re s a

cri te ri o

cl i ck " In i ci a r B u s q u e d a " ]:

g e tRe s ul Li s t() :L i s t<Cl i e n te >

[ca rg a r l i s ta d o

de

cl i e n te s e n co n tra d o s ]:

[Op ci o n e s cl i ck " V i s u a l i za r" ]:

Cl i e n te .s eam n e w() Cl i e n te Ho m e g e tIn s ta n ce () :Cl i e n te

[ca rg a r d a to s cl i e n te A ctu a l ]: [ca rg a lis ta d o fa ctu ra s a s g n a d a s i ]:

[cl i ck " g e n e ra r Fa ctu ra " ]:

Fa ctu ra E d i t.s eam [ca rg a r d a to s cl i e n te ]: g e ti n s ta n ce () :cl i e n te

n e w() Fa ctu ra Ho m e cl i e n tP a y() :S tri n g

n e w() Fa ctu ra A cti o n fa ctu ra De s cri p ti o n () :S tri n g p l a n Hi re d De s cri p ti o n (cl i e n te :Cl i e n te ) :S e l e ctIte m

Qu e ry

E n ti tyM a n a g e r e n ti tyM a n a g e r.cre a te Qu e ry(s e n te n ci a B u s ca rP l a n e l e g i d o :S tri n g ) :Qu e ry

fa ctu ra V a l o rUn i ta ri o () :S tri n g p l a n Hi re d Un i tV a l u e (Cl i e n te c) :S e l e ctIte m

e n ti tyM a n a g e r.cre a te Qu e ry(s e n e tn ci a Re cu p e ra rCo s to P l a n E l e g i d o ) :Qu e ry

P l a n Ne ttp l u s fa ctu ra S u b to ta l () :S tri n g p l a n Hi re d S u b to ta l V a l u e (cl i e n te :Cl i e n te ) :S e l e ctIte m

fa ctu ra S u b to ta l () :S tri n g

p l a n Hi re d S u b to ta l V a l u e (cl i e n te :

Cl i e n te ) :S e l e ctIte m

fa ctu ra V a l o rT o ta l () :S tri n g p l a n Hi re d T o ta l P a yV a l u e (cl i e n te :Cl i e n te ) :S e l e ctIte m

fa ctu ra Iva () :S tri n g p l a n Hi re d IV A (cl i e n te :Cl i e n te ) :s e l e ctIte m

a ctu a l Da te () :S tri n g

m a xDa te () :s tri n g

[s el ec es ta d o

cl i ck " Gu a rd a r" ]:

p e rs s i t() :S tri n g

DATOS INCOMPLETOS DEL CLIENTE A.5. La plataforma muestra el mensaje Aun no llena la hoj a de trabaj o del cliente A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos.

Fa ctu ra

Fa ctu ra .s eam M ens aj e " Cre a d o co n e xi to " ()

[cl i ck " S a l i r" ]:

Figura 42. Diagrama de Secuencia CU: Administrar Facturas (Asignar)

140

s d ADM NIS T RAR FACT URAS

(M ODIFICAR)

sd ADMINISTRAR FACTURAS (ELIMINAR)


[M e n u

Ad m i n i s tra d o r

B a ck _ E n d .s eam

P ri n ci p a l

s e l e c Ad m i n i s tra r Cu e n ta s Cl i e n te s ]:

n e w() Cl i e n te L i s t.s eam n e w() Cl i e n te L i s t g e tRe s u l tL i s t() :L i s t<Cl i e n te >

1.

(Opcin Editar) El administrador ingresa a la pgina Back_End.seam, selecciona en el Menu Principal la opcin Administrar Cuentas Clientes y Facturas. La plataforma navega hacia la pgina ClienteList.seam. El administrador ingresa el nombre del cliente que desea modificar y hace click sobre el botn Buscar Cliente. La plataforma busca en la base de datos el cliente solicitado y lo muestra en la pgina ClienteList.seam El administrador selecciona de la columna Opciones la opcin Visualizar. La plataforma navega hacia la pgina Cliente.seam y muestra un listado de las facturas asignadas al cliente. El administrador selecciona la opcin Ver Detalle.

n e w() Cl i e n te [ca rg a rL i s ta d o Cl i e n te s ]:

[i n g re s a

cri te ri o

cl i ck " In i ci a r B u s q u e d a " ]:

g e tRe s ul Li s t() :L i s t<Cl i e n te >

[ca rg a r l i s ta d o

de

cl i e n te s e n co n tra d o s ]:

2. 3.

[Op ci o n e s cl i ck " V i s u a l i za r" ]:

Cl i e n te .s eam n e w() Cl i e n te Ho m e g e tIn s ta n ce () :Cl i e n te

[ca rg a r d a to s cl i e n te A ctu a l ]: [ca rg a lis ta d o fa ctu ra s a s g n a d a s i ]:

[cl i ck " V e r De ta l l e " ]:

4.

Fa ctu ra .s eam

Fa ctu ra Ho m e

[cl i ck " E d i ta r Fa ctu ra " ]:

5. 6.

Fa ctu ra E d i t.s eam

g e tIn s ta n ce () :Fa ctu ra

[ca rg a rDa to s Fa ctu ra ]:

[ca rg a r d a to s cl i e n te ]: g e ti n s ta n ce () :cl i e n te

cl i e n tP a y() :S tri n g

n e w() Fa ctu ra A cti o n fa ctu ra De s cri p ti o n () :S tri n g p l a n Hi re d De s cri p ti o n (cl i e n te :Cl i e n te ) :S e l e ctIte m

7. 8.

Qu e ry

E n ti tyM a n a g e r e n ti tyM a n a g e r.cre a te Qu e ry(s e n te n ci a B u s ca rP l a n e l e g i d o :S tri n g ) :Qu e ry

La plataforma navega hacia la pgina Factura.seam. 9. El administrador visualiza los datos y hace click sobre el botn Editar Factura. 10. La plataforma navega hacia la pgina FactraEdit.seam y carga los datos de la factura. 11. El administrador selecciona el estado de la factura Pagada o No Pagada y hace click sobre el botn Guardar. 12. La plataforma guarda los cambios y navega hacia la pgina FacturaEdit.seam y muestra los cambios realizados.

fa ctu ra V a l o rUn i ta ri o () :S tri n g p l a n Hi re d Un i tV a l u e (Cl i e n te c) :S e l e ctIte m

e n ti tyM a n a g e r.cre a te Qu e ry(s e n e tn ci a Re cu p e ra rCo s to P l a n E l e g i d o ) :Qu e ry

P l a n Ne ttp l u s fa ctu ra S u b to ta l () :S tri n g p l a n Hi re d S u b to ta l V a l u e (cl i e n te :Cl i e n te ) :S e l e ctIte m

fa ctu ra S u b to ta l () :S tri n g

p l a n Hi re d S u b to ta l V a l u e (cl i e n te :

Cl i e n te ) :S e l e ctIte m

fa ctu ra V a l o rT o ta l () :S tri n g p l a n Hi re d T o ta l P a yV a l u e (cl i e n te :Cl i e n te ) :S e l e ctIte m

fa ctu ra Iva () :S tri n g p l a n Hi re d IV A (cl i e n te :Cl i e n te ) :s e l e ctIte m

a ctu a l Da te () :S tri n g

m a xDa te () :s tri n g

[s el ec es ta d o

cl i ck " Gu a rd a r" ]:

u p d a te () : S tri n g

Fa ctu ra [M e n s aj e " A ctu a l i za d o co n e xi to " ]:

Figura 43. Diagrama de Secuencia CU: Administrar Facturas(Modificar)

141

s d ADM NIS T RAR FACT URAS

(E LIM INAR)

sd ADMINISTRAR FACTURAS (ELIMINAR)


[M e n u

Ad m i n i s tra d o r

B a ck _ E n d .s eam

P ri n ci p a l

s el ec

Ad m i n i s tra r Cu e n ta s Cl i e n te s ]:

n e w() Cl i e n te L i s t.s eam n e w() Cl i e n te L i s t g e tRe s u l tL i s t() :L i s t<Cl i e n te >

1.

2. 3.

4.

5. 6.

7. 8.

(Opcin Eliminar) El administrador ingresa a la pgina Back_End.seam, selecciona en el Menu Principal la opcin Administrar Cuentas Clientes y Facturas. La plataforma navega hacia la pgina ClienteList.seam. El administrador ingresa el nombre del cliente que desea eliminar y hace click sobre el botn Buscar Cliente. La plataforma busca en la base de datos el cliente solicitado y lo muestra en la pgina ClienteList.seam. El administrador selecciona de la columna Opciones la opcin Visualizar. La plataforma navega hacia la pgina Cliente.seam y muestra un listado de las facturas asignadas al cliente. El administrador selecciona la opcin Ver Detalle.

n e w() Cl i e n te [ca rg a rL i s ta d o Cl i e n te s ]:

[i n g re s a

cri te ri o

cl i ck " In i ci a r B u s q u e d a " ]:

g e tRe s ul Li s t() :L i s t<Cl i e n te >

[ca rg a r l i s ta d o

de

cl i e n te s e n co n tra d o s ]:

[Op ci o n e s cl i ck " V i s u a l i za r" ]:

Cl i e n te .s eam n e w() Cl i e n te Ho m e g e tIn s ta n ce () :Cl i e n te

[ca rg a r d a to s cl i e n te A ctu a l ]: [ca rg a lis ta d o fa ctu ra s a s g n a d a s i ]:

[cl i ck " V e r De ta l l e " ]:

Fa ctu ra .s eam

Fa ctu ra Ho m e

[cl i ck " E d i ta r Fa ctu ra " ]:

Fa ctu ra E d i t.s eam

g e tIn s ta n ce () :Fa ctu ra

[ca rg a rDa to s Fa ctu ra ]:

[ca rg a r d a to s cl i e n te ]: g e ti n s ta n ce () :cl i e n te

cl i e n tP a y() :S tri n g

n e w() Fa ctu ra A cti o n fa ctu ra De s cri p ti o n () :S tri n g p l a n Hi re d De s cri p ti o n (cl i e n te :Cl i e n te ) :S e l e ctIte m

Qu e ry

E n ti tyM a n a g e r e n ti tyM a n a g e r.cre a te Qu e ry(s e n te n ci a B u s ca rP l a n e l e g i d o :S tri n g ) :Qu e ry

fa ctu ra V a l o rUn i ta ri o () :S tri n g

La plataforma navega hacia la pgina Factura.seam. 9. El administrador visualiza los datos y hace click sobre el botn Editar Factura. 10. La plataforma navega hacia la pgina FactraEdit.seam y carga los datos de la factura. 11. El administrador hace click sobre el botn Eliminar. 12. La plataforma elimina la factura de la base de datos, y navega hacia la pgina Cliente.seam.

p l a n Hi re d Un i tV a l u e (Cl i e n te

c) :S e l e ctIte m

e n ti tyM a n a g e r.cre a te Qu e ry(s e n e tn ci a Re cu p e ra rCo s to P l a n E l e g i d o ) :Qu e ry

P l a n Ne ttp l u s fa ctu ra S u b to ta l () :S tri n g p l a n Hi re d S u b to ta l V a l u e (cl i e n te :Cl i e n te ) :S e l e ctIte m

fa ctu ra S u b to ta l () :S tri n g

p l a n Hi re d S u b to ta l V a l u e (cl i e n te :

Cl i e n te ) :S e l e ctIte m

fa ctu ra V a l o rT o ta l () :S tri n g p l a n Hi re d T o ta l P a yV a l u e (cl i e n te :Cl i e n te ) :S e l e ctIte m

fa ctu ra Iva () :S tri n g p l a n Hi re d IV A (cl i e n te :Cl i e n te ) :s e l e ctIte m

a ctu a l Da te () :S tri n g

m a xDa te () :s tri n g

[s el ec

es ta d o

cl i ck " E l i m i n a r" ]:

re m o ve () :S tri n g

Fa ctu ra M ens aj e " A ctu a l i za d o co n e xi to " ()

[cl i ck " S a l i r" ]:

Figura 44. Diagrama de Secuencia CU: Administrar Facturas (Eliminar)

142

sd ADM NIST RAR FACT URAS (VISUALIZAR)

sd ADMINISTRAR FACTURAS (VISUALIZAR)


Adm i ni s trador Back _End.s eam

[M enu Pri nci pal

s el ec Adm i ni s trar Cuentas Cl i entes ]:

1. (Opcin Visualizar) El administrador ingresa a la pgina Back_End.seam, selecciona en el Menu Principal la opcin Administrar Cuentas Clientes y Facturas. 2. La plataforma navega hacia la pgina ClienteList.seam. 3. El administrador ingresa el nombre del cliente que desea visualizar y hace click sobre el botn Buscar. 4. La plataforma busca en la base de datos el cliente solicitado y lo muestra en la pgina ClienteList.seam. 5. El administrador selecciona de la columna Opciones la opcin Visualizar. 6. La plataforma navega hacia la pgina Cliente.seam y muestra un listado de las facturas asignadas al cliente. 7. El administrador selecciona la opcin Ver Detalle. 8. La plataforma navega hacia la pgina Factura.seam. 9. El administrador visualiza los datos, y hace click sobre el botn Regresar. 10. La plataforma navega hacia la pgina Cliente.seam. 11. El caso de uso finaliza.

new() Cl i enteLi s t.s eam new() Cl i enteLi s t getRes ul tLi s t() :Li s t<Cl i ente>

new() Cl i ente [cargarLi s tadoCl i entes ]:

[i ngres a cri teri o cl i ck "Ini ci ar Bus queda"]:

getRes ul Li s t() :Li s t<Cl i ente>

[cargar l i s tado de cl i entes encontrados ]:

[Opci ones cl i ck "Vi s ual i zar"]:

Cl i ente.s eam new() Cl i enteHom e getIns tance() :Cl i ente

[cargar datos cl i ente Actual ]: [carga l i s tado facturas as gnadas i ]:

[cl i ck "Ver Detal l e"]:

Factura.s eam

FacturaHom e getIns tance() :Factura

[cargarDatos Factura]:

Factura

[datos del cl i ente]:

Figura 45. Diagrama de Secuencia CU: Administrar Facturas (Visualizar)

143

7.8.9. Caso de Uso: Consultar Facturas

Nombre C.U: CONSULTAR FACTURAS Req. Funcional: RF0021 Objetivo(s):

Cdigo C.U: 0009

Permitir al cliente desde su cuenta acceder a un historial detallado de sus facturas.

Descripcin: Actor(s): Tipo Caso Uso: Precondiciones: Postcondiciones:

El cliente podr visualizar las facturas desde su cuenta. Cliente Sistema -Haber ejecutado el caso de uso Administrar Clientes -Haber ejecutado el caso de uso Administrar Facturas -El ha podido consultar el detalle de sus facturas.

FLUJO NORMAL DE EVENTOS ACTOR 1. En la pgina Front_End.seam el cliente selecciona la opcin Iniciar Sesion. 2. La plataforma ejecuta el caso de uso Autentificar Usuario, navega hacia la pgina ClienteAccount.seam 3. El cliente visualiza el listado de facturas que le ha asignado la empresa y hace click sobre el botn Salir. 4. La plataforma finaliza la conversacin con el cliente y navega hacia la pgina Front_End.seam. 5. El caso de uso finaliza FLUJO ALTERNOS DE EVENTOS A. CLIENTE SIN FACTURAS ASIGNADAS PLATAFORMA

144

A.3. La plataforma muestra el mensaje No presenta facturas asignadas A.4. El caso de uso contina en el numeral 3 del flujo normal de eventos. Prototipdo de Pantalla CU: Consultar Facturas

DR009 CU: Consultar Facturas


uc CONSULTAR FACTURAS

Autentificar Usuario Front_End.seam Click "Iniciar Sesion" Cliente Account.seam Cargar Datos Cliente Instanciar Cliente

Cliente

Cargar Lista Facturas Administrador

Obtener Facturas Asignadas

Mensaje "No presenta facturas asignadas"

Instanciar Factura

Factura

Figura 46. Diagrama de Robustez CU: Consultar Facturas

145

DS009 CU: Consultar Facturas


sd CONSULATAR FACTURAS

sd CONSULTAR FACTURAS
Cl i ente Front_Ent.seam

[sel ec "Ini ci ar Sesi on"]:

1. En la pgina Front_End.seam el cliente selecciona la opcin Iniciar Sesion. 2. La plataforma ejecuta el caso de uso Autentificar Usuario, navega hacia la pgina ClienteAccount.seam 3. El cliente visualiza el listado de facturas que le ha asignado la empresa y hace click sobre el botn Salir. 4. La plataforma finaliza la conversacin con el cliente y navega hacia la pgina Front_End.seam. 5. El caso de uso finaliza

Autenti fi car Usuari o

Cl i enteAccount.seam

Cl i enteHom e

Cl i ente getInstance() :Cl i ente

[CargarDatosCl i enteActual ]:

getFacturasCl i ente() :Li st<Facturas>

Factura [cargar l i sta facturas asi gnadas]:

[cl i ck sal i r]:

Figura 47. Diagrama de Secuencia CU: Consultar Factura

146

7.8.10. Caso de Uso: Administrar Cuenta Administrativa Nombre C.U: ADMINISTRAR CUENTA Cdigo C.U: 0010

ADMINISTRATIVA Req.Funcional: Objetivo(s): RF0002 Permitir administrar de forma dinmica las cuentas

administrativas de la plataforma. Descripcin: Se podr crear, modificar, eliminar, visualizar y buscar

administradores. Actor(s): Tipo Caso Uso: Pre-condiciones: Post-condiciones: Administrador Sistema -Haber ejecutado el caso de uso autentificar usuario -Se ha administrado de forma correcta los usuarios que tendrn acceso al Back_End de la plataforma. FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin administrador Crear) en la El pgina PLATAFORMA

Back_end.seam selecciona en el Menu Principal la opcin Cuenta Administrar Administrativa. 2. La plataforma navega hacia la pgina AdministradorList.seam y despliega un listado de los administradores creados. 3. El administrador hace click sobre el botn Crear. 4. La plataforma navega hacia la pgina AdministradorEdit.seam. 5. El administrador ingresa los datos solicitados en el

formulario y hace click sobre el

147

botn Guardar 6. La plataforma verifica campos obligatorios, que el nombre de usuario no est asignado a otro administrador, la estructura del e-mail sea nico, guardo los datos, navega hacia la pgina Administrador.seam y muestra un mensaje Creado con exito 7. El administrador hace click en el botn Nuevo. 8. La plataforma navega haca la pgina AdministradorList.seam. 9. (Opcin Editar) en la El pgina

administrador

Back_end.seam selecciona en el Menu Principal la opcin Cuenta Administrar Administrativa. 10. La plataforma navega hacia la pgina AdmnistradorList.seam. 11. El administrador selecciona en la columna Opciones Editar que la del desea opcin

administrador modificar.

12. La plataforma navega hacia la pgina AdministradorEdit.seam y carga los datos en un formulario 13. El administrador modifica los datos en el formulario y hace click en el botn Actulizar. 14. La plataforma verifica campos obligatorios, que el nombre de usuario no est asignado a

148

otro administrador, la estructura del e-mail y que no exista en la plataforma, guardo los datos, navega hacia la pgina

Administrador.seam y muestra un mensaje Actualizado con exito 15. El administrador hace click en el botn Nuevo. 16. La plataforma navega hacia la pgina AdministradorList.seam. 17. (Opcin administrador Eliminar) en la El pgina

Back_end.seam selecciona en el Menu Principal la opcin Cuenta Administrar Administrativa. 18. La plataforma navega hacia la pgina AdmnistradorList.seam. 19. El administrador selecciona en la columna Opciones Editar que la del desea opcin

administrador eliminar.

20. La plataforma navega hacia la pgina AdministradorEdit.seam y carga los datos del cliente seleccionado en un formulario. 21. El administrador hace click sobre el botn Eliminar. 22. La plataforma elimina los datos de la base de datos, navega hacia y la pgina el

AdministradorList.seam

muestra

mensaje Eliminado con exito. 23. (Opcin Visualizar) El

149

administrador

en

la

pgina

Back_end.seam selecciona en el Menu Principal la opcin Cuenta Administrar Administrativa. 24. La plataforma navega hacia la pgina AdmnistradorList.seam. 25. El administrador selecciona en la columna Opciones la del desea opcin Visualizar que

administrador visualizar.

26. La plataforma navega hacia la pgina Administrador.seam y muestra los datos del administrador seleccionado. 27. (Opcin administrador Buscar) en la El pgina

Back_end.seam selecciona en el Menu Principal la opcin Cuenta Administrar Administrativa. 28. La plataforma navega hacia la pgina AdmnistradorList.seam. 29. El administrador ingresa los datos en el formulario segn su criterio de bsqueda y hace click sobre el botn Buscar Administrador. 30. La plataforma busca en la base de datos las coincidencias encontradas y los enlista. 31. El caso de uso finaliza. FLUJO ALTERNOS DE EVENTOS

150

A. CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

B. CAMPOS OBLIGATORIOS VACIOS B.13.La plataforma muestra el mensaje Ingrese los datos requeridos en los campos B.14. El caso de uso contina en el numeral 13 del flujo normal de eventos C. EL NOMBRE DE USUARIO YA EXISTE C.5. La plataforma muestra el mensaje Nombre de usuario ya existente en la plataforma C.6. El caso de uso contina en el numeral 5 del flujo normal de eventos D. EL NOMBRE DE USUARIO YA EXISTE D.13. La plataforma muestra el mensaje Nombre de usuario ya existente en la plataforma D.14. El caso de uso contina en el numeral 13 del flujo normal de eventos E. E-MAIL NO VLIDO E.5. La plataforma muestra el mensaje E-mail no vlido E.6. El caso de uso contina en el numeral 5 del flujo normal de eventos F. E-MAIL NO VLIDO F.13. La plataforma muestra el mensaje E-mail no vlido F.14. El caso de uso contina en el numeral 13 del flujo normal de eventos G. E-MAIL YA REGISTRADO EN LA PLATAFORMA G.5. La plataforma muestra el mensaje E-mail ya registrado en la plataforma G.6. El caso de uso contina en el numeral 5 del flujo normal de eventos H. E-MAIL YA REGISTRADO EN LA PLATAFORMA H.13. La plataforma muestra el mensaje E-mail ya registrado en la plataforma H.14.El caso de uso contina en el numeral 5 del flujo normal de eventos

151

Prototipdo de Pantalla CU: Administrar Cuenta Administrativa Opcin Buscar Opcin Crear

Opcin Editar y Eliminar

Opcin Visualizar

152

Cursos Alternos

153

DR010 CU: Administrar Cuenta Administrativa


uc ADM INISTRAR CUENTA ADM INISTRATIVA

Opci on Crear Cuenta Adm i ni strati va

Back_End.seam

Cargar Li sta Adm i ni stradores

M enu Pri nci pal "Adm i ni strar Cuenta Adm i ni strati va" Cl i ck "Crear" Ingresa datos Cl i ck "Guardar" Administrador Adm i ni stradorEdi t.seam Obtener todos Adm i ni stradores Instanci ar Adm i ni strador Adm i ni strador Adm i ni stradorLi st.seam

M ensaj e "Ingrese datos requeri dos en l os cam pos" Cl i ck "Nuevo"

Veri fi car Cam pos

M ensaj e "E_m ai l no val i do"

Veri fi car E-m ai l

M ensaj e "Nom bre de usuari o ya exi stente en l a pl ataform a"

Veri fi car nom bre

Adm i ni strador.seam

M ensaj e "E-m ai l ya regi strado en l a pl ataform a"

Veri fi car E-m ai l uni co Guardar Datos

Adm i ni stradorLi st.seam

M ensaj e "Creado con exi to"

Opci on Edi tar Cuenta Adm i ni strati va

Back_end.seam M enu Pri nci pal "Adm i ni strar Cuenta Adm i ni strati va" "Opci ones" Sel ect "Edi tar" Adm i ni stradorLi st.seam M odi fi ca Datos Cl i ck "Actual i zar" Administrador Adm i ni stradorEdi t.seam

Obtener Li sta Adm i ni stradores

Instanci ar Adm i ni strador

Adm i ni strador

Cargar Datos

M ensaj e "Ingrese l os datos requeri dos en Veri fi car Cam pos l os cam pos"

Cl i ck "Nuevo"

M ensaj e "Nom bre de Veri fi car Nom bre usuari o ya exi stente en l a pl ataform a"

M ensaj e "E-m ai l no val i do"

Veri fi car E-m ai l

Adm i ni strador.seam

M ensaj e "E-m ai l ya regi strado en l a pl ataform a"

Veri fi car Em ai l no repeti do

Actual i zar Datos

Adm i ni stradorLi st.seam

M ensaj e "Actual i zado con exi to"

Opci on El i m i nar Cuenta Adm i ni strati va

Back_End.seam M enu Pri nci pal "Adm i ni strar Cuenta Adm i ni strati va" "Opci ones" Sel ect "Edi tar" Adm i ni stradorLi st.seam Administrador Sel ect "El i m i nar"

Cargar Li stado Adm i ni stradores

Instanci ar Adm i ni strador

Adm i ni strador

Cargar Datos

Adm i ni stradorEdi t.seam

El i m i nar Adm i ni strador

Adm i ni stradorLi st.seam

M ensaj e "El i m i nado con exi to"

Opci on Vi sual i zar Adm i ni strador

Back_End.seam M enu Pri nci pal "Adm i ni strar Cuenta Adm i ni strati va" "Opci ones" Sel ect "Vi sual i zar" Adm i ni stradorLi st.seam Cargar Li stado Adm i ni stradores Instanci ar Adm i ni strador Adm i ni strador

Administrador

Vi sual i za Cargar Datos

Adm i ni strador.seam

Opci on Buscar Adm i ni strador

Back_End.seam M enu Pri nci pal "Adm i ni strar Cuenta Adm i ni strati va" Buscar Adm i ni strador Instanci ar Adm i ni strador Adm i ni strador

Ingresa Cri teri o Busqueda Cl i ck "Buscar Adm i ni strador"

Adm i ni stradorLi st.seam

Administrador Cargar Li stado Adm i ni stradores

Figura 48. Diagrama de Robustez CU: Administrar Cuenta Administrativa

154

DS010 CU: Administrar Cuenta Administrativa


sd ADM INIST RAR CUENT AS ADM INIST RAT IVAS (CREAR)

sd ADMINISTRAR CUENTA ADMINISTRATIVA (CREAR)


Adm i ni strador Back_End.seam

1.

2.

3. 4. 5.

(Opcin Crear) El administrador en la pgina Back_end.seam selecciona en el Menu Principal la opcin Administrar Cuenta Administrativa. La plataforma navega hacia la pgina AdministradorList.seam y despliega un listado de los administradores creados. El administrador hace click sobre el botn Crear. La plataforma navega hacia la pgina AdministradorEdit.seam. El administrador ingresa los datos solicitados en el formulario y hace click sobre el botn Guardar La plataforma verifica campos obligatorios, que el nombre de usuario no est asignado a otro administrador, la estructura del e-mail sea nico, guardo los datos, navega hacia la pgina Administrador.seam y muestra un mensaje Creado con exito El administrador hace click en el botn Nuevo. 8. La plataforma navega haca la pgina AdministradorList.seam.

[M enu Pri nci pal

sel ec Adm i ni strar Cuentas Adm i ni st]:

new() Adm i ni stradorLi st.seam new() Adm i ni stradorLi st getResul tLi st() : Li st<Adm i ni strador> new() Adm i ni strador [cargarLi stadoAdm i ni strador]:

[cl i ck ""crear"]:

6.

Adm i ni stradorEdi t.seam new() Adm i ni stradorHom e i sM anaged() :Bool ean

[i ngresa datos cl i ck "Guardar"]:

"Ingrese l os datos requeri dos en l os cam pos"

7. 8.

[veri fi car cam pos vaci os]: [veri fi car em ai l correcto]: [com paraContrasenas i ngresadas]: val i dateRepassword() :Bool ean
Contrase nas no coi nsi den

[i denti fi car datos ya regi strados ]: new() Adm i ni stradorActi on i denti fyRepeatedFi el ds(Adm ni strador:Adm i n) :Li st<Stri ng>

CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos EL NOMBRE DE USUARIO YA EXISTE C.5. La plataforma muestra el mensaje Nombre de usuario ya existente en la plataforma C.6. El caso de uso contina en el numeral 5 del flujo normal de eventos E-MAIL NO VLIDO E.5. La plataforma muestra el mensaje E-mail no v lido E.6. El caso de uso contina en el numeral 5 del flujo normal de eventos E-MAIL YA REGISTRADO EN LA PLATAFORMA G.5. La plataforma muestra el mensaje E-mail ya registrado en la plataforma G.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

Nom bre de usuari o ya regi strada en l a pl ataform a E-m ai l ya regi strada en l a pl ataform a

new() Query new() Enti tyM anager

enti tyM anager.createQuery(sentenci aPaaraBusquedaEl em ento:stri ng)

persi st() :Stri ng

new() Cl i ente getInstance() : Adm i ni strador [M ensaj e "Creado con exi to"]:

[cl i ck "Nuevo"]:

Figura 49. Diagrama de Secuencia CU: Administrar Cuenta Administrativa (Crear)

155

sd ADMINISTRAR CUENTA ADMINISTRATIVA (EDITAR)

sd ADM INISTRAR CUENTAS ADM INISTRATIVAS (M ODIFICAR)

Adm i ni strador

Back_End.seam

1.

2. 3.

4.

5. 6.

7. 8.

(Opcin Editar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal la opcin Administrar Cuenta Administrativa. La plataforma navega hacia la pgina AdmnistradorList.seam. El administrador selecciona en la columna Opciones la opcin Editar del administrador que desea modificar. La plataforma navega hacia la pgina AdministradorEdit.seam y carga los datos en un formulario El administrador modifica los datos en el formulario y hace click en el botn Actulizar. La plataforma verifica campos obligatorios, que el nombre de usuario no est asignado a otro administrador, la estructura del e-mail y que no exista en la plataforma, guardo los datos, navega hacia la pgina Administrador.seam y muestra un mensaje Actualizado con exito El administrador hace click en el botn Nuevo. 8. La plataforma navega hacia la pgina AdministradorList.seam.

[M enu Pri nci pal

sel ec Adm i ni strar Cuentas Adm i ni st]:

new() Adm i ni stradorLi st.seam new() Adm i ni stradorLi st getResul tLi st() : Li st<Adm i ni strador> new() Adm i ni strador [cargarLi stadoAdm i ni strador]:

[opci ones cl i ck "edi tar"]:

Adm i ni stradorEdi t.seam new() Adm i ni stradorHom e i sM anaged() :Bool ean geti nstance() :Adm i ni strador

[m odi fi ca datos cl i ck "Guardar"]:

"Ingrese l os datos requeri dos en l os cam pos"

[veri fi car cam pos vaci os]: [veri fi car em ai l correcto]: [com paraContrasenas i ngresadas]: val i dateRepassword() :Bool ean

CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos EL NOMBRE DE USUARIO YA EXISTE C.5. La plataforma muestra el mensaje Nombre de usuario ya existente en la plataforma C.6. El caso de uso contina en el numeral 5 del flujo normal de eventos E-MAIL NO VLIDO E.5. La plataforma muestra el mensaje E-mail no v lido E.6. El caso de uso contina en el numeral 5 del flujo normal de eventos E-MAIL YA REGISTRADO EN LA PLATAFORMA G.5. La plataforma muestra el mensaje E-mail ya registrado en la plataforma G.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

Contrase nas no coi nsi den

[i denti fi car datos ya regi strados ]: new() Adm i ni stradorActi on i denti fyRepeatedFi el ds(Adm ni strador:Adm i n) :Li st<Stri ng>

Nom bre de usuari o ya regi strada en l a pl ataform a E-m ai l ya regi strada en l a pl ataform a

new() Query new() Enti tyManager

enti tyManager.createQuery(sentenci aPaaraBusquedaEl em ento:stri ng)

update() : Stri ng

new() Cl i ente getInstance() : Adm i ni strador [M ensaj e "M odi fi cado con exi to"]:

[cl i ck "Nuevo"]:

Figura 50. Diagrama de Secuencia CU: Administrar Cuenta Administrativa (Modificar)

156

sd ADMINISTRAR CUENTAS ADMINISTRATIVAS (ELIMINAR)

sd ADMINISTRAR CUENTA ADMINISTRATIVA (ELIMINAR)


Administrador Back_End.seam

[Menu Principal selec Administrar Cuentas Administ]:

1. (Opcin Eliminar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal la opcin Administrar Cuenta Administrativa. 2. La plataforma navega hacia la pgina AdmnistradorList.seam. 3. El administrador selecciona en la columna Opciones la opcin Editar del administrador que desea eliminar. 4. La plataforma navega hacia la pgina AdministradorEdit.seam y carga los datos del cliente seleccionado en un formulario. 5. El administrador hace click sobre el botn Eliminar. 6. La plataforma elimina los datos de la base de datos, navega hacia la pgina AdministradorList.seam y muestra el mensaje Eliminado con exito.

new() AdministradorList.seam new() AdministradorList getResultList() : List<Administrador> new() Administrador [cargarListadoAdministrador]:

[opciones click "editar"]:

AdministradorEdit.seam new() AdministradorHome isManaged() :Boolean getinstance() :Administrador

[modifica datos click "Eliminar"]: update() : String

[Mensaje "Modificado con exito"]:

Figura 51. Diagrama de Secuencia CU: Administrar Cuenta Administrativa (Eliminar)

157

sd ADMINISTRAR CUENTA ADMINISTRATIVA (BUSCAR)

sd ADM INIST RAR CUENT AS ADM INIST RAT IVAS (BUSCAR)

Adm i ni strador

Back_End.seam

1.

2. 3.

4.

(Opcin Buscar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal la opcin Administrar Cuenta Administrativa. La plataforma navega hacia la pgina AdmnistradorList.seam. El administrador ingresa los datos en el formulario segn su criterio de bsqueda y hace click sobre el botn Buscar Administrador. La plataforma busca en la base de datos las coincidencias encontradas y los enlista.

[M enu Pri nci pal

sel ec Adm i ni strar Cuentas Adm i ni st]:

new() Adm i ni stradorLi st.seam new() Adm i ni stradorLi st getResul tLi st() : Li st<Adm i ni strador> new() Adm i ni strador [cargarLi stadoAdm i ni strador]:

[i ngresa cri teri o cl i ck "Ini ci ar busqueda"]:

getResuLl i st() :Li st<Adm ni strador>

[cargar l i sta coi nsi denci as]:

Figura 52. Diagrama de Secuencia CU: Administrar Cuenta Administrativa (Buscar)


sd ADM INIST RAR CUENT AS ADM INIST RAT IVAS (VISUALIZAR)

sd ADMINISTRAR CUENTA ADMINISTRATIVA (VISUALIZAR)


Adm i ni s trador Back _End.s eam

1.

2. 3.

4.

(Opcin Visualizar) El administrador en la pgina Back_end.seam selecciona en el Menu Principal la opcin Administrar Cuenta Administrativa. La plataforma navega hacia la pgina AdmnistradorList.seam. El administrador selecciona en la columna Opciones la opcin Visualizar del administrador que desea visualizar. La plataforma navega hacia la pgina Administrador.seam y muestra los datos del administrador seleccionado.

[M enu Pri nci pal

s el ec Adm i ni s trar Cuentas Adm i ni s t]:

new() Adm i ni s tradorLi s t.s eam new() Adm i ni s tradorLi s t getRes ul tLi s t() : Li s t<Adm i ni s trador> new() Adm i ni s trador [cargarLi s tadoAdm i ni s trador]:

[opci ones cl i ck "Vi s ual i zar"]:

Adm i ni s trador.s eam new() Adm i ni s tradorHom e geti ns tance() :Adm i ni s trador

Figura 53. Diagrama de Secuencia CU: Administrar Cuenta Administrativa (Visualizar)

158

7.8.11. Caso de Uso: Administrar Cuentas Clientes Nombre C.U: ADMINISTRAR CUENTAS Cdigo C.U: 0011 CLIENTES Req. Funcional: Objetivo(s): RF0005 Administrar de forma dinmica las creados en la plataforma. Descripcin: Se permitir crear, eliminar, modificar, visualizar y buscar al cliente. Actor(s): Tipo Caso Uso: Pre-condiciones: Administrador Sistema -Haber ejecutado el caso de uso registrar cliente -Haber ejecutado el caso de uso autentificar usuario Post-condiciones: -Se ha administrado correctamente los datos de los clientes registrados FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin Crear) El PLATAFORMA cuentas de los clientes

administrador selecciona en la pgina Back_End.seam en el Menu Principal La opcin Administrar Cuentas Clientes. 2. La plataforma navega hacia la pgina ClienteList.seam. 3. El administrador hace click sobre el botn Crear. 4. La plataforma navega hacia la pgina ClienteEdit.seam y muestra un formulario. 5. El administrador ingresa los datos requeridos en el

formulario y hace click en el botn Guardar.

159

6. La

plataforma

verifica

los

campos

obligatorios, vlida tipos de datos, verifica la estructura del nmero de cdula y que no se repita en el sistema, verifica que el nombre de usuario no se repita en el sistema, vlida y verifica el e-mail y que no se repita en el sistema, verifica la estructura de la ip

asignada y que no se repita en el sistema, verifica que las contraseas ingresadas sean iguales, habilita los mecanismos de

persistencia para guardar un nuevo cliente en la base de datos, navega hacia la pgina Cliente.seam en donde se muestra el mensaje Creado con xito y se carga en un panel los datos de dicho cliente. 7. El administrador visualiza los datos y hace clik en el botn Nuevo 8. La plataforma navega hacia la pgina ClienteList.seam. 9. (Opcin Editar) El

administrador selecciona en la pgina Back_End.seam en el Menu Principal La opcin Administrar Clientes. 10. La plataforma navega hacia la pgina ClienteList.seam. 11. El administrador selecciona en la columna Opciones la opcin Editar del cliente que desea modificar. Cuentas

160

12. La plataforma navega hacia la pgina ClienteEditseam y carga en un formulario los datos del cliente seleccionado. 13. El administrador modifica los datos, hace click sobre la opcin Hoja de Trabajo. 14. La plataforma muestra el cuadro de dialogo en donde carga un listado de los planes de Internet creados por la empresa, adems los datos necesarios y requeridos por el caso de uso Administrar Facturas. 15. El administrador hace click sobre el botn Aceptar. 16. La plataforma ClienteEdit.seam. 17. El administrador hace click sobre el botn Guardar. 18. La plataforma verifica los campos navega hacia la pgina

obligatorios, vlida tipos de datos, verifica la estructura del nmero de cdula y que no se repita en el sistema, verifica que el nombre de usuario no se repita en el sistema, vlida y verifica el e-mail y que no se repita en el sistema, verifica la estructura de la ip

asignada y que no se repita en el sistema, verifica que las contraseas ingresadas sean iguales, habilita los mecanismos de

persistencia para guardar un nuevo cliente en la base de datos, navega hacia la pgina Cliente.seam en donde se muestra el mensaje Actualizado con xito y se carga en un panel los datos de dicho cliente.

161

19. El administrador hace click sobre el botn Nuevo. 20. La plataforma navega hacia la pgina ClienteList.seam. 21. (Opcin Eliminar) El

administrador selecciona en la pgina Back_End.seam en el Menu Principal La opcin Administrar Clientes. 22. La plataforma navega hacia la pgina ClienteList.seam. 25. El administrador selecciona en la columna Opciones la opcin Editar del cliente que desea eliminar. 23. La plataforma navega hacia la pgina ClienteEdit.seam y carga los datos del cliente seleccionado. 24. El administrador hace click sobre el botn Eliminar. 25. La plataforma habilita los mecanismos de persistencia para eliminar al cliente de la base de datos, navega hacia la pgina ClienteList.seam, muestra el mensaje Eliminado con exito y muestra un listado de los clientes creados en la plataforma. 26. (Opcin Visualizar) El Cuentas

administrador selecciona en la pgina Back_End.seam en el Menu Principal La opcin Administrar Cuentas

162

Clientes. 27. La plataforma navega hacia la pgina ClienteList.seam. 28. El administrador selecciona en la columna Opciones la opcin Visualizar del cliente que desea visualizar. 29. La plataforma navega hacia la pgina Cliente.seam y carga los datos en un formulario del cliente seleccionado. 30. (Opcin Buscar) El

administrador selecciona en la pgina Back_End.seam en el Menu Principal La opcin Administrar Clientes. 31. La plataforma navega hacia la pgina ClienteList.seam. 32. El administrador el criterio de bsqueda de su inters en el formulario de bsqueda y hace click sobre el botn Buscar Cliente. 33. La plataforma busca en la base de datos coincidencias con el criterio y las enlistas en la pgina ClienteList.seam. 34. El caso de uso finaliza FLUJO ALTERNOS DE EVENTOS

Cuentas

A. CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje junto a cada uno de los campos solicitando Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

163

B. CAMPOS OBLIGATORIOS VACIOS B.17. La plataforma muestra el mensaje junto a cada uno de los campos solicitando Ingrese los datos requeridos en los campos B.18. El caso de uso contina en el numeral 17 del flujo normal de eventos

C. E-MAIL NO VLIDO C.5. La plataforma muestra un mensaje E-mail no valido C.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

D. E-MAIL NO VLIDO D.17. La plataforma muestra un mensaje E-mail no valido D.18. El caso de uso contina en el numeral 17 del flujo normal de eventos

E. NMERO DE CEDULA INVALIDO E.5. La plataforma muestra el mensaje Nmero de cdula incorrecto E.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

F. NMERO DE CDULA YA REGISTRADO F.5. La plataforma muestra el mensaje Nmero de cdula ya registrado F.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

G. NMERO DE CEDULA INVALIDO G.17. La plataforma muestra el mensaje Nmero de cdula incorrecto G.18. El caso de uso contina en el numeral 17 del flujo normal de eventos

H. NMERO DE CDULA YA REGISTRADO H.17. La plataforma muestra el mensaje Nmero de cdula ya registrado H.18. El caso de uso contina en el numeral 17 del flujo normal de eventos

I. E-MAIL YA REGISTRADO I.5. La plataforma muestra un mensaje E-mail ya registrado I.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

J. E-MAIL YA REGISTRADO J.17. La plataforma muestra un mensaje E-mail ya registrado J.18. El caso de uso contina en el numeral 17 del flujo normal de eventos K. NOMBRE DE USUARIO REGISTRADO K.5. La plataforma muestra el mensaje Nombre de usuario ya registrado en la plataforma K.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

164

L. NOMBRE DE USUARIO REGISTRADO L.17. La plataforma muestra el mensaje Nombre de usuario ya registrado en la plataforma L.18. El caso de uso contina en el numeral 17 del flujo normal de eventos M. IP NO VLIDA M.5. La plataforma muestra el mensaje Ip no valida M.6. El caso de uso contina en el numeral 5 del flujo normal de eventos N. IP NO VLIDA N.17. La plataforma muestra el mensaje Ip no valida N.18. El caso de uso contina en el numeral 17 del flujo normal de eventos O. CONTRASEAS NO COINCIDEN O.5. La plataforma muestra el mensaje Contraseas no coinciden O.6. El caso de uso contina en el numeral 5 del flujo normal de eventos P. CONTRASEAS NO COINCIDEN P.17. La plataforma muestra el mensaje Contraseas no coinciden P.18. El caso de uso contina en el numeral 17 del flujo normal de eventos Q. IP YA REGISTRADA Q.5. La plataforma muestra el mensaje Ip ya registrada en la plataforma Q.6. El caso de uso contina en el numeral 5 del flujo normal de eventos R. IP YA REGISTRADA R.17. La plataforma muestra el mensaje Ip ya registrada en la plataforma R.18. El caso de uso contina en el numeral 17 del flujo normal de eventos

165

Prototipdo de Pantalla CU: Administrar Cuentas Clientes Opcin Buscar Opcin Crear

Opcin Editar y Eliminar

166

Opcin Visualizar

Cursos Alternos

Cursos Alternos

167

DR011 CU: Administrar Cuentas Clientes


uc ADM INIST RAR CUENT AS CLIENT ES Op ci o n Cre a r Cu e n ta s Cl i e n te s Ba ck En d .s a m _ e M e n u Pri n ci p a l " Ad m i n i s tra r Cu e n ta s Cl i e n te s " Cl i ck " Cre a r" Cl i e n te L i s t.s a m e In g re s a d a to s Cl i ck " Gu a rd a r" M e n s j e " In g re s a e l os d a ts o re q u e ri d o s e n l o s ca m p o s " Ca rg a r L i s ta d o Cl i e n te s In s ta n i a r Cl i e n te Cl i e n te

Adminis tra dor Cl i e n te Ed i t.s a m e Ve ri fi ca r Ca m p o s

M e n s j e " Nu m e ro d e a ce d u l a i n co rre cto " Ve ri fi ca r No . Ce d u l a

M e n s j e " Nu m e ro d e a ce d u l a ya re g i s tra d o " Ve ri fi ca r Ce d u l a Re p e ti d a M e n s j e " No m b re d e a u s a ri o ya re g i s u tra d o e n l a p l a ta fo rm a " Ve ri fi ca r No m b re Us a ri o u M e n s j e " E-m a i l n o a va l i d o " Ve ri fi ca r E-m a i l

Cl i ck " Nu e vo "

M e n s j e " E-m a i l ya a re g i s tra d o " Ve ri fi ca r E-m a i l ya re g i s tra d o

M e n s j e " Ip n o va l i d a " a

Ve ri fi ca r Ip

M e n s j e " " Ip ya a re g i s tra d a e n l a p l a ta fo rm a

Ve ri fi ca r Ip ya Re g i s tra d a

M ens j e a " Co n tra s a s n o e co i n ci d e n "

Ve ri fi ca r Co n tra s a s e Gu a rd a r Da to s

Cl i e n te .s a m e M e n s j e " Cre a d o co n a e xi to "

Cl i e n te L i s t.s a m e Op ci o n Ed i ta r Cu e n ta s Cl i e n te s

Ba ck En d .s a m _ e

Ca rg a r L i s ta d o Cl i e n te s Cre a d o s

In s ta n ci a r Cl i e n te

Cl i e n te

M e n u Pri n ci p a l " Ad m i n i s tra r Cu e n ta s Cl i e n te s " " Op ci o n e s Se l e ct " Ed i ta r" " Cl i e n te L i s t.s a m e Cra g a r d a to s Cl i e n te In g re s a d a to s Cl i ck " Ho j a d e T abaj o"

Adminis tra dor Cl i e n te Ed i t.s a m e Ca rg a r L i s ta d o Pl a n e s Pl a n Ne ttp l u s

Cl i ck " Gu a rd a r"

Ho j a d e T ra b a j o

M e n s j e " In g re s a e l os d a to s re q u e ri d o s e n l o s ca m p o s "

Cl i e n te Ed i t.s a m e

Ve ri fi ca r Ca m p o s

M e n s j e " Nu m e ro d e a ce d u l a i n co rre cto " Ve i ri fca r No . ce d u l a

M e n s j e " Nu m e ro d e a ce d u l a ya re g i s tra d o " Ve ri fi ca r No . ce d u l a re p e ti d o

Cl i ck " Nu e vo "

M e n s j e " No m b re d e a u s a ri o ya re g i s u tra d o e n l a p l a ta fo rm a "

Ve ri fi ca r n o m b re d e u s a ri o u

M e n s j e " E-m a i l n o a va l i d o " Ve ri fi ca r E-m a i l

M e n s j e " E-m a i l ya a re g i s tra d o "

Ve ri fi ca r E-m a i l re p e ti d o

M e n s j e " Ip n o a va l i d a "

Ve ri fi ca r Ip

M e n s j e " Ip ya a re g i s tra d a e n l a p l a ta fo rm a "

Ve rfi ca r Ip re p e ti d a

Cl i e n te .s a m e

M ens j e a " Co n tra s a s n o e co i ci d e n "

Ve ri fi ca r co n tra s a s e

Gu a rd a r Da to s

Cl i e n te L i s t.s a m e

M e n s j e " Actu a l i za d o a co n e xi to "

Op ci o n El i m i n a r Cu e n ta s Cl i e n te s

Ba ck e n d .s a m _ e M e n u Pri n ci p a l " Ad m i n i s tra r Cu e n ta s Cl i e n te s " " Op ci o n e s Se l e ct " Ed i ta r" " Cl i e n te L i s t.s a m e Adminis tra dor Se l e ct " El i m i n a r"

Cra g a r L i s ta d o Cl i e n te s

In s ta n ci a r Cl i e n te

Cl i e n te

Ca rg a r Cl i e n te

Cl i e n te Ed i t.s a m e El i m i n a r Da to s

Cl i e n te L i s t.s a m e Op ci o n Bu s ca r Cu a n ta s Cl i e n te s

M e n s j e " El i m i n a d o a co n e xi to "

Ba ck En d .s a m _ e M e n u Pri n ci p a l " Ad m i n i s tra r Cu e n ta s Cl i e n te s " Ca rg a r L i s ta d o cl i e n te s In g re s a Cri te ri o d e Bu s u e d a Cl i ck " Bu s q ca r Cl i e n te " Cl i e n te L i s t.s a m e Adminis tra dor Bu s ca r Co i n ci d e n ci a s Op ci o n Vi s a l i za r Cu e n ta s Cl i e n te s u Ca rg a r L i s ta Cl i e n te s In s ta n ci a r Cl i e n te Cl i e n te

Ba ck En d .s a m _ e M e n u Pri n ci p a l " Ad m i n i s tra r Cu e n ta s Cl i e n te s " " Op ci o n e s Se l e ct " Vi s a l i za r" " u Cl i e n te L i s t.s a m e Ca rg a r L i s ta d o Cl i e n te s In s ta n ci a r Cl i e n te Cl i e n te

Adminis tra dor Ca rg a r Da to s Cl i e n te

Cl i e n te .s a m e

Figura 54. Diagrama de Robustez CU: Administrar Cuentas Clientes

168

DS011 CU: Administrar Cuentas Cliente


sd ADMINISTRAR CUENTAS CLIENTES (CREAR)
sd ADM INIST RAR CUENT AS CLIENT E (CREAR) Adm i ni strador Back_End.seam

1.

2. 3. 4. 5. 6.

(Opcin Crear) El administrador selecciona en la pgina Back_End.seam en el Menu Principal La opcin Administrar Cuentas Clientes. La plataforma navega hacia la pgina ClienteList.seam. El administrador hace click sobre el botn Crear. La plataforma navega hacia la pgina ClienteEdit.seam y muestra un formulario. El administrador ingresa los datos requeridos en el formulario y hace click en el botn Guardar. La plataforma verifica los campos obligatorios, vlida tipos de datos, verifica la estructura del nmero de cdula y que no se repita en el sistema, verifica que el nombre de usuario no se repita en el sistema, vlida y verifica el e-mail y que no se repita en el sistema, verifica la estructura de la ip asignada y que no se repita en el sistema, verifica que las contraseas ingresadas sean iguales, habilita los mecanismos de persistencia para guardar un nuevo cliente en la base de datos, navega hacia la pgina Cliente.seam en donde se muestra el mensaje Creado con xito y se carga en un panel los datos de dicho cliente. El administrador visualiza los datos y hace clik en el botn Nuevo 8. La plataforma navega hacia la pgina ClienteList.seam.

[M enu Pri nci pal

sel ec Adm i ni strar Cuentas Cl i entes]:

new() Cl i enteLi st.seam new() Cl i enteLi st getResul tLi st() :Li st<Cl i ente>

new() Cl i ente [cargarLi stadoCl i entes]:

[cl i ck ""crear"]:

Cl i enteEdi t.seam new() Cl i enteHom e i sM anaged() :Bool ean

new() Cl i enteActi on getPl anNettpl usNam eLi st() :Li st<Sel ectItem >

new() Query new() Enti tyM anager enti tyM anager.createQuery(sentenci aObtenerLi stadoDePl anesCreados:Stri ng) :Query

7. 8.

new() "Ingrese l os datos requeri dos en l os cam pos" [veri fi car cam pos vaci os]: Pl anNettpl us

[i ngresa datos cl i ck "Guardar"]:

CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje junto a cada uno de los campos solicitando Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos E-MAIL NO VLIDO C.5. La plataforma muestra un mensaje E-mail no v alido C.6. El caso de uso contina en el numeral 5 del flujo normal de eventos NMERO DE CEDULA INVALIDO E.5. La plataforma muestra el mensaje Nmero de cdula incorrecto E.6. El caso de uso contina en el numeral 5 del flujo normal de eventos F. NMERO DE CDULA YA REGISTRADO F.5. La plataforma muestra el mensaje Nmero de cdula ya registrado F.6. El caso de uso contina en el numeral 5 del flujo normal de eventos E-MAIL YA REGISTRADO I.5. La plataforma muestra un mensaje E-mail ya registrado I.6. El caso de uso contina en el numeral 5 del flujo normal de eventos NOMBRE DE USUARIO REGISTRADO K.5. La plataforma muestra el mensaje Nombre de usuario ya registrado en la plataforma K.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

Num ero de cedul a i ncorrecto

[veri fi car num ero cedul a correcto]: val i dateCedul a() :Bool ean

new() InputVal i dator cedul aVal i dator(cedul a:Stri ng) :bool ean

E-m ai l no val i do

[veri fi car em ai l correcto]:

[veri fi car i p correcta]: Ip no val i da val i dateIp() :Bool ean i pVal i dator(i p:Stri ng) :Bool ean

[com paraContrasenas i ngresadas]: Contrase nas no coi nsi den [i denti fi car datos ya regi strados ]: i denti fyRepeatedFi el ds(cl i enet:Cl i ente) :Li st<Stri ng> val i dateRepassword() :Bool ean

Ip ya regi strada en l a pl ataform a Nom bre de usuari o ya regi strada en l a pl ataform a Num ero de cedul a ya regi strada en l a pl ataform a E-m ai l ya regi strada en l a pl ataform a

enti tyM anager.createQuery(sentenci aPaaraBusquedaEl em ento:stri ng)

persi st() :Stri ng

new() Cl i ente getInstance() :Cl i ente

[M ensaj e "Creado con exi to"]:

[cl i ck "Nuevo"]:

Figura 55. Diagrama de Secuencia CU: Administrar Cuentas Clientes (Crear)

169

sd ADM INIST RAR CUENT AS CLIENT E (EDIT AR)

sd ADMINISTRAR CUENTAS CLIENTES (EDITAR)


Adm i ni s trador Back _End.s eam

1.

2. 3.

4.

5. 6.

7. 8. 9. 10.

(Opcin Editar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal La opcin Administrar Cuentas Clientes. La plataforma navega hacia la pgina ClienteList.seam. El administrador selecciona en la columna Opciones la opcin Editar del cliente que desea modificar. La plataforma navega hacia la pgina ClienteEditseam y carga en un formulario los datos del cliente seleccionado. El administrador modifica los datos, hace click sobre la opcin Hoja de T rabajo. La plataforma muestra el cuadro de dialogo en donde carga un listado de los planes de Internet creados por la empresa, adems los datos necesarios y requeridos por el caso de uso Administrar Facturas. El administrador hace click sobre el botn Aceptar. La plataforma navega hacia la pgina ClienteEdit.seam. El administrador hace click sobre el botn Guardar. La plataforma verifica los campos obligatorios, vlida tipos de datos, verifica la estructura del nmero de cdula y que no se repita en el sistema, verifica que el nombre de usuario no se repita en el sistema, vlida y verifica el e-mail y que no se repita en el sistema, verifica la estructura de la ip asignada y que no se repita en el sistema, verifica que las contraseas ingresadas sean iguales, habilita los mecanismos de persistencia para guardar un nuevo cliente en la base de datos, navega hacia la pgina Cliente.seam en donde se muestra el mensaje Actualizado con xito y se carga en un panel los datos de dicho cliente. El administrador hace click sobre el botn Nuevo. La plataforma navega hacia la pgina ClienteList.seam.

[M enu Pri nci pal

s el ec Adm i ni s trar Cuentas Cl i entes ]:

new() Cl i enteLi s t.s eam new() Cl i enteLi s t getRes ul tLi s t() :Li s t<Cl i ente>

new() Cl i ente [cargarLi s tadoCl i entes ]:

[Opci ones cl i ck " Edi tar" ]:

Cl i enteEdi t.s eam new() Cl i enteHom e is M anaged() :Bool ean

new() Cl i enteActi on getPl anNettpl us Nam eLi s t() :Li s t<Sel ectItem >

new() Query new() Enti tyM anager enti tyM anager.createQuery(s entenci aObtenerLi s tadoDePl anes Creados :Stri ng) :Query

new() Pl anNettpl us getIns tance() :Cl i ente

[cargar datos cl i ente Actual ]: [s el ec Hoj a de T rabaj o]:

Hoj a de trabaj o

[Ingres a datos cl i ck " Aceptar" ]:

11. 12.

[i ngres a datos cl i ck " Guardar" ]:

" Ingres e l os datos requeri dos en l os cam pos " [veri fi car cam pos vaci os ]:

CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje junto a cada uno de los campos solicitando Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos E-MAIL NO VLIDO C.5. La plataforma muestra un mensaje E-mail no v alido C.6. El caso de uso contina en el numeral 5 del flujo normal de eventos NMERO DE CEDULA INVALIDO E.5. La plataforma muestra el mensaje Nmero de cdula incorrecto E.6. El caso de uso contina en el numeral 5 del flujo normal de eventos F. NMERO DE CDULA YA REGISTRADO F.5. La plataforma muestra el mensaje Nmero de cdula ya registrado F.6. El caso de uso contina en el numeral 5 del flujo normal de eventos E-MAIL YA REGISTRADO I.5. La plataforma muestra un mensaje E-mail ya registrado I.6. El caso de uso contina en el numeral 5 del flujo normal de eventos NOMBRE DE USUARIO REGISTRADO K.5. La plataforma muestra el mensaje Nombre de usuario ya registrado en la plataforma K.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

[veri fi car num ero cedul a correcto]: val i dateCedul a() :Bool ean

Num ero de cedul a i ncorrecto

new() InputVal i dator cedul aVal i dator(cedul a:Stri ng) :bool ean

E-m ai l no val i do

[veri fi car em ai l correcto]:

[veri fi car i p correcta]: Ip no val i da val i dateIp() :Bool ean i pVal i dator(i p:Stri ng) :Bool ean

[com paraContras enas i ngres adas ]: Contras e nas no coi ns den i [i denti fi car datos ya regi s trados ]: i denti fyRepeatedFi el ds (cl i enet:Cl i ente) :Li s t<Stri ng> val i dateRePas word() :Bool ean s

Ip ya regi s trada en l a pl ataform a Nom bre de us uari o ya regi s trada en l a pl ataform a Num ero de cedul a ya regi s trada en l a pl ataform a E-m ai l ya regi s trada en l a pl ataform a

enti tyM anager.createQuery(s entenci aParaBus quedaEl em ento:s tri ng)

update() :Stri ng

new() Cl i ente getIns tance() :Cl i ente

[M ens aj e " Actual i zado con exi to" ]:

[cl i ck " Nuevo" ]:

Figura 56. Diagrama de Secuencia CU: Administrar Cuentas Clientes (Editar)

170

sd ADMINISTRAR CUENTAS CLIENTE (ELILMINAR)

sd ADMINISTRAR CUENTAS CLIENTES (ELIMINAR)


Administrador Back_End.seam [Menu Principal selec Administrar Cuentas Clientes]:

1. (Opcin Eliminar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal La opcin Administrar Cuentas Clientes. 2. La plataforma navega hacia la pgina ClienteList.seam. 3. El administrador selecciona en la columna Opciones la opcin Editar del cliente que desea eliminar. 4. La plataforma navega hacia la pgina ClienteEdit.seam y carga los datos del cliente seleccionado. 5. El administrador hace click sobre el botn Eliminar. 6. La plataforma habilita los mecanismos de persistencia para eliminar al cliente de la base de datos, navega hacia la pgina ClienteList.seam, muestra el mensaje Eliminado con exito y muestra un listado de los clientes creados en la plataforma.

new() ClienteList.seam new() ClienteList getResultList() :List<Cliente>

new() Cliente [cargarListadoClientes]:

[Opciones click "Editar"]:

ClienteEdit.seam new() ClienteHome isManaged() :Boolean

new() ClienteAction getPlanNettplusNameList() :List<SelectItem>

new() Query new() EntityManager entityManager.createQuery(sentenciaObtenerListadoDePlanesCreados:String) :Query

new() PlanNettplus getInstance() :Cliente

[cargar datos cliente Actual]:

[ingresa datos click "Eliminar"]: remove() :String

[mensaje Eliminado con exito]:

Figura 57. Diagrama de Secuencia CU: Administrar Cuentas Clientes (Eliminar)

171

sd ADMINISTRAR CUENTAS CLIENTES (BUSCAR)

s d ADM INIST RAR CUENT AS CLIENT E (BUSCAR)

Ad m i n i s tra d o r

Ba ck En d .s a m _ e

1.

2. 3.

4.

(Opcin Buscar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal La opcin Administrar Cuentas Clientes. La plataforma navega hacia la pgina ClienteList.seam. El administrador el criterio de bsqueda de su inters en el formulario de bsqueda y hace click sobre el botn Buscar Cliente. La plataforma busca en la base de datos coincidencias con el criterio y las enlistas en la pgina ClienteList.seam.

[M e n u Pri n ci p a l

s l e c Ad m i n i s e tra r Cu e n ta s Cl i e n te s ]:

n e w() Cl i e n te L i s t.s a m e n e w() Cl i e n te L i s t g e tRe s l tL i s u t() :L i s t<Cl i e n te >

n e w() Cl i e n te [ca rg a rL i s ta d o Cl i e n te s ]:

[In g re s a cri te ri o d e b u s u e d a ]: q Op ci o n e s cl i ck " In i ci a r Bu s u e d a " q g e tRe s l tL i s u t() :L Is t<Cl i e n te >

[l i s ta d o d e Cl i e n te s q u e co i n ci d e n co n e l

cri e ri o ]:

[Ca rg a rL i s ta d o Cl i e n te s ]:

Figura 58. Diagrama de Secuencia CU: Administrar Cuentas Clientes (Buscar)


s d ADM INIST RAR CUENT AS CLIENT E (VISUALIZAR)

sd ADMINISTRAR CUENTAS CLIENTES (VISUALIZAR)


Ad m i n i s tra d o r Ba ck En d .s a m _ e

1.

2. 3.

4.

(Opcin Visualizar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal La opcin Administrar Cuentas Clientes. La plataforma navega hacia la pgina ClienteList.seam. El administrador selecciona en la columna Opciones la opcin Visualizar del cliente que desea visualizar. La plataforma navega hacia la pgina Cliente.seam y carga los datos en un formulario del cliente seleccionado.

[M e n u Pri n ci p a l

s l e c Ad m i n i s e tra r Cu e n ta s Cl i e n te s ]:

n e w() Cl i e n te L i s t.s a m e n e w() Cl i e n te L i s t g e tRe s l tL i s u t() :L i s t<Cl i e n te >

n e w() Cl i e n te [ca rg a rL i s ta d o Cl i e n te s ]:

[Op ci o n e s cl i ck " Vi s a l i za r" ]: u

Cl i e n te .s a m e n e w() Cl i e n te Ho m e g e tIn s ta n ce () :Cl i e n te

[ca rg a r d a to s cl i e n te Actu a l ]:

Figura 59. Diagrama de Secuencia CU: Administrar Cuentas Clientes (Visualizar)

172

7.8.12. Caso de Uso: Autentificar Usuario Nombre C.U: AUTENFICAR USUARIO Req.Funciona: Objetivo(s): RF0001 Y RF0019 Permitir que el administrador o el cliente ingresen de forma correcta a su espacio de trabajo. Descripcin: El administrador podr ingresar de forma segura a la pgina Back_End y el cliente podr ingresar de forma segura a su cuenta cliente. Actor(s): Tipo Uso: Precondiciones: Postcondiciones: -Haber almacenado previamente la clave del administrador -Que el cliente se haya registrado previamente -Los usuarios (Clientes y Administrador) se han podido autentificar en la plataforma. Administrador, Cliente Caso Sistema Cdigo C.U: 0012

FLUJO NORMAL DE EVENTOS ACTOR 1. (Autentificar Administrador) administrador ingresa El la PLATAFORMA

pgina Front_End.seam y selecciona la opcin Iniciar Sesin. 2. La plataforma y navega muestra hacia un la pgina

Login.seam

formulario

solicitando el nombre de usuario y contrasea. 3. El administrador ingresa su nombre de usuario y

contrasea y hace click sobre el botn Ingresar. 4. La plataforma verifica que el nombre de

173

usuario exista, si existe verifica que la contrasea conversacin sea la misma, los inicia una

otorgndole

permisos

correspondientes, identifica que el usuario sea administrador y navega hacia la pgina Back_end.seam. 5. (Autentificar cliente ingresa Front_End.seam selecciona la Iniciar Sesin. 6. La plataforma y navega muestra hacia un la pgina Cliente) El

la pgina y opcin

Login.seam

formulario

solicitando el nombre de usuario y contrasea. 7. El cliente ingresa su nombre de usuario y contrasea y hace click sobre el botn Ingresar. 8. La plataforma verifica que el nombre de usuario exista, si existe verifica que la contrasea sea la misma, inicia una

conversacin identifica que el usuario sea cliente y navega hacia la pgina

ClienteAccount.seam y carga los datos del cliente. 9. El caso de uso finaliza. FLUJO ALTERNOS DE EVENTOS A. USUARIO O CONTRASEA INCORRETOS A.3. La plataforma muestra el mensaje Nombre de usuario o contrasea incorrectos A.4. El caso de uso continua en el numeral 3 del flujo normal de eventos B. USUARIO O CONTRASEA INCORRETOS

174

B.7. La plataforma muestra el mensaje Nombre de usuario o contrasea incorrectos B.8. El caso de uso continua en el numeral 7 del flujo normal de eventos C. CAMPOS OBLIGATORIOS VACIOS C.3. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos C.4. El caso de uso contina en el numeral 3 del flujo normal de eventos. D. CAMPOS OBLIGATORIOS VACIOS D.7. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos D.8. El caso de uso contina en el numeral 7 del flujo normal de eventos. Prototipdo de Pantalla CU: Administrar Cuentas Clientes Autentificar Administrador y Cliente

Curso Alterno

175

DR012 CU: Autentificar Usuario


uc AUTENTIFICAR USUARIO Autentificar Administrador

Mensaje "Ingrese datso requeridos en Front_End.seam los campos"

Verificar Campos Vacios

Instanciar Administrador

Administrador

Select "Iniciar Sesion" Ingreso Nombre de Usuario y Contrasea

Login.seam

Verificar existencia de administrador

Administrador

Mensaje "nombre de usuario o contrasea incorrectos"

Verificar Contrasea

Identificar rol

Iniciar conversacion

Back_End.seam Autentificar Cliente

Otorgar Permisos

Front_End.seam Select "Iniciar Sesion"

Mensaje "Ingrese los datos requeridos en los campos" Verificar Campos Instanciar Cliente Cliente

Ingresa nombre de Usuario y Contrasea Login.seam Verificar Existenxia de Cliente Cliente Mensaje "Nombre de Usuario y Contrasea Incorrectos"

Verificar Contrasea

Identificar Rol

Iniciar Conversacion

ClienteAccount.seam Cargar Datos

Figura 60. Diagrama de Robustez CU: Autentificar Usuario

176

DS012 CU: Autentificar Usuario


sd AUTENTIFICAR USUARIO
sd AUTENTIFICAR USUARIO

1.

2.

3.

(Autentificar Administrador) El administrador ingresa la pgina Front_End.seam y selecciona la opcin Iniciar Sesin. La plataforma navega hacia la pgina Login.seam y muestra un formulario solicitando el nombre de usuario y contrasea. El administrador ingresa su nombre de usuario y contrasea y hace click sobre el botn Ingresar. La plataforma verifica que el nombre de usuario exista, si existe verifica que la contrasea sea la misma, inicia una conversacin otorgndole los permisos correspondientes, identifica que el usuario sea administrador y navega hacia la pgina Back_end.seam. (Autentificar Cliente) El cliente ingresa la pgina Front_End.seam y selecciona la opcin Iniciar Sesin. La plataforma navega hacia la pgina Login.seam y muestra un formulario solicitando el nombre de usuario y contrasea. El cliente ingresa su nombre de usuario y contrasea y hace click sobre el botn Ingresar. La plataforma verifica que el nombre de usuario exista, si existe verifica que la contrasea sea la misma, inicia una conversacin identifica que el usuario sea cliente y navega hacia la pgina ClienteAccount.seam y carga los datos del cliente. El caso de uso finaliza.

Administrador/Cliente

Front_End.seam

[Click "Iniciar Sesion"]:

new() Login.seam
Ingrese Datos Requeridos en los Campos

[Ingresa Usuario y Contrasea]:

4.

Click "Ingresar" [Verifca Campos Vacios]: new() Credentials setUserName(user:String)

5.

setPassword(pass:String)

new() Identity loguin() :String

6.

Nombre de Usuario o Contrasea Incorrectos

new() AutenticatoBean Authenticathe() :Boolean

7.

new()

8.

entityManager.createQuery(sentenciaBusquedaCliente: String) :Query

Query

new() EntityManager new() Cliente getPassword() :String

9.

USUARIO O CONTRASEA INCORRETOS A.3. La plataforma muestra el mensaje Nombre de usuario o contrasea incorrectos A.4. El caso de uso continua en el numeral 3 del flujo normal de eventos USUARIO O CONTRASEA INCORRETOS B.7. La plataforma muestra el mensaje Nombre de usuario o contrasea incorrectos B.8. El caso de uso continua en el numeral 7 del flujo normal de eventos CAMPOS OBLIGATORIOS VACIOS C.3. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos C.4. El caso de uso contina en el numeral 3 del flujo normal de eventos. CAMPOS OBLIGATORIOS VACIOS D.7. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos D.8. El caso de uso contina en el numeral 7 del flujo normal de eventos.

getPassword() :String [Comparar Contraseas]: entityManager.createQuery(sentenciaBusquedaAdmin:String) : Query

new() Administrador getPassword() :String

getPassword() :String

[Comparar Contraseas]:

[ActualAdministrador!=null]: new() BacK_End.seam ActualCliente!=null() new() ClienteAccount.seam

Figura 61. Diagrama de Secuencia CU: Autentificar Usuario

177

7.8.13. Caso de Uso: Administrar Cuenta Cliente Nombre CLIENTE Req. Funcional: Objetivo(s): RF0020 Permitir al cliente contar con un espacio de trabajo donde pueda editar y visualizar sus datos de forma dinmica. Descripcin: Proporcionar al cliente un espacio de trabajo donde pueda visualizar todos los datos, modificarlos y consultar sus facturas. Actor(s): Tipo Caso Uso: Pre-condiciones: Cliente Sistema -Haber ejecutado el caso de uso registrar cliente -Haber ejecutado el caso de uso autentificar usuario Post-condiciones: -El cliente ha administrado correctamente su cuenta personal. C.U: ADMINISTRAR CUENTA Cdigo C.U: 0013

FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin ingresa Editar) a la y El cliente pgina hace PLATAFORMA

ClienteAccount.seam Datos.

click sobre el botn Modificar

2. La plataforma navega hacia la pgina ClienteAccountEdit.seam y carga en un formulario los datos del cliente. 3. El cliente modifica los datos y hace click en el botn Guardar. 4. La plataforma verifica los campos

obligatorios, vlida tipos de datos, verifica la estructura del nmero de cdula y que no se repita en el sistema, verifica que el nombre de usuario no se repita en el

178

sistema, vlida y verifica el e-mail y que no se repita en el sistema, verifica la estructura de la ip asignada y que no se repita en el sistema, verifica que las contraseas ingresadas sean iguales,

habilita los mecanismos de persistencia para guardar un nuevo cliente en la base de datos, navega hacia la pgina

ClienteAccount.seam en donde se muestra el mensaje Actualizado con xito y se carga en un panel los datos de dicho cliente. 5. El cliente hace click sobre el botn Salir 6. La plataforma La plataforma termina la conversacin, quita los privilegios y navega hacia la pgina Front_End.seam. 7. (Opcin Visualizar) El cliente ingresa a la pgina

ClienteAccount.seam. 8. La plataforma navega hacia la pgina ClienteAccount.seam y carga los datos del cliente en un formulario. 9. El cliente visualiza sus datos y hace click sobre el botn Salir. 10. La plataforma termina la conversacin, quita los privilegios y navega hacia la pgina Front_End.seam. 11. El caso de uso finaliza FLUJO ALTERNOS DE EVENTOS

A. CAMPOS OBLIGATORIOS VACIOS A.3. La plataforma muestra el mensaje junto a cada uno de los campos solicitando

179

Ingrese los datos requeridos en los campos A.4. El caso de uso contina en el numeral 3 del flujo normal de eventos B. E-MAIL NO VLIDO B.3. La plataforma muestra un mensaje E-mail no valido B.4. El caso de uso contina en el numeral 3 del flujo normal de eventos

C. NMERO DE CEDULA INVALIDO C.3. La plataforma muestra el mensaje Nmero de cdula incorrecto C.4. El caso de uso contina en el numeral 3 del flujo normal de eventos

D. NMERO DE CDULA YA REGISTRADO D.3. La plataforma muestra el mensaje Nmero de cdula ya registrado D.4. El caso de uso contina en el numeral 3 del flujo normal de eventos E. E-MAIL YA REGISTRADO E.3. La plataforma muestra un mensaje E-mail ya registrado E.4. El caso de uso contina en el numeral 3 del flujo normal de eventos

F. NOMBRE DE USUARIO REGISTRADO F.3. La plataforma muestra el mensaje Nombre de usuario ya registrado en la plataforma F.4. El caso de uso contina en el numeral 3 del flujo normal de eventos G. IP NO VLIDA G.3. La plataforma muestra el mensaje Ip no valida G.4. El caso de uso contina en el numeral 3 del flujo normal de eventos H. CONTRASEAS NO COINCIDEN H.3. La plataforma muestra el mensaje Contraseas no coinciden H.4. El caso de uso contina en el numeral 3 del flujo normal de eventos I. IP YA GEGISTRADA I.3. la plataforma muestra el mensaje Ip ya registrada I.4. El caso de uso continua en el numeral 3 del flujo normal de eventos

180

Prototipdo de Pantalla CU: Administrar Cuenta Cliente

Curso Alterno

181

DR013 CU: Administrar Cuenta Cliente


uc ADMINISTRAR CUENTA CLIENTE

ClienteAccount.seam

Cargar Datos Cliente

Instanciar Cliente

Cliente

Click "Modificar" Mensaje "Ingrese los datos requeridos en los campos" Vericar Campos ClienteAccountEdit.seam Mensaje "Numero de cedula incorrecto" Cliente Verificar No. Cedula

Mensaje "Numero de cedula ya registrado en la plataforma"

Verificar No. Cedula Repetido

Mensaje "Nombre ya registrado en la plataforma"

Verificar Nombre de Usuario

Mensaje "E-mail no valido"

Verificar E-mail

Mensaje "E-mail ya registrado" Verificar E-mail ya registrado

Mensaje "Ip no valida" Verificar Ip

Mensaje "Ip ya registrada" Verificar Ip ya Registrada

Mensaje "Contraseas no coinciden" Verificar Contraseas

Actualizar Datos

Mensaje "Actalizado con exito"

Terminar Conversacion

Front_End.seam

Retirar Privilegios

Figura 62. Diagrama de Robustez CU: Administrar Cuenta Cliente

182

DS013 CU: Administrar Cuenta Cliente


sd ADMINISTRAR CUENTA ADMINISTRATIVA (EDITAR)
s d ADM INISST RAR CUENT A CLIENT E (EDIT AR) Ad m i n i s tra d o r Cl i e n te Acco u n t.s a m e

1.

2.

3. 4.

5. 6.

Opcin Editar) El cliente ingresa a la pgina ClienteAccount.seam y hace click sobre el botn Modificar Datos. La plataforma navega hacia la pgina ClienteAccountEdit.seam y carga en un formulario los datos del cliente. El cliente modifica los datos y hace click en el botn Guardar. La plataforma verifica los campos obligatorios, vlida tipos de datos, verifica la estructura del nmero de cdula y que no se repita en el sistema, verifica que el nombre de usuario no se repita en el sistema, vlida y verifica el e-mail y que no se repita en el sistema, verifica la estructura de la ip asignada y que no se repita en el sistema, verifica que las contraseas ingresadas sean iguales, habilita los mecanismos de persistencia para guardar un nuevo cliente en la base de datos, navega hacia la pgina ClienteAccount.seam en donde se muestra el mensaje Actualizado con xito y se carga en un panel los datos de dicho cliente. El cliente hace click sobre el botn Salir La plataforma La plataforma termina la conversacin, quita los privilegios y navega hacia la pgina Front_End.seam.

[cl i ck " M o d i fi ca r" ]:

Cl i e n te Acco u n tEd i t.s a m e n e w() Cl i e n te Ho m e g e tIn ta n ce () :cl i e n te

n e w() Cl i e n te [ca rg a r d a to s cl i e n te a ctu a l ]:

[i n g re s a d a to s cl i ck " Gu a rd a r" ]:

[ve ri fi ca r ca m p o s va ci o s ]:

[ve ri fi ca r n u m e ro ce d u l a co rre cto ]:

Nu m e ro d e ce d u l a i n co rre cto

va l i d a te Ce d u l a () :Bo o l e a n

n e w() " In g re s e l o s d a to s re q u e ri d o s e n l o s ca m p o s " In p u tVa l i d a to r [ve ri fi ca r e m a i l co rre cto ]: E-m a i l n o va l i d o ce d u l a Va l i d a to r(ce d u l a :Stri n g ) :b o o l e a n

[ve ri fi ca r i p co rre cta ]: va l i d a te Ip () :Bo o l e a n

CAMPOS OBLIGATORIOS VACIOS A.3. La plataforma muestra el mensaje junto a cada uno de los campos solicitando Ingrese los datos requeridos en los campos A.4. El caso de uso contina en el numeral 3 del flujo normal de eventos B. E-MAIL NO VLIDO B.3. La plataforma muestra un mensaje E-mail no v alido B.4. El caso de uso contina en el numeral 3 del flujo normal de eventos C. NMERO DE CEDULA INVALIDO C.3. La plataforma muestra el mensaje Nmero de cdula incorrecto C.4. El caso de uso contina en el numeral 3 del flujo normal de eventos D. NMERO DE CDULA YA REGISTRADO D.3. La plataforma muestra el mensaje Nmero de cdula ya registrado D.4. El caso de uso contina en el numeral 3 del flujo normal de eventos E. E-MAIL YA REGISTRADO E.3. La plataforma muestra un mensaje E-mail ya registrado E.4. El caso de uso contina en el numeral 3 del flujo normal de eventos F. NOMBRE DE USUARIO REGISTRADO F.3. La plataforma muestra el mensaje Nombre de usuario ya registrado en la plataforma F.4. El caso de uso contina en el numeral 3 del flujo normal de eventos G. IP NO VLIDA G.3. La plataforma muestra el mensaje Ip no v alida G.4. El caso de uso contina en el numeral 3 del flujo normal de eventos H. CONTRASEAS NO COINCIDEN H.3. La plataforma muestra el mensaje Contraseas no coinciden H.4. El caso de uso contina en el numeral 3 del flujo normal de eventos I. IP YA GEGISTRADA I.3. la plataforma muestra el mensaje Ip ya registrada I.4. El caso de uso continua en el numeral 3 del flujo normal de eventos

Ip n o va l i d a Co n tra s e nas no co i n s d e n i va l i d a te Re p a s wo rd () :Bo o l e a n s

i p Va l i d a to r(i p :Stri n g ) :Bo o l e a n

[co m p a ra Co n tra s n a s i n g re s d a s e a ]:

[i d e n ti fi ca r d a to s ya re g i s tra d o s ]: n e w() Cl i e n te Acti o n Ip ya re g i s tra d a e n l a p l a ta fo rm a No m b re d e u s a ri o ya re g i s u tra d a e n l a p l a ta fo rm a Nu m e ro d e ce d u l a ya re g i s tra d a e n l a p l a ta fo rm a E-m a i l ya re g i s tra d a e n l a p l a ta fo rm a i d e n ti fyRe p e a te d Fi e l d s (cl i e n e t:Cl i e n te ) :L i s t<Stri n g >

n e w() Qu e ry e n ti tyM a n a g e r.cre a te Qu e ry(s n te n ci a Pa a ra Bu s u e d a El e m e n to :s e q tri n g )

n e w() En ti tyM a n a g e r

Cl i e n te Acco u n tActi o n cl i e n te Acco u n tUp d a te (cl i e n te :Cl i e n te ) [s n te n ci a s d e a ctu a l i za ci o n d e l a b a s e e d e d a to s ]:

[M e n s j e " M o d i fi ca d o co n e xi to " ]: a

[cl i ck " Sa l i r" ]:

Fro n t_ En d .s a m e

Figura 63. Diagrama de Secuencia CU: Administrar Cuenta Cliente (Editar)

183

sd ADMINISSTRAR CUENTA CLIENTE (VISUALIZAR)

sd ADMINISTRAR CUENTA ADMINISTRATIVA (EDITAR)


Administrador ClienteAccount.seam

1. (Opcin Visualizar) El cliente ingresa a la pgina ClienteAccount.seam. 2. La plataforma navega hacia la pgina ClienteAccount.seam y carga los datos del cliente en un formulario. 3. El cliente visualiza sus datos y hace click sobre el botn Salir. 4. La plataforma termina la conversacin, quita los privilegios y navega hacia la pgina Front_End.seam. 5. El caso de uso finaliza

[click "Modificar"]:

ClienteAccountEdit.seam new() ClienteHome getIntance() :cliente

new() Cliente [cargar datos cliente actual]:

Figura 64. Diagrama de Secuencia CU: Administrar Cuenta Cliente (Visualizar)

184

7.8.14. Caso de Uso: Registrar Cliente Nombre C.U: REGISTRAR CLIENTE Req. Funcional: Objetivo(s): RF0015 Permitir al cliente crear correctamente una cuenta en la Cdigo C.U: 0014

plataforma. Descripcin: El cliente podr crear una cuenta en la plataforma la misma que sea almacenar en la base de datos para que la empresa le proporcione los datos adicionales. Actor(s): Tipo Caso Uso: Pre-condiciones: Post-condiciones: Cliente Sistema -Ninguna -El cliente ha podido crear una cuenta en la plataforma, la misma que le permitir ser administrada con posterioridad. FLUJO NORMAL DE EVENTOS ACTOR 1. El cliente en la hace pgina click PLATAFORMA

Front_End.seam Cliente.

sobre la opcin Registrar

2. La plataforma navega hacia la pgina ClienteRegister.seam y le muestra un formulario. 3. El cliente ingresa los datos requeridos en el formulario, y hace click en el botn Registrar 4. La plataforma verifica los campos

obligatorios, vlida tipos de datos, verifica la estructura del nmero de cdula y que no se repita en el sistema, verifica que el

nombre de usuario no se repita en el

185

sistema, vlida y verifica el e-mail y que no se repita en el sistema, verifica la estructura de la ip asignada y que no se repita en el sistema, verifica que las contraseas ingresadas sean iguales,

habilita los mecanismos de persistencia para guardar un nuevo cliente en la base de datos, navega hacia la pgina

Front_End.seam en donde se muestra el mensaje Creado con xito. 5. El caso de uso finaliza FLUJO ALTERNOS DE EVENTOS

A. CAMPOS OBLIGATORIOS VACIOS A.3. La plataforma muestra el mensaje junto a cada uno de los campos solicitando Ingrese los datos requeridos en los campos A.4. El caso de uso contina en el numeral 3 del flujo normal de eventos B. E-MAIL NO VLIDO B.3. La plataforma muestra un mensaje E-mail no valido B.4. El caso de uso contina en el numeral 3 del flujo normal de eventos

C. NMERO DE CEDULA INVALIDO C.3. La plataforma muestra el mensaje Nmero de cdula incorrecto C.4. El caso de uso contina en el numeral 3 del flujo normal de eventos

D. NMERO DE CDULA YA REGISTRADO D.3. La plataforma muestra el mensaje Nmero de cdula ya registrado D.4. El caso de uso contina en el numeral 3 del flujo normal de eventos E. E-MAIL YA REGISTRADO E.3. La plataforma muestra un mensaje E-mail ya registrado E.4. El caso de uso contina en el numeral 3 del flujo normal de eventos

F. NOMBRE DE USUARIO REGISTRADO F.3. La plataforma muestra el mensaje Nombre de usuario ya registrado en la plataforma F.4. El caso de uso contina en el numeral 3 del flujo normal de eventos

186

G. IP NO VLIDA G.3. La plataforma muestra el mensaje Ip no valida G.4. El caso de uso contina en el numeral 3 del flujo normal de eventos H. CONTRASEAS NO COINCIDEN H.3. La plataforma muestra el mensaje Contraseas no coinciden H.4. El caso de uso contina en el numeral 3 del flujo normal de eventos I. I.3. La plataforma muestra el mensaje Ip ya registrada I.4. El caso de uso continua en el numeral 3 del flujo normal de evetos Prototipdo de Pantalla CU: Registrar Cliente

Cursos Alternos

187

DR014 CU: Registrar Cliente


uc REGISTRAR CLIENTE

Front_End.seam

Mensaje "Ingrese los datos requeridos en los campos"

Verificar Campos

Click "Registrar Cliente" Mensaje "numero de cedula incorrecto" Verificar No. cedula

Ingresa Datos Cick "Registrar" ClienteRegister.seam

Mensaje "Numero de cedula ya registrado" Verificar No. Cedula Repetido

Cliente Mensaje "Nombre de usuario ya registrado en la plataforma" Verificar Nombre de Usuario Mensaje "E.mail no valido"

Verificar E-mail Mensaje "E-mail ya registrado"

Verificar E-mail ya registrado Mensaje "Ip no valida"

Verificar Ip Mensaje "Ip ya registrada"

Verificar Ip Repetida Mensaje "Contraseas no coinciden"

Verificar Contraseas Guardar Datos

Cliente

Mensaje "Creado con exito"

Instanciar Cliente

Figura 65. Diagrama de Robustez CU: Registrar Cliente

188

DS014 CU: Registrar Cliente


sd REGISTRAR CLIENTE
sd Clienteregister.seam Adm i ni strador Front_End.seam

1. 2. 3. 4.

5.

El cliente en la pgina Front_End.seam hace click sobre la opcin Registrar Cliente. La plataforma navega hacia la pgina ClienteRegister.seam y le muestra un formulario. El cliente ingresa los datos requeridos en el formulario, y hace click en el botn Registrar La plataforma verifica los campos obligatorios, vlida tipos de datos, verifica la estructura del nmero de cdula y que no se repita en el sistema, verifica que el nombre de usuario no se repita en el sistema, vlida y verifica el e-mail y que no se repita en el sistema, verifica la estructura de la ip asignada y que no se repita en el sistema, verifica que las contraseas ingresadas sean iguales, habilita los mecanismos de persistencia para guardar un nuevo cliente en la base de datos, navega hacia la pgina Front_End.seam en donde se muestra el mensaje Creado con xito. El caso de uso finaliza

[cl i ck "Regi strar cl i ente"]:

Cl i enteRegi ster.seam [Ingresa Datos cl i ck "Regi strar"]:

new() Cl i enteActi on getPl anNettpl usNam eLi st() :Li st<Sel ectItem >

[i ngresa datos cl i ck "Guardar"]:

new() Cl i enteHom e new() Cl i ente [veri fi car cam pos vaci os]:

[veri fi car num ero cedul a correcto]:

A. CAMPOS OBLIGATORIOS VACIOS A.3. La plataforma muestra el mensaje junto a cada uno de los campos solicitando Ingrese los datos requeridos en los campos A.4. El caso de uso contina en el numeral 3 del flujo normal de eventos B. E-MAIL NO VLIDO B.3. La plataforma muestra un mensaje E-mail no v alido B.4. El caso de uso contina en el numeral 3 del flujo normal de eventos C. NMERO DE CEDULA INVALIDO C.3. La plataforma muestra el mensaje Nmero de cdula incorrecto C.4. El caso de uso contina en el numeral 3 del flujo normal de eventos D. NMERO DE CDULA YA REGISTRADO D.3. La plataforma muestra el mensaje Nmero de cdula ya registrado D.4. El caso de uso contina en el numeral 3 del flujo normal de eventos E. E-MAIL YA REGISTRADO E.3. La plataforma muestra un mensaje E-mail ya registrado E.4. El caso de uso contina en el numeral 3 del flujo normal de eventos F. NOMBRE DE USUARIO REGISTRADO F.3. La plataforma muestra el mensaje Nombre de usuario ya registrado en la plataforma F.4. El caso de uso contina en el numeral 3 del flujo normal de eventos

Num ero de cedul a i ncorrecto

val i dateCedul a() :Bool ean

"Ingrese l os datos requeri dos en l os cam pos"

new() InputVal i dator [veri fi car em ai l correcto]:


E-m ai l no val i do

cedul aVal i dator(cedul a:Stri ng) :bool ean

Ip no val i da

[veri fi car i p correcta]: val i dateIp() :Bool ean i pVal i dator(i p:Stri ng) :Bool ean

[com paraContrasenas i ngresadas]:

Contrase nas no coi nsi den

val i dateRepassword() :Bool ean

[i denti fi car datos ya regi strados ]:


Ip ya regi strada en l a pl ataform a Nom bre de usuari o ya regi strada en l a pl ataform a Num ero de cedul a ya regi strada en l a pl ataform a E-m ai l ya regi strada en l a pl ataform a

i denti fyRepeatedFi el ds(cl i enet:Cl i ente) :Li st<Stri ng>

new() Query enti tyM anager.createQuery(sentenci aPaaraBusquedaEl em ento:stri ng)

new() Enti tyM anager

persi st() :Stri ng

[M ensaj e "Creado con exi to"]:

Figura 66. Diagrama de Secuencia CU: Registrar Cliente

189

7.8.15. Caso de Uso: Realizar Test De Velocidad Nombre C.U: REALIZAR TEST DE VELOCIDAD Req. Funcional: Objetivo(s): RF0017 Permitir al cliente desde la plataforma realizar un Test de Velocidad ADSL de la conexin a Internet. Descripcin: Permitir la realizacin de tres pruebas de velocidad, descargando un archivo desde el servidor y mostrar la informacin promedio de velocidad. Actor(s): Tipo Caso Uso: Pre-condiciones: Post-condiciones: Administrador Sistema -Ninguna -El cliente ha realizado el Test de Velocidad de forma correcta lo que le permitir generar informes. FLUJO NORMAL DE EVENTOS ACTOR 1. El Cliente ingresa a la pgina Front_end.seam y selecciona la opcin Realizar Test de Velocidad. 2. La plataforma navega hacia la pgina Test.seam, y ejecuta el script del Test de Velocidad. 3. El cliente hace click sobre el botn Iniciar Test. 4. La plataforma realiza tres pruebas de velocidad, descargando un archivo desde el servidor y devuelve el promedio de la velocidad de descarga. FLUJO ALTERNOS DE EVENTOS PLATAFORMA Cdigo C.U: 0015

190

Prototipdo de Pantallas CU: Realizar Test de Velocidad

DR015 CU: Realizar Test De Velocidad


uc REAIZAR TEST DE VEOCIDAD

Front_End.seam

Seect "Realizar Test"

Test.seam Cick "Iniciar Test"

Ejecutar Script Test de Veocidad

Ciente

Ejecutar Test

Retornar Resutados

Figura 67. Diagrama de Robustez CU: Realizar Test de Velocidad

191

DS015 CU: Realizar Test de Velocidad

sd REGISTRAR CLIENTE

sd REALIZAR TEST DE VELOCIDAD

Adm i ni strador

Front_end.seam

1. El Cliente ingresa a la pgina Front_end.seam y selecciona la opcin Realizar Test de Velocidad.


[sel ec real i zar "test de vel oci dad"]:

2. La plataforma navega hacia la pgina Test.seam, y ejecuta el script del Test de Velocidad. 3. El cliente hace click sobre el botn Iniciar Test. 4. La plataforma realiza tres pruebas de velocidad, descargando un archivo desde el servidor y devuelve el promedio de la velocidad de descarga.

T est.seam

[ej ecuta sci pt test vel oci dad]

[cl i ck i ni ci ar test]:

[cal cul ar prom edi o vel oci dad

Figura 68. Diagrama de Secuencia CU: Realizar Test de Velocidad

192

7.8.16. Caso de Uso: Generar Informe Nombre C.U: GENERAR INFORME Req.Funcional: Objetivo(s): RF0018 Permitir al cliente generar un informe impreso del los resultados del Test de Velocidad. Descripcin: Actor(s): Tipo Caso Uso: Precondiciones: Postcondiciones: -El cliente ha impreso exitosamente un informe detallado de los resultados del test de velocidad. El cliente podr imprimir los resultados del Test de Velocidad. Administrador Sistema -Haber ejecutado el caso de uso Realizar test de velocidad Cdigo C.U: 0016

FLUJO NORMAL DE EVENTOS ACTOR 1. El Cliente en la pgina PLATAFORMA

Test.seam hace click sobre el botn Imprimir. 2. La plataforma muestra la ventana de impresin del navegador. 3. El cliente configura los

parmetros de impresin y hace click sobre el botn Aceptar. 4. La plataforma enva los datos a la impresora. 5. El caso de uso finaliza. FLUJO ALTERNOS DE EVENTOS

193

Prototipdo de Pantalla CU: Generar Informe

DR016 CU: Generar Informe

uc GENERAR INFORME

Test.seam

Configurar Parametros Cick "Imprimir" Impresion Sistema Enviar datos impresora

Ciente

Figura 69. Diagrama de Robustez CU: Generar Informe

194

DS016 CU: Generar Informe

sd GENERAR INFORME

sd ADMINISTRAR IMAGENES(Insertar/editar imagen en articulo)

Administrador

T est.seam

1. El Cliente en la pgina Test.seam hace click sobre el botn Imprimir. 2. 2. La plataforma muestra la ventana de impresin del navegador. 3. El cliente configura los parmetros de impresin y hace click sobre el botn Aceptar. 4. La plataforma enva los datos a la impresora.

[selecImprimir]:

Ventana Impresion del sistema

click aceptar

[configura parametros impresion]:

[envia datos a la impresora loca

Figura 70. Diagrama de Secuencia CU: Generar Informe

195

7.8.17. Caso de Uso: Administrar Descargas Nombre C.U: ADMINISTRAR DESCARGAS Req.Funcional: Objetivo(s): Descripcin: RF0012 Gestionar de forma dinmica las descargas en la plataforma. Permitir al administrador crear, eliminar, modificar, buscar descargas. Actor(s): Tipo Caso Uso: Precondiciones: Postcondiciones: -Se han administrado correctamente las descargas de programas y utilitarios en la plataforma. Administrador Sistema -Haber ejecutado el caso de uso autentificar usuario y Cdigo C.U: 0017

FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin Crear) El administrador selecciona en la pgina PLATAFORMA

Back_End.seam en el Menu Principal la opcin Admistrar Descargas. 2. La plataforma navega hacia la pgina DownloadList.seam. 3. El administrador hace click sobre el botn Crear. 4. La plataforma navega hacia la pgina DownloadEdit.seam. 5. El administrador ingresa los datos en el formulario

requeridos para las descargas y hace click sobre el botn Guardar. 6. La plataforma verifica campos obligatorios

196

vacios, que el nombre de la descarga no est repetido, navega hacia la pgina Dowload.seam y muestra un mensaje Creada con exito. 7. El administrador hace click sobre el botn Nuevo. 8. La plataforma navega hacia la pgina DownloadList.seam. 9. (Administrador Opcin Editar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Admistrar Descargas. 10. La plataforma navega hacia la pgina DownloadList.seam. 11. El administrador selecciona en la columna Opciones la opcin Editar. 12. La plataforma navega hacia la pgina DowloadEdit.seam y carga los datos en un formulario. 13. El administrador edita los datos y hace click sobre el botn Guardar. 14. La plataforma verifica campos obligatorios vacios, que el nombre de la descarga no est repetido, navega hacia la pgina Dowload.seam y muestra el mensaje Modificado con exito. 15. (Opcin Eliminar) El

administrador selecciona en la pgina Back_End.seam en el

197

Menu

Principal

la

opcin

Admistrar Descargas. 16. La plataforma navega hacia la pgina DownloadList.seam. 17. El administrador selecciona en la columna Opciones la opcin Editar de la descarga a eliminar. 18. La plataforma navega hacia la pgina DowloadEdit.seam y carga los datos en un formulario de la descarga seleccionada. 19. El administrador hace click sobre el botn Eliminar. 20. La plataforma elimina los datos de la base de datos, navega hacia Dowload.seam y muestra un mensaje Eliminada con exito. 21. (Administrador Opcin Buscar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Admistrar Descargas. 22. La plataforma navega hacia la pgina DownloadList.seam. 23. El administrador ingresa el

criterio de bsqueda y hace click sobre el botn Iniciar Busqueda. 24. La plataforma busca las coincidencias en la base de datos y los enlista en la pgina DownloadList.seam. 25. El caso de uso finaliza FLUJO ALTERNOS DE EVENTOS

198

A. CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos B. NOMBRE DE LA DESCARGAS YA EXISTE EN EL SISTEMA B.5. La plataforma muestra el mensaje Nombre de descarga ya existente B.6. El caso de uso contina en el numeral 5 del flujo normal de eventos C. CAMPOS OBLIGATORIOS VACIOS C.13. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos C.14. El caso de uso contina en el numeral 13 del flujo normal de eventos D. NOMBRE DE LA DESCARGAS YA EXISTE EN EL SISTEMA D.13. La plataforma muestra el mensaje Nombre de descarga ya existente D.14. El caso de uso contina en el numeral 13 del flujo normal de eventos Prototipdo de Pantallas CU: Administrar Descargas Opcin Buscar Opcin Crear

199

Opcin Editar y Eliminar

Opcin Visualizar

Cursos Alternos

200

DR017 CU: Administrar Descargas


uc ADMINISTRAR DESCARGAS
Opci on Crear Descarga

Back_End.seam Cargar Li sta Descargas Menu Pri nci pal "Admi ni strar Descargas" Instanci ar Descarga Downl oad

Cl i ck "Crear" Downl oadLi st.seam Mensaj e "Ingrese l os datos requeri dos en l os campos" Veri fi car Campos Administrador Cl i ck "Nuevo" Downl oadEdi t.seam Mensaj e "Nombre de descarga ya exi ste" Veri fi car Nombre Downl oad.seam Guardar Datos

Downl oadLi st.seam

Mensaj e "Creada con exi to"

Opci on Edi tar Descargas

Menu Pri nci pal "Admi ni strar Descargas"

Back:End.seam

Cargar Descargas Creadas

Instanci ar Descargas

Downl oad

"Opci ones" Sel ect "Edi t"

Administrador Modi fi ca Datos Cl i ck "Guardar"

Downl oadLi st.seam

Cargar Datos Descarga Downl oadEdi t.seam Cl i ck "Nuevo" Mensaj e "Ingrese l os datos requeri dos en l os campos" Veri fi car Campos

Mensaj e "Nombre de descarga ya exi ste" Downl oad.seam

Veri fi car Nombre

Guardar Datos

Dowl oadLi st.seam

Mensaj e "Actual i zado con exi to"

Opci on El i mi nar Descarga

Menu Pri nci pal "Admi ni strar Descargas"

Back_End.seam

Cargar Li sta de Descargas Creadas

Instanci ar Descargas

Downl oad

"Opci ones" Sel ect "Edi t" Downl oadLi st.seam Sel ect "El i mi nar" Administrador Cargar Descargas Downl oadEdi t.seam

El i mi nar Descarga

Downl oadLi st.seam Mensaj e "El i mi nado con exi to"


Opci on Buscar Descargas

Back_End.seam Cargar Li sta Descargas Menu Pri nci pal "Admi ni strar Descargas" Ingresa Cri teri o Busqueda Cl i ck "Buscar Descarga" Dowl oadLi st.seam

Instanci ar Descarga

Dowl oad

Administrador Buscar Coi nci denci as Li star Descargas

Figura 71. Diagrama de Robustez CU: Administrar Descargas

201

DS017 CU: Administrar Descargas


sd ADM INISTRAR DESCARGAS (CREAR)

sd ADMINISTRAR DESCARGA (CREAR)


Adm i ni strador Back_End.seam

1.

2. 3. 4. 5.

Opcin Crear) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Admistrar Descargas. La plataforma navega hacia la pgina DownloadList.seam. El administrador hace click sobre el botn Crear. La plataforma navega hacia la pgina DownloadEdit.seam. El administrador ingresa los datos en el formulario requeridos para las descargas y hace click sobre el botn Guardar. La plataforma verifica campos obligatorios vacios, que el nombre de la descarga no est repetido, navega hacia la pgina Dowload.seam y muestra un mensaje Creada con exito. El administrador hace click sobre el botn Nuevo. La plataforma navega hacia la pgina DownloadList.seam.

[M enu Pri nci pal

sel ec Adm ni strar Descargas]:

new() Downl oadLi st.seam new() Downl oadLi st getResul tLi st() : Li st<Downl oad> new() Downl oad [cargarLi stadoDescargas]:

[cl i ck ""crear"]:

Downl oadEdi t.seam new() Downl oadHom e i sM anaged() :Bool ean

6.

[i ngresa datos cl i ck "Guardar"]:

[veri fi car cam pos vaci os]:

"Ingrese l os datos requeri dos en l os cam pos"

7. 8.

Exi ste otro m enu regi strado con este nom bre en el si stem a

[nom bre Desacarga ya regi strado]:

new() Downl oadActi on

exi stT hi sDownl oad(downl oad: Downl oad) :Bool ean new() Query new()

<ol type="A"> CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos <ol type="A" start="2"> NOMBRE DE LA DESCARGAS YA EXISTE EN EL SISTEMA B.5. La plataforma muestra el mensaje Nombre de descarga ya existente B.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

Enti tyM anager

enti tyM anager.CreateQuery(sentenci:Query asParaBusquedaDescarga:Stri ng) : Query

persi st() :Stri ng

new() Downl oad getInstance() : Downl oad [M ensaj e "Creado con exi to"]:

[cl i ck "Nuevo"]:

Figura 72. Diagrama de Secuencia CU: Administrar Descargas (Crear)

202

sd ADM INIST RAR DESCARGAS (M ODIFICAR)

sd ADMINISTRAR DESCARGA (MODIFICAR)


Adm i ni s trador Back _End.s eam [M enu Pri nci pal s el ec Adm ni s trar Des cargas ]:

new()

1.

(Administrador Opcin Editar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Admistrar Descargas. La plataforma navega hacia la pgina DownloadList.seam. El administrador selecciona en la columna Opciones la opcin Editar. La plataforma navega hacia la pgina DowloadEdit.seam y carga los datos en un formulario. El administrador edita los datos y hace click sobre el botn Guardar. La plataforma verifica campos obligatorios vacios, que el nombre de la descarga no est repetido, navega hacia la pgina Dowload.seam y muestra el mensaje Modificado con exito.
[opci ones cl i ck " Edi tar" ]:

Downl oadLi s t.s eam new() Downl oadLi s t getRes ul tLi s t() : Li s t<Downl oad> new() Downl oad [cargarLi s tadoDes cargas ]:

2. 3. 4.

Downl oadEdi t.s eam new() Downl oadHom e is M anaged() :Bool ean

getIns tance() :Downl oad

[cargar datos des carga actual ]:

[i ngres a datos cl i ck " Guardar" ]:

5. 6.

[veri fi car cam pos vaci os ]:

" Ingres e l os datos requeri dos en l os cam pos "

Exi s te otro m enu regi s trado con es te nom bre en el s s i tem a

[nom bre Des acarga ya regi s trado]:

new() Downl oadActi on

exi s tT hi s Downl oad(downl oad: Downl oad) :Bool ean new() Query new() Enti tyM anager

enti tyM anager.CreateQuery(s entenci:Query as ParaBus quedaDes carga:Stri ng) : Query

<ol type="A"> CAMPOS OBLIGATORIOS VACIOS C.13. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos C.14. El caso de uso contina en el numeral 13 del flujo normal de eventos <ol type="A" start="2"> NOMBRE DE LA DESCARGAS YA EXISTE EN EL SISTEMA D.13. La plataforma muestra el mensaje Nombre de descarga ya existente D.14. El caso de uso contina en el numeral 13 del flujo normal de eventos

update() : Stri ng

new() Downl oad getIns tance() : Downl oad [M ens aj e " M odi fi cado con exi to" ]:

[cl i ck " Nuevo" ]:

Figura 73. Diagrama de Secuencia CU: Administrar Descargas (Modificar)

203

sd

ADM INIS T RAR

DE S CARGAS

(E LIM INAR)

sd ADMINISTRAR DESCARGA (ELIMINAR)


Ad m i n i s tra d o r B a ck _ E n d .s eam

[M e n u

P ri n ci p a l

s el ec

Ad m n i s tra r De s ca rg a s ]:

n e w()

1.

2. 3.

4.

5. 6.

Opcin Eliminar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Admistrar Descargas. La plataforma navega hacia la pgina DownloadList.seam. El administrador selecciona en la columna Opciones la opcin Editar de la descarga a eliminar. La plataforma navega hacia la pgina DowloadEdit.seam y carga los datos en un formulario de la descarga seleccionada. El administrador hace click sobre el botn Eliminar. La plataforma elimina los datos de la base de datos, navega hacia Dowload.seam y muestra un mensaje Eliminada con exito.

Do wn l o a d L i s t.s eam n e w() Do wn l o a d L i s t g e tRe s u l tL i s t() : Li s t<Do wn l o a d > n e w() Do wn l o a d [ca rg a rL i s ta d o De s ca rg a s ]:

[o p ci o n e s cl i ck " E d i ta r" ]:

Do wn l o a d E d i t.s eam n e w() Do wn l o a d Ho m e is M a n a g e d () :B o o l e a n

g e tIn s ta n ce () :Do wn l o a d

[ca rg a r d a to s d e s ca rg a

a ctu a l ]:

[i n g re s a d a to s cl i ck " E l i m i n a r" ]: re m o ve () :S tri n g

[M e n s aj e

" El i m i n a d o

co n

e xi to " ]:

Figura 74. Diagrama de Secuencia CU: Administrar Descargas (Eliminar)


s d ADM INIST RAR DESCARGAS (VISUALIZAR)

sd ADMINISTRAR DESCARGA (BUSCAR)


Ad m i n i s tra d o r Ba ck En d .s a m _ e

1.

(Administrador Opcin Buscar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Admistrar Descargas. La plataforma navega hacia la pgina DownloadList.seam. El administrador ingresa el criterio de bsqueda y hace click sobre el botn Iniciar Busqueda. La plataforma busca las coincidencias en la base de datos y los enlista en la pgina DownloadList.seam. El caso de uso finaliza

[M e n u Pri n ci p a l

s l e c Ad m n i s e tra r De s ca rg a s ]:

n e w() Do wn l o a d L i s t.s a m e n e w() Do wn l o a d L i s t

2. 3. 4.

g e tRe s l tL i s u t() : Li s t<Do wn l o a d > n e w() Do wn l o a d [ca rg a rL i s ta d o De s ca rg a s ]:

[o p ci o n e s cl i ck " Vi s a l i za r" ]: u

5.

Do wn l o a d .s a m e n e w() Do wn l o a d Ho m e g e tIn s ta n ce () :Do wn l o a d

[ca rg a r d a to s d e s ca rg a a ctu a l ]:

Figura 75. Diagrama de Secuencia CU: Administrar Descargas (Buscar)

204

7.8.18. Caso de Uso: Administrar Planes Internet Nombre C.U: ADMINISTRAR PLANES Cdigo C.U: 0018

INTERNET Req.Funcional: Objetivo(s): Descripcin: RF0013 Gestionar de forma dinmica las descargas en la plataforma. Permitir al administrador crear, eliminar, modificar, buscar y visualizar los planes de la empresa. Actor(s): Tipo Caso Uso: Pre condiciones: Post condiciones: Administrador Sistema -Haber ejecutado el caso de uso autentificar usuario -Se han administrado correctamente los planes de la empresa.

FLUJO NORMAL DE EVENTOS ACTOR 1. (Opcin Crear) El PLATAFORMA

administrador selecciona en la pgina Back_End.seam en el Menu Principal la Planes opcin de Administrar Internet. 2. La plataforma navega hacia la pgina PlanNettplusList.seam y muestra un listado de los planes creados en la plataforma. 3. El administrador hace click sobre el botn Crear. 4. La plataforma navega hacia la pgina PlanNettplusEdit.seam y formulario. 5. El administrador llena los datos del formulario y hace click sobre el botn Guardar. 6. La plataforma verifica los campos muestra un

205

obligatorios, que el nombre del plan no exista con anterioridad, muestra el mensaje Creado con exito y navega hacia la pgina PlanNettplus.seam. 7. El administrador hace click sobre el botn Nuevo. 8. Navega hacia la pgina

PlanNettplusList.seam 9. (Opcin Editar) El

administrador selecciona en la pgina Back_End.seam en el Menu Principal la Planes opcin de Administrar Internet. 10. La plataforma navega hacia la pgina PlanNettplusList.seam y muestra un listado de los planes creados en la plataforma. 11. El administrador hace click sobre la opcin Editar en la columna Opciones del plan a editar. 12. La plataforma navega hacia la pgina PlanNettplusEdit.seam y carga los datos en un formulario del plan seleccionado 13. El administrador edita los datos necesarios y hace click sobre el botn Actualizar. 14. La plataforma verifica los campos

obligatorios, que el nombre del plan no exista con anterioridad, muestra el mensaje Actualizado con exito y navega hacia la pgina PlanNettplus.seam.

206

15. El administrador hace click sobre el botn Nuevo. 16. La plataforma navega hacia la pgina PlanNettplus.seam. 17. (Opcin Eliminar) El

administrador selecciona en la pgina Back_End.seam en el Menu Principal la Planes opcin de Administrar Internet. 18. La plataforma navega hacia la pgina PlanNettplusList.seam y muestra un listado de los planes creados en la plataforma. 19. El administrador selecciona en la columna Opciones la opcin Editar del plan a eliminar. 20. La plataforma navega hacia la pgina PlanNettplusEdit.seam y carga los datos en un formulario del plan seleccionado. 21. El administrador hace click sobre el botn Eliminar. 22. La plataforma elimina los datos de la base de datos, navega y muestra hacia un

PlanNettplusList.seam

mensaje Eliminado con exito. 23. (Opcin Buscar) El

administrador selecciona en la pgina Back_End.seam en el Menu Principal la Planes opcin de Administrar Internet.

207

24. La plataforma navega hacia la pgina PlanNettplusList.seam y muestra un listado de los planes creados en la plataforma. 25. El administrador ingresa el criterio de bsqueda y hace click sobre el botn Buscar Plan. 26. La plataforma busca las coincidencias en la base de datos y los enlista en la pgina Planes encontrados. 27. (Opcin Visualizar) El

administrador selecciona en la pgina Back_End.seam en el Menu Principal la Planes opcin de Administrar Internet. 28. La plataforma navega hacia la pgina PlanNettplusList.seam y muestra un listado de los planes creados en la plataforma. 29. El administrador selecciona en la columna Opciones la opcin Visualizar del plan a visualizar. 30. La plataforma navega hacia la pgina PlanNettpluss.seam. 31. El caso de uso finaliza FLUJO ALTERNOS DE EVENTOS A. CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

B. NOMBRE DEL PLAN YA EXISTENTE

208

B.5. La plataforma muestra el mensaje Nombre del plan ya existente B.6. El caso de uso contina en el numeral 5 del flujo normal de eventos E. CAMPOS OBLIGATORIOS VACIOS A.13. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.14. El caso de uso contina en el numeral 13 del flujo normal de eventos F. B. NOMBRE DEL PLAN YA EXISTENTE B.13. La plataforma muestra el mensaje Nombre del plan ya existente B.14. El caso de uso contina en el numeral 13 del flujo normal de eventos Prototipdos de Pantalla CU: Administrar Planes Internet Opcin Buscar

Opcin Crear

209

Opcin Visualizar

Opcin Editar y Eliminar

Cursos Alternos

210

DR018 CU: Administrar Planes Internet


uc ADM INISTRAR PLANES NETTPLUS

Opci on Crear Pl anes

Back_End.seam M enu Pri nci pal "Adm i ni strar Pl anes Nettpl us"

Cl i ck "Crear"

Administrador

Ingresa Datos Cl i ck "Guardar"

Pl anNettpl us.seam

Cargar} Pl anes Creados

Instanci ar Pl an

Pl an Nettpl us

Cl i ck "Nuevo" Pl anNettpl usEdi t.seam M ensaj e "Ingrese l os datos requeri dos en l os cam pos" Veri fi car Cam pos

M ensaj e "Nom bre del pl an ya exi ste" Pl anNettpl us.seam

Veri fi car Pl an ya Regi strado

Guardar Datos

M ensaj e "Creado con exi to" Pl anNettpl ussLi st.seam

Opci on Edi tar Pl anes

M enu Pri nci pal "Adm i ni strar Pl anes Nettpl us"

Back_End.seam Cargar Pl anes Creados Instanci ar Pl an

Pl an Nettpl us

"Opci ones" Sel ect "Edi tar" Pl anNettpl usLi st.seam M odi fi ca Datos Cl i ck "Actual i zar" Administrador Cargar Pl an Pl anNettpl usEdi t.seam Cl i ck "Nuevo" M ensaj e "Ingrese l os Veri fi car Cam pos datos requeri dos en l os cam pos"

M ensaj e "Nom bre del pl an ya exi stente" Veri fi car Pl an ya Regi strado Pl anNettpl us.seam

Guardar Datos

Pl anNettpl usLi st.seam

M ensaj e "Actual i zado con exi to"

Opci on El i m i nar Pl an

Back_End.seam M enu Pri nci pal "Adm i ni strar Pl anes Nettpl us" Cargar Pl anes Creados

Instanci ar Pl anes

Pl an Nettpl us

"Opci ones" Sel ect "Edi tar"

Pl anNettpl usLi st.seam Administrador Sel ect "El i m i nar"

Cargar Pl an Creado Pl anNettpl usEdi t.seam

El i m i nar Pl an

M ensaj e "El i m i nado con exi to"

Opci on Buscar Pl an

Back_End.seam M enu Pri nci pal "Adm i ni strar Pl anes Nettpl us" Cargar Pl anes Creados Instanci ar Pl anes Pl an Nettpl us

Ingresa Cri teri o de Busqueda "Buscar Pl an" Administrador Pl anNettpl usLi st.seam

Buscar Pl an

Li star Pl anes

Opci on Vi sual i zar Pl anes

Back_End.seam M enu Pri nci pal "Adm i ni strar Pl anes Nettpl us" Cargar Pl anes Creados Instanci ar Pl anes Pl an Nettpl us

"Opci ones" Sel ect "Vi sual i zar"

Administrador Pl anNettpl usLi st.seam Buscar Pl an El egi do

Pl anNettpl us.seam

Figura 76. Diagrama de Robustez CU: Administrar Planes Internet

211

DS 018 CU: Administrar Planes Internet


s d ADM INIST RAR PLANES DE INT ERNET (CREAR)

sd ADMINISTRAR PLANES NETTPLUS (CREAR)


Ad m i n i s tra d o r Ba ck En d .s a m _ e [M e n u Pri n ci p a l s l e c Ad m n i s e tra r Pl a n e s d e In te rn e t]:

1.

2.

3. 4. 5. 6.

(Opcin Crear) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Administrar Planes de Internet. La plataforma navega hacia la pgina PlanNettplusList.seam y muestra un listado de los planes creados en la plataforma. El administrador hace click sobre el botn Crear. La plataforma navega hacia la pgina PlanNettplusEdit.seam y muestra un formulario. El administrador llena los datos del formulario y hace click sobre el botn Guardar La plataforma verifica los campos obligatorios, que el nombre del plan no exista con anterioridad, muestra el mensaje Creado con exito y navega hacia la pgina PlanNettplus.seam. El administrador hace click sobre el botn Nuevo. Navega hacia la pgina PlanNettplusList.seam

n e w() Pl a n Ne ttp l u s i s L t.s a m e n e w() Pl a n Ne ttp l u s i s L t g e tRe s l tL i s u t() : Li s t<Pl a n Ne ttp l u s > n e w() Pl a n Ne ttp l u s [ca rg a rL i s ta d o Pl a n Ne ttp l u s ]:

[ cl i ck " Cre a r" ]:

Pl a n Ne ttp l u s Ed i t.s a m e n e w() Pl a n Ne ttp l u s Ho m e is M a n a g e d () :Bo o l e a n

[ca rg a rDa to s Pl a n Ne ttp l u s Actu a l ]:

[In g re s a d a to s cl i ck " Gu a rd a r" ]: " In g re s e l o s d a to s re q u e ri d o s e n l o s ca m p o s "

[ve ri fi ca r ca m p o s va ci o s ]:

[n o m b re Pl a n Ne ttp l u s ya re g i s tra d o ]:

n e w() Pl a n Ne ttp l u s Acti o n

Exi s te o tro p l a n re g i s tra d o co n e s te n o m b re e n e l s s i te m a

e xi s tT h i s Pl a n Ne ttp l u s (p l a n Ne ttp l u s :Pl a n Ne ttp l u s :Bo o l e a n ) n e w() Qu e ry n e w() En ti tyM a n a g e r

e n ti tyM a n a g e r.Cre a te Qu e ry(s n te n ci a s e Pa ra Bu s u:Qu e ry n Ne ttp l u s q e d a Pl a :Stri n g ) :Qu e ry

7. 8.

p e rs s i t() :Stri n g

n e w() Pl a n Ne ttp l u s .s a m e g e tIn s ta n ce () : Pl a n Ne ttp l u s

<ol type="A" style="margin-top: 0mm; margin-bottom: 0mm; "><ol type="A" style="margin-top: 0mm; marginbottom: 0mm; "><ol type="A" style="margin-top: 0mm; margin-bottom: 0mm; "><ol type="A" style="margin-top: 0mm; margin-bottom: 0mm; "> CAMPOS OBLIGATORIOS VACIOS A.5. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.6. El caso de uso contina en el numeral 5 del flujo normal de eventos B. NOMBRE DEL PLAN YA EXISTENTE B.5. La plataforma muestra el mensaje Nombre del plan ya existente B.6. El caso de uso contina en el numeral 5 del flujo normal de eventos

[M e n s j e " Cre a d o co n a e xi to " ]:

[cl i ck " Nu e vo " ]:

Figura 77. Diagrama de Secuencia CU: Administrar Planes Internet (Crear)

212

sd ADM INIST RAR PLANES DE INT ERNET (M ODIFICAR)

sd ADMINISTRAR PLANES NETTPLUS (EDITAR)


Adm i ni strador Back_End.seam

1.

2.

3. 4.

5. 6.

7. 8.

(Opcin Editar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Administrar Planes de Internet. La plataforma navega hacia la pgina PlanNettplusList.seam y muestra un listado de los planes creados en la plataforma. El administrador hace click sobre la opcin Editar en la columna Opciones del plan a editar. La plataforma navega hacia la pgina PlanNettplusEdit.seam y carga los datos en un formulario del plan seleccionado El administrador edita los datos necesarios y hace click sobre el botn Actualizar. La plataforma verifica los campos obligatorios, que el nombre del plan no exista con anterioridad, muestra el mensaje Actualizado con exito y navega hacia la pgina PlanNettplus.seam. El administrador hace click sobre el botn Nuevo. La plataforma navega hacia la pgina PlanNettplus.seam.

[M enu Pri nci pal

sel ec Adm ni strar Pl anes deInternet]:

new() Pl anNettpl usLi st.seam new() Pl anNettpl usLi st getResul tLi st() : Li st<Pl anNettpl us> new() Pl anNettpl us [cargarLi stadoPl anNettpl us]:

[opci ones cl i ck "Edi tar"]:

Pl anNettpl usEdi t.seam new() Pl anNettpl usHom e i sM anaged() :Bool ean

getInstance() :Pl anNettpl us

[cargarDatosPl anNettpl usActual ]:

[M odi fi ca datos cl i ck "Guardar"]:


"Ingrese l os datos requeri dos en l os cam pos"

[veri fi car cam pos vaci os]:

[nom bre Pl anNettpl us ya regi strado]:

new() Pl anNettpl usActi on

Exi ste otro pl an regi strado con este nom bre en el si stem a

exi stT hi sPl anNettpl us(pl anNettpl us:Pl anNettpl us) :Bool ean

CAMPOS OBLIGATORIOS VACIOS A.13. La plataforma muestra el mensaje Ingrese los datos requeridos en los campos A.14. El caso de uso contina en el numeral 13 del flujo normal de eventos B. NOMBRE DEL PLAN YA EXISTENTE B.13. La plataforma muestra el mensaje Nombre del plan ya existente B.14. El caso de uso contina en el numeral 13 del flujo normal de eventos

new() Query new() Enti tyM anager

enti tyM anager.CreateQuery(sentenci asParaBusquedaPl anNettpl us:Stri ng) :Query :Query

update() :Stri ng

new() Pl anNettpl us.seam getInstance() : Pl anNettpl us [M ensaj e "M odi fi cado con exi to"]:

[cl i ck "Nuevo"]:

Figura 78. Diagrama de Secuencia CU: Administrar Planes Internet (Editar)

213

sd ADMINISTRAR PLANES DE INTERNET (ELIMINAR)

sd ADMINISTRAR PLANES NETTPLUS (ELIMINAR)


Admi ni strador Back_End.seam

[Menu Pri nci pal sel ec Admni strar Pl anes deInternet]:

1. (Opcin Eliminar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Administrar Planes de Internet. 2. La plataforma navega hacia la pgina PlanNettplusList.seam y muestra un listado de los planes creados en la plataforma. 3. El administrador selecciona en la columna Opciones la opcin Editar del plan a eliminar. 4. La plataforma navega hacia la pgina PlanNettplusEdit.seam y carga los datos en un formulario del plan seleccionado. 5. El administrador hace click sobre el botn Eliminar. 6. La plataforma elimina los datos de la base de datos, navega hacia PlanNettplusList.seam y muestra un mensaje Eliminado con exito.

new() Pl anNettpl usLi st.seam new() Pl anNettpl usLi st getResul tLi st() : Li st<Pl anNettpl us> new() Pl anNettpl us [cargarLi stadoPl anNettpl us]:

[opci ones cl i ck "Edi tar"]:

Pl anNettpl usEdi t.seam new() Pl anNettpl usHome i sManaged() :Bool ean

getInstance() :Pl anNettpl us

[cargarDatosPl anNettpl usActual ]:

[Modi fi ca datos cl i ck "El i mi nar"]: remove() : Stri ng

[Mensaj e "El i mi nado con exi to"]:

Figura 79. Diagrama de Secuencia CU: Administrar Planes Internet (Eliminar)

214

sd ADMINISTRAR PLANES NETTPLUS (BUSCAR)

sd ADM INIST RAR PLANES DE INT ERNET (BUSCAR)

Adm i ni strador

Back_End.seam

1.

2.

3. 4.

(Opcin Buscar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Administrar Planes de Internet. La plataforma navega hacia la pgina PlanNettplusList.seam y muestra un listado de los planes creados en la plataforma. El administrador ingresa el criterio de bsqueda y hace click sobre el botn Buscar Plan. La plataforma busca las coincidencias en la base de datos y los enlista en la pgina Planes encontrados.

[M enu Pri nci pal

sel ec Adm ni strar Pl anes deInternet]:

new() Pl anNettpl usLi st.seam new() Pl anNettpl usLi st getResul tLi st() : Li st<Pl anNettpl us> new() Pl anNettpl us [cargarLi stadoPl anNettpl us]:

[i ngresa cri teri o

cl i ck "Ini ci ar busqueda"]:

getResuLi st() :Li st<Pl anNettpl us>

[cargar l i stado de coi nsi deci as]:

Figura 80. Diagrama de Secuencia CU: Administrar Planes Internet (Buscar)


sd ADMINISTRAR PLANES NETTPLUS (VISUALIZAR)
sd ADMINISTRAR PLANES DE INTERNET (BUSCAR)

Admi ni strador

Back_End.seam

1.

2.

3.

4. 5.

(Opcin Visualizar) El administrador selecciona en la pgina Back_End.seam en el Menu Principal la opcin Administrar Planes de Internet. La plataforma navega hacia la pgina PlanNettplusList.seam y muestra un listado de los planes creados en la plataforma. El administrador selecciona en la columna Opciones la opcin Visualizar del plan a visualizar. La plataforma navega hacia la pgina PlanNettpluss.seam. El caso de uso finaliza

[Menu Pri nci pal

sel ec Admni strar Pl anes deInternet]:

new() Pl anNettpl usLi st.seam new() Pl anNettpl usLi st getResul tLi st() : Li st<Pl anNettpl us> new() Pl anNettpl us [cargarLi stadoPl anNettpl us]:

[i ngresa cri teri o cl i ck "Ini ci ar busqueda"]:

getResuLi st() :Li st<Pl anNettpl us>

[cargar l i stado de coi nsi deci as]:

Figura 81. Diagrama de Secuencia CU: Administrar Planes Internet (Visualizar)

215

7.8.19. Diagrama de Paquetes


class Detailed Class Diagram w eb nettplus Serv icios action v alidator

modelo v iew

Figura 82. Diagrama de Paquetes

216

7.8.20. Diagrama de Clases por cada Caso de Uso


class modelo Serializable Cliente apellido: String cedula: String celular: String direccion: String email: String facturasCliente: List<Factura> fechaInstalacion: Date id: Long ipAsignada: String lastAccessOn: Date nombre: String numeroEquiposInstalados: String password: String planElegido: String rePassword: String role: String serialVersionUID: long = 1L {readOnly} sugerenciaClave: String tecnicoResponsable: String telefono: String tempLastAccesOn: Date tipoPago: String tipoServicio: String username: String Menu descripcion: String enable: Boolean id: Long menuItemsAsignados: List<MenuItem> nombre: String orden: Integer serialVersionUID: long = 1L {readOnly} Comparable Serializable Serializable Administrador email: String id: Long LastAccessOn: Date password: String rePassword: String role: String serialVersionUID: long = 1L {readOnly} tempLastAccesOn: Date userName: String

-menuPropietario_mi

Serializable Banner 0..* Serializable Comparable MenuItem articuloVinculado: String descripcion: String id: Long menuPropietario_mi: Menu nombre: String orden: Integer serialVersionUID: long = 1L {readOnly} 1 Serializable Articulo estado: Boolean id: Long name: String serialVersionUID: long = 1L {readOnly} urlEnlace: String urlImagen: String

-clientePropietario

Serializable Download descripcion: String id: Long name: String urlDownload: String

0..* Serializable Factura clientePropietario: Cliente descripcion: String estado: String fechaEmision: Date fechaMaxPAgo: Date formaDePago: String id: Long numeroPlanes: Integer serialVersionUID: long = 1L {readOnly} subTotal: String valorIva: String valorTotal: String valorUnitario: String -

autor: String contenido: String descripcion: String fechaCreacion: Date id: Long nombre: String serialVersionUID: long = 1L {readOnly} Portada - actualFrontName: String - discriminator: String - id: Long

1 1..*

1 Serializable PlanNettplus costPlain: Double description: String id: Long planName: String releaseDate: Date

Figura 83. Diagrama de Casos de Clases Final por Paquetes A1:(Paquete Modelo)

217

class modelo Serializable Cliente + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + apellido: String cedula: String celular: String direccion: String email: String facturasCliente: List<Factura> fechaInstalacion: Date id: Long ipAsignada: String lastAccessOn: Date nombre: String numeroEquiposInstalados: String password: String planElegido: String rePassword: String role: String serialVersionUID: long = 1L {readOnly} sugerenciaClave: String tecnicoResponsable: String telefono: String tempLastAccesOn: Date tipoPago: String tipoServicio: String username: String add(Factura) : void Cliente() getApellido() : String getCedula() : String getCelular() : String getDireccion() : String getEmail() : String getFacturasCliente() : List<Factura> getFechaInstalacion() : Date getId() : Long getIpAsignada() : String getLastAccessOn() : Date getNombre() : String getNumeroEquiposInstalados() : String getPassword() : String getPlanElegido() : String getRePassword() : String getRole() : String getSerialVersionUID() : long getSugerenciaClave() : String getT ecnicoResponsable() : String getT elefono() : String getT empLastAccesOn() : Date getT ipoPago() : String getT ipoServicio() : String getUsername() : String remove(Factura) : void setApellido(String) : void setCedula(String) : void setCelular(String) : void setDireccion(String) : void setEmail(String) : void setFacturasCliente(List<Factura>) : void setFechaInstalacion(Date) : void setId(Long) : void setIpAsignada(String) : void setLastAccessOn(Date) : void setNombre(String) : void setNumeroEquiposInstalados(String) : void setPassword(String) : void setPlanElegido(String) : void setRePassword(String) : void setRole(String) : void setSugerenciaClave(String) : void setT ecnicoResponsable(String) : void setT elefono(String) : void setT empLastAccesOn(Date) : void setT ipoPago(String) : void setT ipoServicio(String) : void setUsername(String) : void validateCedula() : Boolean validateIp() : Boolean validateRePassword() : Boolean -clientePropietario 1 Menu + + + + + + + + + + + + + + + + + descripcion: String enable: Boolean id: Long menuItemsAsignados: List<MenuItem> nombre: String orden: Integer serialVersionUID: long = 1L {readOnly} add(MenuItem) : void compareT o(Menu) : int getDescripcion() : String getEnable() : Boolean getId() : Long getMenuItemsAsignados() : List<MenuItem> getNombre() : String getOrden() : Integer getSerialVersionUID() : long Menu() remove(MenuItem) : void setDescripcion(String) : void setEnable(Boolean) : void setId(Long) : void setMenuItemsAsignados(List<MenuItem>) : void setNombre(String) : void setOrden(Integer) : void 1 + + + + + + + + + + + + + + + + Comparable Serializable Administrador email: String id: Long LastAccessOn: Date password: String rePassword: String role: String serialVersionUID: long = 1L {readOnly} tempLastAccesOn: Date userName: String Administrador() getEmail() : String getId() : Long getPassword() : String getRePassword() : String getRole() : String getT empLastAccesOn() : Date getUserName() : String setEmail(String) : void setId(Long) : void setPassword(String) : void setRePassword(String) : void setRole(String) : void setT empLastAccesOn(Date) : void setUserName(String) : void validateRePassword() : Boolean Serializable

-menuPropietario_mi

property get + getLastAccessOn() : Date property set + setLastAccessOn(Date) : void 0..* Serializable Comparable

MenuItem + + + + + + + + + + + + + articuloVinculado: String descripcion: String id: Long menuPropietario_mi: Menu nombre: String orden: Integer serialVersionUID: long = 1L {readOnly} compareT o(MenuItem) : int getArticuloVinculado() : String getDescripcion() : String getId() : Long getMenuPropietario_mi() : Menu getNombre() : String getOrden() : Integer setArticuloVinculado(String) : void setDescripcion(String) : void setId(Long) : void setMenuPropietario_mi(Menu) : void setNombre(String) : void setOrden(Integer) : void

Serializable Articulo + + + + + + + + + + + + + autor: String contenido: String descripcion: String fechaCreacion: Date id: Long nombre: String serialVersionUID: long = 1L {readOnly} getAutor() : String getContenido() : String getDescripcion() : String getFechaCreacion() : Date getId() : Long getNombre() : String getSerialVersionUID() : long setAutor(String) : void setContenido(String) : void setDescripcion(String) : void setFechaCreacion(Date) : void setId(Long) : void setNombre(String) : void

Portada + + + + + + actualFrontName: String discriminator: String id: Long getActualFrontName() : String getDiscriminator() : String getId() : Long setActualFrontName(String) : void setDiscriminator(String) : void setId(Long) : void 1

Serializable Banner + + + + + + + + + + + estado: Boolean id: Long name: String serialVersionUID: long = 1L {readOnly} urlEnlace: String urlImagen: String Banner() getEstado() : Boolean getId() : Long getName() : String getUrlEnlace() : String getUrlImagen() : String setEstado(Boolean) : void setId(Long) : void setName(String) : void setUrlEnlace(String) : void setUrlImagen(String) : void

Serializable 0..* Serializable Factura + + + + + + + + + + + + + + + + + + + + + + + + + + clientePropietario: Cliente descripcion: String estado: String fechaEmision: Date fechaMaxPAgo: Date formaDePago: String id: Long numeroPlanes: Integer serialVersionUID: long = 1L {readOnly} subT otal: String valorIva: String valorT otal: String valorUnitario: String Factura() getClientePropietario() : Cliente getDescripcion() : String getEstado() : String getFechaEmision() : Date getFechaMaxPAgo() : Date getFormaDePago() : String getId() : Long getNumeroPlanes() : Integer getSerialVersionUID() : long getSubT otal() : String getValorIva() : String getValorT otal() : String getValorUnitario() : String setClientePropietario(Cliente) : void setDescripcion(String) : void setEstado(String) : void setFechaEmision(Date) : void setFechaMaxPAgo(Date) : void setFormaDePago(String) : void setId(Long) : void setNumeroPlanes(Integer) : void setSubT otal(String) : void setValorIva(String) : void setValorT otal(String) : void setValorUnitario(String) : void 1..* + + + + + + + + + + PlanNettplus costPlain: Double description: String id: Long planName: String releaseDate: Date getCostPlain() : Double getDescription() : String getId() : Long getPlanName() : String getReleaseDate() : Date setCostPlain(Double) : void setDescription(String) : void setId(Long) : void setPlanName(String) : void setReleaseDate(Date) : void

Serializable Dow nload + + + + + + + + descripcion: String id: Long name: String urlDownload: String getDescripcion() : String getId() : Long getName() : String getUrlDownload() : String setDescripcion(String) : void setId(Long) : void setName(String) : void setUrlDownload(String) : void

Figura 84. Diagrama de Casos de Clases Final por Paquetes A2:(Paquete Modelo)

218

class serv icios Controller ClienteAction ~ administradorAction: AdministradorAction - entityManager: EntityManager - PlanNettplusNameList: List<SelectItem> = null + + + + + + + allClients() : List<Cliente> existThisCedulaNumber(Cliente) : Boolean existThisEmail(Cliente) : boolean existThisUsername(String) : Boolean existThisUsername(Cliente) : Boolean identifyRepeatedFields(Cliente) : List<String> isRepeatFields(Cliente) : Boolean EntityHome ClienteHome ~ clienteAction: ClienteAction ~ facturaAction: FacturaAction ~clienteAction + + # + + + + + + + + + + + EntityHome PortadaHome ~ actualFront: Portada ~ entityManager: EntityManager BannerAction # + + + + + + Controller ClienteAccountAction ~ ~ ~ + + + actualClient: Cliente clienteAction: ClienteAction entityManager: EntityManager updateResult: Boolean = false clienteAccountUpdate(Cliente) : void existThisIp(Cliente) : boolean getUpdateResult() : Boolean setUpdateResult(Boolean) : void Controller ArticuloAction ~ actualArticle: Articulo ~ entityManager: EntityManager ~ portadaHome: PortadaHome + articleContent(String) : String + searchFrontArticle() : void + thisArticleExist(Articulo) : Boolean ~articuloAction ~articuloAction createInstance() : Portada getDefinedInstance() : Portada getPortadaId() : Long isWired() : boolean load() : void setPortadaId(Long) : void wire() : void ~ ~ ~ ~ + + + + + + + + + + + + + + + + + + + + + + + actualArticle: Articulo = new Articulo() actualFront: Portada = new Portada() articuloAction: ArticuloAction entityManager: EntityManager avaibleBanners() : List<SelectItem> avaibleUrlImages() : List<SelectItem> enableBotton1Banner() : String enableBotton2Banner() : String enableBotton3Banner() : String enableBotton4Banner() : String enableBotton5Banner() : String enableRigth1Banner() : String enableRigth2Banner() : String enableRigth3Banner() : String enableRigth4Banner() : String enableTopBanner() : String obtainBotton1() : Banner obtainBotton2() : Banner obtainBotton3() : Banner obtainBotton4() : Banner obtainBotton5() : Banner obtainRigth1() : Banner obtainRigth2() : Banner obtainRigth3() : Banner obtainRigth4() : Banner obtainTopBanner() : Banner suportMoreBanners() : Boolean # + + + + + + EntityHome Controller FacturaHome ~ clienteHome: ClienteHome ~ facturaAction: FacturaAction - serialVersionUID: long = 1L {readOnly} + + # + + + + + + + + + + + + actualDate() : String clientPay() : String createInstance() : Factura facturaDescription() : String facturaIva() : String facturaSubtotal() : String facturaValorTotal() : String facturaValorUnitario() : String getDefinedInstance() : Factura getFacturaId() : Long isWired() : boolean load() : void maxDate() : String setFacturaId(Long) : void wire() : void avaiblePlanMessajeAdvisory() : String avaiblePlanMessajeAdvisory2() : String createInstance() : Cliente getClienteId() : Long getDefinedInstance() : Cliente getFacturasCliente() : List<Factura> isWired() : boolean load() : void persist() : String plainIsAvaible() : Boolean ~clienteHome setClienteId(Long) : void update() : String updateCliente(Cliente) : void wire() : void ~facturaAction + + + + + + + FacturaAction entityManager: EntityManager serialVersionUID: long = 1L {readOnly} isAvaibleClientPlan(Cliente) : Boolean planHiredCost(Cliente) : SelectItem planHiredDescription(Cliente) : SelectItem planHiredIVA(Cliente) : SelectItem planHiredSubtotalValue(Cliente) : SelectItem planHiredTotalPayValue(Cliente) : SelectItem planHiredUnitValue(Cliente) : SelectItem ~facturaAction interface Authenticator + authenticate() : boolean Controller DownloadAction ArticuloList ~ entityManager: EntityManager + existThisDownload(Download) : Boolean ~downloadAction + ArticuloList() + getArticulo() : Articulo + DownloadList() + getDownload() : Download articulo: Articulo = new Articulo() EJBQL: String = "select articul... {readOnly} RESTRICTIONS: String ([]) = {"lower(ar... {readOnly} download: Download = new Download() EJBQL: String = "select downloa... {readOnly} RESTRICTIONS: String ([]) = {"lower(do... {readOnly} EntityQuery DownloadList EntityQuery Controller

property get + getPlanNettplusNameList() : List<SelectItem> property set + setPlanNettplusNameList(List<SelectItem>) : void ~clienteAction ~clienteAction

Controller MenuAction ~ entityManager: EntityManager + existThisMenu(Menu) : Boolean + menuAvaibleList() : List<Menu> + thereAreMenuCreated() : Boolean ~menuAction AuthenticatorBean ~ downloadAction: DownloadAction ~ ~ ~ ~ ~ actualAdministrador: Administrador actualClient: Cliente credentials: Credentials entityManager: EntityManager identity: Identity log: Log # + + + + + + + + createInstance() : Download getDefinedInstance() : Download getDownloadId() : Long isWired() : boolean load() : void persist() : String setDownloadId(Long) : void update() : String wire() : void BannerList banner: Banner = new Banner() EJBQL: String = "select banner ... {readOnly} RESTRICTIONS: String ([]) = {"lower(ba... {readOnly} EntityQuery FacturaList EJBQL: String = "select factura... {readOnly} factura: Factura = new Factura() RESTRICTIONS: String ([]) = {"lower(fa... {readOnly} EntityQuery

EntityHome DownloadHome

+ BannerList() + getBanner() : Banner

+ FacturaList() + getFactura() : Factura

EntityHome MenuHome

EntityQuery ClienteList cliente: Cliente = new Cliente() EJBQL: String = "select cliente... {readOnly} RESTRICTIONS: String ([]) = {"lower(cl... {readOnly} MenuItemList

EntityQuery

~portadaHome

+ authenticate() : boolean ~ menuAction: MenuAction # + + + + + + + + + createInstance() : Menu getDefinedInstance() : Menu getMenuId() : Long getMenuItemsAsignados() : List<MenuItem> isWired() : boolean load() : void persist() : String setMenuId(Long) : void update() : String ~menuHome wire() : void

EJBQL: String = "select menuIte... {readOnly} menuItem: MenuItem = new MenuItem() RESTRICTIONS: String ([]) = {"lower(me... {readOnly}

Controller MenuItemAction - articlesNameList: List<SelectItem> = null ~ entityManager: EntityManager + existThisMenuItem(MenuItem) : Boolean + getArticlesNameList() : List<SelectItem> + setArticlesNameList(List<SelectItem>) : void ~menuItemAction

+ ClienteList() + getCliente() : Cliente

+ getMenuItem() : MenuItem + MenuItemList()

EntityQuery EntityQuery PlanNettplusList EJBQL: String = "select planNet... {readOnly} planNettplus: PlanNettplus = new PlanNettplus() RESTRICTIONS: String ([]) = {"lower(pl... {readOnly} EJBQL: String = "select menu fr... {readOnly} menu: Menu = new Menu() RESTRICTIONS: String ([]) = {"lower(menu.no... {readOnly} MenuList

EntityHome EntityHome BannerHome createInstance() : Banner getBannerId() : Long getDefinedInstance() : Banner isWired() : boolean load() : void setBannerId(Long) : void wire() : void # + + + + + + EntityHome PlanNettplusHome createInstance() : PlanNettplus getDefinedInstance() : PlanNettplus getPlanNettplusId() : Long isWired() : boolean load() : void setPlanNettplusId(Long) : void wire() : void MenuItemHome ~ menuHome: MenuHome ~ menuItemAction: MenuItemAction # + + + + + + + + + createInstance() : MenuItem getDefinedInstance() : MenuItem getMenuItemId() : Long isWired() : boolean load() : void ordersAvaibles() : List<SelectItem> persist() : String setMenuItemId(Long) : void update() : String wire() : void

+ getPlanNettplus() : PlanNettplus + PlanNettplusList()

+ getMenu() : Menu + MenuList()

~administradorAction Controller AdministradorAction ~ clienteAction: ClienteAction ~ entityManager: EntityManager + + + + dateLastsesionManagement(Administrador) : Administrador existThisUsername(String) : boolean identifyRepeatedFields(Administrador) : List<String> isRepeatFields(Administrador) : Boolean ~administradorAction EntityHome ArticuloHome ~ articuloAction: ArticuloAction # + + + + + + + + EntityHome AdministradorHome ~ administradorAction: AdministradorAction # + + + + + + + + createInstance() : Administrador getAdministradorId() : Long getDefinedInstance() : Administrador isWired() : boolean load() : void persist() : String setAdministradorId(Long) : void update() : String wire() : void createInstance() : Articulo getArticuloId() : Long getDefinedInstance() : Articulo isWired() : boolean load() : void persist() : String setArticuloId(Long) : void update() : String wire() : void

EntityQuery AdministradorList administrador: Administrador = new Administrador() EJBQL: String = "select adminis... {readOnly} RESTRICTIONS: String ([]) = {"lower(ad... {readOnly} PortadaList

EntityQuery

EJBQL: String = "select portada... {readOnly} portada: Portada = new Portada() RESTRICTIONS: String ([]) = {"lower(po... {readOnly}

+ AdministradorList() + getAdministrador() : Administrador

+ getPortada() : Portada + PortadaList()

Figura 85. Diagrama de Casos de Clases Final por Paquetes (Paquete Servicios)

219

class v alidator interface,a... Home

HomeInterceptor + aroundInvoke(InvocationContext) : Object

InputValidator ~ MULT: int = 2 {readOnly} ~ TOTAL_PROVINCES: int = 24 {readOnly} + cedulaValidator(String) : boolean + ipValidator(String) : boolean

interface,a... ValidatorAction

Figura 86. Diagrama de Casos de Clases Final por Paquetes (Paquete Validator)

7.8.21. Diagrama de Despliegue

deployment DIAGRAMA DE DESPLIEGUE

Estacion de trabaj o

Uso dispositivos de entrada/Salida

Nav egador w eb

Cliente/Administrador

Conexion Http puerto:8080

MySql 5.1

Jboss Aplication Serv er 5.1

Base de datos Socket Local 3306

Plataforma Empresarial Nettplus

Figura 87. Diagrama de Despliegue

220

7.8.22. Diseo de la Base de Datos 7.8.22.1. Modelo Entidad-Relacin


portada id <pi> Serial (20) <M> actualFrontName Variable characters (255) discriminator Variable characters (255) Key_1 <pi> factura id <pi> Serial (20) <M> descripcion Variable characters (255) estado Variable characters (255) fechaEmision Date fechaMaxPAgo Date formaDePago Variable characters (255) numeroPlanes Integer subTotal Variable characters (255) valorIva Variable characters (255) valorTotal Variable characters (255) valorUnitario Variable characters (255) clientePropietario_id <ai> Long integer <M> Key_1 <pi> FK2223DF58FAF7543D <ai> articulo id <pi> Serial (20) <M> autor Variable characters (255) contenido Text <M> descripcion Variable characters (255) fechaCreacion Date nombre <ai> Variable characters (255) <M> Key_1 <pi> nombre <ai> cliente id apellido cedula celular direccion email fechaInstalacion ipAsignada lastAccessOn nombre numeroEquiposInstalados password planElegido role sugerenciaClave tecnicoResponsable telefono tempLastAccesOn tipoPago tipoServicio username Key_1 cedula email username ipAsignada <pi> <ai1> <ai2> <ai3> <ai4> <pi> Serial (20) Variable characters (255) <ai1> Variable characters (255) Variable characters (255) Variable characters (255) <ai2> Variable characters (255) Date <ai4> Variable characters (255) Date & Time Variable characters (255) Variable characters (255) Variable characters (255) Variable characters (255) Variable characters (255) Variable characters (255) Variable characters (255) Variable characters (255) Date & Time Variable characters (255) Variable characters (255) <ai3> Variable characters (255) <M> <M> <M>

se asocia

tiene asignadas

se asocia tiene asociado

<M>

menuitem id <pi> articuloVinculado descripcion nombre <ai1> orden menuPropietario_mi_id <ai2> Key_1 <pi> nombre <ai1> FKDFD8A132B2E348D0 <ai2> Serial (20) <M> Variable characters (255) <M> Variable characters (255) Variable characters (255) <M> Integer Long integer plannettplus id <pi> Serial (20) costPlain Long float description Variable characters (255) planName <ai> Variable characters (255) releaseDate Date posee Key_1 <pi> planName <ai> <M> <M> <M> <M>

<M> <M>

<M>

menu id <pi> Serial (20) <M> descripcion Text enable Byte (1) <M> nombre <ai> Variable characters (255) <M> orden Integer Key_1 <pi> nombre <ai>

download id <pi> Serial (20) descripcion Text name <ai> Variable characters (255) urlDownload Variable characters (255) Key_1 <pi> name <ai> <M> <M> <M> <M>

banner id <pi> Serial (20) <M> estado Byte (1) name <ai> Variable characters (255) <M> urlEnlace Text urlImagen Text <M> Key_1 <pi> name <ai>

administrador id <pi> LastAccessOn email <ai1> password role tempLastAccesOn userName <ai2> Key_1 <pi> email <ai1> userName <ai2> Serial (20) Date & Time Variable characters (255) Variable characters (255) Variable characters (255) Date & Time Variable characters (255) <M> <M> <M>

<M>

Figura 88. Diagrama Entidad-Relacin (Base de Datos)

221

7.8.22.2.

Modelo Fsico
factura id pl a_i d cl i _i d descri pci on estado fechaEm i si on fechaM axPAgo form aDePago num eroPl anes subT otal val orIva val orT otal val orUni tari o cl i entePropi etari o_i d i nt(20) i nt(20) i nt(20) varchar(255) varchar(255) date date varchar(255) i nt varchar(255) varchar(255) varchar(255) varchar(255) bi gi nt <pk> <fk2> <fk1>

<ak>

FK_T IENE_ASIGNADAS

cl i ente id apel l i do cedul a cel ul ar di recci on em ai l fechaInstal aci on i pAsi gnada l astAccessOn nom bre num eroEqui posInstal ados password pl anEl egi do rol e sugerenci aCl ave tecni coResponsabl e tel efono tem pLastAccesOn ti poPago ti poServi ci o usernam e i nt(20) varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) date varchar(255) dateti m e varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) varchar(255) dateti m e varchar(255) varchar(255) varchar(255) <pk> <ak1> FK_SE_ASOCIA

<ak2> <ak4>

pl annettpl us id costPl ai n descri pti on pl anNam e rel easeDate i nt(20) doubl e varchar(255) varchar(255) date <pk>

<ak>

<ak3>

banner id estado nam e url Enl ace url Im agen i nt(20) ti nyi nt varchar(255) text text <pk> <ak>

adm i ni strador id LastAccessOn em ai l password rol e tem pLastAccesOn userNam e i nt(20) dateti m e varchar(255) varchar(255) varchar(255) dateti m e varchar(255) <pk> <ak1>

downl oad id descri pci on nam e url Downl oad i nt(20) text varchar(255) varchar(255) <pk> <ak>

<ak2>

arti cul o id por_i d m en_i d autor conteni do descri pci on fechaCreaci on nom bre i nt(20) i nt(20) i nt(20) varchar(255) text varchar(255) date varchar(255) <pk> <fk2> <fk1>

<ak>

FK_T IENE_ASOCIADO FK_T IENE_ASOCIADO FK_SE_ASOCIA FK_SE_ASOCIA

m enui tem id m en_i d art_i d arti cul oVi ncul ado descri pci on nom bre orden m enuPropi etari o_m i _i d i nt(20) i nt(20) i nt(20) varchar(255) varchar(255) varchar(255) i nt bi gi nt <pk> <fk1> <fk2>

portada id art_i d actual FrontNam e di scri m i nator i nt(20) i nt(20) varchar(255) varchar(255) <pk> <fk>

<ak1> <ak2>

FK_POSEE

m enu id descri pci on enabl e nom bre orden i nt(20) text ti nyi nt varchar(255) i nt <pk>

<ak>

Figura 89. Modelo Fsico (Base de Datos)

222

7.9. Plan de Pruebas de Depuracin 7.9.1. Introduccin El presente documento tiene como objetivo describir las pruebas a las que se debe someter la plataforma en sus diferentes fases de desarrollo con el fin de cumplir con los requerimientos establecidos en el presente proyecto de tesis.

Se describen las tcnicas manuales y automticas de comprobacin de errores que se van a ejecutar sobre la Plataforma as como los responsables de cada prueba.

Igualmente se establecen los mtodos de comunicacin entre los desarrolladores y los encargados de llevar a cabo las pruebas y los documentos donde deben quedar reflejados los resultados.

Se pretende que el proceso del plan de pruebas forme parte del desarrollo en s de manera que la mayora de mdulos desarrollados sean probados una vez codificados, sin necesidad de esperar al final del proyecto. El desarrollo del proyecto, basado en metodologa ICONIX, por su naturaleza itertiva e incremental permite la frecuente generacin de pequeas soluciones o componentes de software la mayora de los cuales son testeables de forma independiente. Este tipo de proyectos permite a los desarrolladores recibir un feedback rpido por parte del equipo de testing u otros desarrolladores de manera que los errores no se hereden ni se magnifiquen en siguientes versiones cuando el volumen de cdigo es mayor. 7.9.2. Objetos a ser Evaluados

Se evaluar el cumplimiento de los requerimientos establecidos en el apartado 7.2 (Determinacin de Requerimientos) de la presente tesis en los siguientes trminos: Robustez: Se llevarn a cabo las pruebas necesarias para comprobar que la Plataforma es capaz de manejar todas las situaciones a las que debe hacer Frente.

223

Usabilidad: Es preciso comprobar la facilidad de uso de la Plataforma en reas como navegabilidad o la rapidez. Interfaces de usuario y correccin: Se comprobar la visualizacin de las pginas en los entornos establecidos en el apartado 7.2. Se verificar la ortografa y la gramtica de las diferentes paginas del sistema, finalmente se evaluar la claridad de los mensajes presentados al usuario. El objetivo en este punto es asegurar que el usuario puede visualizar la plataforma de una forma correcta y entienda claramente lo que debe realizar para interactuar con la misma. Ser necesario llevar a cabo pruebas tanto a nivel de la ejecucin de la Plataforma como de anlisis de las funcionalidades de cada una de los componentes de software. 7.9.3. Descripcin del Juego de Pruebas Se van a utilizar diferentes tcnicas para llevar a cabo las comprobaciones pertinentes. A continuacin se describen los diferentes tipos de procesos: Clasificacin de pruebas segn la tcnica utilizada: Pruebas Manuales: Las pruebas manuales se basan en la instalacin de la Plataforma o una parte funcional de la misma en un entorno y la comprobacin del correcto funcionamiento siguiendo unos guiones establecidos. Cabe resaltar que debido a la variedad de entradas que puede tener la aplicacin ser preciso un gran nmero de pruebas de este tipo las cuales pretenden confirmar los requisitos propuestos en cuanto la calidad de la aplicacin y aportan datos empricos de los lmites de la misma. Para poder ejecutar estas pruebas es preciso que al menos sea posible ejecutar una de las funcionalidades bsicas de la Plataforma. Pruebas de Caja Negra: Las pruebas de caja negra se basan en la comprobacin de la correcta salida de cada componente de la aplicacin en base a determinadas entradas.

224

Clasificacin de pruebas segn la finalidad: Pruebas unitarias: Se llevarn a cabo pruebas unitarias sobre cada clase, sobre la marcha del proceso de codificacin se verificara la correcta respuesta de los mtodos en base a situaciones propuestas. En este caso no es preciso conocer la estructura interna del cdigo sino la entrada y salida esperada de cada clase. Pruebas de sistema: Tienen como objetivo comprobar el funcionamiento correcto del sistema en situaciones anormales. Este tipo de pruebas incluyen entradas de datos no vlidos o situaciones de recursos inestables que puedan generar un funcionamiento errneo de la Plataforma. Tienen como meta la verificacin de que la solucin de software cumple los requisitos establecidos en su especificacin. Segn los objetivos requeridos, se determinarn distintos tipos de pruebas mediante las cuales tambin se permitira comprobar el funcionamiento correcto del sistema en situaciones anormales. Este tipo de pruebas incluyen entradas de datos no vlidos o situaciones de recursos inestables que puedan generar un funcionamiento errneo de la aplicacin. Pruebas de aceptacin.- Las pruebas de aceptacin se basan en la comprobacin por parte del los directivos de la empresa Nettplus de que la plataforma desarrollada cumple con sus expectativas. Se harn efectivas durante la realizacin del Plan de validacin del presente proyecto, en donde los usuarios de la plataforma luego de interactuar con la misma en un tiempo razonable, darn a conocer al equipo de desarrollo sus inquietudes o errores para que sean corregidos o rediseados. 7.9.4. Criterios de Inicio y Fin de Pruebas Inicio de Prueba Como se ha comentado cada tipo de prueba se realiza sobre una parte del cdigo. As pues, si bien las pruebas de caja negra se llevarn a cabo al finalizar cada una de las clases del sistema, las pruebas Manuales se realizarn al acabar la codificacin de los componentes de software que implemente una funcionalidad que agrupe una serie de clases con un mismo objetivo. Un componente de software se da por finalizado cuando

225

se han implementado las funcionalidades esperadas y el cdigo que lo compone ha superado las pruebas de caja negra.

Planificacin: Pruebas De Caja Negra Se llevan a cabo al da siguiente de la codificacin de una clase. Tabla 3. Planificacin de Pruebas Desarrollo de la prueba (El desarrollo de los procesos de pruebas es tpicamente iterativo: Los testers configuran el cdigo necesario y llevan a cabo la prueba. Los testers informan de la no conformidad del resultado esperado. Indicando el tipo de defecto encontrado y todos los detalles necesarios para facilitar la comprensin del defecto el cual no ser asignado al desarrollador directamente por los testers, sino que el responsable de la fase de pruebas se encargar de realizar las asignaciones oportunas, pudiendo indicar la fecha en la que el defecto debera estar resuelto. El desarrollador realizar los cambios e informa la finalizacin del mismo. Los testers volvern a realizar la prueba. Si el defecto ha sido realmente corregido emiten el respectivo informe al responsable de la fase de pruebas. Fin de la prueba (El proceso se da por finalizado en dos casos) La prueba satisface el resultado esperado propuesto, que en cada caso son: o Pruebas de caja negra. La salida de la clase cumple con las especificaciones de la misma. o Pruebas manuales. Se cumplen los resultados esperados definidos en el guin. o Desarrolladores y testers concluyen que el requisito propuesto o la respuesta esperada de una prueba es inviable. En tal caso se informar al responsable la situacin para la toma de decisin final. Duracin media 2 das

226

7.9.5. Planificacin de los Juegos de Pruebas Pruebas sobre clases (Caja Negra) Una vez finalizada la codificacin de una clase se llevar a cabo una revisin del cdigo y posteriormente las pruebas unitarias pertinentes. La codificacin, la revisin y las pruebas de integracin y aceptacin sern realizadas por personas diferentes. Pruebas Manuales (Integracin y sistema) Agruparemos las pruebas manuales por componentes de software de tal forma que se facilite el proceso de validacin de la correcta integracin de clases con un objetivo comn. A continuacin se muestran fechas en las que se llevarn a cabo las pruebas. Antes de realizar una prueba sobre un componente de software, todas las clases que lo componen deben hacer superado las pruebas unitarias pertinentes. Pruebas de aceptacin El resultado de las pruebas se reflejar en los informes entregables del plan de validaciones de la presente tesis. REPONSABILIDADES CARGO MANUAL FUNCIONES Dar de alta referentes a las pruebas y asignar responsables. Asegurar que las pruebas se llevan a cabo en las fechas establecidas. Responsable plan de pruebas Asegurar las herramientas necesarias para la comunicacin entre los NOMBRE

desarrolladores del proyecto y el personal encargado de las pruebas Comprobar que las diferentes pruebas establecidas finalmente cumplen con la respuesta esperada.

227

Dar de alta referentes a las pruebas y asignar responsables. Asegurar que las pruebas se llevan a cabo en las fechas establecidas. Asegurar las herramientas necesarias para la comunicacin entre los

desarrolladores del proyecto y el personal encargado de las pruebas. Comprobar que las diferentes pruebas KATTY TAPIA establecidas finalmente cumplen con la respuesta esperada. Desarrollador responsable de las modificaciones correcciones y Encargado de recibir los informes de pruebas, analizarlos y aportar FERNANDO DAVILA

soluciones. Una vez implantadas las soluciones se llevarn de nuevo a cabo las pruebas con el fin de comprobar que la respuesta es la esperada. Tienen la funcin de llevar a cabo las pruebas manuales establecidos informes siguiendo e los

KATTY TAPIA FERNANDO DAVILA

Tester Internos

guiones mediante

informar a los

desarrolladores. Son los encargados de realizar las pruebas de caja negra. Deben tener Desarrolladores externos experiencia en proyectos de software, no deben haber participado en la creacin del cdigo analizado. Personal y clientes de Nettplus

ING. MANUEL CORDOVA CRISTIAN NARVAEZ GALO ABAD

Destinados a la pruebas de aceptacin Personal y clientes cuyo detalle se puede visualizar en el de Nettplus

228

plan de validacin Tabla 4. Tabla de Responsabilidades para la Realizacin de Pruebas

7.9.6. Definicin Clases de Equivalencia Casos de Prueba Una clase de equivalencia representa un mtodo de prueba de caja negra, un conjunto de estados vlidos o no vlidos para condiciones de entrada. Tpicamente, una condicin de entrada es un valor numrico especfico, un rango de valores, un conjunto de valores relacionados o una condicin lgica. Las clases de equivalencia son identificadas tomando cada condicin de entrada (generalmente una oracin o una frase en la especificacin) y repartindola en dos o ms grupos. Las clases de equivalencia derivadas para esta plataforma. AUTENTIFICAR USUARIO N Caso Nombre Usuario CP0001 contrasea valida Nombre de Usuario Valido CP0003 Mensaje: Usuario o Error contrasea incorrectos CP0002 Mensaje: Usuario o Error contrasea incorrectos Mensaje: Usuario o Error contrasea incorrectos CP0004 Nombre de Contrasea Mensaje: Usuario o Error usuario valido CP0005 no valida contrasea incorrectos superado superado superado superado Contrasea Resultado Estado

Nombre de Contrasea Mensaje: Usuario o Error usuario valido no valida contrasea incorrectos superado

229

CP0006

Nombre de Contrasea Mensaje: Usuario o Error usuario valido no no valida contrasea incorrectos superado

Tabla 5. Tabla de Clase de Equivalencia Autentificar Usuario ADMINISTRAR MENUS N Caso CP0007 Nombre Men Resultado Estado

Mensaje: Ingrese los Error superado datos requeridos en los campos

CP0008

Nombre de men Mensaje: ya registrado Men ya registrado en el sistema

Error superado

Tabla 6. Tabla de Clase de Equivalencia Administrar Mens ADMINISTRAR MENUITEMS N Caso Men Propietario CP0009 Nombre Men tem Cualquier nombre Articulo Vinculado Cualquier Mensaje: nombre de Ingrese artculos creados los datos Error superado Resultado Estado

requeridos en campos los

CP0010

Cualquier nombre

Mensaje: Ingrese los datos

Error superado

requeridos en campos los

230

CP0011

Nombre men valido

Nombre men

Cualquier

Mensaje: MenItem ya registrado en sistema el

Error superado

tem nombre de creados

previamente artculos creado

Tabla 7. Tabla de Clase de Equivalencia Administrar MenuItems ADMINISTRAR ARTICULOS N Caso Nombre Articulo CP0012 Contenido del Resultado articulo Cualquier texto contenido Nombre de artculo valido Nombre Cualquier de Articulo registrado sistema Tabla 8. Tabla de Clase de Equivalencia Administrar Artculos ADMINISTRAR BANNERS PLUCITARIOS N Caso Nombre Banner CP0015 Nombre de banner valido Imagen asignada Mensaje: Ingrese Error los datos superado Resultado Estado en ya el contenido Mensaje: Ingrese Error de los campos CP0013 Mensaje: Ingrese Error los datos superado datos superado Estado

requeridos en los

requeridos en los campos

CP0014

Mensaje:

Error superado

de articulo texto ya registrado

requeridos en los

231

campos Tabla 9. Clase de Equivalencia Administrar Banners Publicitarios ADMINISTRAR PLANES DE INTERNET N Caso Nombre Plan CP0016 costo valor Mensaje: numrico Nombre de valido CP0018 Nombre registrado de plan ya numrico Plan ya registrado en el sistema Tabla 10. Tabla de Clase de Equivalencia Administrar Planes de Internet Valor Ingrese Error Costo plan Resultado Estado

los datos requeridos superado en los campos Ingrese Error

CP0017

no Mensaje:

plan numrico

los datos requeridos superado en los campos

costo valor Mensaje:

Error superado

232

ADMINISTRAR CUENTA ADMINISTRATIVA N Caso Nombre Administrador CP0019 email valido Nombre valido CP0021 Nombre de email Cadena caracteres Administrador valido ya registrado CP0022 Nombre valido CP0023 Nombre valido de email ya Cadena caracteres Administrador registrado de email no Cadena caracteres de Cadena caracteres Cadena caracteres La misma contrasea Mensaje: anteriormente ingresada CP0020 campos Ingrese e un Error superado el Ingrese los Error superado E-mail Contrasea Reingreso de contrasea Resultado Estado

datos requeridos en los

La misma contrasea Mensaje: anteriormente ingresada valor costo

Administrador

numrico

La misma contrasea Mensaje: anteriormente ingresada Usuario ya registrado en el sistema La misma contrasea Mensaje: anteriormente ingresada Email no valido La misma contrasea Mensaje: anteriormente ingresada Email ya registrado en el sistema

Error superado

Error superado

Administrador valido

Error superado

233

CP0024

Nombre valido

de email

La misma contrasea Mensaje: anteriormente ingresada campos Mensaje:

Ingrese

los Error superado

Administrador valido Nombre valido CP0026 Nombre valido de email Cadena caracteres de email Cadena caracteres

datos requeridos en los Ingrese los Error superado

CP0025

Administrador valido

datos requeridos en los campos Cualquier caracteres Cadena Mensaje: Contraseas Error superado ingresadas no coinciden

Administrador valido

Tabla 11. Tabla de Clase de Equivalencia Administrar Cuenta Administrativa

234

ADMINISTRAR CUENTAS CLIENTES, REGISTRAR CLIENTE, ADMINISTRAR CUENTA CLIENTE N Caso Nombre de Usuario CP0027 Nombre de usuario disponible Nombre Nombres apellidos Ip valida Cedula valida Cadena Nombres y Apellidos email Ip Cedula valida Cadena La misma Mensaje: Ingrese datos requeridos en los campos CP0028 La misma Mensaje: Ingrese datos requeridos en los campos CP0029 Nombre Nombres email valido apellidos Cedula valida Cadena La misma Mensaje: Ingrese datos requeridos en los campos Error los superado Error los superado Error los superado valido valida E-mail Ip Cedula Contrase a Reingreso de contrasea Resultado Estado

caracteres contrasea anteriormente ingresada

de usuario y disponible

caracteres contrasea anteriormente ingresada

de usuario y disponible

caracteres contrasea anteriormente ingresada

235

CP0030

Nombre

Nombres email apellidos

Ip

Cadena

La

misma Mensaje: Ingrese datos requeridos en los campos

Error los superado

de usuario y disponible Nombre

valido valida

caracteres contrasea anteriormente ingresada

CP0031

Nombres email apellidos

Ip

Cedula valida

La

misma Mensaje: Ingrese datos requeridos en los campos

Error los superado

de usuario y disponible Nombre

valido valida

contrasea anteriormente ingresada

CP0032

Nombres email apellidos

Ip

Cedula valida

Cadena caracteres

Mensaje: Ingrese datos requeridos en los campos

Error los superado

de usuario y disponible

valido valida

CP0033

Nombres email y apellidos

Ip

Cedula valida

Cadena

La

misma Mensaje: Ingrese datos requeridos en los campos

Error los superado

valido valida

caracteres contrasea anteriormente ingresada

236

CP0034

Nombre

Nombres email

Ip

Cedula valida

Cadena

La

misma Mensaje: Usuario registrado

Error ya superado

de usuario y disponible CP0035 Nombre apellidos

valido valida

caracteres contrasea anteriormente ingresada La

Nombres email ya registr ado Nombres email apellidos Nombres email apellidos Nombres email apellidos apellidos

Ip valida

Cedula valida

Cadena

misma Mensaje: E- Error mail registrado ya superado

de usuario y disponible CP0036 Nombre

caracteres contrasea anteriormente ingresada La

Ip ya Cedula valida ada Ip Cedula registrada

Cadena ya Cadena

misma Mensaje: Ip Error ya registrada superado

de usuario y disponible CP0037 Nombre

valido regsitr

caracteres contrasea anteriormente ingresada La

misma Mensaje: Numero cedula registrado Mensaje: de Contraseas ingresadas no coinciden

Error de superado ya

de usuario y disponible CP0038 Nombre

valido valida

caracteres contrasea anteriormente ingresada Cualquier caracteres

Ip

Cedula registrada

ya Cadena

Error superado

de usuario y disponible

valido valida

caracteres cadena

237

CP0039

Nombre

Nombres email con estruct ura no valida Nombres email apellidos Nombres email apellidos apellidos

Ip valida

Cedula registrada

ya Cadena

La

misma Mensaje: Email valido

Error no superado

de usuario y disponible Nombre

caracteres contrasea anteriormente ingresada

CP0040

Ip con Cedula registrada

ya Cadena

La

misma Mensaje: ip Error no valido superado

de usuario y disponible CP0041 Nombre

valido estruct ura no valida Ip

caracteres contrasea anteriormente ingresada La

Cedula ecuatoriana con estructura no valida

Cadena

misma Mensaje: Numero cedula ingresado no es vlido

Error de superado

de usuario y disponible

valido valida

caracteres contrasea anteriormente ingresada

Tabla 12. Tabla de Clase de Equivalencia Administrar Cuentas Clientes, Registrar Cliente, Administrar Cuenta Cliente

238

ADMINISTRAR DESCARGAS N Caso CP0042 Nombre Descarga Nombre descarga valido url descraga Resultado Mensaje: Estado Error

de -

Ingrese los superado datos requeridos en campos url descarga los

CP0043

Mensaje:

Error

Ingrese los superado datos requeridos en campos los

Tabla 13. Tabla de Clase de Equivalencia Administrar Descargas

239

7.10. Pruebas de Validacin Las pruebas de validacin en la ingeniera de software es el proceso de revisin en el que se verifica que la plataforma empresarial producida cumpla con las especificaciones y el cometido. Es normalmente una parte del proceso de pruebas de software de un proyecto, que tambin utiliza tcnicas tales como evaluaciones e inspecciones, a travs de las cuales se descubre los errores presentados y se realiza de manera inmediata las correcciones respectivas.

Se trata de evaluar el sistema o parte de este durante o al final del desarrollo conjuntamente con el usuario final con la finalidad de determinar si satisface los requisitos inciales.

Estas pruebas fueron realizadas al Ing. Oscar Jimnez y a la Ing. Katherine Jimnez Gerente General y Gerente Tcnica de la Empresa Nettpluss de la ciudad de Loja respectivamente; de igual manera a los clientes de la mencionada empresa. A continuacin se detalla el esquema de las mencionadas pruebas: Planificacin de las pruebas de Acceso y Manipulacin de la Plataforma Empresarial Nettpluss FECHA Alcance 10 de Julio del 2010 BACK-END DE PLATAFORMA Atentificar Usuario Administrar Menu y MenItems Crear Menu Editar Menu Eliminar Menu Visualizar Menu Buscar Menu Agregar MenuItem Modificar MenuItem Eliminar MenuItem Visualizar MenuItem Buscar MenuItem Administrar Articulo Crear Articulo Editar Articulo Eliminar Articulo

Componentes de Software a ser probados

240

Visualizar Articulo Buscar Articulo Administrar Imgenes Insertar Imagen en un Articulo Asignar Imagen a un Banner Administrar Banners Publicitarios Crear Banner Editar Banner Eliminar Banner Visualizar Banner Buscar Banner Administrar Enlaces Asignar Enlace a texto dentro de un Articulo Asignar Enlace a Imagen dentro de un Articulo Administrar Cuentas de Clientes y Facturas Crear Cliente Editar Cliente Eliminar Cliente Visualizar Cliente Buscar Cliente Ingresar Hoja de Trabajo Asignar Factura Modificar Factura Visualizar Factura Administrar Planes de Internet Crear Plan Editar Plan Eliminar Plan Visualizar Plan Buscar Plan Administrar Cuenta Administrativa Crear Cuenta Administrativa Editar Cuenta Administrativa Eliminar Cuenta Administrativa Visualizar Cuenta Administrativa Buscar Cuenta Administrativa Administrar Descargas Crear Descarga Editar Descarga Eliminar Descarga Visualizar Descarga Buscar Descarga Front-End de Plataforma Atentificar Usuario

241

Interactuar con los Contenidos del Front-End Consultar Facturas Registrar Cliente Visualizar Descargas Realizar Test de velocidad Generar Informe Manejo de la Plataforma Empresarial por el Parte de: Ing. Oscar Jimnez(Gerente General Estrategia Nettplus) Ing. Katherine Jimnez (Gerente TecnicoNettplus) 8 Ordenadores. Red de Datos Interna de la Empresa Recursos Servidor JBoss AS 5.1 Plataforma Empresarial Nettpluss Del 10 de Julio del 2010 al 20 de Julio del Calendario 2010 Diego Fernando Dvila Tinizaray Responsables Katty Lucia Tapia Torres Tabla 14. Tabla de Planificacin de Pruebas de Validacin

Luego de haber cumplido con el periodo de pruebas se procedi a realizar la interpretacin de los datos obtenidos de las encuestas realizadas tanto al Ing. Oscar Jimnez y a la Ing. Katherine Jimnez de igual manera a los clientes de la Empresa Nettplus de la ciudad de Loja, los resultados son los siguientes:

242

Encuesta realizada al Ing. Oscar Jimnez Empresa Nettplus. 1. Acceso

y la Ing. Katherine Jimnez de la

1.1 Se presentaron inconvenientes al ingresar al Front-End de la plataforma? Si ( ) OPCIONES SI NO No ( ) N ENCUESTADOS 0 2 PORCENTAJE 0% 100%

Tabla 15. Tabla de Interpretacin de datos Ingreso al Front_End

Figura 90. Grfico Estadstico Accesibilidad Interpretacin de Datos

El 100% de los encuestados considera que no se present ningn problema al ingresar a Front-End de la Plataforma Empresarial. 1.2 Cree usted que el ingreso hacia el Back-End de la plataforma a travs de su usuario y contrasea se realizo de forma segura? Si ( ) OPCIONES SI NO No ( ) N ENCUESTADOS 2 0 PORCENTAJE 100% 0%

Tabla 16. Tabla de Interpretacin de datos Ingresar al Back_End

243

Figura 91. Grfico Estadstico Autentificar Usuario Interpretacin de datos

El 100% de los encuestados considera que ingreso de forma segura a la plataforma a traves de su usuario y contrasea.

2.

Funcionalidad

2.1 Marque con una X los procesos que usted considere se realizaron de forma correcta o incorrecta, durante el tiempo de manipulacin de la plataforma

Administrar Men y MenuItems Crear Men Editar Men Eliminar Men Visualizar Men Buscar Men Agregar MenuItem Modificar MenuItem Eliminar MenuItem Visualizar Menuitem Buscar MenuItem Administrar Articulo Crear Articulo Si ( ) No ( ) Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) No ( ) No ( ) No ( ) No ( ) No ( ) No ( ) No ( ) No ( ) No ( ) No ( )

244

Editar Articulo Eliminar Articulo Visualizar Articulo Buscar Articulo Administrar Imgenes Insertar Imagen en un Articulo Asignar Imagen a un Banner Administrar Banners Publicitarios Crear Banner Editar Banner Eliminar Banner Visualizar Banner Buscar Banner Administrar Enlaces Asignar Enlace a texto dentro de un Articulo Asignar Enlace a Imagen dentro de un Articulo Administrar Cuentas de Clientes y Facturas Crear Cliente Editar Cliente Eliminar Cliente Visualizar Cliente Buscar Cliente Ingresar Hoja de Trabajo Asignar Factura Modificar Factura Visualizar Factura Administrar Planes de Internet

Si ( ) Si ( ) Si ( ) Si ( )

No ( ) No ( ) No ( ) No ( )

Si ( ) Si ( )

No ( ) No ( )

Si ( ) Si ( ) Si ( ) Si ( ) Si ( )

No ( ) No ( ) No ( ) No ( ) No ( )

Si ( ) Si ( )

No ( ) No ( )

Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) Si ( )

No ( ) No ( ) No ( ) No ( ) No ( ) No ( ) No ( ) No ( ) No ( )

245

Crear Plan Editar Plan Eliminar Plan Visualizar Plan Buscar Plan Administrar Cuenta Administrativa Crear Cuenta Administrativa Editar Cuenta Administrativa Eliminar Cuenta Administrativa Visualizar Cuenta Administrativa Buscar Cuenta Administrativa Administrar Descargas Crear Descarga Editar Descarga Eliminar Descarga Visualizar Descarga Buscar Descarga COMPONENTE Crear Men Editar Men Eliminar Men Visualizar Men Buscar Men Agregar MenuItem Modificar MenuItem Eliminar MenuItem Visualizar Menuitem Buscar MenuItem Crear Articulo SI 2 2 2 2 2 2 2 2 2 2 2 NO 0 0 0 0 0 0 0 0 0 0 0

Si ( ) Si ( ) Si ( ) Si ( ) Si ( )

No ( ) No ( ) No ( ) No ( ) No ( )

Si ( ) Si ( ) Si ( ) Si ( ) Si ( )

No ( ) No ( ) No ( ) No ( ) No ( )

Si ( ) Si ( ) Si ( ) Si ( ) Si ( )

No ( ) No ( ) No ( ) No ( ) No ( )

PORCENTAJE 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100%

246

Editar Articulo Eliminar Articulo Visualizar Articulo Buscar Articulo Insertar Imagen en un Articulo Asignar Imagen a un Banner Crear Banner Editar Banner Eliminar Banner Visualizar Banner Buscar Banner Asignar Enlace a texto dentro de un Articulo Asignar Enlace a Imagen dentro de un Articulo Crear Cliente Editar Cliente Eliminar Cliente Visualizar Cliente Buscar Cliente Ingresar Hoja de Trabajo Asignar Factura Modificar Factura Visualizar Factura Crear Plan Editar Plan Eliminar Plan Visualizar Plan Buscar Plan Crear Cuenta Administrativa Editar Cuenta Administrativa Eliminar Cuenta Administrativa Visualizar Cuenta

2 2 2 2 2 2 2 2 2 2 2 2

0 0 0 0 0 0 0 0 0 0 0

100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100%

0 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

100%

100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100%

247

Administrativa Buscar Cuenta Administrativa Crear Descarga Editar Descarga Eliminar Descarga Visualizar Descarga Buscar Descarga

2 2 2 2 2 2

0 0 0 0 0 0

100% 100% 100% 100% 100% 100%

Tabla 17. Tabla de Interpretacin de datos Administracin de Contenidos

Figura 92. Grfico Estadstico Funcionalidad 1A

Figura 93. Grfico Estadstico Funcionalidad 1B

Figura 94. Grfico Estadstico Funcionalidad 1C

248

Figura 95. Grfico Estadstico Funcionalidad 1D

Figura 96. Grfico Estadstico Funcionalidad 1E Iterpretacion de datos

El 100% de los encuestados considera que realizaron de forma correcta cada uno de los procesos que realizaron en la plataforma. 2.2 Cree usted que el Back-End Administrativo permite administrar la plataforma de una forma eficiente, cumpliendo con sus expectativas? Si ( ) OPCIONES SI NO No ( ) N ENCUESTADOS 2 0 PORCENTAJE 100% 0%

Tabla 18. Tabla de Interpretacin de datos Usabilidad del Back_End

249

Figura 97. Grfico Estadstico Funcionalidad Back-End Interpretacin de datos El 100% de los encuestados considera que el Back-End de la plataforma permite administrar todos los proceso eficientemente. 3. DISEO Y PRESENTACION 3.1 Considera usted que la interfaz grfica de la Plataforma Empresarial (BackEnd, Front-End) es amigable y de fcil uso? OPCIONES SI NO N ENCUESTADOS 2 0 PORCENTAJE 100% 0%

Tabla 19. Tabla de Interpretacin de datos Amigabilidad de Interfaz Grfica

Figura 98. Grfico Estadstico Funcionalidad Interfaz Grfica Interpretacin de datos

El 100% de los encuestados considera que la interfaz grfica de la Plataforma Empresarial es amigable y de fcil uso.

250

Encuesta realizada a los Clientes de la Empresa Nettplus 1. ACCESO 1.1 Se presentaron inconvenientes al ingresar al Front-End de la plataforma? Si ( ) OPCIONES SI NO No ( ) N ENCUESTADOS 0 5 PORCENTAJE 0% 100%

Tabla 20. Tabla de Interpretacin de datos Ingreso al Front_End Cliente

Figura 99. Grfico Estadstico Funcin Accesibilidad Interpretacin de datos

El 100% de los encuestados considera que no tuvieron ningun problema al momento de ingresar al Front-End de la Plataforma Empresarial. 1.2 Ingreso usted de forma segura a su cuenta de cliente a travs de su usuario y contrasea con el que se registro previamente Si ( ) OPCIONES SI NO No ( ) N ENCUESTADOS 5 0 PORCENTAJE 100% 0%

Tabla 21. Tabla de Interpretacin de datos Ingreso a Cuenta Cliente

251

Figura 100. Grfico Estadstico Autentificar Usuario Interpretacin de datos

El 100% de los encuestados considera que ingresaron de forma segura a la plataforma a traves de sus usuario y contrasea, registrados con anterioridad en la plataforma. 2. FUNCIONALIDAD 2.1 Considera usted que se registro exitosamente en la plataforma? Si ( ) OPCIONES SI NO No ( ) N ENCUESTADOS 5 0 PORCENTAJE 100% 0%

Tabla 22. Tabla de Interpretacin de datos Registrarse en la Plataforma

Figura 101. Grfico Estadstico Registro de Usuarios

252

Interpretacin de datos

El 100% de los encuestados considera que al momento de registrarse en la plataforma lo hicieron de forma exitosa. 2.2 Se le presento algn inconveniente al momento de modificar su cuenta de cliente (datos personales)? Si ( ) OPCIONES SI NO No () N ENCUESTADOS 0 5 PORCENTAJE 0% 100%

Tabla 23. Tabla de Interpretacin de datos Modificar Cuenta Cliente

Figura 102. Grfico Estadstico Administrar Cuenta Cliente Interpretacin de Datos

El 100% de los encuestados considera que al momento de modificar su cuenta de cliente no se les presento ningun inconveniente. 2.3 Se le presento algn inconveniente al momento de Consultar sus Facturas? Si ( ) OPCIONES SI NO No ( ) N ENCUESTADOS 0 5 PORCENTAJE 0% 100%

Tabla 24. Tabla de Interpretacin de datos Consulta de Facturas

253

Figura 103. Grfico Estadstico Consulta de Facturas Interpretacin de datos

El 100% de los encuestados considera que no tuvieron inconvenientes al momento de consultar sus facturas. 2.4 Pudo realizar de forma exitosa el Test de Velocidad de conexin a Internet e imprimir el correspondiente Informe desde la plataforma? Si ( ) OPCIONES SI NO No ( ) N ENCUESTADOS 5 0 PORCENTAJE 100% 0%

Tabla 25. Tabla de Interpretacin de datos Testeador de Velocidad

Figura 104. Grfico Estadstico Test de Velocidad

254

Interpretacion de datos

El 100% de los encuestados considera que ejecutaron de forma exitosa el Test de Velocidad, de igual manera lograron imprimir el informe del mismo sin ninguna novedad. 2.5 Durante el periodo de manipulacin de la Plataforma Empresarial Nettplus, se le presentaron inconvenientes al momento de ingresar a?:

Men Principal Descargas Enlaces en Banner Publicitarios Enlaces en texto de Artculos Enlaces en Imgenes en Artculos COMPONENTE Men Principal Descargas Enlaces en Banner Publicitarios Enlaces en texto de Artculos Enlaces en Imgenes en Artculos Men Principal Descargas Enlaces en Banner Publicitarios Enlaces en texto de Artculos 2 2 0 0 2 0 0 SI 0 0

Si ( ) Si ( ) Si ( ) Si ( ) Si ( ) NO 5 5 5 5 5 5 0 0 0

No ( ) No ( ) No ( ) No ( ) No ( ) PORCENTANJE 100% 100% 100% 100% 100% 100% 100% 100% 100%

Tabla 26. Tabla de Interpretacin de datos Manipulacin de la Plataforma

255

Figura 105. Grfico Estadstico Funcionalidad Plataforma Interpretacin de Datos El 100% de los encuestados considera que no tuvieron inconvenientes durante el perodo de manipulacin de la plataforma en ninguna de las opcines a las cuales ingresaron.

3. DISEO Y PRESENTACIN 3.1 Considera usted que las pantallas amigables y de fcil uso? Si ( ) OPCIONES SI NO No ( ) N ENCUESTADOS 5 0 PORCENTAJE 100% 0% de la Plataforma Empresarial son

Tabla 27. Tabla de Interpretacin de datos Amigabilidad de Pantallas

Figura 106. Grfico Estadstico Funcionalidad Front-End

256

Interpretacin de datos El 100% de los encuestados considera que todas las pantallas de la Plataforma Empresarial son aigables y de fcil uso.

257

8.

VALORACIN TCNICO-ECONMICA-AMBIENTAL

La plataforma ha sido desarrollada de manera satisfactoria debido a que los recursos hardware y software utilizados para el desarrollo de la misma han sido los suficientes. La adquisicin de materiales ha sido posible gracias a la inversin de los desarrolladores.

Las herramientas utilizadas para el desarrollo del software son de libre distribucin, por lo que la obtencin de los mismos no tuvo mayores complicaciones, ya que se encuentran disponibles en internet para cualquier persona.

A continuacin se detalla cada uno de los materiales utilizados: Recursos Humanos Recursos Humanos Cantidad Horas c/u Director de Tesis Desarrolladores TOTAL ---2 ----900 ----$3.00 ---$5400.00 $5400.00 Costo por Hora Costo Total

Tabla 28. Tabla Valoracin Tcnico-Econmica-Ambiental (Recurso Humano) Recursos Materiales. Recursos Materiales Resma de Papel Cartuchos de tinta. Internet/horas Flash Memory (1GB) Kingston. Cantidad 5 5 100 2 Costo Unitario $3.00 $10.00 $1.00 $7.00 Costo Total $15.00 $50.00 $100.00 $14.00

258

TOTAL

$179.00

Tabla 29. Tabla Valoracin Tcnico-Econmica-Ambiental (Recurso Material) Recursos Tcnicos. Recursos Tcnicos Cantidad Horas Hojas Costo hora Computadores Impresora TOTAL 2 1 900 2500 0.50 0.05 Hoja $450.00 $125.00 $575.00 Costo Total

Tabla 30. Tabla Valoracin Tcnico-Econmica-Ambiental (Recurso Tcnico) Recursos Tecnolgicos. Recursos Tecnolgicos NetBeans IDE 6.0 Costo Unitario Gratuito Sun Microsystems Eclipse $0.00 $0.00 Desarrollador Costo Total

Eclipse Gaminydes Gratuito 3.4 JSE 1.6 JEE 1.5 My SQL 5.0 PowerDesigner 11 Enterprise Architect 3.6 Open Office V.3.0 Grand Proyect Gratuito Gratuito Gratuito Gratuito Gratuito Gratuito Gratuito

Sun Microsystems Sun Microsystems Sun Microsystems Sybase Sparxs Systems

$0.00 $0.00 $0.00 $0.00 $0.00

Sun Microsystems

$0.00 $0.00

259

Linux Ubuntu 9.0.1 Gratuito TOTAL

Comunidad Ubuntu

$0.00 $0.00

Tabla 31. Tabla Valoracin Tcnico-Econmica-Ambiental (Recurso Tecnolgico) Resumen del Presupuesto Resumen del Presupuesto Recursos Humanos Recursos Materiales Recursos Tcnicos Recursos Tecnolgicos SUBTOTAL Imprevistos 10 % TOTAL Costo Total $5400.00 $179.00 $575.00 $0.00 $5994.00 $599.40 $6593.40

Tabla 32. Tabla de Resumen de Presupuesto

260

9. CONCLUSIONES

Luego de haber realizado el anlisis minucioso para el desarrollo del presente proyecto, podemos concluir que: El anlisis de la situacin actual de la empresa, nos permiti recopilar la informacin necesaria mediante tcnicas investigativas (entrevistas, encuestas y observacin directa), la cual luego de ser revisada y depurada en reuniones de trabajo junto con los directivos de la empresa sirvi como base para obtener los requerimientos definitivos para el desarrollo de la plataforma empresarial.

Los componente de software de administracin de conexin a internet y de carga y descarga de archivos desde el servidor, han permitido a los usuarios de la empresa testear correctamente el servicio provisto, y poder utilizar la documentacin y los utilitarios que la empresa ha puesto a disposicin de ellos.

Los componente de software de administracin de usuarios y administracin de facturas, han permitido a la empresa llevar un control de los clientes de la misma y un registro de las facturas que estos tienen con la empresa; adems ha permitido a los clientes crear y acceder de forma segura a una cuenta personal.

Los componentes de software de administracin de contenidos y de gestin de banners publicitarios, han permitido a la empresa poder actualizar de forma peridica los contenidos y publicidades dentro del sitio web, adems permite a los clientes poder visualizar y navegar por los contenidos del una manera adecuada.

La utilizacin de una metodologa de depuracin de errores ha permitido determinar, corregir, y prever los posibles errores de software en la plataforma.

Someter a la plataforma a pruebas de validacin conjuntamente con los usuarios ha permitido conocer, analizar y redisear cada uno de los componentes de software que conforman la misma logrando mayor amigabilidad en el diseo visual, y una funcionalidad acorde con las necesidades del cliente

La capacitacin y la entrega de los manuales de usuario, administrador y programador a los empleados de la empresa permiti a la empresa explotar al

261

mximo las caractersticas de su nueva plataforma, y brindar as un mejor servicio a sus clientes.

La utilizacin de frameworks del grupo JBoss, divisin de Red Hat (JBoss Seam, JBoss RichFaces, JBoss Hibernate, JBoss AS), proporcionaron una solucin adecuada para el desarrollo de la Plataforma Empresarial de la Empresa Nettplus, basada en la Plataforma JEE5, logrando una perfecta integracin, entre las especificaciones Java Server Faces (JSF), Enterprise Java Beans (EJB3) y Java Persistence API (JPA); potenciando la velocidad de desarrollo y la calidad de la misma.

262

10. RECOMENDACIONES

Para las conclusiones anteriormente mencionadas podemos recomendar que: Debemos realizar un anlisis minucioso de la situacin actual de la empresa con la finalidad de obtener los verdaderos requerimientos para el desarrollo de la plataforma, mismos que permitirn realizar un diseo e implementacin que satisfaga las necesidades informticas de la empresa. Es conveniente la utilizacin de tecnologas web maduras, como JEE5, mismas que nos permite la utilizacin de frameworks de alto nivel y muy potentes, como los de la familia JBOSS (Seam, Rich Faces e Hibernate), los cuales nos permiten desarrollar aplicaciones empresariales ms eficientes. Es conveniente la utilizacin de frameworks especializados en persistencia, como JBOSS Hibernate, los mismos que facilitan la comunicacin de las vistas con el modelo de datos. Es conveniente la utilizacin de CMS para la gestin de contenidos, los cuales facilitan, gestionar de forma adecuada los contenidos y las imgenes del sitio. Utilizar metodologas de depuracin de errores, las cuales permiten gestionar de una forma ordenada los errores lgicos y de programacin que potencialmente pudieran presentarse en la plataforma. Realizar pruebas de validacin de la Plataforma para de esta manera constatar el grado de satisfaccin de los usuarios de la misma. Se debe realizar un mantenimiento semestral de la plataforma, con la finalidad de garantizar el correcto funcionamiento de la misma y la integridad de los datos que manipula. Se recomienda el uso de las herramientas del grupo Red Hat (JBoss Seam, JBoss RichFaces, JBoss Hibernate, JBoss AS), las mismas que potencian la velocidad de desarrollo y la calidad en aplicaciones Web.

263

11. BIBLIOGRAFA PRIMARIAS: ALLEN Dan; Seam in Action; Manning Publications Co.; 2009 CUMMINS; Fred A; 2002, Enterprise Integration: Architecture for Enterprise Application and Systems Integration; John Wiley & Sons, 2002. JAMAE David; JOHNSON Peter ; JBoss in Action; Manning Publications Co; 2007. PANDA, Debu; RAHMAN, Reza; LANE, Derek; EJB 3 in Action; Manning Publications Co; 2007. ROSENBERG, Doug; 1999, Use Case Driven Object Modeling with UML: A Practical Approach, Addison Wesley, Reading, Massachusetts, 1999. RUH, William; 1993, Enterprise Integration: The Essential Guide to Integration Solutions, Addison Wesley, and Reading, Massachusetts 2004 TERCIARIAS: ADESIS-NETLIFE; Inc., 2007. Tecnologa adsl. [en lnea], Mjico, D.F, [ http://www.servicios-acceso-internet.com/], [Consulta: 14 de julio de 2009]. DDI - SOLUTIONS, C.A; 2006. Tecnologa web. [en lnea] ,Venezuela, Caracas, [ http://www.ddisolutions.com/tecnologia.php], [Consulta: 14 de julio de 2009]. JORDAN, Javier; 2008. Internet. [en lnea], Espaa, Madrid,

[http://www.ordenadores-y-portatiles.com/modelo-osi.html], [Consulta: 14 de julio de 2009]. KIOSKEA, inc.; 2009. Redes. [en lnea], Mjico, D.F,

[http://www.ddisolutions.com/tecnologia.php], [Consulta: 14 de julio de 2009]. OCHOA, Severo; 2006, La evolucin de las herramientas para la creacin y gestin de Portales Empresariales, [en lnea], Espaa, Madrid,

[http://www.montejava.es/articulo16.asp], [Consulta: 15 de julio de 2009].

264

PEREIRA,

Jorge;

2008.

Estrategias

TIC

empresariales.[en

lnea],

Espaa,Madrid,[http://www.deltaasesores.com/articulos/autoresinvitados/otros/3 838-estrategias-tic-empresariales], [Consulta: 27 de julio de 2009]. UNIVERSIDAD DE MANIZALES, Facultad de Ingeniera de Sistemas Y Telecomunicaciones; 2005, Estrategias TIC empresariales. [en lnea]

Colombia,[http://ingenieria.umanizales.edu.co/UserFiles/File/academia/pregrado /ist/Profundizacion%2520en%2520Desarrollo%2520Plataforma%252 Empresarial%2520III.pdf&sa=U&start=1&ei=5ThuSuyFCt6Ptgfb64GJDA&sig 2=rJoSbL0qbUxhe8ffD2zjVw&usg=AFQjCNGjZ1QZzCtJZStfv2iVAZWI9ynVw], [Consulta: 16 de julio de 2009]. WALES, Jimbo; 2009. File Transfer Protocol. [en lnea], Wikimedia Foundation, [http://es.wikipedia.org/wiki/File_Transfer_Protocol], [Consulta: 23 de julio de 2009]. WALES, Jimbo; 2009. Asymmetric Digital Subscriber Line. [en lnea], WikimediaFondation,[http://es.wikipedia.org/wiki/Asymmetric_Digital_Subscri ber_Line], [Consulta: 23 de julio de 2009]. WALES, Jimbo; 2009. Servicio_web. [en lnea], Wikimedia Foundation [http://es.wikipedia.org/wiki/Servicio_web], [Consulta: 23 de julio de 2009]. WALES, Jimbo; 2009. Java EE. [en lnea], Wikimedia Foundation [http://es.wikipedia.org/wiki/Java_EE], [Consulta: 23 de julio de 2009]. WALES, Jimbo; 2009. Sistema gestor de contenidos [en lnea],

WikimediaFoundation,[http://es.wikipedia.org/wiki/Sistema_de_gesti%C3%B3n _de_contenido], [Consulta: 23 de julio de 2009]. WALES, Jimbo; 2009. Banners [en lnea], Wikimedia Foundation

[http://es.wikipedia.org/wiki/Banner], [Consulta: 23 de julio de 2009].

265

12.

ANEXOS

S-ar putea să vă placă și