1
ESCUELA POLITÉCNICA NACIONAL
ESCUELA DE INGENIERÍA
SISTEMA DE COMPRA Y VENTA DE LIBROS CON TECNOLOGÍA SMART CLIENTE PARA EMPRESAS DISTRIBUIDORAS DE
LIBROS
PROYECTO PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENI ERO EN SISTEMAS INFORMÁTICOS Y DE COMPUTACIÓN
MIGUEL ADOLFO MÁRQUEZ VACAS [email protected]
SANDRA DEL ROCÍO PAREDES AYALA
DIRECTOR: ING. PAULVILCA [email protected]
QUITO, MARZO 2008
2
DECLARACIÓN
Nosotros, Miguel Adolfo Márquez Vacas y Sandra del Rocío Paredes Ayala,
declaramos bajo juramento que el trabajo aquí descrito es de nuestra autoría; que
no ha sido previamente presentada para ningún grado o calificación profesional; y,
que hemos consultado las referencias bibliográficas que se incluyen en este
documento.
A través de la presente declaración cedemos nuestros derechos de propiedad
intelectual correspondientes a este trabajo, a la Escuela Politécnica Nacional,
según lo establecido por la Ley de Propiedad Intelectual, por su Reglamento y por
la normatividad institucional vigente.
___________________________ __________________________
Miguel Márquez Sandra Paredes
3
CERTIFICACIÓN
Certifico que el presente trabajo fue desarrollado por Miguel Adolfo Márquez
Vacas y Sandra del Rocío Paredes Ayala, bajo mi supervisión.
Ing. Paúl Vilca
DIRECTOR DE PROYECTO
4
CONTENIDO
CAPITULO 1................................................................................................................................................... 1
1.1 AMBIENTE SMART CLIENT. ........................................................................................................... 10
1.1.1 Definición Smart Client. .......................................................................................................... 10 1.1.1.1 Aplicaciones Clientes Ricas o Rich Client Applications............................................................... 11 1.1.1.2 Aplicaciones Clientes Delgadas Thin Client Applications........................................................... 12
1.1.2 Características Smart Client ................................................................................................... 13 1.1.2.1 Usan los Recursos Locales:........................................................................................................... 14 1.1.2.2 Usan los Recursos de la Red ......................................................................................................... 15 1.1.2.3 Dan soporte a los usuarios ocasionalmente conectados................................................................. 16 1.1.2.4 Proveen Instalación y Actualización Inteligente ........................................................................... 17 1.1.2.5 Proveen adaptación a los dispositivos cliente................................................................................ 18
1.1.3 Arquitectura Smart Client........................................................................................................ 19 1.1.3.1 Caché............................................................................................................................................. 20 1.1.3.2 Configuración................................................................................................................................ 21 1.1.3.3 Acceso a datos............................................................................................................................... 22 1.1.3.4 Criptografía ................................................................................................................................... 22 1.1.3.5 Offline. .......................................................................................................................................... 23
1.2 TIPOS DE SMART CLIENT............................................................................................................... 26
1.2.1 Aplicaciones Smart Client Windows........................................................................................ 27
1.2.2 Aplicaciones Smart Client Office............................................................................................. 28
1.2.3 Visión General de las Aplicaciones Smart Client con Microsoft Office 2003. ....................... 31
1.2.4 Aplicaciones Smart Client Móviles.......................................................................................... 32
1.2.5 Desarrollando Aplicaciones Móviles Smart Client Orientadas a servicios Web .................... 33
1.2.6 .NET Compact Framework y Smart Client .............................................................................. 34
1.3 HERRAMIENTAS Y TECNOLOGÍAS SMART CLIENT. ........................................................................ 35
1.3.1 Tecnología Microsoft............................................................................................................... 35
1.3.2 Tecnología Java....................................................................................................................... 35
1.3.3 Bases de datos ......................................................................................................................... 36 1.3.3.1 MSDE ........................................................................................................................................... 36 1.3.3.2 SQL Server 2005 Express ............................................................................................................. 36 1.3.3.3 SQL Anywhere. ............................................................................................................................ 37 1.3.3.4 VistaDB......................................................................................................................................... 37 1.3.3.5 XML.............................................................................................................................................. 37
1.4 METODOLOGÍA DE DESARROLLO................................................................................................... 37
1.4.1 IntroduccióN............................................................................................................................ 37
1.4.2 Proceso unificado de Rational................................................................................................. 38 1.4.2.1 Introducción .................................................................................................................................. 38
5
1.4.2.2 REQUISITOS ............................................................................................................................... 41 1.4.2.3 ANÁLISIS .................................................................................................................................... 42 1.4.2.4 DISEÑO........................................................................................................................................ 43 1.4.2.5 IMPLEMENTACIÓN................................................................................................................... 44 1.4.2.6 PRUEBA....................................................................................................................................... 44
CAPITULO 2. ANÁLISIS Y DISEÑO DEL SISTEMA PARA LA COMPRA Y VENT A DE
LIBROS UTILIZANDO TECNOLOGÍA SMART CLIENT. SMARTBOO KSB. ................................. 46
2.1 ANALISIS DEL SISTEMA ......................................................................................................... 46
2.1.1 ESPECIFICACIÓN DE REQUERIMIENTOS DEL SISTEMA ............................................... 46 2.1.1.1 Introducción .................................................................................................................................. 46 2.1.1.2 Descripción General...................................................................................................................... 47 2.1.1.3 Requerimientos Específicos .......................................................................................................... 47
2.1.2 MODELO DE CASOS DE USO. ............................................................................................. 49 2.1.2.1 LISTA DE ACTORES.................................................................................................................. 49 2.1.2.2 Diagrama de Casos Uso ................................................................................................................ 51 2.1.2.3 Especificación del Diagrama de Casos de Uso............................................................................. 55
2.1.3 DIAGRAMAS DE SECUENCIA .............................................................................................. 80
2.1.4 PAQUETES DE ANÁLISIS...................................................................................................... 80
2.2 DISEÑO DEL SISTEMA.................................................................................................................... 81
2.2.1 Arquitectura del sistema. ......................................................................................................... 81
2.2.2 MODELO DE DISEÑO. .......................................................................................................... 83 2.2.2.1 MODELO DEL DOMINIO .......................................................................................................... 83 2.2.2.2 DIAGRAMA DE CLASES........................................................................................................... 84 2.2.2.3 DIAGRAMAS DE SECUENCIA ................................................................................................. 86 2.2.2.4 DIAGRAMAS DE COLABORACIÓN........................................................................................ 92 2.2.2.5 DEFINICIÓN DE MÓDULOS. .................................................................................................. 103 2.2.2.6 Modelo Relacional Lógico. ......................................................................................................... 106 2.2.2.7 Modelo Relacional Físico............................................................................................................ 108
2.2.3 Diseño de interfaces .............................................................................................................. 108 2.2.3.1 Diagrama de Navegación ............................................................................................................ 108 2.2.3.2 Interfaces de Usuario................................................................................................................... 111
CAPITULO 3. CONSTRUCCIÓN Y PRUEBAS DEL SISTEMA PARA LA COMPRA Y VENTA
DE LIBROS UTILIZANDO TECNOLOGÍA SMART CLIENT. SMART BOOKSB.......................... 114
3.1 IMPLENTACIÓN DEL SISTEMA....................................................................................................... 114
3.1.1 aLCANCE.............................................................................................................................. 114
3.1.2 HERRAMIENTAS DE DESARROLLO .................................................................................. 114 3.1.2.1 Detalle de las Herramientas......................................................................................................... 114
3.1.3 ESTÁNDARES DE PROGRAMACIÓN ................................................................................. 115
3.1.4 Diagrama de Componentes ................................................................................................... 116 3.1.4.1 Generalidades.............................................................................................................................. 116
6
3.1.4.2 Descripción del Diagrama de Componentes................................................................................ 116 3.1.5 Diagrama de Despliegue. ...................................................................................................... 120
3.2 PRUEBAS.................................................................................................................................. 121
3.2.1 INTRODUCCIÓN.................................................................................................................. 121
3.2.2 Diseño de Pruebas................................................................................................................. 121 3.2.2.1 Pruebas Clientes.......................................................................................................................... 121 3.2.2.2 Prueba Libros .............................................................................................................................. 125 3.2.2.3 Prueba Compra de Libros............................................................................................................ 128 3.2.2.4 Prueba Venta de Libros............................................................................................................... 133 3.2.2.5 Prueba Proveedores..................................................................................................................... 138 3.2.2.6 Prueba Reporte Compra de Libros .............................................................................................. 142 3.2.2.7 Prueba Reporte Ventas de Libros................................................................................................ 143
3.2.3 Resultados: ............................................................................................................................ 144
CAPITULO 4. CASO DE ESTUDIO. ................................................................................................ 145
4.1 IMPLANTACIÓN DEL SISTEMA......................................................................................................145
4.1.1 Selección del Ambiente.......................................................................................................... 145
4.1.2 Ambiente Tecnológico ........................................................................................................... 145 4.1.2.1 Comunicaciones: ......................................................................................................................... 145 4.1.2.2 Servidores: .................................................................................................................................. 145
4.1.3 Implantación.......................................................................................................................... 146
4.1.4 Implantación en el Servidor................................................................................................... 146 4.1.4.1 Creación de la Base de Datos...................................................................................................... 146 4.1.4.2 Migración de datos de empleados y perfiles de seguridad .......................................................... 146
4.1.5 Implantación en el Servidor................................................................................................... 146
4.1.6 Evaluación de la Aplicación.................................................................................................. 147 4.1.6.1 PARÁMETROS DE EVALUACIÓN......................................................................................... 147 4.1.6.2 TABLA DE EVALUACIÓN ...................................................................................................... 149
CAPITULO 5. CONCLUSIONES Y RECOMENDACIONES. ...................................................... 151
5.1 CONCLUSIONES. .......................................................................................................................... 151
5.2 RECOMENDACIONES:................................................................................................................... 153
5.3 GLOSARIO................................................................................................................................ 154
5.4 BIBLIOGRAFIA........................................................................................................................ 156
7
INDICE DE FIGURAS
FIGURA 1. VENTAJAS COMPETITIVAS........................................................................................................ 10
FIGURA 2. EXPLOTACIÓN DE LOS RECURSOS DE HARDWARE DEL LADO DEL CLIENTE............................... 15
FIGURA 3. ACTUALIZACIONES AUTOMÁTICAS........................................................................................... 18
FIGURA 4. ADAPTACIÓN A LOS DISPOSITIVOS CLIENTE.............................................................................. 19
FIGURA 5. ARQUITECTURA DE UN SMART CLIENT..................................................................................... 20
FIGURA 6. ESTRUCTURA DE OFFLINE ........................................................................................................ 26
FIGURA 7. CONECTIVIDAD CON DIVERSOS ORÍGENES DE DATOS................................................................ 28
FIGURA 8. USO DE XML EN APLICACIONES SMART CLIENT OFFICE.......................................................... 31
FIGURA 9. ARQUITECTURA DE UNA APLICACIÓN SMART CLIENT MÓVIL .................................................. 33
FIGURA 10. LA VIDA DEL PROCESO UNIFICADO........................................................................................... 40
FIGURA 11. DIAGRAMA DE CASO DE USO PRINCIPAL.................................................................................. 51
FIGURA 12. DIAGRAMA DE CASOS DE USO – ADMINISTRAR CLIENTES....................................................... 52
FIGURA 13. DIAGRAMA DE CASOS DE USO – ADMINISTRAR VENTA DE LIBROS.......................................... 52
FIGURA 14. DIAGRAMA DE CASOS DE USO – ADMINISTRAR COMPRA DE LIBROS....................................... 53
FIGURA 15. DIAGRAMA DE CASOS DE USO – ADMINISTRAR LIBROS........................................................... 54
FIGURA 16. DIAGRAMA DE CASOS DE USO – ADMINISTRAR PROVEEDORES............................................... 54
FIGURA 17. DIAGRAMA DE CASOS DE USO – REPORTES.............................................................................. 55
FIGURA 18. PAQUETE ADMINISTRACIÓN ..................................................................................................... 80
FIGURA 19. PAQUETE SEGURIDAD .............................................................................................................. 80
FIGURA 20. PAQUETE ÓRDENES DE COMPRA .............................................................................................. 80
FIGURA 21. PAQUETE VENTAS.................................................................................................................... 81
FIGURA 22. ARQUITECTURA DEL SISTEMA SMARTBOOKSB.................................................................... 81
FIGURA 23. MODELO DEL DOMINIO ............................................................................................................ 83
FIGURA 24. DIAGRAMA DE CLASES............................................................................................................. 84
FIGURA 25. DIAGRAMA DE SECUENCIA - ADMINISTRACIÓN VENTA DE LIBROS.......................................... 86
FIGURA 26. DIAGRAMA DE SECUENCIA - ADMINISTRACIÓN DE PROVEEDORES........................................... 87
FIGURA 27. DIAGRAMA DE SECUENCIA - ADMINISTRACIÓN DE CLIENTES .................................................. 88
FIGURA 28. DIAGRAMA DE SECUENCIA - ADMINISTRACIÓN DE ÓRDENES DE COMPRA............................... 89
FIGURA 29. DIAGRAMA DE SECUENCIA - ADMINISTRACIÓN DE L IBROS...................................................... 90
FIGURA 30. DIAGRAMA DE SECUENCIA - REPORTES.................................................................................... 91
FIGURA 31. DIAGRAMA DE COLABORACIÓN – ADMINISTRAR CLIENTES..................................................... 92
FIGURA 32. DIAGRAMA DE COLABORACIÓN – ADMINISTRAR LIBROS......................................................... 92
FIGURA 33. DIAGRAMA DE COLABORACIÓN – ADMINISTRAR PROVEEDOR................................................. 93
FIGURA 34. DIAGRAMA DE COLABORACIÓN – INGRESO DE PEDIDO DE VENTA........................................... 93
FIGURA 35. DIAGRAMA DE COLABORACIÓN – CONSULTA PEDIDO DE VENTA ............................................ 94
8
FIGURA 36. DIAGRAMA DE COLABORACIÓN – ACTUALIZACIÓN DE PEDIDO DE VENTA .............................. 95
FIGURA 37. DIAGRAMA DE COLABORACIÓN – AUTORIZAR PEDIDO DE VENTA........................................... 96
FIGURA 38. DIAGRAMA DE COLABORACIÓN – GENERAR FACTURA ............................................................ 97
FIGURA 39. DIAGRAMA DE COLABORACIÓN – INGRESAR ORDEN DE COMPRA............................................ 98
FIGURA 40. DIAGRAMA DE COLABORACIÓN – CONSULTAR ORDEN DE COMPRA........................................ 99
FIGURA 41. DIAGRAMA DE COLABORACIÓN – ACTUALIZAR ORDEN DE COMPRA..................................... 100
FIGURA 42. DIAGRAMA DE COLABORACIÓN – AUTORIZAR ORDEN DE COMPRA....................................... 101
FIGURA 43. DIAGRAMA DE COLABORACIÓN – REPORTE DE ÓRDENES DE COMPRA .................................. 102
FIGURA 44. DIAGRAMA DE COLABORACIÓN – REPORTE PEDIDOS DE VENTA ........................................... 103
FIGURA 45. MODELO RELACIONAL LÓGICO.............................................................................................. 107
FIGURA 46. MODELO RELACIONAL FÍSICO................................................................................................ 108
FIGURA 47. DIAGRAMA DE NAVEGACIÓN – PERFIL ADMINISTRADOR....................................................... 109
FIGURA 48. DIAGRAMA DE NAVEGACIÓN – PERFIL VENDEDOR................................................................ 109
FIGURA 49. DIAGRAMA DE NAVEGACIÓN – PERFIL JEFE DE VENDEDORES............................................... 110
FIGURA 50. DIAGRAMA DE NAVEGACIÓN – PERFIL JEFE DE COMPRAS..................................................... 110
FIGURA 51. DISEÑO DE INTERFAZ - INGRESO AL SISTEMA......................................................................... 111
FIGURA 52. DISEÑO DE INTERFAZ - MENÚ ................................................................................................ 112
FIGURA 53. DISEÑO DE INTERFAZ – PRINCIPAL ......................................................................................... 113
FIGURA 54. DIAGRAMA DE COMPONENTES............................................................................................... 116
FIGURA 55. DIAGRAMA DE DESPLIEGUE................................................................................................... 120
9
INDICE DE TABLAS TABLA 1. LISTA DE ACTORES................................................................................................................... 50
TABLA 2. ESPECIFICACIÓN DE CASO DE USO - CONSULTAR DATOS DE PROVEEDOR................................ 56
TABLA 3. ESPECIFICACIÓN DE CASO DE USO - INGRESAR DATOS DE PROVEEDOR................................... 57
TABLA 4. ESPECIFICACIÓN DE CASO DE USO - ACTUALIZAR PROVEEDOR............................................... 58
TABLA 5. ESPECIFICACIÓN DE CASO DE USO - CONSULTAR DATOS DE CLIENTES.................................... 59
TABLA 6. ESPECIFICACIÓN DE CASO DE USO - INGRESAR DATOS DEL CLIENTE....................................... 60
TABLA 7. ESPECIFICACIÓN DE CASO DE USO - ACTUALIZAR CLIENTE ..................................................... 61
TABLA 8. ESPECIFICACIÓN DE CASO DE USO - CONSULTAR PEDIDO DE VENTA....................................... 62
TABLA 9. ESPECIFICACIÓN DE CASO DE USO - INGRESAR PEDIDO DE VENTA .......................................... 64
TABLA 10. ESPECIFICACIÓN DE CASO DE USO - ACTUALIZAR PEDIDO DE VENTA...................................... 66
TABLA 11. ESPECIFICACIÓN DE CASO DE USO - AUTORIZAR PEDIDO DE VENTA ....................................... 67
TABLA 12. ESPECIFICACIÓN DE CASO DE USO - GENERAR FACTURA......................................................... 68
TABLA 13. ESPECIFICACIÓN DE CASO DE USO - CONSULTAR ORDEN DE COMPRA..................................... 69
TABLA 14. ESPECIFICACIÓN DE CASO DE USO - INGRESAR ORDEN DE COMPRA. ....................................... 71
TABLA 15. ESPECIFICACIÓN DE CASO DE USO - ACTUALIZAR ORDEN DE COMPRA.................................... 73
TABLA 16. ESPECIFICACIÓN DE CASO DE USO - AUTORIZAR ORDEN DE COMPRA. .................................... 74
TABLA 17. ESPECIFICACIÓN DE CASO DE USO - CONSULTAR DATOS DE LIBROS ...................................... 75
TABLA 18. ESPECIFICACIÓN DE CASO DE USO - INGRESAR DATOS DE LIBRO. ........................................... 76
TABLA 19. ESPECIFICACIÓN DE CASO DE USO - ACTUALIZAR LIBRO......................................................... 77
TABLA 20. ESPECIFICACIÓN DE CASO DE USO - CONSULTAR DATOS DE COMPRAS. ................................... 78
TABLA 21. ESPECIFICACIÓN DE CASO DE USO - CONSULTAR DATOS DE VENTAS. ...................................... 79
TABLA 22. ESPECIFICACIÓN DEL DIAGRAMA DE CLASES........................................................................... 85
TABLA 23. CLASES MÓDULO DE VENTAS ................................................................................................ 104
TABLA 24. CLASES MÓDULO DE COMPRAS.............................................................................................. 105
TABLA 25. CLASES MÓDULO DE ADMINISTRACIÓN ................................................................................. 105
TABLA 26. CLASES MÓDULO DE SEGURIDAD........................................................................................... 106
TABLA 27. DESCRIPCIÓN DE HERRAMIENTAS .......................................................................................... 115
TABLA 28. ESTÁNDARES DE PROGRAMACIÓN.......................................................................................... 115
TABLA 29. DESCRIPCIÓN DE COMPONENTE – CLSVENTAS....................................................................... 117
TABLA 30. DESCRIPCIÓN DE COMPONENTE – CLSADMINISTRACIÓN ........................................................ 117
TABLA 31. DESCRIPCIÓN DE COMPONENTE – CLSCOMPRAS.................................................................... 118
TABLA 32. DESCRIPCIÓN DE COMPONENTE – CLSBDD............................................................................ 118
TABLA 33. DESCRIPCIÓN DE COMPONENTE –CLSGESTORCONEXION....................................................... 119
TABLA 54. EVALUACIÓN DE LAS PRUEBAS............................................................................................... 149
10
CAPITULO 1.
1.1 AMBIENTE SMART CLIENT.
1.1.1 DEFINICIÓN SMART CLIENT.
Las aplicaciones Smart Client son una alternativa poderosa para hacer más
ligeras las aplicaciones del cliente. Estas pueden proporcionar una interfase de
usuario rica y sensible, la habilidad de trabajar desconectado, y una manera
de aprovechar los recursos de hardware y software.
Además, éstas pueden ser diseñadas para correr en un espectro amplio de
dispositivos clientes, tales como: desktop PCs, Tablet PCs, y dispositivos
móviles portátiles (Pocket PCs y Smartphones). Las aplicaciones Smart Client
dan a los usuarios acceso a la información y a los servicios remotos dentro de
un poderoso e intuitivo ambiente cliente, y es una solución eficaz para las
aplicaciones flexibles orientadas a usuarios, además de incrementar la
productividad y satisfacción del usuario
Las aplicaciones Smart Client pueden diseñarse para combinar los beneficios
tradicionales de una aplicación Cliente Rica o Rich Client con los beneficios de
la manejabilidad de una aplicación Cliente Delgada o Thin Client
Figura 1. Ventajas Competitivas 1
“Las aplicaciones Smart Client dan a los usuarios acceso a la información y a los
servicios remotos dentro de un poderoso e intuitivo ambiente cliente”
1 Microsoft Corporation, “Architecting Smart Client Solution”, http:// msdn.microsoft.com/seminar/shared/asp/view.asp/?url=/Seminar/en/20040412SmartClient03/manifest.xml&rate=1
VVeennttaajjaass
DDAA AAbbss
ColaAA
11
1.1.1.1 Aplicaciones Clientes Ricas o Rich Client Applications
A mediados de los 90`s el número de aplicaciones Rich Client
desarrolladas para los sistemas operativos de Microsoft Windows
incrementó dramáticamente. Estos clientes fueron diseñaron para
aprovechar los recursos locales de hardware y las características de la
plataforma del sistema operativo del cliente.
A pesar de la funcionalidad impresionante de muchas de estas
aplicaciones, tienen limitaciones. Muchas de estas aplicaciones son
autosuficientes y operan en la computadora del cliente, con pequeño o
ningún conocimiento del ambiente en cual ellos operan. Este ambiente
incluye otras computadoras y cualquier servicio en la red, así como
cualquier otra aplicación en la computadora del usuario. Muy a menudo, la
integración entre las aplicaciones se limita a usar las característica de
“cortar ó copiar y pegar” proporcionadas por Windows para transferir
cantidades pequeñas de datos entre las aplicaciones.
Hay tecnologías para aumentar la conectividad de aplicaciones Rich Client.
Por ejemplo, las aplicaciones de dos capas permiten a varios usuarios
acceder a datos comunes que residen en la red, y DCOM permite a las
aplicaciones volverse más distribuidas. (Con DCOM, la lógica y el estado
no esta atado nunca más a la computadora cliente y, en cambio, están
encapsulados dentro de objetos que son distribuidos a través de varias
computadoras). Sin embargo, las aplicaciones conectadas son
considerablemente más complejas de desarrollar. Así como el tamaño y la
complejidad de estas aplicaciones distribuidas crece, cualquier
acoplamiento firme entre las aplicaciones cliente y los servicios que ellos
consumen se hace mucha más difícil de mantener.
Mientras que los Rich Client proporcionan típicamente una experiencia al
usuario de alta calidad, de buena repuesta y tienen un bueno soporte para
el desarrollador y la plataforma, estos son muy difíciles de desplegar y
12
mantener. Así como la complejidad de las aplicaciones y la plataforma del
cliente aumentan, así también las dificultades asociadas con el despliegue
de la aplicación en la computadora del cliente de una manera fiable y
segura. Una aplicación puede interrumpir otra aplicación fácilmente si se
despliega un componente incompatible compartido o librería, este es un
fenómeno conocido como la fragilidad de la aplicación. Nuevas versiones
de la aplicación se convierten en utilizables al redesplegar la aplicación
entera, lo cual puede incrementar un problema de fragilidad de la
aplicación.
1.1.1.2 Aplicaciones Clientes Delgadas Thin Client Applications
El Internet proporciona una alternativa al modelo del Rich Client tradicional
que resuelve muchos de los problemas asociados con el despliegue de la
aplicación y su mantenimiento. Las Thin Client, aplicaciones basadas en
navegadores son desplegadas y actualizadas en un Servidor Web Central;
por lo tanto, eliminan la necesidad de desplegar y administrar
explícitamente cualquier parte de la aplicación en la computadora del
cliente.
Este modelo les permite a las compañías exponer muy eficientemente sus
aplicaciones a una audiencia externa, amplia y diversa. Debido a que los
Thin Clients han demostrado ser eficaces al resolver algunos de los
problemas de despliegue y manejabilidad, son usados para proporcionar el
acceso a muchas aplicaciones de líneas de negocio (LOB), a usuarios
dentro de una organización, así como el acceso externo a las aplicaciones
por parte de clientes y socios. Esto a pesar del hecho de que las
necesidades y expectativas de estos dos tipos de usuarios son a menudo
sumamente diferentes.
Las aplicaciones Thin Client tienen algunas desventajas. El navegador
debe tener una conexión de red en todo momento. Esto significa que
13
usuarios móviles no tienen el acceso a las aplicaciones si ellos están
desconectados, entonces ellos deben reingresar los datos cuando regresen
a la oficina. También, características comunes entre aplicaciones tales
como “arrastrar y colocar”, “deshacer-rehacer” y “ayuda sensitiva al
contexto” pueden no estar disponibles, lo cual puede reducir la usabilidad
de la aplicación.
Debido a que la inmensa mayoría de la lógica de la aplicación y el estado
se encuentra en el servidor, los Thin Client hacen solicitudes de datos y
procesamiento frecuentemente. El navegador debe esperar por una
repuesta antes de que el usuario pueda continuar usando la aplicación; por
consiguiente, la aplicación tendrá una respuesta más lenta que una
aplicación Rich Client equivalente. Este problema se incrementa en
condiciones de bajo ancho de banda o alta latencia, y las consecuencias
de los problemas de rendimiento pueden llevar a una reducción
significativa de la usabilidad de la aplicación y eficiencia del usuario. Una
aplicación LOB que requiere gran entrada de datos y/o la navegación
frecuente a través de ventanas múltiples puede ser afectada
particularmente por este problema.
1.1.2 CARACTERÍSTICAS SMART CLIENT
Las aplicaciones Smart Client pueden ser diseñadas para combinar los
beneficios de una aplicación Rich Client con las ventajas de despliegue y
administración de una aplicación Thin Client, aunque la naturaleza del balance
entre las dos estrategias depende del escenario exacto.
Las aplicaciones Smart Client tienen a menudo requisitos muy diversos, y así
varía mucho en el diseño e implementación. Sin embargo, todos los Smart
Client comparten algunas o todas de las siguientes características:
• Hacen uso de recursos locales
14
• Hacen uso de recursos de la red
• Soporte a usuarios ocasionalmente conectados
• Proporcionan instalación y actualización inteligentes
• Se adaptan a los dispositivos cliente
1.1.2.1 Usan los Recursos Locales:
Una aplicación Smart Client bien diseñada se aprovecha del hecho de que
el código y los datos son desplegados en el cliente, además de ejecutarse
y accederse localmente.
Esto provee una aplicación con una interfaz de usuario rica y de buena
respuesta, además de capacidades poderosas de procesamiento en el lado
del cliente. Por ejemplo, podría permitirle al usuario realizar manipulación
de datos complejos, visualización, búsqueda, u operaciones de
ordenamiento.
Los Smart Client pueden aprovechar los recursos de hardware del lado del
cliente (como teléfonos o lectores del código de barras) y otro software y
aplicaciones. Esto ha hecho que resuelvan problemas que una aplicación
Thin Client no puede resolver correctamente, tal como aplicaciones de
punto de venta. Los Smart Client también pueden tomar la ventaja del
software local, como las aplicaciones Microsoft Office, o cualquier
aplicación LOB instalada en la computadora del cliente. La creación de
soluciones que se integran y coordinan muchas aplicaciones LOB, les
permite a los usuarios trabajar más eficientemente, tomar mejores
decisiones, y reducir errores de ingreso de datos. Tales soluciones también
permitir a su aplicación integrarse más herméticamente con el ambiente de
trabajo del usuario, por ejemplo teniendo una interfaz de usuario familiar o
personalizada, lo que puede conducir a costos reducidos de capacitación.
Otras aplicaciones cliente pueden integrarse o coordinarse con las
aplicaciones Smart Client para proporcionar una solución global coherente
y eficaz. Estas aplicaciones también deben ser conscientes del contexto en
15
el cual las aplicaciones están siendo usadas, y deben adaptarse a ese
contexto para ayudar al usuario tanto como sea posible; por ejemplo,
almacenando preventivamente en caché datos apropiados y útiles de
acuerdo al patrón de uso o el perfil del usuario.
Aumentando al máximo el uso e integrando los recursos locales en sus
aplicaciones Smart Client permitirán a la aplicación aprovechar más
eficazmente el hardware que ya está disponible. Muy a menudo, poderosos
procesadores, memoria, y capacidades gráficas avanzadas no se usan. El
uso de los recursos en la computadora cliente puede también reducir
requerimientos de hardware en el lado del servidor.
Figura 2. Explotación de los recursos de Hardware d el lado del cliente 2
1.1.2.2 Usan los Recursos de la Red
Los Smart Client pueden consumir y usar diferentes servicios y datos por
medio de la red. Ellos son una manera efectiva de recuperar los datos de
diversas fuentes y pueden ser diseñados para analizar o agregar los
datos, permitiendo al usuario tomar decisiones mejores y más eficientes.
Por ejemplo, un Smart Client podría usar un servicio de cartografía para
proveer detalles de ubicación e instrucciones de manejo.
2 Microsoft Corporation, “Architecting Smart Client Solution”, http:// msdn.microsoft.com/seminar/shared/asp/view.asp/?url=/Seminar/en/20040412SmartClient03/manifest.xml&rate=1
16
Las aplicaciones Smart Client deben estar conectadas tanto como sea
posible y deben hacer uso de los recursos y servicios que están
disponibles para ellas en la red. No deben ser aplicaciones autosuficientes
y siempre deben formar parte de una solución distribuida más grande.
Como mínimo, una aplicación Smart Client debe usar los servicios
centralizados que ayudan a mantener la aplicación y proveen servicios de
despliegue y actualización.
La naturaleza de conexión de las aplicaciones Smart Client les permite
proporcionar valiosa agregación de los datos, análisis, y servicios de
transformación. Estas pueden permitirles a los usuarios colaborar en las
tareas en tiempo real o durante un período de tiempo. En muchos casos,
una aplicación Smart Client puede proporcionar características parecidas a
un portal Web al usuario, permitiendo que datos dispares y servicios estén
coordinados e integrados en una solución general.
1.1.2.3 Dan soporte a los usuarios ocasionalmente conectados.
Los Smart Client pueden ser diseñados para proporcionar funcionalidad a
usuarios que están conectados ocasionalmente a la red, permitiéndole al
usuario continuar trabajando eficazmente cuando esté explícitamente
desconectado, en condiciones de bajo ancho de banda o alta latencia en la
red, o cuando la conexión es intermitente. Incluso cuando el cliente se
conecta a la red la mayoría del tiempo, las aplicaciones Smart Client
pueden mejorar el rendimiento y usabilidad almacenando en caché los
datos y administrando la conexión de forma inteligente. Para las
aplicaciones móviles, los Smart Client pueden optimizar también el ancho
de banda de la red, como por ejemplo: haciendo solicitudes programadas
al servidor.
El ser capaz de trabajar mientras esta desconectado u conectado aumenta
la productividad y la satisfacción del usuario. Una aplicación Smart Client
17
debe apuntar a proporcionar tanta funcionalidad como sea posible cuando
se esta desconectado.
1.1.2.4 Proveen Instalación y Actualización Inteligente
Algunos de los problemas más grandes con los Rich Client tradicionales
ocurren cuando la aplicación es desplegada o actualizada. Muchas
aplicaciones Rich Client tienen un gran número requisitos de instalación
complejos y pueden compartir código registrando componentes y/o
instalando DLLs en una ubicación común, llevando a una fragilidad de la
aplicación y dificultades de actualización.
Las aplicaciones Smart Client pueden diseñarse para manejar su
despliegue y actualización de una manera mucho más inteligente y flexible
que las aplicaciones Rich Client tradicionales. Ellas pueden evitar éstos
problemas comunes, lo cual puede ayudar a reducir los costos de
administración de la aplicación.
Hay varias maneras diferentes de desplegar Smart Client, tales como:
copiar archivos hacia una computadora local, transmitir el código
automáticamente de un servidor central usando despliegue automático, o
desplegando paquetes de Windows Installer usando una tecnología
empresarial tal como Microsoft Systems Management Server (SMS). El
método que se usará dependerá de una situación específica.
Las aplicaciones Smart Client pueden actualizarse automáticamente, ya
sea cuando están corriendo o en segundo plano. Esta capacidad les
permite ser actualizadas en una basándose en una base perfil por perfil;
actualizadas de una manera segmentada, permitiendo que las aplicaciones
sean perfiladas a grupos piloto o conjuntos limitados de usuario; o
actualizadas de acuerdo a una calendarización establecida.
18
Figura 3. Actualizaciones automáticas 3
Las aplicaciones Smart Client pueden actualizarse automáticamente
1.1.2.5 Proveen adaptación a los dispositivos cliente
Los Smart Client también pueden proporcionar un ambiente flexible y
personalizado, permitiéndole al usuario configurar la aplicación para apoyar
su manera preferida de trabajar. Las aplicaciones Smart Client no se
restringen a computadoras de escritorio o portátiles. Mientras se
incrementa la conectividad y el poder de los dispositivos de pequeña
escala, la necesidad de aplicaciones cliente útiles que proporcionan el
acceso a los datos esenciales y servicios en dispositivos múltiples se
incrementa también.
Los Smart Client pueden ser diseñados para adaptarse al ambiente del
anfitrión, proporcionando funcionalidad apropiada para el dispositivo en el
cual se están ejecutando. Por ejemplo, una aplicación Smart Client
diseñada para ejecutarse en Pocket PC debe proporcionar una interfase
de usuario que se ajuste al uso de un stylus en un área de pantalla
pequeña.
En muchos casos, se necesitará diseñar múltiples versiones de una
aplicación Smart Client, cada una tendrá por objetivo un tipo de dispositivo
específico para tomar ventaja de las características particulares soportadas
por el dispositivo. Debido a que los dispositivos de pequeña escala están
limitados en su capacidad de entregar un rango completo de características
3 Microsoft Corporation, “Architecting Smart Client Solution”, http:// msdn.microsoft.com/seminar/shared/asp/view.asp/?url=/Seminar/en/20040412SmartClient03/manifest.xml&rate=1
19
de aplicaciones Smart Client, estás proporcionan acceso móvil a solamente
a un subconjunto de los datos y servicios que una aplicación Smart Client
completa proporciona, o estas pueden ser usadas para recopilar y agregar
los datos cuando el usuario es móvil. Estos datos pueden entonces ser
analizados o procesados por una aplicación Smart Client más completa o
por una aplicación del lado del servidor.
Un conocimiento de las capacidades y uso del ambiente del dispositivo
designado, no importa si es una computadora de escritorio, portátil, tablet,
o dispositivo móvil, y la capacidad de ajustar la aplicación para
proporcionar la funcionalidad más apropiada son características esenciales
de muchas aplicaciones Smart Client.
Figura 4. Adaptación a los dispositivos cliente 4
1.1.3 ARQUITECTURA SMART CLIENT
La arquitectura de un Smart Client está configurada en base a capas, en los
siguientes párrafos se realiza una descripción de cada una de éstas capas, así
como también se exponen sus características principales.
4 Microsoft Corporation, “Architecting Smart Client Solution”, http:// msdn.microsoft.com/seminar/shared/asp/view.asp/?url=/Seminar/en/20040412SmartClient03/manifest.xml&rate=1
20
Figura 5. Arquitectura de un Smart Client
1.1.3.1 Caché
Cuando se construye aplicaciones Smart Client, los arquitectos y
desarrolladores se enfrentan a muchos retos. El caché de datos puede
ayudar a sobrellevar algunos de éstos retos, incluyendo los siguientes:
Rendimiento . El caché de datos mejora el rendimiento de la aplicación al
almacenar datos relevantes lo más cerca posible del consumidor de datos.
Esto evita creación repetitiva de datos, procesamiento y transporte.
Escalabilidad . Almacenar los datos en el caché ayuda a conservar
recursos y aumenta la escalabilidad conjuntamente con el incremento de la
demanda en la aplicación.
Disponibilidad . Al almacenar datos en el caché local, la aplicación puede
ser capaz de sobrevivir a fallas del sistema, tales como latencia de la red,
problemas con el Web Service y fallas de Hardware.
El caché de datos es adecuado para cualquiera de las siguientes
situaciones:
• Acceso repetitivo a datos estáticos o a datos que rara vez cambian
21
• El acceso a los datos es costoso en términos de creación, acceso y transporte.
• Los datos deben estar siempre disponibles, incluso cuando el origen, tal como un servidor, no está disponible.
1.1.3.2 Configuración.
Casi toda aplicación requiere alguna forma de información para
configuración. Esta información puede ser tan simple como una cadena de
conexión a base de datos o tan compleja como información de preferencia
de usuario múltiple y jerárquica. Donde y cómo almacenar los datos de
configuración de una aplicación son preguntas que un desarrollador debe
enfrentar. Soluciones típicas incluyen lo siguiente:
• Uso de archivos de configuración tales como archivos XML o archivos .ini de Windows
• Uso del registro de Windows • Uso de base de datos tal como Microsoft SQL Server
Cada una de estas alternativas tiene sus ventajas y debilidades; no hay
solución que sea la mejor para cualquier situación. En una aplicación
simple, se puede adoptar más de una estrategia para acomodarse a tipos
diferentes de configuraciones que su aplicación necesite. Por ejemplo, si la
aplicación corre en ambientes diferentes, se puede necesitar múltiples
soluciones de almacenamiento de la configuración. Otros factores
importantes a considerarse incluyen el asegurar la seguridad y la integridad
de los datos de configuración de la aplicación y el minimizar el impacto del
almacenamiento sobre el rendimiento de la aplicación.
Esta capa está diseñada para cumplir los siguientes objetivos:
• Proveer una interfaz simple para leer y escribir datos de configuración
• Para aislar a las aplicación del lugar de almacenamiento físico de los datos de configuración.
22
• Para proveer un modelo extensible que permita lugares de almacenamiento personalizado y características de representación de la configuración en tiempo de ejecución.
1.1.3.3 Acceso a datos.
Esta capa se utiliza en una variedad de situaciones, tales como leer los
datos para desplegarlos, obtener datos para usarlos a través de otras
capas y para devolver los datos que han sufrido cambios de vuelta al
sistema de base de datos. Esta capa incluye soporte para el uso de
procedimientos almacenados y para tareas comunes como la
administración de conexiones y la creación y almacenamiento en caché de
parámetros que están encapsulados en la capa de aplicación.
Esta capa posee las siguientes características:
• Ayuda a mantener los datos consistentes, tanto en la aplicación
como a través de la empresa.
• Reduce la dificultad de cambiar la base de datos física.
• Permite almacenar en caché datos usados frecuentemente
Para asegurar que la consistencia de los datos se mantenga, y para evitar
que los datos sean usados de manera impropia, esta capa toma en cuenta
que los cambios realizados en el cliente son monitoreados. Tales cambios
son “tentativos” hasta que se han sincronizado correctamente con el
servidor.
1.1.3.4 Criptografía
La capa de criptografía simplifica el uso de criptografía en las aplicaciones.
Las aplicaciones pueden hacer uso de ésta capa para una variedad de
actividades, tales como cifrar información, crear un hash a partir de ciertos
23
datos, y comparar valores hash para verificar que los datos no han sido
alterados.
Tiene las siguientes características:
• Provee de implementaciones que se pueden usar para resolver
problemas comunes de criptografía en una aplicación.
• Ayuda a mantener prácticas de criptografía consistentes, tanto en la
aplicación como a través de la empresa.
• Es extensible, soportando implementaciones adicionales de
proveedores criptográficos.
Existen aplicaciones que requieren de características de encriptación y
hashing para cumplir con los requerimientos de seguridad en una
organización. Los datos que son creados y mantenidos por las
aplicaciones, así como información de configuración, muchas veces
necesitan ser cifrados. Adicionalmente, las claves que son usadas para
acceder a la funcionalidad de una aplicación o a los datos, necesitan ser
cifradas.
Esta capa fue diseñada para cumplir con los siguientes objetivos:
• Proveer una interfaz simple para la funcionalidad más comúnmente
requerida.
• Encapsular la lógica que es usada para realizar las tareas más
comunes de criptografía en una aplicación.
• Presentar un modelo estándar y consistente para tareas de
criptografía comunes
• Asegurarse de la capa de aplicación es extensible
1.1.3.5 Offline.
A medida que las organizaciones se hacen altamente dependientes de los
sistemas de TI y los datos y los servicios que proveen, se vuelve
24
importante para los usuarios el ser capaces de trabajar fuera de línea
(offline). El proveer soporte para acceso offline a los datos y los servicios,
mediante el uso de la misma aplicación, no importa si en línea u offline, le
permite al usuario mantenerse productivo todo el tiempo y ayuda a
mantener la consistencia y la calidad de los datos.
Mientras que la conectividad a la red es más que obvia, es importante que
tener una conexión a la red no es suficiente para garantizar acceso a una
aplicación y a los datos y servicios que representa. Las aplicaciones de la
línea de negocio (LOB) dentro del firewall pueden ser no asequibles para
los usuarios cuando están fuera de la oficina, a menos que la organización
invierta en una infraestructura VPN. Aún si éste fuera el caso, alterar una
conexión puede consumir tiempo y dinero. Acceso breve a la aplicación es
inapropiado o imposible muchas veces llevando a pérdida de
oportunidades o inconsistencia en los datos.
Algunas veces los usuarios pueden planificar el estar fuera de línea
(offline). Por ejemplo, un trabajador en ventas que está fuera de la oficina
por un período específico de tiempo o un usuario que trabaja desde el
hogar. Algunas veces, es difícil planificar un escenario offline. Por ejemplo,
un usuario en una bodega con un Tablet PC puede tener una conexión
wireless que se “cae” periódicamente. Otra consideración es la calidad de
la conexión del usuario. Mientras que las organizaciones se vuelven mucho
más distribuidas alrededor del mundo, la conectividad con la red puede
sufrir de problemas de alta latencia y bajo ancho de banda.
En cada uno de estos casos, una solución Smart Client puede proveer
acceso robusto a la aplicación de tal manera que los efectos de los
cambios en la conectividad pueden ser minimizados o eliminados.
Guardando en caché los datos y la lógica en el lado del cliente de manera
inteligente, y automáticamente ejecutando actualizaciones cuando es
requerido, la aplicación puede proveer al usuario de una experiencia
ininterrumpida independientemente de su estado de la conexión. Además,
25
un Smart Client puede asegurar que todas las llamadas a la red son
manejadas en un hilo de ejecución en segundo plano de forma que la
aplicación nunca tiene que esperar por una respuesta de la red,
permitiéndole al usuario seguir trabajando sin importarle el estado de la
red.
Para soportar el trabajo fuera de línea se requiere de una infraestructura
que permita almacenar las solicitudes de servicios de manera que puedan
ser almacenados y ejecutados cuando el cliente restablezca la conexión.
Esta infraestructura consiste en cuatro elementos:
1. Service Agent – Provee el punto de acceso primario al servicio.
Maneja toda la interacción del cliente con el servicio y encapsula
toda la lógica necesaria para permitir al cliente llamar al servicio.
2. Service Request – Todos los detalles de la llamada al servicio son
encapsulados en este objeto. Las llamadas al servicio persisten en
la cola hasta que el componente Executor está listo para
procesarlas.
3. Service Request Queue – La cola que proporciona
almacenamiento persistente a los objetos del servicio de llamados.
4. Executor – Es responsable de obtener las llamadas de servicio de
la cola y ejecutarlas cuando el cliente se reconecta. Una vez
finalizada la llamada al servicio, el Executor informa al agente de
servicios, para que este informe al cliente.
26
Figura 6. Estructura de Offline 5
1.2 TIPOS DE SMART CLIENT.
Los Smart Client varían grandemente en el diseño e implementación, tanto en
requisitos de la aplicación, como en el número de escenarios y ambientes en los
cuales pueden usarse. Por consiguiente los Smart Client pueden tomar muchas
diferentes formas y estilos. Estas formas pueden ser divididas en tres extensas
categorías según la plataforma que la aplicación Smart Client tenga por objetivo:
• Aplicaciones Smart Client Windows
• Aplicaciones Smart Client Office
• Aplicaciones Smart Client Móviles
Es común para una aplicación Smart Client ser designada para una o más de
estas plataformas, dependiendo del rol del usuario y la funcionalidad requerida.
Tal flexibilidad es una de las fuerzas importantes de aplicaciones Smart Client.
5Microsoft Corporation, “Smart Client Platform Architectural Guidance”, http://msdn.microsoft.com/smartclient/understanding/essentials/pagi/defaults.aspx
27
Es útil examinar brevemente cada tipo para que se pueda determinar qué estilo
de aplicación sería mejora para adaptarse a la situación.
1.2.1 APLICACIONES SMART CLIENT WINDOWS
Cuando se piensa en una aplicación Rich Client típicamente se puede pensar
en una aplicación de escritorio que usa los recursos disponibles del sistema y
eso proporciona una interfaz de usuario rica. Las aplicaciones Smart Client
para Windows representan una evolución de aplicaciones Rich Client
tradicionales, y proporcionan objetivos específicos y funcionales.
Estos tipos de aplicaciones usan típicamente Windows Forms para
proporcionar un estilo de interfaz de usuario familiar de Windows, donde la
propia aplicación proporciona mucha de la funcionalidad y no confía en otra
aplicación para proporcionar la interfaz de usuario principal. Tales Smart Client
pueden ir desde aplicaciones simples ejecutadas sobre HTTP, hasta
aplicaciones muy sofisticadas.
Entre las características que provee este tipo aplicaciones tenemos:
• Proporciona la interfaz del usuario rica
o Interfaz mas intuitiva para los usuarios finales
o Mayor funcionalidad de la interfaz para los usuarios finales
o Mayor control sobre la interfaz del usuario
• Interacción con los dispositivo locales
• Sensibilidad del usuario
• Soporte localizado / globalizado
• Buen empaquetamiento y seguridad que las Aplicaciones Web
• Despliegue "no-touch" / "click once"
• Escenario tanto desconectado y reconectado.
Una aplicación Smart Client Windows es conveniente en situaciones dónde
una aplicación necesita ser desplegada y acceda como una aplicación familiar
de tipo escritorio. Estos tipos de aplicaciones típicamente proporcionan la
28
mayoría de su funcionalidad ellos mismo, pero pueden integrarse o
coordinarse con otras aplicaciones cuando sea necesario. Ellos proporcionan
funcionalidad a la aplicación ajustándose a las tareas particulares, para
proporcionar proceso específico, de alto rendimiento o capacidades gráficas.
Las aplicaciones Smart Client Windows son muy convenientes para
aplicaciones que corren en desktop, portátil, o tablet PCs. Además, ellas
generalmente proporcionan funcionalidad que no se asocia herméticamente
con un documento particular o tipo de documento.
Estos tipos de aplicaciones pueden usarse en una gran variedad de
situaciones, por ejemplo como aplicaciones LOB, financiera, científica, o de
colaboración. Los ejemplos de estos tipos de aplicaciones son Microsoft
Money y Microsoft Outlook®, que son de mensajería y colaboración al cliente.
Figura 7. Conectividad con diversos orígenes de dat os 6
1.2.2 APLICACIONES SMART CLIENT OFFICE
El sistema Microsoft Office 2003 proporciona una plataforma útil en que cual
construir las aplicaciones Smart Client, especialmente en el ambiente de la
6 Microsoft Corporation, “Microsoft smart clients: Power, performance, flexibility", http://www.microsoft.com/net/smartclient.aspx
29
empresa. Con una solución Smart Client Office, se puede integrar las fuentes
de los datos, acensando a través de los servicios Web.
Tales aplicaciones Smart Client pueden volverse una parte integrada del ciclo
de manejo de información de una organización, no simplemente recipientes
estáticos para los datos del documento. Ellos pueden proporcionar los datos
de contexto sensibles tal como el usuario trabaja en un documento, así como
workflow, guía de tarea, análisis de datos, reportes, y características de
presentación que vuelven datos expuestos en los servicios Web dentro de
información útil.
Microsoft Office soporta XML y separa los datos de otros aspectos de un
documento para que estos puedan ser reutilizar por otras aplicaciones.
Porque los datos en las aplicaciones Microsoft pueden ser descritas por el
mismo esquema definido del cliente de XML a través de múltiples
aplicaciones, los desarrolladores pueden integrar esos datos en aplicaciones
Smart Client.
Microsoft Office 2003 tiene un número de características claves y opciones
para construir soluciones Smart Client. Entre otras son:
Smart Tags.
Los Smart tags dan a las aplicaciones una manera de proveer a usuarios
datos de contexto sensitivo que pertenecen al contenido de un documento
y de permitir que ellos fácilmente vean y utilicen la información relevante al
trabajar dentro de un documento. Por ejemplo, los smart tags se pueden
utilizar para proporcionar el estado de cuenta para los clientes mientras
estos hacen refieren dentro de un documento, o pueden ser utilizados para
proporcionar la información de estado de una orden mientras se digita el
ID de la orden. Esta retroalimentación permite a los usuarios tomar
decisiones más precisas mientras trabajan.
30
Smart documents .
Los Smart documents proporcionan una manera más poderosa para que el
usuario interactúe con los documentos y los servicios Web del negocio.
Los Smart documents son un nuevo tipo de modelo de solución para Word
2003 y Excel 2003 que tienen una estructura fundamental de XML y un
panel de tareas personalizado. El panel de tareas se puede utilizar para
exhibir la información del contenido, las tareas, las herramientas, los pasos
siguientes, y otra información relevante al usuario. El usuario puede iniciar
otras acciones y tareas para interactuar con el panel de tareas, permitiendo
comprender las soluciones del negocio a ser construidas (estructuradas).
Herramientas Microsoft Visual Studio® para Sistema Microsoft Office.
Este conjunto de herramientas permite a los desarrolladores crear
aplicaciones Smart Client que manejen código Office a ser usando por el
Sistema de desarrollo Microsoft Visual Studio .NET. Los desarrolladores
pueden separar soluciones de documento del código fundamental (una
alternativa previa la modelo Smart Client que contiene Visual Basic para
aplicaciones son los macros con lógica del negocio). Usando código
administrado con Microsoft Office los desarrolladores proporcionan
opciones más eficaces para crear, desplegar, y actualizar el manejo para
soluciones Smart Client.
Microsoft Office InfoPath™ 2003.
InfoPath 2003 es una aplicación que puede recopilar datos estructurados
del usuario usando una interfaz forma-como. InfoPath 2003 proporciona la
ayuda para los servicios Web XML, un interfaz de usuario forma-basado, y
el soporte para las tecnologías estándares tales como WSDL y UDDI.
InfoPath 2003 soporta uso limitado fuera de línea permitiendo al usuario
interactuar con la forma cuando este fuera de línea y después permitiendo
que el usuario envíe la forma a un servicio Web cuando el usuario está
conectado.
31
Figura 8. Uso de XML en aplicaciones Smart Client O ffice 7
1.2.3 VISIÓN GENERAL DE LAS APLICACIONES SMART CLIENT CON
MICROSOFT OFFICE 2003.
En el mercado competitivo y de gran movimiento de hoy en día, el acceso a
los datos empresariales a cualquier hora, en cualquier lugar y desde
cualquier dispositivo es una ventaja de negocio crítica. Recientemente,
nuevas aplicaciones dinámicas basadas en .NET Framework han emergido
de tal manera que pueden tomar ventaja de los modelos cliente-servicio-
servidor para distribuir y consumir datos a través de los XML Web Services.
Usando XML Web Services para proveer acceso a sus propios datos del
negocio, las organizaciones pueden actualizar continuamente el como y
que información es compartida a través del Internet, con socios, clientes y
empleados, y con sus propias intranet y aplicaciones de la línea de
negocios (LOB) a lo largo de orígenes de datos dispersos. Con tecnología
superior para soluciones Smart Client el Microsoft Office System ofrece a
las organizaciones con características de análisis de datos, colaboración,
reporteo y presentación poderosas, para convertir la información expuesta
por los XML Web Services en información y oportunidades de negocio. 7 Microsoft Corporation, “Microsoft Office as a Smart Client”, http://www.microsoft.com/NET/smarclient_Offcie.aspx
32
Un Smart Client es una aplicación cliente diseñada para consumir XML
Web Services e interactuar con los datos expuestos por los mismos, aun
estando fuera de línea. A diferencia de las aplicaciones basadas en
navegador, los Smart Clients muchas veces son soluciones que no
dependen de una conexión al servidor para realizar su procesamiento; en
cambio, la mayoría de la lógica y procesamiento de la aplicación ocurre en
la maquina cliente usando funcionalidad rica. Con Microsoft Office 2003,
una empresa puede integrar nuevos orígenes de datos con las interfaces
de usuarios cómodos y familiares de Microsoft Office Word 2003, Microsoft
Office Excel 2003, u otros programas de Microsoft Office System para
desarrollar soluciones Smart Client flexibles e innovadoras.
1.2.4 APLICACIONES SMART CLIENT MÓVILES.
Los Smart Client móviles son aplicaciones que funcionan en los dispositivos
inteligentes, como: Pocket PCs, Smartphones, y otros dispositivos pequeños
factor de forma tales como cajas de fijar-tapa (set-top). Estas aplicaciones son
desarrolladas usando .NET Compact Framework, que es un subconjunto del
NET Framework.
El .NET Compact Framework tiene muchas de las características del .NET
Framework completo, soporta XML, y utiliza servicios Web. Se optimiza para
el uso en dispositivos pequeños factor de forma, e incluye a diseñador
Windows para desarrollar la interfase de usuario.
Usando Visual Studio .NET para Proyectos de Dispositivos, usted puede
desarrollar a Smart Client que funcionarán en .NET Compact Framework.
Este método permite que usted desarrolle, pruebe, y depure errores en
aplicaciones que usan Visual Studio .NET en un emulador de dispositivos
pequeños factor de forma (form factor). El uso de un emulador acelera
significativamente el desarrollo y la prueba de estos tipos de aplicaciones.
33
Las aplicaciones Smart Client Móviles se utilizan típicamente para
proporcionar el acceso móvil a los datos y servicios fundamentales, o para
recolectar y agregar datos cuando el usuario este en movimiento. Los
ejemplos de estos tipos de aplicaciones son aplicaciones acopiamiento de
datos para seguro y finanzas, aplicaciones de administración de inventarios, y
aplicaciones de administración de productividad del personal.
Figura 9. Arquitectura de una Aplicación Smart Clie nt Móvil 8
1.2.5 DESARROLLANDO APLICACIONES MÓVILES SMART CLIENT
ORIENTADAS A SERVICIOS WEB
La creación de aplicaciones para dispositivos móviles tiene su propio
conjunto de retos. Además de esto, existe el problema de mantener la
conectividad sobre lentas, caras e inestables. El trabajar con servicios Web
y otros protocolos de red que fueron diseñados para banda ancha pueden
convertir en un obstáculo para construir aplicaciones móviles.
8 Microsoft Corporation, “Microsoft Office as a Smart Client”, http://www.microsoft.com/NET/smarclient_Offcie.aspx
34
1.2.6 .NET COMPACT FRAMEWORK Y SMART CLIENT
La adopción del .NET Compact Framework en dispositivos móviles
basados en Windows (incluyendo PocketPC y Smartphones) permite
extender la infraestructura Web Service existente para dar soporte a las
aplicaciones móviles. El .NET Compact Framework tiene muchas ventajas
sobre otras plataformas de tecnología móvil.
Comparado con los Thin Client móviles basados en Micro navegador, los
Smart Client basados en el .NET Compact Framework son más confiables
y rápidos porque son menos dependientes de la red y pueden utilizar el
caché agresivamente para reducir redundancias en la red. En las redes
Wireless no confiables, caras y lentas de hoy en día, la habilidad de
operación fuera de línea es crucial para el éxito de una aplicación móvil.
Además los Smart Client ofrecen experiencias de usuario más ricas a
través de interfaces de usuario mas interactivas que corren en el
dispositivo localmente.
Debido a que los dispositivos móviles tienen espacio de memoria y poder
de procesamiento limitados, la mayoría de los Smart Client delegan
algunas tareas intensivas que utilizan datos o cálculos para los servidores
en el back-end. El .NET Compact Framework ofrece un soporte
sobresaliente para los servicios XML Web, lo que permite construir Smart
Clients conectados que fácilmente se integran en la infraestructura de
servicios existentes.
El .NET Compact Framework esta especialmente designado para seguir
los mismos modelos de aplicación y las APIs disponibles en el .NET
Framework regular. Junto con herramientas tales como Visual Studio .NET
2005, es muy fácil para un desarrollador de escritorio o del lado del
servidor, el empezar a utilizar el Compact Framework. Sin embargo, a
pesar de la similitud aparente entre los ambientes de desarrollo, los
dispositivos móviles y las redes son diferentes de las PCs y las Ethernet en
muchas formas fundamentales. Como desarrollador se debe entender los
35
requerimientos especiales y características de aplicaciones móviles que
utilizan las redes.
1.3 HERRAMIENTAS Y TECNOLOGÍAS SMART CLIENT.
1.3.1 TECNOLOGÍA MICROSOFT.
Los Web Services proveen las bases para el software Smart Client. Hoy en
día, Microsoft ofrece un conjunto integral de tecnologías que proveen de buen
soporte para los Web Services y entregan el potencial para crear soluciones
Smart Client.
Estas tecnologías incluyen:
• El .NET Framework, que provee a los desarrolladores de un ambiente
rico y administrado para crear aplicaciones que se utilizan en una
variedad de dispositivos.
• Microsoft Visual Studio ® .NET, el cual ofrece herramientas globales
para construir rápidamente e integrar los Web Services con las
aplicaciones, junto con una arquitectura abierta que permite a los
desarrolladores el uso de cualquier lenguaje que utiliza el .NET
Framework.
• Microsoft Windows Server ™ 2003, un servidor empresarial de última
generación que provee la plataforma para construir y ejecutar
soluciones conectadas.
• Microsoft Office Professional Edition 2003, lo cual incluye herramientas
propias que permiten el desarrollo rápido de aplicaciones Smart Client.
1.3.2 TECNOLOGÍA JAVA.
Para las aplicaciones Smart Client que poseen una aplicación Java en el
dispositivo cliente, hay dos opciones: Java 2 Standard Edition (J2SE) y Java 2
Micro Edition (J2ME). Las aplicaciones basadas en J2SE son aplicaciones
Java standalone, usando usualmente Personal Java. Personal Java es un
subconjunto de J2SE con un Java Runtime Environment (JRE) más pequeño,
36
adecuado para la capacidad limitada de almacenamiento en los PDA. Las
Java Virtual Machines (JVM) basadas en J2SE existen para una amplia
variedad de dispositivos cliente, incluyendo Pocket PC y Symbian OS, Linux y
dispositivos Palm OS.
Cuando se toma en cuenta a J2ME, hay una variedad de opciones
disponibles. Existen varios perfiles que son idóneos para diferentes
dispositivos. El perfil de interés para aplicaciones Smart Client es el perfil
Personal. Se espera que éste perfil reemplace a Personal Java con el tiempo,
y se convierta en la plataforma ideal para las aplicaciones Java en dispositivos
como los PDA y teléfonos inteligentes.
1.3.3 BASES DE DATOS
Entre las herramientas de bases de datos más usadas para el
almacenamiento de datos por parte de las aplicaciones Smart Client
tenemos:
1.3.3.1 MSDE
El Microsoft Data Engine es un descendiente directo de SQL Server 2000.
Es una tecnología sólida pero le faltan las herramientas de administración
de SQL Server 2000 Standard. También puede ser difícil instalar MSDE en
un computador cliente. Debido a que es gratuito, no existen problemas de
licenciamiento y soporta aplicaciones con transacciones y datos
voluminosos. Desafortunadamente, es fácil para un hacker encontrar y
recuperar los datos.
1.3.3.2 SQL Server 2005 Express
Esta nueva versión de MSDE está mejorada. Mientras que no tiene
muchas de las características del paquete completo de SQL Server, la
edición Express tiene muchas de las características de administración
incluidas. Es buena para aplicaciones con alto volumen de datos, pero
también puede ser un buen objetivo de hackers.
37
1.3.3.3 SQL Anywhere.
Este producto es de Sybase. Como SQL Server 2005 Express, es una
base de datos robusta. Ofrece una gran variedad de características,
incluyendo encriptación completa de los datos. Tiene, sin embargo, un alto
precio.
1.3.3.4 VistaDB
VistaDB 2.0 es una base de datos .NET que se entrega con su aplicación
como un conjunto de DLLs. Soporta el estándar SQL-92 y provee un
conjunto completo de componentes de acceso a datos que emulan a los
que provee Microsoft para SQL Server y Oracle. Es una solución de base
de datos robusta, capaz de manejar cargas de datos moderadas. No
requiere de instalación, aparte de x-copy. La licencia permite distribución
gratuita e ilimitada.
1.3.3.5 XML
Debido a que se tiene que escribir la solución desde cero, es la opción que
más tiempo consume. Se puede almacenar la aplicación en formato XML,
en archivos planos, utilizando la máquina cliente. Se tiene control granular
sobre cómo los datos está almacenados, y una vez que se carga un
documento en un objeto XML Document, se pueden usar consultas xPath
para obtener los datos. A menos que se cifren los archivos de datos XML,
están sujetos al ataque de hackers.
Requerimientos
1.4 METODOLOGÍA DE DESARROLLO.
1.4.1 INTRODUCCIÓN
Las metodologías de Ivar Jacobson (OOSE), Rumbaugh (OMT) y RUP han
sido las más populares entre los analistas y desarrolladores de software.
Esto tiene su base en que cada uno de ellas es muy completa en cierta
área del ciclo de vida del software, así por ejemplo, la OMT es fuerte en el
análisis y débil en el diseño, OOSE es fuerte en el estudio de los
38
requerimientos y análisis y débil en las otras etapas del ciclo de vida del
software y RUP está equilibrado por ser el producto final de tres décadas
de desarrollo y uso práctico.
RUP es muy fácil de aprender ya que para la mayoría de los proyectos, se
ocupan en gran parte el mismo subconjunto de notaciones, además debido
a su sencillez se ha extendido a varios niveles de ingeniería de software.
1.4.2 PROCESO UNIFICADO DE RATIONAL
1.4.2.1 Introducción
El Proceso Unificado de Rational es una metodología de desarrollo de software
orientada a objetos creada por Rational Software Corporation. Los creadores de la
metodología son los mismos que los del UML (Unified Model Language): Ivar
Jacobson, Grady Booch y James Rumbaugh, que respectivamente eran autores
de las metodologías: Process Objectory, el método Booch y la metodología OMT.
Como toda metodología de desarrollo software, su finalidad es convertir las
especificaciones que da el cliente en un sistema. Las características que tiene el
R.U.P. (Rational Unified Process) son:
1. Está basado en componentes. Estos componentes a su vez están
conectados entre sí a través de interfaces.
2. Utiliza el UML como notación básica.
3. Dirigido por casos de uso.
4. Centrado en la arquitectura.
5. Ciclo de vida iterativo e incremental.
Proceso dirigido por casos de uso
Los casos de uso son los encargados de la captura de requisitos. Los objetivos de
la captura de requisitos son dos:
1. Encontrar los verdaderos requisitos
2. Representarlos de un modo adecuado para los usuarios, clientes y
desarrolladores.
Proceso centrado en la arquitectura
39
La arquitectura es un conjunto de representaciones de un sistema tomadas cada
una desde diferentes perspectivas.
Proceso iterativo e incremental
El proceso de desarrollo consta de una serie de hitos que dan el criterio a seguir
por los diseñadores para dar el paso de una fase a la siguiente.
Un proceso iterativo e incremental significa llevar a cabo un desarrollo en
pequeños pasos. Para ello:
1. Se escoge una pequeña parte del sistema y se sigue con todo el ciclo de
vida clásico en cascada (planificación, especificación, diseño, etc ).
2. Si estamos satisfechos con el paso anterior damos otro. Cada uno
proporciona retroalimentación.
3. Las iteraciones son distintas. Al principio del proyecto proporcionan una
comprensión de los requisitos, del problema, de los riesgos y el dominio de
la solución; las últimas nos proporcionan la visión externa (producto para el
cliente).
En una fase se pasan por una serie de iteraciones e incrementos que nos llevan
hasta esos hitos. Los criterios a seguir en las fases son:
Inicio : Viabilidad.
Elaboración : Capacidad de construir el sistema con un presupuesto limitado.
Construcción : Sistema capaz de una operatividad inicial en el entorno del
usuario.
Transición : Sistema que alcanza operatividad final.
1. Inicio : Se describe el producto final. Se responde a las preguntas:
¿Cuáles son las principales funciones del sistema para sus usuarios más
importantes?.
La respuesta está en el modelo de casos de uso simplificado.
¿Cómo podría ser la arquitectura del sistema?
¿Cuál es el plan del proyecto y cuánto costará desarrollar el producto?
40
Figura 10. La vida del proceso unificado 9
2. Elaboración : Se especifican en detalle la mayoría de los casos de uso y se
diseña la arquitectura del sistema. La arquitectura se especifica en forma
de vistas de todos los modelos del sistema y todas ellas especifican el
sistema entero.
3. Construcción: Se construye el producto. Se utilizan la mayor parte de los
recursos. Al finalizar se cubren todos los casos de uso. La pregunta es:
¿Cubre el producto las necesidades de los usuarios como para hacer una
primera entrega?
4. Transición : El producto existe en versión Beta.
Unos pocos usuarios experimentados prueban el producto.
Tipos de defectos:
a) Los que tienen importancia como para justificar una versión incremental
(versión delta )
9 • JACOBSON Ivan; BOOCH Grday; RUMBAUGH Jame; Proceso Unificado de Desarrollo, Pearson Education, 200
41
b) Los que se pueden corregir en la siguiente versión.
A su vez, cada fase puede tener varias iteraciones, cada una con cinco flujos de
trabajo: Requisitos, Análisis, Diseño, Implementación y Prueba.
1.4.2.2 REQUISITOS
Cada tipo de proyecto es diferente y tendrá una aproximación diferente pero se
puede decir que un flujo de trabajo arquetípico tendrá que cubrir los siguientes
puntos:
1. Enumerar los requisitos candidatos
2. Comprender el contexto del sistema
o Modelado del dominio
o Modelado del negocio
3. Capturar requisitos funcionales
4. Capturar requisitos no funcionales
1.4.2.2.1 Artefactos
Los artefactos utilizados en la captura de requisitos son:
1. Modelo de casos de uso:
2. Actor
3. Caso de uso
4. Descripción de la arquitectura
5. Glosario
6. Prototipo de interfaz de usuario
1.4.2.2.2 Trabajadores
Entendemos por trabajador como una persona real que desempeña una función
dentro del proyecto. Una misma persona puede ser varios trabajadores. Tipos de
trabajadores:
1. Analista de sistemas
2. Especificador de casos de uso
3. Diseñador de interfaz de usuario
42
4. Arquitecto
1.4.2.2.3 Flujo de trabajo
1. Encontrar actores y casos de uso
2. Priorizar casos de uso
3. Detallar un caso de uso
4. Prototipar la interfaz de usuario
5. Estructurar el modelo de casos de uso
1.4.2.3 ANÁLISIS
Durante el análisis se estructura el conocimiento que se ha conseguido de los
usuarios por clases y paquetes en vez de casos de uso, de modo que no
contenga inconsistencias. El análisis está pensado para dar la visión interna del
sistema (en vez de la externa de los casos de uso) a los desarrolladores y por eso
está descrito con su lenguaje.
1.4.2.3.1 Artefactos
1. Modelo del análisis
2. Clase del análisis
3. Realización de caso de uso-análisis
4. Paquete del análisis
5. Paquete de servicio
6. Descripción de la arquitectura
1.4.2.3.2 Trabajadores
1. Arquitecto
2. Ingeniero de casos de uso
3. Ingeniero de componentes
1.4.2.3.3 Flujo de trabajo
1. Análisis de la arquitectura
2. Analizar un caso de uso
43
3. Analizar una clase
4. Analizar un paquete
1.4.2.4 DISEÑO
La entrada del diseño es la salida de la fase anterior y la salida del diseño es un
modelo que puede ser implementado directamente. Debido a esta proximidad con
la implementación hay que comprender aspectos no funcionales como lenguajes
de programación, sistema operativo, etc. También es necesario tener el sistema
dividido en trozos manejables por equipos de trabajo. Las interfaces entre los
diferentes subsistemas deberían estar claras. La implementación debería seguir la
misma estructura que el diseño y de esta forma se podría hacer un camino de ida
y vuelta automatizado.
1.4.2.4.1 Artefactos
1. Modelo de diseño
2. Clase del diseño
3. Realización de caso de uso-diseño
4. Subsistema de diseño
5. Interfaz
6. Vista de la arquitectura del modelo de diseño.
7. Modelo de despliegue
• Vista de la arquitectura del modelo de despliegue
1.4.2.4.2 Trabajadores
1. Arquitecto
2. Ingeniero de casos de uso
• Ingeniero de componentes
1.4.2.4.3 Flujo de trabajo
1. Diseño de la arquitectura
2. Diseño de un caso de uso
3. Diseño de una clase
4. Diseño de un subsistema
44
1.4.2.5 IMPLEMENTACIÓN
La implementación tiene como finalidades:
1. Planificar las integraciones. Se sigue un enfoque incremental.
2. Distribuir el sistema entre los nodos.
3. Implementar clases y subsistemas del diseño.
4. Probar los componentes individuales hasta donde sea posible.
1.4.2.5.1 Artefactos
1. Modelo de implementación
2. Componente
3. Subsistema de implementación
4. Interfaz
5. Vista de la arquitectura del modelo de implementación
6. Plan de integración de construcciones
1.4.2.5.2 Trabajadores
1. Arquitecto
2. Ingeniero de componentes
3. Integrador de sistemas
1.4.2.5.3 Flujo de trabajo
1. Implementación de la arquitectura
2. Integrar el sistema
3. Implementar un subsistema
4. Implementar una clase
5. Realizar prueba de unidad
1.4.2.6 PRUEBA
La finalidad de esta fase es planificar, diseñar, implementar las pruebas de cada
iteración.
1.4.2.6.1 Artefactos
45
1. Modelo de pruebas
2. Caso de prueba
3. Procedimiento de prueba
4. Componente de prueba
5. Plan de prueba
6. Evaluación de prueba
1.4.2.6.2 Trabajadores
1. Diseñador de pruebas
2. Ingeniero de componentes
3. Ingeniero de pruebas de integración
4. Ingeniero de pruebas de sistema
1.4.2.6.3 Flujos de trabajo
1. Planificar prueba
2. Diseñar prueba
3. Implementar prueba
4. Realizar pruebas de integración
5. Realizar prueba de sistema
6. Evaluar prueba
46
CAPITULO 2. ANÁLISIS Y DISEÑO DEL SISTEMA PARA
LA COMPRA Y VENTA DE LIBROS UTILIZANDO
TECNOLOGÍA SMART CLIENT. SMARTBOOKSB.
2.1 ANALISIS DEL SISTEMA
2.1.1 ESPECIFICACIÓN DE REQUERIMIENTOS DEL SISTEMA
2.1.1.1 Introducción
En base a levantamiento de información planteadas en las reuniones realizadas
con diversas empresas distribuidoras de Libros, como por ejemplo: Libri Mundi,
Librería Española, etc.; se ha podido determinar e identificar los principales
problemas con el manejo en venta masiva de libros, así como inconvenientes con
los software existentes como la falta de flexibilidad al momento de facturar, los
sistemas instalados no son amigables con el usuario, son difíciles de manejar, no
se puede trabajar fuera de línea, no permite realizar en el sistema pedidos en la
empresa adquiriente.
En este documento se encuentran los requerimientos que debe cumplir
SMARTBOOKSB, como referencia se tiene los Diagramas de Caso de Uso. A
continuación se detalla el propósito, alcance, requerimientos funcionales y no
funcionales, y otras especificaciones requeridas por el sistema.
2.1.1.1.1 Propósito
El propósito del presente documento es dar a conocer sobre requerimientos
funcionales, no funcionales y sobre otros aspectos que permitan proporcionar una
descripción de los requerimientos del software.
2.1.1.1.2 Alcance
47
El documento expuesto se aplica en todos los subsistemas de SMARTBOOKSB y
está asociado al Diagrama de Casos de Uso presentado posteriormente.
2.1.1.1.3 Definiciones, Acrónimos y Abreviaciones
Se encuentra en el Glosario del Documento
2.1.1.1.4 Referencias
• Diagramas de Caso de Uso
• Glosario del Documento
2.1.1.2 Descripción General
Las personas encargadas de la compra y venta de libros, están familiarizadas con
los programas ofimáticos (como Word y Excel). La tecnología Smart Client
permite aprovechar el entorno de éstas herramientas, agregando las ventajas que
posee el software que utiliza acceso a datos e interconectividad mediante redes,
lo que facilitaría el uso de éste sistema y la optimización de las tareas que quiere
desarrollar el usuario.
El objetivo del sistema es el de satisfacer las necesidades de las personas
encargadas de la comercialización de libros, permitiéndoles usar un entorno
familiar y proveyéndoles de herramientas que les ayuden a desempeñar su
trabajo de manera más eficiente.Requerimientos Específicos
2.1.1.3.1 Funcionalidad
El negocio necesita un sistema que realice las siguientes funciones:
i. Administrar Clientes
ii. Administrar compra de libros
iii. Administración de ventas de libros a los clientes
iv. Reportes trimestrales
v. Administrar proveedores
La función Administrar clientes permite al vendedor el ingreso y actualización de
los datos de los clientes.
48
La función Administración de ventas de libros a los clientes permite al vendedor
crear órdenes de venta solicitadas por los diferentes clientes que él visita.
La función Reportes trimestrales le permite al jefe de vendedores, obtener
información de las ventas realizadas, para poder enviar ésta información al
gerente.
La función Administrar Proveedores permite al vendedor el ingreso y la
actualización de los datos de los proveedores
La función Administrar Libros permite al vendedor el ingreso y actualización de la
información de los libros que la empresa comercializa.
La función Administración de compra de libros le permite al jefe de vendedores
generar órdenes de compra, para productos faltantes y nuevos que deben
ingresar a la matriz y le permite al jefe de compras aprobar o denegar dichas
órdenes de compra.
2.1.1.3.2 Usabilidad
• Entrenamiento a Usuarios.- El sistema debe ser amigable y fácil de usar;
los usuarios no requerirán capacitación en herramientas adicionales a
SMARTBOOKSB.
• Estándares de Interfaz de una aplicación.- El sistema debe estar en la
capacidad de proporcionar todas las facilidades que un sistema posee;
mantener áreas definidas para la manipulación de información, botones,
menú y mensajes.
2.1.1.3.3 Confiabilidad
49
• Disponibilidad.- El sistema debe estar disponible en cualquier momento,
las 24 horas del día, los 7 días de la semana, durante todo el año.
• Lapso de Tiempo para Reparación de Fallas.- El tiempo máximo empleado
para la reparación de fallas debe ser de cuatro horas, pues la información
que el sistema genera es crítica para el funcionamiento del negocio.
2.1.1.3.4 Desempeño
• Tiempo de Respuesta.- Cada transacción común del sistema debe
demorarse máximo un segundo.
• Capacidad.- El sistema no va a tener demasiados usuarios, por lo que no
es necesario controlar la cantidad de usuarios concurrentes.
2.1.1.3.5 Soporte
Se utilizarán estándares de programación y de base de datos, para facilitar el
mantenimiento del sistema.
2.1.1.3.6 Restricciones de Diseño
Utilización del motor de base de datos Microsoft SQL Server 2000 y el .NET
Framework versión 2.0.
2.1.2 MODELO DE CASOS DE USO.
2.1.2.1 LISTA DE ACTORES
ACTORES DESCRIPCIÓN
Vendedor Persona encargada de realizar la venta
de productos a los clientes.
Gerente Persona encargada de administrar la
empresa.
50
Cliente Es la persona que compra los libros a
la empresa
Proveedor Entidad que provee de productos a la
empresa.
Jefe de vendedor Persona encargada de aprobar o
denegar un pedido realizado por los
vendedores. Además se encarga de la
logística del recurso humano, en lo que
concierne a los vendedores de la
empresa.
Jefe de Compras Persona encargada de aprobar o
denegar una orden de compra
realizada por el jefe de vendedores.
Tabla 1. Lista de Actores
51
2.1.2.2 Diagrama de Casos Uso
Administrar
Clientes
Administrar venta
de libros
Administrar Compra
de libros
Administrar
proveedores
Cliente
Vendedor
Ingresar datos de clientes
Ingresar datos pedido de venta
Ingresar información de orden de compra
Solicitar compra de libros
Jefe de vendedores
Gerente
Proveedor
Jefe de Compras
Administrar Libros
Solicitar información de ventas
Autorizar pedidos de venta
Autorizar ordenes de compra
Solicitar libros
Ingresar información de libros
Ingresar información de proveedor
«extends»
Consultar clientes
«extends»
Consultar proveedores
«extends»
Consultar libros y stock
Reportes
Información Reportes
Figura 11. Diagrama de Caso de Uso Principal
52
Figura 12. Diagrama de Casos de Uso – Administrar C lientes
Figura 13. Diagrama de Casos de Uso – Administrar V enta de Libros
54
Figura 15. Diagrama de Casos de Uso – Administrar L ibros
Figura 16. Diagrama de Casos de Uso – Administrar P roveedores
55
Figura 17. Diagrama de Casos de Uso – Reportes
2.1.2.3 Especificación del Diagrama de Casos de Uso
2.1.2.3.1 Especificación de Casos de Uso
2.1.2.3.1.1 Administración de Proveedores.
Caso de uso Consultar Datos de Proveedor
Actor Principal Jefe de vendedores
Objetivos Dar información acerca de un proveedor.
Descripción El jefe de vendedores provee una descripción del
proveedor o ingresa directamente el código del mismo.
Precondición Existe información registrada del proveedor
Secuencia 1. El jefe de vendedores ingresa el código o la
descripción del proveedor.
2. El sistema busca el o los proveedores que cumplen
56
con las condiciones.
3. El sistema comprueba que exista información.
4. El jefe de vendedores escoge el proveedor.
5. El sistema presenta la información solicitada.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Extensiones Ninguna
Tabla 2. Especificación de Caso de Uso - Consultar Datos de Proveedor
57
Caso de uso Ingresar Datos de Proveedor
Actor Principal Jefe de vendedores
Objetivos Ingresar información de un proveedor
Descripción El jefe de vendedores ingresa los datos correspondientes
del proveedor.
Precondición Ninguna
Secuencia 1. El jefe de vendedores ingresa los datos del
proveedor.
2. El sistema valida los datos que son requeridos.
3. El sistema ingresa la información.
4. El sistema confirma el ingreso.
Alternativas Los datos ingresados no son válidos.
• El sistema despliega un mensaje indicando que la
información no es válida.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Violación de Reglas y condiciones de integridad de
información
• El sistema despliega un mensaje indicando la
condición o regla que ha sido violada.
• Reinicia el caso de uso.
Extensiones Ninguna
Tabla 3. Especificación de Caso de Uso - Ingresar D atos de Proveedor
58
Caso de uso Actualizar Proveedor
Actor Principal Jefe de vendedores
Objetivos Actualizar información de un proveedor
Descripción Permite actualizar datos del proveedor
Precondición Existencia del proveedor
Secuencia 1. Se utiliza el caso de uso de consulta de proveedores.
2. El jefe vendedores cambia la información respectiva.
3. El sistema valida la información ingresada.
4. El sistema actualiza la información.
5. El sistema confirma la actualización.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Los datos ingresados no son válidos.
• El sistema despliega un mensaje indicando que la
información no es válida.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Violación de Reglas y condiciones de integridad de
información
• El sistema despliega un mensaje indicando la
condición o regla que ha sido violada.
• Reinicia el caso de uso.
Extensiones Consultar datos de proveedor
Tabla 4. Especificación de Caso de Uso - Actualizar Proveedor
59
2.1.2.3.1.2 Administración Clientes
Caso de uso Consultar Datos de Clientes
Actor Principal Vendedor
Objetivos Dar información acerca de un cliente.
Descripción El Vendedor obtiene información del cliente.
Precondición Existe información registrada del cliente
Secuencia 1. El Vendedor ingresa el código o la descripción del
cliente.
2. El sistema busca el o los clientes que cumplen con
las condiciones.
3. El sistema comprueba que exista información.
4. El Vendedor escoge al cliente.
5. El sistema presenta la información solicitada.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
Extensiones Ninguna
Tabla 5. Especificación de Caso de Uso - Consultar Datos de Clientes
60
Caso de uso Ingresar Datos del Cliente
Actor Principal Vendedor
Objetivos Ingresar información de un cliente
Descripción El Vendedor ingresa los datos correspondientes del
cliente obtenidos del mismo.
Precondición Ninguna
Secuencia 1. El Vendedor ingresa los datos del cliente.
2. El sistema valida los datos que son requeridos.
3. El sistema ingresa la información.
4. El sistema confirma el ingreso.
Alternativas Los datos ingresados no son válidos.
• El sistema da un mensaje indicando que la
información no es válida.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Violación de Reglas y condiciones de integridad de
información
• El sistema despliega un mensaje indicando la
condición o regla que ha sido violada.
• Reinicia el caso de uso.
Extensiones Ninguna
Tabla 6. Especificación de Caso de Uso - Ingresar D atos del Cliente
61
Caso de uso Actualizar Cliente
Actor Principal Vendedor
Objetivos Actualizar información de un cliente
Descripción Permite actualizar datos del cliente
Precondición Existencia del cliente
Secuencia 1. Se utiliza en caso de uso consultar datos de clientes
2. El Vendedor cambia la información respectiva.
3. El sistema actualiza la información.
4. El sistema confirma la actualización.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Violación de Reglas y condiciones de integridad de
información
• El sistema despliega un mensaje indicando la
condición o regla que ha sido violada.
• Reinicia el caso de uso.
Extensiones Consultar datos de cliente
Tabla 7. Especificación de Caso de Uso - Actualizar Cliente
62
2.1.2.3.1.3 Administrar Venta de Libros
Caso de uso Consultar Pedido de Venta
Actor Principal Jefe de Vendedores
Objetivos Consultar información de un pedido de venta
Descripción El Jefe de vendedores obtiene información del pedido.
Precondición Existe información registrada del pedido de venta
Secuencia 1. El Jefe de Vendedores ingresa el código o la fecha
del pedido de venta.
2. El sistema busca el o los pedidos que cumplen con
las condiciones.
3. El sistema comprueba que exista información.
4. El Jefe de vendedores escoge el pedido de venta.
5. El sistema presenta la información solicitada.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
Extensiones Ninguna
Tabla 8. Especificación de Caso de Uso - Consultar Pedido de Venta
63
Caso de uso Ingresar Pedido de Venta
Actor Principal Vendedor
Objetivos Ingresar información del pedido de venta
Descripción El Vendedor ingresa los requerimientos del cliente
referentes al nuevo pedido
Precondición � Datos de cliente registrados
� Datos de productos registrados.
Secuencia 1. Se utiliza el caso de uso Consultar datos de cliente,
para colocar los datos del cliente.
2. Se utiliza el caso de uso Consultar Datos de Libros,
para colocar los datos del libro.
3. El vendedor ingresa la cantidad de libro que
necesita.
4. El sistema valida la información ingresada por el
vendedor.
5. El sistema calcula el precio por cada libro y el total
del pedido.
6. El vendedor repite los pasos 2 al 5, para agregar
más libros en el pedido de venta.
7. El sistema registra el ingreso del pedido de la venta
8. El sistema confirma el ingreso.
Alternativas Los datos del producto ingresados no son válidos.
• El sistema da un mensaje indicando que la ingresada
en la cantidad del libro requerido no es valida debido
a que no existe el suficiente stock.
• El vendedor registra el pedido hasta que el cliente
confirme que se haga efectivo el pedido.
• En caso de que el pedido no sea confirmado por el
cliente el pedido es anulado.
64
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Violación de Reglas y condiciones de integridad de
información
• El sistema despliega un mensaje indicando la
condición o regla que ha sido violada.
• Reinicia el caso de uso.
Extensiones • Consultar Datos de Clientes
• Consultar Datos de libros
Tabla 9. Especificación de Caso de Uso - Ingresar P edido de Venta
65
Caso de uso Actualizar Pedido de Venta
Actor Principal Vendedor
Objetivos Actualizar información del pedido de venta
Descripción El Vendedor actualiza la información del pedido de la
venta.
Precondición � Datos de cliente registrados
� Datos de productos registrados.
� Datos de Pedido registrados.
Secuencia 1. Se utiliza el caso de uso Consultar Pedido de Venta.
2. El vendedor actualiza la información del pedido.
3. El sistema valida la información ingresada por el
vendedor.
4. El sistema calcula el precio por cada libro y el total
del pedido.
5. El sistema actualiza el pedido de la venta
6. El sistema confirma la actualización.
Alternativas Los datos del producto ingresados no son válidos.
• El sistema da un mensaje indicando que la ingresada
en la cantidad del libro requerido no es valida debido
a que no existe el suficiente stock.
• El vendedor registra el pedido hasta que el cliente
confirme que se haga efectivo el pedido.
• En caso de que el pedido no sea confirmado por el
cliente el pedido es anulado.
No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
66
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Violación de Reglas y condiciones de integridad de
información
• El sistema despliega un mensaje indicando la
condición o regla que ha sido violada.
• Reinicia el caso de uso.
Extensiones • Consultar Datos de libros
• Consultar Pedido de Venta
Tabla 10. Especificación de Caso de Uso - Actualiz ar Pedido de Venta
67
Caso de uso Autorizar Pedido de Venta
Actor Principal Jefe de Vendedores
Objetivos Aprobar o denegar pedidos de venta
Descripción El Jefe de Vendedores aprueba o deniega el pedido
realizado por el cliente
Precondición � Datos de cliente registrados
� Datos de productos registrados.
� Pedido este registrado
Secuencia 1. Se utiliza el caso de uso Consultar Pedido de Venta.
2. El Jefe de Vendedores aprueba o anula el pedido
3. El sistema actualiza el pedido de la venta
4. El sistema confirma la autorización del pedido.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Extensiones • Consultar pedido de venta
Tabla 11. Especificación de Caso de Uso - Autorizar Pedido de Venta
68
Caso de uso Generar Factura.
Actor Principal Vendedor
Objetivos Generar Factura en base al pedido realizado por el
cliente
Descripción El Vendedor Genera la Factura correspondiente al pedido
realizado por el cliente
Precondición � Datos de cliente registrados
� Datos de productos registrados.
� Datos de pedidos aprobados para clientes.
Secuencia 1. Se utiliza el caso de uso consultar pedido de venta.
2. EL vendedor genera el documento correspondiente a
la Factura en base al pedido aprobado para el
cliente.
3. El sistema registra la factura del pedido de la venta
4. El sistema confirma el ingreso de la factura.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Extensiones • Consultar Pedido de Venta.
• Consultar Datos de libros.
Tabla 12. Especificación de Caso de Uso - Generar F actura.
69
2.1.2.3.1.4 Administración de Orden de Compra
Caso de uso Consultar Orden de Compra
Actor Principal Jefe de Compras
Objetivos Consultar información de una orden de compra
Descripción El Jefe de compras obtiene información de la orden de
compra.
Precondición Existe información registrada de la orden de compra.
Secuencia 1. El Jefe de Compras ingresa el código o la fecha de la
orden de compra.
2. El sistema busca el o las órdenes de compra que
cumplen con las condiciones.
3. El sistema comprueba que exista información.
4. El Jefe de compras escoge la orden de compra.
5. El sistema presenta la información solicitada.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
Extensiones Ninguna
Tabla 13. Especificación de Caso de Uso - Consultar Orden de Compra.
70
Caso de uso Ingresar Orden de Compra
Actor Principal Vendedor
Objetivos Ingresar información de la orden de compra.
Descripción El Vendedor ingresa los requerimientos de nuevos
productos.
Precondición � Datos de proveedores registrados.
Secuencia 1. Se utiliza el caso de uso Consultar datos de
Proveedor, para colocar los datos del proveedor.
2. Se utiliza el caso de uso Consultar Datos de Libros,
para colocar los datos del libro.
3. El vendedor ingresa la cantidad de libro que necesita
se reponga para su posterior comercialización.
4. El sistema valida la información ingresada por el
vendedor.
5. El vendedor repite los pasos 2 al 4, para agregar
más libros en el pedido de venta.
6. El sistema registra el ingreso de la orden de compra
7. El sistema confirma el ingreso.
Alternativas Los datos de la orden de compra ingresados no son
válidos.
• El sistema muestra un mensaje indicando el error.
• Reinicia el caso de uso
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Violación de Reglas y condiciones de integridad de
información
• El sistema despliega un mensaje indicando la
condición o regla que ha sido violada.
71
• Reinicia el caso de uso.
Extensiones • Consultar Datos de Proveedor
• Consultar Datos de libros
Tabla 14. Especificación de Caso de Uso - Ingresar Orden de Compra.
72
Caso de uso Actualizar Orden de Compra
Actor Principal Vendedor
Objetivos Actualizar información de la orden de compra
Descripción El Vendedor actualiza la información de la orden de
compra.
Precondición � Datos de cliente registrados
� Datos de productos registrados.
� Datos de Pedido registrados.
Secuencia 1. Se utiliza el caso de uso Consultar Orden de
Compra.
2. El vendedor actualiza la información de la orden de
compra.
3. El sistema valida la información ingresada por el
vendedor.
4. El sistema actualiza la orden de compra.
5. El sistema confirma la actualización.
Alternativas Los datos del producto ingresados no son válidos.
• El sistema da un mensaje indicando que la ingresada
en la cantidad del libro requerido no es valida debido
a que no existe el suficiente stock.
• El vendedor registra el pedido hasta que el cliente
confirme que se haga efectivo el pedido.
• En caso de que el pedido no sea confirmado por el
cliente el pedido es anulado.
No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
73
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Violación de Reglas y condiciones de integridad de
información.
• El sistema despliega un mensaje indicando la
condición o regla que ha sido violada.
• Reinicia el caso de uso.
Extensiones • Consultar Datos de libros.
• Consultar Orden de Compra.
Tabla 15. Especificación de Caso de Uso - Actualiza r Orden de Compra.
74
Caso de uso Autorizar Orden de Compra
Actor Principal Jefe de Compras
Objetivos Aprobar o denegar ordenes de compra.
Descripción El Jefe de Compras aprueba o deniega la orden de
compra.
Precondición � Datos de proveedor registrados.
� Datos de orden de compra registrados.
Secuencia 1. Se utiliza el caso de uso Consultar Orden de compra.
2. El Jefe de Compras aprueba o anula la orden de
compra.
3. El sistema actualiza la orden de compra.
4. El sistema confirma la autorización de la orden de
compra.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Extensiones • Consultar orden de compra.
Extensiones Consultar Datos de libros
Tabla 16. Especificación de Caso de Uso - Autorizar Orden de Compra.
75
2.1.2.3.1.5 Administración de Libros
Caso de uso Consultar Datos de Libros
Actor Principal Vendedor, Jefe de Vendedores
Objetivos Presentar información acerca de la cantidad de stock del
libro.
Descripción El Vendedor o Jefe de Vendedores ingresa el código o la
descripción del libro del cual requiere realizar la consulta.
Precondición Existe información registrada de productos
Secuencia 1. El Vendedor o Jefe de Vendedores ingresa el código
o la descripción del libro.
2. El sistema busca el o los libros que cumplen con las
condiciones.
3. El sistema comprueba que exista información.
4. El sistema muestra los productos que cumplen con
las condiciones.
5. El Vendedor o Jefe de Vendedores escoge el libro
requerido por el cliente.
6. El sistema presenta la información solicitada.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Extensiones Ninguna
Tabla 17. Especificación de Caso de Uso - Consulta r Datos de Libros
76
Caso de uso Ingresar Datos de Libro.
Actor Principal Jefe de vendedores
Objetivos Ingresar información de libros.
Descripción El Jefe de vendedores ingresa los datos
correspondientes libro.
Precondición Ninguna
Secuencia 1. El Jefe de vendedores ingresa los datos del libro.
2. El sistema valida los datos que son requeridos.
3. El sistema ingresa la información.
4. El sistema confirma el ingreso.
Alternativas Los datos ingresados no son válidos.
• El sistema da un mensaje indicando que la
información no es válida.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Violación de Reglas y condiciones de integridad de
información
• El sistema despliega un mensaje indicando la
condición o regla que ha sido violada.
• Reinicia el caso de uso.
Extensiones Ninguna
Tabla 18. Especificación de Caso de Uso - Ingresar Datos de Libro.
77
Caso de uso Actualizar Libro
Actor Principal Jefe de vendedores
Objetivos Actualizar información de un libro
Descripción Permite actualizar datos del libro
Precondición Existencia del libro
Secuencia 1. Se utiliza en caso de uso Consultar Datos de Libros.
2. El Jefe de vendedores cambia la información
respectiva.
3. El sistema actualiza la información.
4. El sistema confirma la actualización.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Violación de Reglas y condiciones de integridad de
información
• El sistema despliega un mensaje indicando la
condición o regla que ha sido violada.
• Reinicia el caso de uso.
Extensiones Consultar Datos de Libros.
Tabla 19. Especificación de Caso de Uso - Actualiza r Libro.
78
2.1.2.3.1.6 Reportes
Caso de uso Consultar datos de compras
Actor Principal Jefe de Vendedores
Objetivos Presentar información acerca de las compras.
Descripción El Gerente pide información de las compras al Jefe de
Vendedores, éste genera la consulta para el reporte.
Precondición � Datos de proveedor registrados
� Datos de productos registrados.
� Datos de compra registrada
Secuencia 1. El Jefe de Vendedores ingresa los filtros
determinados para el reporte.
2. El sistema busca la información solicitada por el Jefe
de Vendedores con los filtros ingresados.
3. El sistema comprueba que exista información.
4. El sistema presenta la información solicitada de las
compras.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Extensiones Ninguna
Tabla 20. Especificación de Caso de Uso - Consultar datos de compras.
79
Caso de uso Consultar datos de ventas
Actor Principal Jefe de Vendedores
Objetivos Presentar información acerca de las ventas.
Descripción El Gerente pide información de las ventas al Jefe de
Vendedores, éste genera la consulta para el reporte.
Precondición � Datos de clientes registrados
� Datos de productos registrados.
� Datos de ventas registrada
Secuencia 1. El Jefe de Vendedores ingresa los filtros
determinados para el reporte
2. El sistema busca la información solicitada por el Jefe
de Vendedores con los filtros ingresados.
3. El sistema comprueba que exista información.
4. El sistema presenta la información solicitada de las
ventas.
5. El sistema presenta un total de las ventas realizada
por libro.
Alternativas No existe la información requerida.
• El sistema da un mensaje indicando que no existe
información con los datos ingresados.
• Reinicia el caso de uso.
Pérdida de conexión con la base de datos
• El sistema despliega un mensaje indicando que la
conexión con la base de datos se ha perdido.
• Reinicia el caso de uso.
Extensiones Ninguna
Tabla 21. Especificación de Caso de Uso - Consultar datos de ventas.
80
2.1.3 DIAGRAMAS DE SECUENCIA
2.1.4 PAQUETES DE ANÁLISIS
Cliente Libro
Proveedor
Administración
Figura 18. Paquete Administración
Usuario PerfilSeguridad
Empleado
Figura 19. Paquete Seguridad
Ordenes de Compra Orden Compra DetalleOrden_Compra
Autorizacion_Compra
Figura 20. Paquete Órdenes de Compra
81
VentasPedido_Venta
Pedido_Venta_Detalle
Factura
Factura_Detalle
Autorizacion_Venta
Figura 21. Paquete Ventas
2.2 DISEÑO DEL SISTEMA
2.2.1 ARQUITECTURA DEL SISTEMA.
En cuanto a la arquitectura del sistema, cabe destacar que se van a utilizar
elementos de la tecnología Smart Client, claramente expuestos en la siguiente
figura:
Figura 22. Arquitectura del sistema SMARTBOOKSB
82
Servidor de Base de datos.- Se encarga de la gestión y control de las bases de
datos. El servidor de base de datos que se utilizará será Microsoft SQL Server
2000, en el mismo se encontrarán las tablas, procedimientos almacenados, reglas
y tipos de datos definidos por el usuario, cada uno de ellos propios del sistema.
Servidor Web.- Proporciona alojamiento para los web services a ser consumidos
por el sistema.
Interfaz del Cliente.- Aquí se mostrarán los paneles de tareas para Microsoft
Office y se tendrá el manejo de documentos inteligentes, etiquetas inteligentes y
demás.
Lógica del Negocio.- Componentes que guardan el comportamiento propio del
negocio.
Caché Local de Datos.- Permite el almacenamiento local de los datos cuando la
aplicación se encuentra en modo “fuera de línea” (offline).
83
2.2.2 MODELO DE DISEÑO.
2.2.2.1 MODELO DEL DOMINIO
Libro
Factura_Detalle
Orden_Compra_Detalle
1..n
1
1..n
1
Proveedor
1..n
1
1..n
1
Cliente Factura
1..n
1
1..n
1
Pedido_Venta_Detalle
1..n
1
1..n
1
0..1
1
0..1
1
Autorizacion_Compra
Orden_Compra
1
1
1
1
1..n
1
1..n
1
1..n 11..n 1
Autorizacion_Venta
Pedido_Venta
1..n
1
1..n
1
11
11
0..1
1
0..1
1
1..n
1
1..n
1
Empleado
1..n
1
1..n
1
1..n1 1..n1
1..n
1
1..n
1
1..n
1
1..n
1
Usuario
1
1
1
1
Perfil
1..n
1
1..n
1
Figura 23. Modelo del Dominio
84
2.2.2.2 DIAGRAMA DE CLASES
Libro
ISBNTituloAñoCategoriaDescripcionPrecioStockStockMinimoEditorialAutor
Factura_Detalle
CantidadPrecio
Orden_Compra_Detal le
Cantidad
1..n
1
1..n
1
Proveedor
Codigo_ProveedorNombre_ProveedorNombre_ContactoDireccionCiudadPaisTelefonoFaxEmai l
1..n
1
1..n
1
Cliente
Codigo_ClienteNombre_ClienteNombre_ContactoDireccionCiudadPaisTelefonoFaxEmail
Factura
Codigo_FacturaFecha
1..n
1
1..n
1
Pedido_Venta_Detalle
CantidadPrecio
1..n
1
1..n
1
0..1
1
0..1
1
Perfil
Código_PerfilDescripción
Autorizacion_Compra
Codigo_AutorizacionFechaObservacionEstado
Orden_Compra
Codigo_OrdenFechaForma_Pago
1
1
1
1
1..n
1
1..n
1
1..n 11..n 1
Autorizacion_Venta
Codigo_AutorizacionFechaObservacionEstado
Pedido_Venta
Codigo_PedidoFecha
1..n
1
1..n
1
11
11
0..1
1
0..1
1
1..n
1
1..n
1
Usuario
Código_UsuarioDescripciónLoginPassword
1..n
1
1..n
1
Empleado
Codigo_EmpleadoNombreApell idoCargoEmai lTelefono
1..n
1
1..n
1
1..n1 1..n1
1..n
1
1..n
1
1..n
1
1..n
1
1
1
1
1
Figura 24. Diagrama de Clases
85
2.2.2.2.1 Especificación del Diagrama de Clases.
ESPECIFICACIÓN DE CLASES
Clase Descripción
AUTORIZACIÓN_COMPRA Clase que contiene información de autorizaciones
correspondientes a las órdenes de compra, aprobadas o
desaprobadas por el jefe de compras.
ORDEN_COMPRA Clase que contiene las órdenes de compra realizadas
por los vendedores.
ORDEN_COMPRA_DETALLE Clase que contiene los productos asociados a una orden
de compra.
EMPLEADO Clase que contiene información de los empleados de la
empresa comercializadora de libros.
PROVEEDOR Clase que contiene información importante de los
proveedores del producto para la empresa.
PEDIDO_VENTA Clase que contiene información de los pedidos de venta
realizados por los vendedores.
PEDIDO_VENTA_DETALLE Clase que almacena los productos asociados a un
pedido de venta.
LIBRO Clase que contiene información concerniente a los
productos que la empresa comercializa.
AUTORIZACION_VENTA Clase que contiene información de autorizaciones
correspondientes a los pedidos de venta, aprobados o
desaprobados por el jefe de vendedores.
CLIENTE Clase que almacena información personal de los clientes
de la empresa.
FACTURA Clase que guarda la información de facturas emitidas
para los clientes.
FACTURA_DETALLE Clase que contiene la información de los productos
asociados a una factura.
USUARIO Clase que contiene la información correspondiente a los
usuarios que pueden utilizar el sistema.
PERFIL Clase que almacena la información de los diferentes
roles que pueden tener el usuario dentro del sistema.
Tabla 22. Especificación del Diagrama de Clases
86
2.2.2.3 DIAGRAMAS DE SECUENCIA
2.2.2.3.1 Administración Venta de Libros
Figura 25. Diagrama de Secuencia - Administración V enta de Libros
87
2.2.2.3.2 Administración de Proveedores
:UIIngresoSistema :UIProveedor
Jefe de Vendedores ingresa al sistema
:PROVEEDOR
Ingresa Codigo o Descripcion del proveedor
Presenta informacion del proveedorBusqueda de Información que cumpla con las condiciones
Jefe de Vendedores ingresa al sistema Ingresa datos del proveedor
Ingresa la informacionConfirma ingreso de la información
Jefe de Vendedores ingresa al sistema Va al proceso de consulta de proveedores
Ingresa información actualizada
Actualiza la informacionConfirma la actualización
Administracion de Proveedores
Figura 26. Diagrama de Secuencia - Administración d e Proveedores
88
2.2.2.3.3 Administración de Clientes
Figura 27. Diagrama de Secuencia - Administración d e Clientes
89
2.2.2.3.4 Administración de Ordenes de Compra
Figura 28. Diagrama de Secuencia - Administración d e Órdenes de Compra
90
2.2.2.3.5 Administración de Libros
:UIIngresoSistema :UILibros :LIBRO
Administracion de Libros
Jefe de Vendedores ingresa al sistema Ingresa datos de libros
Ingresa la informacionConfirma el ingreso de la informacion
Jefe de Vendedores ingresa al sistema Va al proceso de consultar datos de libros
Actualiza Informacion
Actualiza Infomracion del Libro
Confirma la actualizacion de la informacion
Jefe Vendedores ingresa al sistema Ingresa Codigo o Descripcion del libro
Presenta informacion de libro
Figura 29. Diagrama de Secuencia - Administración d e Libros
92
2.2.2.4 DIAGRAMAS DE COLABORACIÓN
Figura 31. Diagrama de Colaboración – Administrar C lientes
Administrar Libros
Vendedor
(f rom Actores)
:PROVEEDOR
:UILibro
:LIBRO
:Gestor de Libros
3: Ingresar Datos del Libro
4: Consultar datos del Proveedor
8: Consultar Datos del LIbro
9,12: Desplegar Datos del Proveedor
11: Actualizar Datos del Libro
5: Ingresar Datos del Libro6:Desplegar Datos del Libro
13: Actualizar Datos del Libro
Jefe de Vendedores
:UIIngresoSistema
1,6 : Ingresar al Sistema 2,7: Escoger la Opcion de Libros
6: Ingresar al Sistema
Figura 32. Diagrama de Colaboración – Administrar L ibros
Administrar Clientes
Vendedor (from Actores)
:UIIngresoSistema
1,5 : Ingresar al Sistema
:UICliente
2,6: Escoger la Opcion de Cliente
:CLIENTE
:Gestor de Clientes
3: Ingresar Datos del Cliente 7: Consultar Datos del Cliente 9: Actualizar Datos del Cliente
4: Ingresar Datos del Cliente 8: Desplegar Datos del Cliente 10: Actualizar Datos del Cliente
93
Administrar Proveedor
Jefe de Vendedores
:UIIngresoSistema
1,5 : Ingresar al Sistema
:UIProveedor
2,6: Escoger la Opcion de Proveedor
:Gestor de Proveedores
3: Ingreso Datos del Proveedor
7: Consultar Datos del Proveedor
9:Actualizar Datos del Proveedor
:PROVEEDOR
4: Ingreso de Datos del Proveedor8: Deplegar Datos del Proveedor10: Actualizar Datos del Proveedor
Figura 33. Diagrama de Colaboración – Administrar P roveedor
Administrar VentasIngreso del Pedido
:CLIENTE
:LIBROVendedor
(f rom Actores)
:PEDIDO_VENTA
:PEDIDO_VENTA_DETALLE
:Gestor de Clientes
4: Desplegar Datos del Cliente
:Gestor de Libros
6:Desplegar Datos del Libro
:UIIngresoSistema
1: Ingresar al Sistema
:Gestor Pedido Venta
9: Ingresar Datos de Pedido
10: Ingresar Datos del Detalle del Pedido
:UIPedidoVenta
2: Escoger Opcion de Pedio de Venta
3: Consultar Datos de Cliente
5: Consultar Datos del Libro
7: Ingresar Cantidad de Libros.
8: Ingresar Pedido Venta
Figura 34. Diagrama de Colaboración – Ingreso de Pe dido de Venta
94
Administrar VentasConsulta
:CLIENTE
:LIBROJefe de Vendedores
:Gestor de Clientes
4: Desplegar Datos del Cliente
:Gestor de Libros
6:Desplegar Datos del Libro
:UIIngresoSistema
1: Ingresar al Sistema
:UIPedidoVenta
2: Escoger Opcion de Pedio de Venta
3: Consultar Datos de Cliente
5: Consultar Datos del Libro
.
:PEDIDO_VENTA
:PEDIDO_VENTA_DETALLE
:Gestor Pedido Venta
7: Consulta Datos de Pedido de Venta
8: Desplegar Datos de Pedido de Venta
9: Desplegar Datos del Detalle del pedido
Figura 35. Diagrama de Colaboración – Consulta Pedi do de Venta
95
Figura 36. Diagrama de Colaboración – Actualización de Pedido de Venta
Administrar VentasActualizacion
:CLIENTE
:LIBRO
:PEDIDO_VENTA
:PEDIDO_VENTA_DETA LLE
Jefe de Vendedores
:Gestor de Clientes
4: Desplegar Datos del Cliente
:Gestor de Libros
6:Desplegar Datos del Libro
:Gestor Pedido Venta
8: Desplegar Datos de Pedido de Venta 12: Actualizar Datos de Pedido de Venta
9: Desplegar Datos del Detalle del pedido 13: Actualizar Datos del Detalle del pedido
:UIPedidoVenta
3: Consultar Datos de Cliente
5: Consultar Datos del Libro
7: Consulta Datos de Pedido de Venta 11: Actualizar Datos de Pedido de Venta
:UIIngresoSistema
1: Ingresar al Sistema 2: Escoger Opcion de Pedio de Venta . 10: Actualizar Datos de Pedido de Venta
96
Administrar VentasAutorizar
:CLIENTE
:LIBROJefe de Vendedores
:Gestor de Clientes
4: Desplegar Datos del Cliente
:Gestor de Libros
6:Desplegar Datos del Libro
:UIIngresoSistema
1: Ingresar al Sistema
:PEDIDO_VENTA:PEDIDO_VENTA_DETALLE
:AUTORIZACION_VENTA
:Gestor Pedido Venta
8: Desplegar Datos de Pedido de Venta
12: Actualizar Datos de Pedido de Venta
9: Desplegar Datos del Detalle del pedido
13: Actualizar Datos del Detalle del pedido
11: Ingresar Datos de Autorizacion
:UIPedidoVenta
2: Escoger Opcion de Pedio de Venta
3: Consultar Datos de Cliente
5: Consultar Datos del Libro.
7: Consulta Datos de Pedido de Venta
10: Autorizar pedido
Figura 37. Diagrama de Colaboración – Autorizar Ped ido de Venta
97
Administrar VentasGenerar Factura
:CLIENTE
:LIBROVendedor
(f rom Actores)
:Gestor de Clientes
4: Desplegar Datos del Cliente
:Gestor de Libros
6:Desplegar Datos del Libro
:UIIngresoSistema
1: Ingresar al Sistema
:PEDIDO_VENTA:PEDIDO_VENTA_DETALLE
:AUTORIZACION_VENTA
:UIPedidoVenta
2: Escoger Opcion de Pedio de Venta
3: Consultar Datos de Cliente
5: Consultar Datos del Libro
:FACTURA
:FACTURA_DETALLE
:Gestor Pedido Venta
7: Consulta Datos de Pedido de Venta
8: Desplegar Datos de Pedido de Venta9: Desplegar Datos del Detalle del pedido
10: Deslplegar datos de Autorizacion
11: Generar Factura
12:Ingresar datos de factura
13: Ingresar datos de detalle factura
Figura 38. Diagrama de Colaboración – Generar Factu ra
98
Administrar OrdenIngreso
:PROVEEDOR
:LIBROVendedor
(f rom Actores)
:Gestor de Proveedores
4: Deplegar Datos del Proveedor
:Gestor de Libros
6:Desplegar Datos del Libro
:UIIngresoSistema
1: Ingresar al Sistema
:UIOrdenCompra
2: Escoger Opcion de Orden de Compra
3: Consulta Datos de Proveedor
5: Consultar Datos del Libro
7: Ingresar cantidad del lib ro
:ORDEN_COMPRA
:ORDEN_COMPRA_DETALLE
:Gestor Orden de Compra
8: Ingreso Orden de Compra
9: Ingresar Orden de Compra
10: Ingresar Detalle de la Orden
Figura 39. Diagrama de Colaboración – Ingresar Orde n de Compra
99
Administrar OrdenConsulta
:PROVEEDOR
:LIBRO
:Gestor de Proveedores
4: Deplegar Datos del Proveedor
:Gestor de Libros
6:Desplegar Datos del Lib ro
:ORDEN_COMPRA
:ORDEN_COMPRA_DETALLE
:Gestor Orden de Compra
8: Desplegar Orden de Compra
9: Desplegar Detalle de la Orden
:UIOrdenCompra
3: Consulta Datos de Proveedor
5: Consultar Datos del Libro
7: Consultar Orden de Compra
Jefe de Compra :UIIngresoSistema
2: Escoger Opcion de Orden de Compra1:Ingresar al Sistema
Figura 40. Diagrama de Colaboración – Consultar Ord en de Compra
100
Administrar OrdenActualizar
:PROVEEDOR
:LIBRO
:Gestor de Proveedores
4: Deplegar Datos del Proveedor
:Gestor de Libros
6:Desplegar Datos del Libro
:ORDEN_COMPRA
:ORDEN_COMPRA_DETALLE
:Gestor Orden de Compra
8: Desplegar Orden de Compra
12: Actualizar Orden de Compra
9: Desplegar Detalle de la Orden
13: Actualizar Detalle de la Orden
:UIOrdenCompra
3: Consulta Datos de Proveedor
5: Consultar Datos del Libro
7: Consultar Orden de Compra11: Actualizar Orden de Compra
:UIIngresoSistema
2: Escoger Opcion de Orden de Compra
10: Actualizar Orden de Compra
Vendedor
(f rom Actores)
1:Ingresar al Sistema
Figura 41. Diagrama de Colaboración – Actualizar Or den de Compra
101
Administrar OrdenAutorizar
:PROVEEDOR
:LIBRO
:Gestor de Proveedores
4: Deplegar Datos del Proveedor
:Gestor de Libros
6:Desplegar Datos del Libro
Jefe de Compra :UIIngresoSistema
1:Ingresar al Sistema
:ORDEN_COMPRA_DETALLE
:UIOrdenCompra
3: Consulta Datos de Proveedor
5: Consultar Datos del Libro2: Escoger Opcion de Orden de Compra
10: Autorizar Orden de Compra
:ORDEN_COMPRA
:AUTORIZAR_COMPRA
:Gestor Orden de Compra
7: Consultar Orden de Compra
8: Desplegar Orden de Compra9: Desplegar Detalle de la Orden
11: Autorizar Orden de Compra
12: Actualizar Orden de Compra
13: Ingresar Autorizacion
Figura 42. Diagrama de Colaboración – Autorizar Ord en de Compra
102
Reporte Orden de Compra
Jefe de Vendedores
:PROVEEDOR
:UIIngresoSistema
1: Ingresar al Sistema
:Gestor de Proveedores
4: Deplegar Datos del Proveedor
:LIBRO:Gestor de Libros
6:Desplegar Datos del Libro
:UIReportes
2: Escoger la Opcion de Reportes
3:Consultar Datos de Proveedor
5: Consultar Datos de Libro
:ORDEN_COMPRA_DETALLE
:AUTORIZAR_COMPRA:Gestor Orden de Compra
7: Consultar Orden de Compra
9: Desplegar Detalle de la Orden
10: Desplegar Autorizacion
:ORDEN_COMPRA
8: Desplegar Orden de Compra
Figura 43. Diagrama de Colaboración – Reporte de Ór denes de Compra
103
Jefe de Vendedores
Reporte Pedido de Venta
:CLIENTE
:LIBRO:UIIngresoSistema
1: Ingresar al Sistema
:Gestor de Clientes
4: Desplegar Datos del Cliente
:Gestor de Libros
6:Desplegar Datos del Libro
:UIReportes
2: Escoger la Opcion de Reportes
3: Consultar datos de Cliente
5: Consultar Datos de Libro
:PEDIDO_VENTA
:PEDIDO_VENTA_DETALLE
:AUTORIZACION_VENTA
:FACTURA
:FACTURA_DETALLE:Gestor Pedido Venta
7: Consultar Datos de Pedido de Venta
8: Desplegar Datos de Pedido de Venta
9: Desplegar Datos del Detalle del pedido
10: Deslplegar datos de Autorizacion
11: Desplegar Datos de Factura
12: Desplegar Datos del Detalle de la Factura
Figura 44. Diagrama de Colaboración – Reporte Pedid os de Venta
2.2.2.5 DEFINICIÓN DE MÓDULOS.
SMARTBOOKSB contendrá los siguientes módulos:
• Módulo de Ventas.
• Módulo de Compras.
• Módulo de Administración.
• Módulo de Seguridad.
• Módulo de Reportes.
104
2.2.2.5.1 Módulo de Ventas
Este módulo permite a los vendedores ingresar los pedidos de venta para su
posterior aprobación. Además cuenta con opciones para aprobación y
desaprobación de pedidos de venta, por parte del jefe de ventas. A continuación
se presenta información con respecto a las clases y los métodos a utilizarse en
éste módulo:
clsPedidoVenta funIngresarPedidoVenta
funConsultarPedidoVenta
funActualizarPedidoVenta
clsPedidoVentaDetalle funIngresarPedidoVentaDetalle
funConsultarPedidoVentaDetalle
funActualizarPedidoVentaDetalle
clsFactura funIngresarFactura
funConsultarFactura
funActualizarFactura
funGenerarFactura
clsFacturaDetalle funIngresarFacturaDetalle
funConsultarFacturaDetalle
funActualizarFacturaDetalle
clsAutorizacionVenta funAutorizarPedidoVenta
Tabla 23. Clases Módulo de Ventas
2.2.2.5.2 Módulo de Compras
Este módulo permite a los vendedores ingresar las órdenes de compra para su
posterior aprobación. Además cuenta con opciones para aprobación y
desaprobación de órdenes de compra, por parte del jefe de compras. A
continuación se presenta información con respecto a las clases y los métodos a
utilizarse en éste módulo:
105
clsOrdenDeCompra funIngresarOrdenCompra
funConsultarOrdenCompra
funActualizarOrdenCompra
clsOrdenCompraDetalle funIngresarOrdenCompraDetalle
funConsultarOrdenCompraDetalle
funActualizarOrdenCompraDetalle
clsAutorizacionCompra funAutorizarOrdenCompra
Tabla 24. Clases Módulo de Compras
2.2.2.5.3 Módulo de Administración.
Este módulo permite realizar el mantenimiento de la información de clientes,
proveedores y libros. A continuación se presenta información con respecto a las
clases y los métodos a utilizarse en éste módulo:
clsCliente funIngresarCliente
funConsultarCliente
funActualizarCliente
clsLibro funIngresarLibro
funVerificarStockLibro
funActualizarLibro
clsProveedor funIngresarProveedor
funConsultarProveedor
funActualizarProveedor
Tabla 25. Clases Módulo de Administración
2.2.2.5.4 Módulo de Seguridad.
Este módulo permite realizar el mantenimiento de la información de usuarios,
perfiles y empleados. A continuación se presenta información con respecto a las
clases y los métodos a utilizarse en éste módulo:
106
clsPerfil funIngresarPerfil
funConsultarPerfil
funActualizarPerfil
clsUsuario funIngresarUsuario
funConsultarUsuario
funActualizarUsuario
clsEmpleado funIngresarEmpleado
funConsultarEmpleado
funActualizarEmpleado
Tabla 26. Clases Módulo de Seguridad
2.2.2.5.5 Módulo de Reportes.
Este módulo permite consultar información dentro del sistema. Para el efecto se
utilizan los métodos especificados en las anteriores clases.
2.2.2.6 Modelo Relacional Lógico.
Es necesario realizar la conversión del diagrama de clases a un modelo
relacional lógico, ya que dicho modelo es utilizado por la mayoría de gestores de
bases de datos y no existe en la actualidad un DBMS que sea puramente
orientado a objetos.
107
Perfi l
Código_Perfi lDescripción
<pi> A16A80
<M>
Código_Perfi l <pi>
Association_6
Association_17
Association_20
Association_15
Association_23
Association_3
Association_4
Association_16
Association_18
Association_22
Association_21
Association_14
Association_25
Association_8
Association_7
Association_12
Association_13
Association_28
Libro
ISBNTituloAñoCategoriaDescripcionPrecioStockStockMinimoEditorialAutor
<pi> A16A80A4A25A80MNNNA80A80
<M>
ISBN <pi>
Factura_Detal le
CantidadPrecio
NMN
Orden_Compra_Detalle
Cantidad N
Proveedor
Codigo_ProveedorNombre_ProveedorNombre_ContactoDireccionCiudadPaisTelefonoFaxEmail
<pi> A16A80A80A80A30A30A16A16A25
<M>
Codigo_Proveedor <pi>
Cliente
Codigo_ClienteNombre_ClienteNombre_ContactoDireccionCiudadPaisTelefonoFaxEmail
<pi> A16A80A80A80A30A30A16A16A25
<M>
Codigo_Cliente <pi>
Factura
Codigo_FacturaFecha
<pi> A16D
<M>
Codigo_Factura <pi>
Pedido_Venta_Detalle
CantidadPrecio
NMN
Autorizacion_Compra
Codigo_AutorizacionFechaObservacionEstado
<pi> A16DA200A2
<M>
Codigo_Autorizacion <pi>
Orden_Compra
Codigo_OrdenFechaForma_Pago
<pi> A16DA16
<M>
Codigo_Orden <pi>
Autorizacion_Venta
Codigo_AutorizacionFechaObservacionEstado
<pi> A16DA200A2
<M>
Codigo_Autorizacion <pi>
Pedido_Venta
Codigo_PedidoFecha
<pi> A16D
<M>
Codigo_Pedido <pi>
Usuario
Código_UsuarioDescripciónLoginPassword
<pi> A16A80A25A25
<M>
Código_Usuario <pi>
Empleado
Codigo_EmpleadoNombreApell idoCargoEmailTelefono
<pi> A16A80A80A25A25A16
<M>
Codigo_Empleado <pi>
Figura 45. Modelo Relacional Lógico
108
2.2.2.7 Modelo Relacional Físico.
FK_ORDEN_CO_ASSOCIATI_LIBRO
FK_LIBRO_ASSOCIATI_PROVEEDO
FK_FACTURA__ASSOCIATI_FACTURA
FK_PEDIDO_V_ASSOCIATI_LIBRO
FK_FACTURA__ASSOCIATI_PEDIDO_VFK_PEDIDO_V_ASSOCIATI_FACTURA_
FK_AUTORIZA_ASSOCIATI_ORDEN_COFK_ORDEN_CO_ASSOCIATI_AUTORIZA
FK_ORDEN_CO_ASSOCIATI_ORDEN_CO
FK_ORDEN_CO_ASSOCIATI_PROVEEDO
FK_PEDIDO_V_ASSOCIATI_CLIENTE
FK_PEDIDO_V_ASSOCIATI_AUTORIZAFK_AUTORIZA_ASSOCIATI_PEDIDO_V
FK_FACTURA_ASSOCIATI_PEDIDO_VFK_PEDIDO_V_ASSOCIATI_FACTURA
FK_PEDIDO_V_ASSOCIATI_PEDIDO_V
FK_USUARIO_ASSOCIATI_PERFIL
FK_AUTORIZA_ASSOCIATI_EMPLEADO
FK_ORDEN_CO_ASSOCIATI_EMPLEADO
FK_AUTORIZA_ASSOCIATI_EMPLEADO
FK_PEDIDO_V_ASSOCIATI_EMPLEADO
FK_USUARIO_ASSOCIATI_EMPLEADOFK_EMPLEADO_ASSOCIATI_USUARIO
Libro
ISBNCodigo_ProveedorTituloAñoCategoriaDescripcionPrecioStockStockMinimoEditorialAutor
char(16)char(16)char(80)char(4)char(25)char(80)moneynumericnumericchar(80)char(80)
<pk><fk>
Factura_Detalle
Codigo_FacturaCantidadPrecio
char(16)numericmoney
<fk1>
Orden_Compra_Detalle
ISBNCodigo_OrdenCantidad
char(16)char(16)numeric
<fk2><fk1>
Proveedor
Codigo_ProveedorNombre_ProveedorNombre_ContactoDireccionCiudadPaisTelefonoFaxEmail
char(16)char(80)char(80)char(80)char(30)char(30)char(16)char(16)char(25)
<pk>
Cliente
Codigo_ClienteNombre_ClienteNombre_ContactoDireccionCiudadPaisTelefonoFaxEmail
char(16)char(80)char(80)char(80)char(30)char(30)char(16)char(16)char(25)
<pk>
Factura
Codigo_FacturaCodigo_PedidoCodigo_ClienteFecha
char(16)char(16)char(16)datetime
<pk><fk2><fk1>
Pedido_Venta_Detalle
Codigo_PedidoISBNCantidadPrecio
char(16)char(16)numericmoney
<fk1><fk2>
Perfi l
Código_Perfi lDescripción
char(16)char(80)
<pk>
Autorizacion_Compra
Codigo_AutorizacionCodigo_EmpleadoCodigo_OrdenFechaObservacionEstado
char(16)char(16)char(16)datetimechar(200)char(2)
<pk><fk2><fk1>
Orden_Compra
Codigo_OrdenCodigo_EmpleadoCodigo_AutorizacionCodigo_ProveedorFechaForma_Pago
char(16)char(16)char(16)char(16)datetimechar(16)
<pk><fk2><fk1><fk3>
Autorizacion_Venta
Codigo_AutorizacionCodigo_EmpleadoCodigo_PedidoFechaObservacionEstado
char(16)char(16)char(16)datetimechar(200)char(2)
<pk><fk1><fk2>
Pedido_Venta
Codigo_PedidoCodigo_AutorizacionCodigo_FacturaCodigo_ClienteCodigo_EmpleadoFecha
char(16)char(16)char(16)char(16)char(16)datetime
<pk><fk4><fk3><fk2><fk1>
Usuario
Código_UsuarioCodigo_EmpleadoCódigo_Perfi lDescripciónLoginPassword
char(16)char(16)char(16)char(80)char(25)char(25)
<pk><fk2><fk1>
Empleado
Codigo_EmpleadoCódigo_UsuarioUsu_Código_UsuarioNombreApell idoCargoEmailTelefono
char(16)char(16)char(16)char(80)char(80)char(25)char(25)char(16)
<pk><fk2><fk1>
Figura 46. Modelo Relacional Físico
2.2.3 DISEÑO DE INTERFACES
2.2.3.1 Diagrama de Navegación
Para la navegación dentro del sistema, se utilizarán los perfiles especificados para
cada usuario.
109
Figura 47. Diagrama de Navegación – Perfil Administ rador
Figura 48. Diagrama de Navegación – Perfil Vendedor
110
Figura 49. Diagrama de Navegación – Perfil Jefe de Vendedores
Figura 50. Diagrama de Navegación – Perfil Jefe de Compras
111
2.2.3.2 Interfaces de Usuario
2.2.3.2.1 Ingreso al Sistema
• Área para documentos inteligentes.- Contiene los documentos inteligentes
que se van a presentar en el sistema, como son la orden de compra y el
pedido de venta, entre otros.
• Área de logo.- Contiene el logo de la empresa para la que se desarrolla el
sistema.
• Área de Ingreso al Sistema.- Permite ingresar al sistema mediante el uso
de login y password
Figura 51. Diseño de Interfaz - Ingreso al Sistema
112
2.2.3.2.2 Menú
• Área para documentos inteligentes.- Contiene los documentos inteligentes
que se van a presentar en el sistema, como son la orden de compra y el
pedido de venta, entre otros.
• Área de logo.- Contiene el logo de la empresa para la que se desarrolla el
sistema.
• Área de Botones.- Contiene los botones que permiten el acceso a los
diferentes módulos del sistema.
Figura 52. Diseño de Interfaz - Menú
2.2.3.2.3 Principal
• Área para documentos inteligentes.- Contiene los documentos inteligentes
que se van a presentar en el sistema, como son la orden de compra y el
pedido de venta, entre otros.
• Área de logo.- Contiene el logo de la empresa para la que se desarrolla el
sistema.
113
• Área de Ingreso de Datos para Consultas.- Incluye las herramientas para
ingresar códigos o descripciones, las mismas que sirven para realizar
búsqueda de información dentro del sistema.
• Área de Botones.- Incluye botones para el ingreso, selección ó
actualización de la información del documento inteligente.
• Área de Presentación de Información.- Permite mostrar listas de datos, que
son resultado de las consultas del sistema.
Figura 53. Diseño de Interfaz – Principal
114
CAPITULO 3. CONSTRUCCIÓN Y PRUEBAS DEL
SISTEMA PARA LA COMPRA Y VENTA DE LIBROS
UTILIZANDO TECNOLOGÍA SMART CLIENT.
SMARTBOOKSB.
3.1 IMPLENTACIÓN DEL SISTEMA
3.1.1 ALCANCE
El Sistema SMARTBOOKSB se ha desarrollado para Empresas
Comercializadoras de Libros en general.
La implementación del prototipo se basa en las siguientes consideraciones:
• El Sistema esta orientado a la administración de compra y venta de libros
de cualquier género.
• Se podrá utilizar el Sistema sin estar obligatoriamente conectado a la red
de la empresa, es decir, en la máquina local.
• El Sistema no contempla la administración de perfiles y usuarios para el
mismo.
• El Sistema será accedido desde Microsoft Office Word 2003
• Los Smart Documents estarán con un formato preestablecido y no podrán
ser modificados.
3.1.2 HERRAMIENTAS DE DESARROLLO
3.1.2.1 Detalle de las Herramientas
DESCRIPCIÓN DE HERRAMIENTAS
Nombre Descripción
Cliente Microsoft Office
Word 2003
• Fácil de usar.
• Común en el mercado.
• Familiar para los usuarios.
• Compatible con características Smart
Client.
• Compatible para implementar Smart
115
Client.
Base de Datos SQL Server • Servidor Robusto.
• Servicios de transferencia de datos
(DTS Data Transformation Services).
• Administración Multiservidor.
• Duplicación de cualquier base de
datos.
Lenguaje de
Programación
Microsoft Visual
Studio. Net (Basic)
• Trabaja con lenguajes y protocolos
de estándares abiertos.
• Soporte de múltiples lenguajes
compilados.
Tabla 27. Descripción de Herramientas
3.1.3 ESTÁNDARES DE PROGRAMACIÓN
ESTÁNDARES DE PROGRAMACIÓN
Tipo Estándar
Constante cstNombreConstante
Variable Local mTipoDatoNombre
Variable Global gTipoDatoNombre
Función local funNombreFuncion
Argumentos de Función pTipoDatoNombre
Panel panNombrePanel
Clase clsNombre
Smart Documents sdNombreDocumento
Smart Tag stSmartTag
Procedimiento Almacenado spNombreProcedimiento
Archivo XML xmlNombreDocumento
Web Service wbsNombreServicio
Tabla 28. Estándares de Programación
116
3.1.4 DIAGRAMA DE COMPONENTES
3.1.4.1 Generalidades
� Componente .- Es un módulo de software que puede ser código fuente,
código binario, código ejecutable o una librería de clases o de otros
componentes.
� Clase .- Es la definición estructural de un objeto, mediante la cual se
especifican sus atributos o propiedades, así como sus métodos y/o
funcionalidades.
3.1.4.1.1 Diagrama de Componentes
clsVentas
SQL Server
clsBaseDeDatos
clsGestorConexion
clsComprasclsAdministración
Microsoft Office (Documentos Inteligentes)
clsSeguridad
Figura 54. Diagrama de Componentes
3.1.4.2 Descripción del Diagrama de Componentes.
3.1.4.2.1 Microsoft Office
Es el programa principal desde el cual se llaman a los diferentes subprogramas
que permiten la interacción del usuario con el sistema.
3.1.4.2.2 clsVentas
117
Componente para la Administración de las ventas, contiene lo siguiente:
clsPedidodeVentas.vb Contiene las funciones para el
mantenimiento de los pedidos de venta.
clsPedidoVentaDetalle.vb Contiene las funciones para el
mantenimiento de los detalle de los pedidos
de venta.
clsFactura.vb Contiene las funciones para el
mantenimiento de facturas.
clsFacturaDetalle.vb Contiene las funciones para el
mantenimiento de los detalles de facturas.
clsAutorizacionVenta.vb Contienes las funciones para el
mantenimiento de las autorizaciones de
venta.
PedidodeVentas.doc Smart Document para los pedidos de venta.
Factura.doc Smart Document para las facturas.
Tabla 29. Descripción de Componente – clsVentas
3.1.4.2.3 clsAdministración
Componente para la Administración del sistema, contiene lo siguiente:
clsCliente.vb Contiene las funciones para el
mantenimiento de clientes.
clsLibro.vb Contiene las funciones para el
mantenimiento de libros.
clsProveedor.vb Contiene las funciones para el
mantenimiento de proveedores.
Administración.doc Smart Document para realizar la
administración del sistema.
Tabla 30. Descripción de Componente – clsAdministra ción
118
3.1.4.2.4 clsCompras
Componente para la Administración de las órdenes de compra, contiene lo
siguiente:
clsOrdenDeCompra.vb Contiene las funciones para el
mantenimiento de los órdenes de
compra.
clsOrdenCompraDetalle.vb Contiene las funciones para el
mantenimiento de los detalle de los
pedidos de venta.
clsAutorizacionCompra.vb Contienes las funciones para el
mantenimiento de las autorizaciones de
venta.
PedidodeVentas.doc Smart Document para las órdenes de
compra.
Tabla 31. Descripción de Componente – clsCompras
3.1.4.2.5 clsBasedeDatos
Componente para la Administración de la base de datos, contiene lo siguiente:
clsBDD Contiene las funciones para la
administración de la base de datos, así
como para la ejecución de
procedimientos almacenados y retorno
de datos
Tabla 32. Descripción de Componente – clsBDD
3.1.4.2.6 clsGestorConexion
Componente para la Administración de las conexiones con la base de datos, así
como la administración de los estados “en línea” (online) y “fuera de línea”
(offline). Contiene lo siguiente:
119
clsConectionManagement.vb Contiene las funciones para detección
de conexiones a la red.
clsDataLoadingManagement.vb Contiene las funciones para solicitar
que los datos sean cargados en el
caché.
clsQueueManagement.vb Contienes las funciones para controlar
la cola de peticiones cuando una
aplicación se encuentra fuera de línea.
clsExecutor.vb Contiene las funciones para administrar
las políticas de los hilos de ejecución,
utilizados por clsQueuemanagement.vb
clsCacheManagement Contiene las funciones para la
administración del caché local de
datos.
clsServiceAgentManagement Contiene las funciones para la
administración de las llamadas del
cliente fuera de línea.
Tabla 33. Descripción de Componente –clsGestorConex ion
120
3.1.5 DIAGRAMA DE DESPLIEGUE.
Servidor Base de datos
Clientes Ventas
Cliente Compras
TCP/IP TCP/IP
Figura 55. Diagrama de Despliegue
121
3.2 PRUEBAS
3.2.1 INTRODUCCIÓN
Las diferentes pruebas del sistema SMARTBOOK fueron realizadas por los
siguientes encargados: Jefe de Compras, Jefe de Ventas, Vendedores,
Administrador, para verificar la funcionalidad de cada uno de los perfiles existen
en el sistema, así como la rapidez en la operación.
3.2.2 DISEÑO DE PRUEBAS
3.2.2.1 Pruebas Clientes
CASO DE PRUEBA: REALIZAR CONSULTA DEL CLIENTE
ENTRADA: CÓDIGO O DESCRIPCIÓN DEL CLIENTE
RESULTADO ESPERADO: EL VENDEDOR RECIBE LA INFORMACIÓN
CORRESPONDIENTE AL CLIENTE, COMO: NOMBRE,
DIRECCIÓN, CIUDAD, PAÍS, TELÉFONO, EMAIL.
CONDICIONES: EL VENDEDOR DEBE INGRESAR EL CÓDIGO O
DESCRIPCIÓN DEL CLIENTE.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR.
PROCEDIMIENTO
1. EL VENDEDOR INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL CLIENTE.
2. EL VENDEDOR INGRESA EL CÓDIGO O LA DESCRIPCIÓN DEL CLIENTE.
3. EL SISTEMA BUSCA EL O LOS CLIENTES QUE CUMPLEN CON LAS CONDICIONES.
4. EL VENDEDOR ESCOGE AL CLIENTE.
5. EL SISTEMA PRESENTA LA INFORMACIÓN SOLICITADA
CASO 1
CÓDIGO: CLI000000001
DESCRIPCIÓN: LIBRERÍA STUDIUM
122
CASO 2
CÓDIGO: CLI000000002
DESCRIPCIÓN: LIBRERÍA SAN PABLO
Tabla 34. Caso de Prueba – Realizar consulta de cliente
123
CASO DE PRUEBA: REALIZAR INGRESO DATOS DEL CLIENTE
ENTRADA: DATOS DEL CLIENTE
RESULTADO ESPERADO: EL VENDEDOR RECIBE LA CONFIRMACIÓN DE QUE LA
INFORMACIÓN QUE INGRESÓ, HA SIDO REGISTRADA
CONDICIONES:
OBSERVACIÓN : EL REGISTRO DEPENDE DE LA DISPONIBILIDAD DE LA
BASE DE DATOS.
PROCEDIMIENTO
1. EL VENDEDOR INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL CLIENTE.
2. EL VENDEDOR INGRESA LOS DATOS DEL CLIENTE.
3. EL SISTEMA VALIDA LOS DATOS QUE SON REQUERIDOS.
4. EL SISTEMA INGRESA LA INFORMACIÓN.
5. EL SISTEMA CONFIRMA EL INGRESO.
CASO 1
CÓDIGO: CLI000000001
NOMBRE CLIENTE: LIBRERÍA STUDIUM
NOMBRE CONTACTO: MIGUEL MÁRQUEZ
DIRECCIÓN: AMÉRICA Y MÁÑOSCA
CIUDAD: QUITO
PAÍS: ECUADOR
TELÉFONO: 2257549
FAX: 2469714
EMAIL: [email protected]
CASO 2
CÓDIGO: CLI000000002
NOMBRE CLIENTE: LIBRERÍA SAN PABLO
NOMBRE CONTACTO: VERÓNICA AYALA
DIRECCIÓN: AV. 5 DE JUNIO 2810
CIUDAD: GUAYAQUIL
PAÍS: ECUADOR
TELÉFONO: 04 2345789
124
FAX:
EMAIL:
Tabla 35. Caso de Prueba – Realizar Ingreso Datos del Cliente
CASO DE PRUEBA: REALIZAR ACTUALIZACIÓN DEL CLIENTE
ENTRADA: CÓDIGO O DESCRIPCIÓN DEL CLIENTE
RESULTADO ESPERADO: EL VENDEDOR RECIBE LA INFORMACIÓN
CORRESPONDIENTE AL CLIENTE, COMO: NOMBRE,
DIRECCIÓN, CIUDAD, PAÍS, TELÉFONO, EMAIL;
PARA LUEGO REGISTRAR LOS CAMBIOS.
CONDICIONES: EL VENDEDOR DEBE INGRESAR EL CÓDIGO O
DESCRIPCIÓN DEL CLIENTE DEL CUAL DESEA
ACTUALIZAR LA INFORMACIÓN.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR. ADEMÁS, EL REGISTRO DE LAS
MODIFICACIONES DEPENDE DE LA DISPONIBILIDAD
DE LA BASE DE DATOS.
PROCEDIMIENTO
1. EL VENDEDOR INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL CLIENTE.
2. EL VENDEDOR INGRESA EL CÓDIGO O LA DESCRIPCIÓN DEL CLIENTE.
3. EL SISTEMA BUSCA EL O LOS CLIENTES QUE CUMPLEN CON LAS CONDICIONES.
4. EL SISTEMA PRESENTA EL O LOS CLIENTES QUE SE OBTUVIERON DE LA
BÚSQUEDA
5. EL VENDEDOR ESCOGE EL CLIENTE.
6. EL SISTEMA PRESENTA LA INFORMACIÓN SOLICITADA.
7. EL VENDEDOR CAMBIA LA INFORMACIÓN RESPECTIVA.
8. EL SISTEMA ACTUALIZA LA INFORMACIÓN.
9. EL SISTEMA CONFIRMA LA ACTUALIZACIÓN
CASO 1
CÓDIGO: CLI000000001
DESCRIPCIÓN: LIBRERÍA STUDIUM
125
CASO 2
CÓDIGO: CLI000000002
DESCRIPCIÓN: LIBRERÍA SAN PABLO
Tabla 36. Caso de Prueba – Realizar Actualización del Cliente
3.2.2.2 Prueba Libros
CASO DE PRUEBA: REALIZAR CONSULTA DEL LIBROS
ENTRADA: CÓDIGO O DESCRIPCIÓN DEL LIBRO
RESULTADO ESPERADO: EL VENDEDOR O JEFE DE VENDEDORES RECIBE LA
INFORMACIÓN CORRESPONDIENTE AL CLIENTE,
COMO: TÍTULO, AÑO, CATEGORÍA, DESCRIPCIÓN,
PRECIO, STOCK, STOCK MÍNIMO, EDITORIAL,
AUTOR.
CONDICIONES: EL VENDEDOR O JEFE VENDEDORES DEBE
INGRESAR EL CÓDIGO O DESCRIPCIÓN DEL LIBRO.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR.
PROCEDIMIENTO
1. EL VENDEDOR O JEFE DE VENDEDORES INGRESA AL SISTEMA Y ESCOGE LA
OPCIÓN DEL LIBRO.
2. EL VENDEDOR O JEFE DE VENDEDORES INGRESA EL CÓDIGO O LA
DESCRIPCIÓN DEL CLIENTE.
3. EL SISTEMA BUSCA EL O LOS LIBROS QUE CUMPLEN CON LAS CONDICIONES.
4. EL SISTEMA PRESENTA LA INFORMACIÓN DE LOS LIBROS QUE CUMPLIERON
CON LAS CONDICIONES.
5. EL VENDEDOR O JEFE DE VENDEDORES ESCOGE EL LIBRO.
6. EL SISTEMA PRESENTA LA INFORMACIÓN SOLICITADA
CASO 1
ISBN: ISBN0000000001
DESCRIPCIÓN: HARRY POTTER Y EL PRÍNCIPE MESTIZO
CASO 2
126
ISBN: ISBN0000000002
DESCRIPCIÓN: UN GRITO DESESPERADO
Tabla 37. Caso de Prueba – Realizar Consulta del Libros
CASO DE PRUEBA: REALIZAR INGRESO DATOS DEL LIBRO
ENTRADA: DATOS DEL LIBRO
RESULTADO ESPERADO: EL JEFE DE VENDEDORES RECIBE LA CONFIRMACIÓN
DE QUE LA INFORMACIÓN QUE INGRESÓ, HA SIDO
REGISTRADA
CONDICIONES:
OBSERVACIÓN : EL REGISTRO DEPENDE DE LA DISPONIBILIDAD DE LA
BASE DE DATOS.
PROCEDIMIENTO
1. EL JEFE DE VENDEDORES INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL
LIBRO.
2. EL JEFE DE VENDEDORES INGRESA LOS DATOS DEL LIBRO.
3. EL SISTEMA VALIDA LOS DATOS QUE SON REQUERIDOS.
4. EL SISTEMA INGRESA LA INFORMACIÓN.
5. EL SISTEMA CONFIRMA EL INGRESO.
CASO 1
ISBN: ISBN0000000001
TITULO: HARRY POTTER Y EL PRÍNCIPE MESTIZO
AÑO: 2005
CATEGORÍA: INFANTIL
DESCRIPCIÓN: CONTINUACIÓN DE LA SERIA DE LIBROS DE J.K.ROULY
PRECIO: 13.50
STOCK:15
STOCK MÍNIMO:2
EDITORIAL: SALAMANDRA
AUTOR: J.K.ROULY
CASO 2
ISBN: ISBN0000000002
127
TÍTULO: UN GRITO DESESPERADO
AÑO:1994
CATEGORÍA: NOVELA
DESCRIPCIÓN: NOVELA DE SUPERACIÓN PARA PADRES E HIJOS
PRECIO: 6.50
STOCK: 40
STOCK MÍNIMO: 3
EDITORIAL: EDICIONES SELECTAS DIAMANTES
AUTOR :CARLOS CUAUHTÉMOC SÁNCHEZ
Tabla 38. Caso de Prueba – Realizar Ingreso Datos del Libro
CASO DE PRUEBA: REALIZAR ACTUALIZACIÓN DEL LIBRO
ENTRADA: CÓDIGO O DESCRIPCIÓN DEL LIBRO
RESULTADO ESPERADO: EL JEFE DE VENDEDORES RECIBE LA INFORMACIÓN
CORRESPONDIENTE AL CLIENTE, COMO: TÍTULO,
AÑO, CATEGORÍA, DESCRIPCIÓN, PRECIO, STOCK,
STOCK MÍNIMO, EDITORIAL, AUTOR; PARA LUEGO
REGISTRAR LOS CAMBIOS.
CONDICIONES: EL JEFE DE VENDEDORES DEBE INGRESAR EL
CÓDIGO O DESCRIPCIÓN DEL LIBRO DEL CUAL DESEA
ACTUALIZAR LA INFORMACIÓN.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR. ADEMÁS, EL REGISTRO DE LAS
MODIFICACIONES DEPENDE DE LA DISPONIBILIDAD
DE LA BASE DE DATOS.
PROCEDIMIENTO
1. EL JEFE DE VENDEDORES INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL
LIBRO.
2. EL JEFE DE VENDEDORES INGRESA EL CÓDIGO O LA DESCRIPCIÓN DEL LIBRO.
3. EL SISTEMA BUSCA EL O LOS LIBROS QUE CUMPLEN CON LAS CONDICIONES.
4. EL SISTEMA PRESENTA EL O LOS LIBROS QUE SE OBTUVIERON DE LA
128
BÚSQUEDA
5. EL JEFE DE VENDEDORES ESCOGE EL LIBRO.
6. EL SISTEMA PRESENTA LA INFORMACIÓN SOLICITADA.
7. EL JEFE DE VENDEDORES CAMBIA LA INFORMACIÓN RESPECTIVA.
8. EL SISTEMA ACTUALIZA LA INFORMACIÓN.
9. EL SISTEMA CONFIRMA LA ACTUALIZACIÓN
CASO 1
ISBN: ISBN0000000001
DESCRIPCIÓN: HARRY POTTER Y EL PRÍNCIPE MESTIZO
CASO 2
ISBN: ISBN0000000002
DESCRIPCIÓN: UN GRITO DESESPERADO
Tabla 39. Caso de Prueba – Realizar Actualización del Libro
3.2.2.3 Prueba Compra de Libros
CASO DE PRUEBA: REALIZAR CONSULTA DE ORDEN DE COMPRA
ENTRADA: CÓDIGO O FECHA DE LA ORDEN
RESULTADO ESPERADO: EL JEFE DE COMPRAS RECIBE LA INFORMACIÓN
CORRESPONDIENTE A LA ORDEN DE COMPRA Y
DETALLE DE LA ORDEN
CONDICIONES: EL JEFE DE COMPRAS DEBE INGRESAR EL CÓDIGO O
FECHA DE LA ORDEN DE COMPRA.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR.
PROCEDIMIENTO
1. EL JEFE DE COMPRAS INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DE LA
ORDEN DE COMPRA.
2. EL JEFE DE COMPRAS INGRESA EL CÓDIGO O LA FECHA DE LA ORDEN.
3. EL SISTEMA BUSCA LA O LAS ORDENES QUE CUMPLEN CON LAS CONDICIONES.
4. EL SISTEMA PRESENTA LA INFORMACIÓN DE O LA ORDENES QUE CUMPLIERON
CON LAS CONDICIONES.
129
5. EL JEFE DE COMPRAS ESCOGE LA ORDEN.
6. EL SISTEMA PRESENTA LA INFORMACIÓN SOLICITADA
CASO 1
CÓDIGO: ORD000000001
FECHA: 02-06-2006
CASO 2
CÓDIGO: ORD000000002
FECHA: 04-08-2006
Tabla 40. Caso de Prueba – Realizar Consulta de Orden de Compra
CASO DE PRUEBA: REALIZAR INGRESO DATOS DE LA ORDEN DE
COMPRA
ENTRADA: DATOS DE LA ORDEN DE COMPRA Y DETALLE DE LA
ORDEN.
RESULTADO ESPERADO: EL VENDEDOR RECIBE LA CONFIRMACIÓN DE QUE LA
INFORMACIÓN QUE INGRESÓ, HA SIDO REGISTRADA
CONDICIONES:
OBSERVACIÓN : EL REGISTRO DEPENDE DE LA DISPONIBILIDAD DE LA
BASE DE DATOS.
PROCEDIMIENTO
1. EL VENDEDOR INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DE LA ORDEN DE
COMPRA.
2. EL VENDEDOR INGRESA EL CÓDIGO O DESCRIPCIÓN DEL PROVEEDOR.
3. EL SISTEMA BUSCA EL O LOS PROVEEDORES QUE CUMPLEN CON LAS
CONDICIONES.
4. EL SISTEMA PRESENTA LA INFORMACIÓN DE O LOS PROVEEDORES QUE
CUMPLIERON CON LAS CONDICIONES.
5. EL VENDEDOR ESCOGE EL PROVEEDOR QUE REALIZA LA ORDEN.
6. EL VENDEDOR INGRESA EL CÓDIGO O DESCRIPCIÓN DEL LIBRO.
7. EL SISTEMA BUSCA EL O LOS LIBROS QUE CUMPLEN CON LAS CONDICIONES.
8. EL SISTEMA PRESENTA LA INFORMACIÓN DE O LOS LIBROS QUE CUMPLIERON
CON LAS CONDICIONES.
130
9. EL VENDEDOR ESCOGE EL LIBRO QUE REALIZA EL PEDIO.
10. EL VENDEDOR INGRESA LA CANTIDAD DE LIBRO QUE NECESITA.
11. EL VENDEDOR REPITE LOS PASOS 6 AL 10, PARA AGREGAR MÁS LIBROS EN
ORDEN DE COMPRA
12. EL VENDEDOR INGRESA LOS DATOS DE LA ORDEN DE COMPRA Y EL DETALLE
DE LA MISMA
13. EL SISTEMA VALIDA LOS DATOS QUE SON REQUERIDOS.
14. EL SISTEMA INGRESA LA INFORMACIÓN.
15. EL SISTEMA CONFIRMA EL INGRESO.
CASO 1
CÓDIGO: ORD000000001
FECHA: 02-06-2006
CÓDIGO DEL PROVEEDOR: PRV00000000001
FORMA DE PAGO: CHEQUE
ISBN: ISBN0000000001
CANTIDAD: 120
CASO 2
CÓDIGO: ORD000000002
FECHA: 04-08-2006
CÓDIGO DEL PROVEEDOR: PRV00000000002
FORMA DE PAGO: EFECTIVO
ISBN: ISBN0000000002
CANTIDAD: 135
Tabla 41. Caso de Prueba – Realizar Ingreso Datos de la Orden de Compra
CASO DE PRUEBA: REALIZAR ACTUALIZACIÓN DE LA ORDEN DE
COMPRA
ENTRADA: CÓDIGO O FECHA DE LA ORDEN
RESULTADO ESPERADO: EL VENDEDOR RECIBE LA INFORMACIÓN
CORRESPONDIENTE A LA ORDEN Y AL DETALLE DE LA
MISMA, COMO: CÓDIGO, FECHA, CÓDIGO DEL
131
PROVEEDOR, FORMA DE PAGO, ISBN, CANTIDAD;
PARA LUEGO REGISTRAR LOS CAMBIOS.
CONDICIONES: EL VENDEDOR DEBE INGRESAR EL CÓDIGO O FECHA
DEL PEDIDO DEL CUAL DESEA ACTUALIZAR LA
INFORMACIÓN.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR. ADEMÁS, EL REGISTRO DE LAS
MODIFICACIONES DEPENDE DE LA DISPONIBILIDAD
DE LA BASE DE DATOS.
PROCEDIMIENTO
1. EL VENDEDOR INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DE LA ORDEN
DE COMPRA.
2. EL VENDEDOR INGRESA EL CÓDIGO O LA FECHA DE LA ORDEN.
3. EL SISTEMA BUSCA LA O LAS ÓRDENES QUE CUMPLEN CON LAS
CONDICIONES.
4. EL SISTEMA PRESENTA LA INFORMACIÓN DE LA O LAS ÓRDENES QUE
CUMPLIERON CON LAS CONDICIONES.
5. EL VENDEDOR ESCOGE LA ORDEN.
6. EL VENDEDOR CAMBIA LA INFORMACIÓN RESPECTIVA A LA ORDEN DE
COMPRA.
7. EL SISTEMA ACTUALIZA LA INFORMACIÓN.
8. EL SISTEMA CONFIRMA LA ACTUALIZACIÓN
CASO 1
CÓDIGO: ORD000000001
FECHA: 02-06-2006
CASO 2
CÓDIGO: ORD000000002
FECHA: 04-08-2006
Tabla 42. Caso de Prueba – Realizar Actualización de la Orden de Compra
CASO DE PRUEBA: REALIZAR LA AUTORIZACIÓN DE LA ORDEN DE
132
COMPRA
ENTRADA: CÓDIGO O FECHA DE LA ORDEN DE COMPRA
RESULTADO ESPERADO: EL JEFE DE COMPRAS RECIBE LA INFORMACIÓN
CORRESPONDIENTE A LA ORDEN Y AL DETALLE DE LA
MISMA; PARA LUEGO REALIZAR LA AUTORIZACIÓN O
NEGACIÓN DE LA MISMA.
CONDICIONES: EL JEFE DE COMPRAS DEBE INGRESAR EL CÓDIGO O
FECHA DE LA ORDEN DE LA CUAL DESEA REALIZAR
LA AUTORIZACIÓN.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR. ADEMÁS, EL REGISTRO DE LAS
MODIFICACIONES DEPENDE DE LA DISPONIBILIDAD
DE LA BASE DE DATOS.
PROCEDIMIENTO
1. EL JEFE DE COMPRAS INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DE LA
ORDEN DE COMPRA.
2. EL JEFE DE COMPRAS INGRESA EL CÓDIGO O LA FECHA DE LA ORDEN.
3. EL SISTEMA BUSCA LA O LAS ÓRDENES QUE CUMPLEN CON LAS CONDICIONES.
4. EL SISTEMA PRESENTA LA INFORMACIÓN DE LA O LAS ÓRDENES QUE
CUMPLIERON CON LAS CONDICIONES.
5. EL JEFE DE COMPRAS ESCOGE LA ORDEN.
6. EL JEFE DE COMPRAS APRUEBA O ANULA LA ORDEN DE COMPRA
7. EL SISTEMA ACTUALIZA LA ORDEN DE COMPRA
8. EL SISTEMA CONFIRMA LA AUTORIZACIÓN DE LA ORDEN DE COMPRA
CASO 1
CÓDIGO: ORD000000001
FECHA: 02-06-2006
CASO 2
CÓDIGO: ORD000000002
FECHA: 04-08-2006
Tabla 43. Caso de Prueba – Realizar la Autorización de la Orden de Compra
133
3.2.2.4 Prueba Venta de Libros
CASO DE PRUEBA: REALIZAR CONSULTA DEL PEDIDO DE VENTA
ENTRADA: CÓDIGO O FECHA DEL PEDIDO
RESULTADO ESPERADO: EL JEFE DE VENDEDORES RECIBE LA INFORMACIÓN
CORRESPONDIENTE AL PEDIDO DE VENTA Y
DETALLE DEL PEDIDO
CONDICIONES: EL JEFE DE VENDEDORES DEBE INGRESAR EL
CÓDIGO O FECHA DEL PEDIDO DE VENTA.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR.
PROCEDIMIENTO
1. EL JEFE DE VENDEDORES INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL
PEDIDO DE VENTA.
2. EL JEFE DE VENDEDORES INGRESA EL CÓDIGO O LA FECHA DEL PEDIDO.
3. EL SISTEMA BUSCA EL O LOS PEDIDO QUE CUMPLEN CON LAS CONDICIONES.
4. EL SISTEMA PRESENTA LA INFORMACIÓN DE O LOS PEDIDOS QUE CUMPLIERON
CON LAS CONDICIONES.
5. EL JEFE DE VENDEDORES ESCOGE EL PEDIDO.
6. EL SISTEMA PRESENTA LA INFORMACIÓN SOLICITADA
CASO 1
CÓDIGO: PED0000000001
FECHA: 02-06-2006
CASO 2
CÓDIGO: PED0000000002
FECHA: 05-07-2006
Tabla 44. Caso de Prueba – Realizar Consulta del Pedido de Venta
CASO DE PRUEBA: REALIZAR INGRESO DATOS DE PEDIDO DE VENTA
ENTRADA: DATOS DEL PEDIDO Y DETALLE DEL PEDIDO
RESULTADO ESPERADO: EL VENDEDOR RECIBE LA CONFIRMACIÓN DE QUE LA
134
INFORMACIÓN QUE INGRESÓ, HA SIDO REGISTRADA
CONDICIONES:
OBSERVACIÓN : EL REGISTRO DEPENDE DE LA DISPONIBILIDAD DE LA
BASE DE DATOS.
PROCEDIMIENTO
1. EL VENDEDOR INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL PEDIDO DE
VENTA.
2. EL VENDEDOR INGRESA EL CÓDIGO O DESCRIPCIÓN DEL CLIENTE.
3. EL SISTEMA BUSCA EL O LOS CLIENTES QUE CUMPLEN CON LAS CONDICIONES.
4. EL SISTEMA PRESENTA LA INFORMACIÓN DE O LOS CLIENTES QUE
CUMPLIERON CON LAS CONDICIONES.
5. EL VENDEDOR ESCOGE EL CLIENTE QUE REALIZA EL PEDIO.
6. EL VENDEDOR INGRESA EL CÓDIGO O DESCRIPCIÓN DEL LIBRO.
7. EL SISTEMA BUSCA EL O LOS LIBROS QUE CUMPLEN CON LAS CONDICIONES.
8. EL SISTEMA PRESENTA LA INFORMACIÓN DE O LOS LIBROS QUE CUMPLIERON
CON LAS CONDICIONES.
9. EL VENDEDOR ESCOGE EL LIBRO QUE REALIZA EL PEDIO.
10. EL VENDEDOR INGRESA LA CANTIDAD DE LIBRO QUE NECESITA.
11. EL SISTEMA CALCULA EL PRECIO POR CADA LIBRO Y EL TOTAL DEL PEDIDO
12. EL VENDEDOR REPITE LOS PASOS 6 AL 11, PARA AGREGAR MÁS LIBROS EN EL
PEDIDO DE VENTA
13. EL VENDEDOR INGRESA LOS DATOS DEL PEDIDO Y DETALLE DEL PEDIDO.
14. EL SISTEMA VALIDA LOS DATOS QUE SON REQUERIDOS.
15. EL SISTEMA INGRESA LA INFORMACIÓN.
16. EL SISTEMA CONFIRMA EL INGRESO.
CASO 1
CÓDIGO: PED0000000001
FECHA: 02-06-2006
CÓDIGO DEL CLIENTE: CLI000000001
ISBN: ISBN0000000002
CANTIDAD: 68
135
PRECIO: 5.2
CASO 2
CÓDIGO: PED0000000002
FECHA: 05-07-2006
CÓDIGO DEL CLIENTE: CLI000000002
ISBN: ISBN0000000001
CANTIDAD: 34
PRECIO: 11.5
Tabla 45. Caso de Prueba – Realizar Ingreso Datos de Pedido de Venta
CASO DE PRUEBA: REALIZAR ACTUALIZACIÓN DEL PEDIDO
ENTRADA: CÓDIGO O FECHA DEL PEDIDO
RESULTADO ESPERADO: EL VENDEDOR RECIBE LA INFORMACIÓN
CORRESPONDIENTE AL PEDIO Y AL DETALLE DEL
MISMO, COMO: CÓDIGO, FECHA ,CÓDIGO DEL
CLIENTE, ISBN,
CANTIDAD, PRECIO; PARA LUEGO REGISTRAR LOS
CAMBIOS.
CONDICIONES: EL VENDEDOR DEBE INGRESAR EL CÓDIGO O FECHA
DEL PEDIDO DEL CUAL DESEA ACTUALIZAR LA
INFORMACIÓN.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR. ADEMÁS, EL REGISTRO DE LAS
MODIFICACIONES DEPENDE DE LA DISPONIBILIDAD
DE LA BASE DE DATOS.
PROCEDIMIENTO
1. EL VENDEDOR INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL PEDIDO DE
VENTA.
2. EL VENDEDOR INGRESA EL CÓDIGO O LA FECHA DEL PEDIDO.
136
3. EL SISTEMA BUSCA EL O LOS PEDIDO QUE CUMPLEN CON LAS
CONDICIONES.
4. EL SISTEMA PRESENTA LA INFORMACIÓN DE O LOS PEDIDOS QUE
CUMPLIERON CON LAS CONDICIONES.
5. EL VENDEDOR ESCOGE EL PEDIDO.
6. EL VENDEDOR CAMBIA LA INFORMACIÓN RESPECTIVA DEL PEDIDO.
7. EL SISTEMA ACTUALIZA LA INFORMACIÓN.
8. EL SISTEMA CONFIRMA LA ACTUALIZACIÓN
CASO 1
CÓDIGO: PED0000000001
FECHA: 02-06-2006
CASO 2
CÓDIGO: PED0000000002
FECHA: 05-07-2006
Tabla 46. Caso de Prueba – Realizar Actualización del Pedido
CASO DE PRUEBA: REALIZAR LA AUTORIZACIÓN DEL PEDIDO
ENTRADA: CÓDIGO O FECHA DEL PEDIDO
RESULTADO ESPERADO: EL JEFE DE VENDEDORES RECIBE LA INFORMACIÓN
CORRESPONDIENTE AL PEDIO Y AL DETALLE DEL
MISMO; PARA LUEGO REALIZAR LA AUTORIZACIÓN O
NEGACIÓN DEL MISMO.
CONDICIONES: EL JEFE DE VENDEDORES DEBE INGRESAR EL
CÓDIGO O FECHA DEL PEDIDO DEL CUAL DESEA
REALIZAR LA AUTORIZACIÓN.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR. ADEMÁS, EL REGISTRO DE LAS
MODIFICACIONES DEPENDE DE LA DISPONIBILIDAD
DE LA BASE DE DATOS.
PROCEDIMIENTO
1. EL JEFE DE VENDEDORES INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL
137
PEDIDO DE VENTA.
2. EL JEFE DE VENDEDORES INGRESA EL CÓDIGO O LA FECHA DEL PEDIDO.
3. EL SISTEMA BUSCA EL O LOS PEDIDO QUE CUMPLEN CON LAS CONDICIONES.
4. EL SISTEMA PRESENTA LA INFORMACIÓN DE O LOS PEDIDOS QUE CUMPLIERON
CON LAS CONDICIONES.
5. EL JEFE DE VENDEDORES ESCOGE EL PEDIDO.
6. EL JEFE DE VENDEDORES APRUEBA O ANULA EL PEDIDO
7. EL SISTEMA ACTUALIZA EL PEDIDO DE LA VENTA
8. EL SISTEMA CONFIRMA LA AUTORIZACIÓN DEL PEDIDO
CASO 1
CÓDIGO: PED0000000001
FECHA: 02-06-2006
CASO 2
CÓDIGO: PED0000000002
FECHA: 05-07-2006
Tabla 47. Caso de Prueba – Realizar la Autorización del Pedido
CASO DE PRUEBA: REALIZAR LA GENERACIÓN DE FACTURA DEL
PEDIDO
ENTRADA: CÓDIGO O FECHA DEL PEDIDO
RESULTADO ESPERADO: EL VENDEDOR RECIBE LA INFORMACIÓN
CORRESPONDIENTE AL PEDIO Y AL DETALLE DEL
MISMO EL CUAL SE ENCUENTRA APROBADO; PARA
LUEGO REALIZAR LA GENERACIÓN DE LA FACTURA.
CONDICIONES: EL VENDEDOR DEBE INGRESAR EL CÓDIGO O FECHA
DEL PEDIDO DEL CUAL DESEA REALIZAR LA
GENERACIÓN DE LA FACTURA.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR. ADEMÁS, EL REGISTRO DE LAS
MODIFICACIONES DEPENDE DE LA DISPONIBILIDAD
DE LA BASE DE DATOS.
138
PROCEDIMIENTO
1. EL VENDEDOR INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL PEDIDO DE
VENTA.
2. EL VENDEDOR INGRESA EL CÓDIGO O LA FECHA DEL PEDIDO.
3. EL SISTEMA BUSCA EL O LOS PEDIDO QUE CUMPLEN CON LAS CONDICIONES.
4. EL SISTEMA PRESENTA LA INFORMACIÓN DE O LOS PEDIDOS QUE CUMPLIERON
CON LAS CONDICIONES.
5. EL VENDEDOR ESCOGE EL PEDIDO.
6. EL VENDEDOR GENERA LA FACTURA DEL PEDIDO
7. EL SISTEMA REGISTRA LA FACTURA DEL PEDIDO DE LA VENTA Y EL DETALLE
DEL MISMO.
8. EL SISTEMA CONFIRMA EL INGRESO DE LA FACTURA.
CASO 1
CÓDIGO: PED0000000001
FECHA: 02-06-2006
CASO 2
CÓDIGO: PED0000000002
FECHA: 05-07-2006
Tabla 48. Caso de Prueba – Realizar la Generación de Factura del Pedido
3.2.2.5 Prueba Proveedores
CASO DE PRUEBA: REALIZAR CONSULTA DE PROVEEDOR
ENTRADA: CÓDIGO O DESCRIPCIÓN DEL PROVEEDOR
RESULTADO ESPERADO: EL JEFE DE VENDEDORES RECIBE LA INFORMACIÓN
CORRESPONDIENTE AL PROVEEDOR, COMO:
NOMBRE, DIRECCIÓN, CIUDAD, PAÍS, TELÉFONO,
EMAIL.
CONDICIONES: EL JEFE DE VENDEDORES DEBE INGRESAR EL
CÓDIGO O DESCRIPCIÓN DE PROVEEDOR
EXISTENTES.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR.
139
PROCEDIMIENTO
1. EL JEFE DE VENDEDORES INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL
PROVEEDOR.
2. EL JEFE DE VENDEDORES INGRESA EL CÓDIGO O LA DESCRIPCIÓN DEL
PROVEEDOR.
3. EL SISTEMA BUSCA EL O LOS PROVEEDORES QUE CUMPLEN CON LAS
CONDICIONES.
4. EL SISTEMA PRESENTA EL O LOS PROVEEDORES QUE SE OBTUVIERON DE LA
BÚSQUEDA
5. EL JEFE DE VENDEDORES ESCOGE EL PROVEEDOR.
6. EL SISTEMA PRESENTA LA INFORMACIÓN SOLICITADA.
CASO 1
CÓDIGO: PRV00000000001
DESCRIPCIÓN: LECTORUM
CASO 2
CÓDIGO: PRV00000000002
DESCRIPCIÓN: PRENTICE HALL
Tabla 49. Caso de Prueba – Realizar Consulta de Proveedor
CASO DE PRUEBA: REALIZAR INGRESO DATOS DE PROVEEDOR
ENTRADA: DATOS DEL PROVEEDOR
RESULTADO ESPERADO: EL JEFE DE VENDEDORES RECIBE LA CONFIRMACIÓN
DE QUE LA INFORMACIÓN QUE INGRESÓ, HA SIDO
REGISTRADA
CONDICIONES:
OBSERVACIÓN : EL REGISTRO DEPENDE DE LA DISPONIBILIDAD DE LA
BASE DE DATOS.
PROCEDIMIENTO
1. EL JEFE DE VENDEDORES INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL
PROVEEDOR.
2. EL JEFE DE VENDEDORES INGRESA LOS DATOS DEL PROVEEDOR.
140
3. EL SISTEMA VALIDA LOS DATOS QUE SON REQUERIDOS.
4. EL SISTEMA INGRESA LA INFORMACIÓN.
5. EL SISTEMA CONFIRMA EL INGRESO.
CASO 1
CÓDIGO: PRV00000000001
NOMBRE PROVEEDOR: LECTORUM
NOMBRE CONTACTO: BELÉN VACAS
DIRECCIÓN:AV. DE LOS SHYRIS NO. 1240 Y PORTUGAL
CIUDAD: QUITO
PAÍS: ECUADOR
TELÉFONO:2437009
FAX: 2467009
EMAIL:
CASO 2
CÓDIGO: PRV00000000002
NOMBRE PROVEEDOR: PRENTICE HALL
NOMBRE CONTACTO: ISABEL MÁRQUEZ
DIRECCIÓN:
CIUDAD: GUAYAQUIL
PAÍS: ECUADOR
TELÉFONO: 04 2345978
FAX.
EMAIL:
Tabla 50. Caso de Prueba – Realizar Ingreso Datos de Proveedor
141
CASO DE PRUEBA: REALIZAR ACTUALIZACIÓN DE PROVEEDOR
ENTRADA: CÓDIGO O DESCRIPCIÓN DEL PROVEEDOR
RESULTADO ESPERADO: EL JEFE DE VENDEDORES RECIBE LA INFORMACIÓN
CORRESPONDIENTE AL PROVEEDOR, COMO:
NOMBRE, DIRECCIÓN, CIUDAD, PAÍS, TELÉFONO,
EMAIL; PARA LUEGO REGISTRAR LOS CAMBIOS.
CONDICIONES: EL JEFE DE VENDEDORES DEBE INGRESAR EL
CÓDIGO O DESCRIPCIÓN DEL PROVEEDOR DEL CUAL
DESEA ACTUALIZAR LA INFORMACIÓN.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR. ADEMÁS, EL REGISTRO DE LAS
MODIFICACIONES DEPENDE DE LA DISPONIBILIDAD
DE LA BASE DE DATOS.
PROCEDIMIENTO
1. EL JEFE DE VENDEDORES INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DEL
PROVEEDOR.
2. EL JEFE DE VENDEDORES INGRESA EL CÓDIGO O LA DESCRIPCIÓN DEL
PROVEEDOR.
3. EL SISTEMA BUSCA EL O LOS PROVEEDORES QUE CUMPLEN CON LAS
CONDICIONES.
4. EL SISTEMA PRESENTA EL O LOS PROVEEDORES QUE SE OBTUVIERON DE LA
BÚSQUEDA
5. EL JEFE DE VENDEDORES ESCOGE EL PROVEEDOR.
6. EL SISTEMA PRESENTA LA INFORMACIÓN SOLICITADA.
7. EL JEFE VENDEDORES CAMBIA LA INFORMACIÓN RESPECTIVA.
8. EL SISTEMA ACTUALIZA LA INFORMACIÓN.
9. EL SISTEMA CONFIRMA LA ACTUALIZACIÓN
CASO 1
CÓDIGO: PRV00000000001
DESCRIPCIÓN: LECTORUM
142
CASO 2
CÓDIGO: PRV00000000002
DESCRIPCIÓN: PRENTICE HALL
Tabla 51. Caso de Prueba – Realizar Actualización de Proveedor
3.2.2.6 Prueba Reporte Compra de Libros
CASO DE PRUEBA: REALIZAR REPORTE DE ORDEN DE COMPRA
ENTRADA: FECHA INICIO Y FECHA FIN
RESULTADO ESPERADO: EL JEFE DE VENDEDORES RECIBE LA INFORMACIÓN
CORRESPONDIENTE A LA ORDEN DE COMPRA Y
DETALLE DE LA ORDEN
CONDICIONES: EL JEFE DE VENDEDORES DEBE INGRESAR LA
FECHA INICIO Y FECHA FIN DE LA ORDEN DE
COMPRA.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA INFORMACIÓN
DEPENDE DEL VOLUMEN DE REGISTROS QUE SE
VAYAN A MOSTRAR.
PROCEDIMIENTO
1. EL JEFE DE VENDEDORES INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DE LA
REPORTES
2. EL JEFE DE VENDEDORES ESCOGE LA OPCIÓN DEL REPORTE DE ORDEN DE
COMPRA
3. EL JEFE DE VENDEDORES INGRESA LA FECHA INICIO Y LA FECHA FIN ENTRE
LAS QUE DESEA REALIZAR EL REPORTE
4. EL SISTEMA BUSCA LA O LAS ÓRDENES QUE CUMPLEN CON LAS CONDICIONES.
5. EL SISTEMA PRESENTA LA INFORMACIÓN DE O LAS ORDENES QUE
CUMPLIERON CON LAS CONDICIONES.
CASO 1
FECHA INICIO: 01-01-2006
FECHA FIN: 31-01-2006
CASO 2
FECHA INICIO: 01-05-2006
143
FECHA FIN: 30-05-2006
Tabla 52. Caso de Prueba – Realizar Reporte de Orden de Compra
3.2.2.7 Prueba Reporte Ventas de Libros
CASO DE PRUEBA: REALIZAR REPORTE DE PEDIDO DE VENTA
ENTRADA: FECHA INICIO Y FECHA FIN
RESULTADO ESPERADO: EL JEFE DE VENDEDORES RECIBE LA
INFORMACIÓN CORRESPONDIENTE AL PEDIDO
DE VENTA Y DETALLE DEL PEDIDO
CONDICIONES: EL JEFE DE VENDEDORES DEBE INGRESAR LA
FECHA INICIO Y FECHA FIN DEL PEDIDO DE
VENTA.
OBSERVACIÓN : EL TIEMPO DE PRESENTACIÓN DE LA
INFORMACIÓN DEPENDE DEL VOLUMEN DE
REGISTROS QUE SE VAYAN A MOSTRAR.
PROCEDIMIENTO
1. EL JEFE DE VENDEDORES INGRESA AL SISTEMA Y ESCOGE LA OPCIÓN DE LA
REPORTES
2. EL JEFE DE VENDEDORES ESCOGE LA OPCIÓN DEL REPORTE DEL PEDIDO DE
VENTA.
3. EL JEFE DE VENDEDORES INGRESA LA FECHA INICIO Y LA FECHA FIN ENTRE
LAS QUE DESEA REALIZAR EL REPORTE
4. EL SISTEMA BUSCA EL O LOS PEDIDOS QUE CUMPLEN CON LAS CONDICIONES.
5. EL SISTEMA PRESENTA LA INFORMACIÓN DE EL O LOS PEDIDOS QUE
CUMPLIERON CON LAS CONDICIONES.
CASO 1
FECHA INICIO: 01-01-2006
FECHA FIN: 31-01-2006
CASO 2
FECHA INICIO: 01-05-2006
144
FECHA FIN: 30-05-2006
Tabla 53. Caso de Prueba – Realizar Reporte de Pedido de Venta
3.2.3 RESULTADOS:
En base a las pruebas realizadas para cada uno de los casos propuestos se
obtuvieron los siguientes resultados:
• Para los valores de entrada en cada uno de los casos de prueba de
registro de la información, el resultado fue el esperado. Para los datos de
prueba ingresados; en el caso de que los datos no cumplen con las
condiciones establecidas, se despliega el mensaje de error respectivo
• Para los valores de entrada en cada uno de los casos de prueba de
consulta de la información, el resultado fue el esperado. Para los datos de
prueba ingresados; en el caso de que los datos no cumplen con las
condiciones establecidas, se despliega el mensaje informativo
correspondiente.
Los resultados obtenidos fueron acordes a las expectativas tanto de los usuarios
cada uno de sus perfiles así como los del Dep. de sistemas de la librería que
cumplieron con todos las expectativas planteados en el levantamiento de
requerimientos.
En la parte técnica se realizaron pruebas para verificar la integridad de
información ingresada en el sistema, como datos de cliente, libros, proveedores, y
la generación exitosa de pedidos de venta, ordenes de compra y facturas estas
pruebas se realizaron tanto en el desarrollo del sistema como la implantación del
mismo, siendo consistentes comparado con el proceso realizado manualmente,
mejorando el proceso y optimizando el tiempo de operación.
145
CAPITULO 4. CASO DE ESTUDIO.
4.1 IMPLANTACIÓN DEL SISTEMA
4.1.1 SELECCIÓN DEL AMBIENTE
Para la implantación del sistema SMARTBOOKSB, se escogió a la distribuidora
de libros líder en el país: LIBRIMUNDI, debido a las facilidades ofrecidas para la
captura de requerimientos y desarrollo de la aplicación.
4.1.2 AMBIENTE TECNOLÓGICO
4.1.2.1 Comunicaciones:
� Red interna LAN, con un ancho de banda de 100 Mbps.
� Firewall, mediante el uso de sistema operativo Linux.
4.1.2.2 Servidores:
� Servidor de Aplicaciones. o SO Linux o 1,5 GB de RAM o HDD SCSI 36 GB
� Servidor Web, Mail, Proxy, Firewall. o SO Linux o 1,5 GB RAM o HDD SCSI 50 GB
� Servidor BDD o SO Windows 2003 o SQL Server 2000 o 3 GB RAM o HDD SCSI 50 GB
� Servidor Impresión, DHCP, Desarrollo o SO Windows 2000 o 1,5 GB RAM o HDD SCSI 50 GB o Procesador 2432 o Disco duro de 140 Gb o Mirror de 140 Gb
146
4.1.3 IMPLANTACIÓN
Para la implantación del sistema, se contó con la ayuda del personal del
departamento de sistemas de la librería que nos proporcionó el ambiente para
poder implantar la aplicación, posteriormente los usuarios colaboraron con las
pruebas necesarias para verificar el correcto funcionamiento del sistema.
A continuación se describen los procesos realizados para la implantación del
sistema.
4.1.4 IMPLANTACIÓN EN EL SERVIDOR
4.1.4.1 Creación de la Base de Datos
Mediante el uso de un script SQL, se creó la base de datos SMARTBOOKSB.
Además se utilizaron las herramientas de creación de usuarios de SQL Server
2000, con el objetivo de crear un usuario propietario para la base de datos.
4.1.4.2 Migración de datos de empleados y perfiles de seguridad
La migración de la información de los empleados y perfiles disponibles para la
aplicación, se realizó mediante el uso de DTS ejecutados en el servidor de base
de datos. Dichos DTS contienen como origen de datos la base de datos de los
empleados y hojas de Microsoft Excel para la introducción de los perfiles del
sistema.
4.1.5 IMPLANTACIÓN EN EL SERVIDOR
Para la implantación en los clientes se utilizaron 3 máquinas:
• Computador del jefe de Compras
• Computador del jefe de Ventas
• Computador laptop, prestado por la empresa para un vendedor
147
Todos los computadores contaban con Windows XP Home Edition y Microsoft
Office 2003
Para la instalación del programa en las máquinas clientes, se procedió a realizar
lo siguiente:
• Instalación de Microsoft .NET Framework 2.0
• Instalación de SMARTBOOKSB
4.1.6 EVALUACIÓN DE LA APLICACIÓN
El personal tanto de desarrollo como del departamento de sistemas al realizar la
etapa de implantación y en base a los resultados obtenidos de las pruebas
planteadas en el capítulo 3, definen los siguientes parámetros de evaluación:
4.1.6.1 PARÁMETROS DE EVALUACIÓN
4.1.6.1.1 Herramientas
Se evalúa el grado de dominio de la arquitectura y herramientas utilizadas en el
desarrollo del sistema.
4.1.6.1.2 Comprensión del Producto y Documentación
Se evalúa aspectos relativos al producto tales como: complejidad, consistencia y
utilización de recursos.
4.1.6.1.3 Desempeño
Se evalúa las características dinámicas del "software", tales como fiabilidad y
eficiencia, desde el punto de vista de operadores y administrador del sistema.
4.1.6.1.4 Utilidad
Se evalúa el nivel de satisfacción que brinda el sistema a sus usuarios, así como
la contribución percibida del sistema por la organización, desde el punto de vista
de usuarios e involucrados en general.
4.1.6.1.5 Manejo
148
Se evalúa la facilidad de aprendizaje y uso del sistema, desde el punto de vista de
los usuarios.
4.1.6.1.6 Contribución
Se evalúa los beneficios suministrados por el sistema a la organización y a la
comunidad, desde el punto de vista de los usuarios, y todos los afectados por el
sistema.
149
4.1.6.2 TABLA DE EVALUACIÓN
Parámetro Evaluación
Herramientas El uso de una metodología como el Proceso Unificado de
Desarrollo de Software permite la comprensión del
funcionamiento y la estructura interna del sistema
facilitando así la implementación y escalabilidad del
mismo.
Al utilizar una arquitectura como el Smart Client
desarrollado por Microsoft Corporation, estamos
garantizando tener todos los componentes necesarios para
facilitar el desarrollo de la aplicación.
Comprensión del
Producto y
documentación
El Sistema SMARTBOOKSB cuenta con la documentación
necesaria para su utilización y comprensión. Además al
utilizar estándares de programación permite que el
mantenimiento y administración del sistema sea sencillo y
rápido.
Desempeño El desempeño del sistema en cuanto a la administración
de datos y la realización de consultas es demostrado por
los resultados de la fase de pruebas.
Utilidad Los resultados de la fase de pruebas indica que el
funcionamiento del los módulos del sistema cumplen con
los requisitos establecidos en el alcance formulado.
Manejo El sistema fue desarrollado con una estructura lógica para
que el usuario tenga facilidad en el manejo del mismo, con
un menor tiempo de aprendizaje.
Contribución El sistema SMARTBOOKSB busca brindar un servicio más
rápido, eficiente y fácil al usuario ya que lo manipula en una
herramienta muy conocida por el como es el Microsoft
Office Word 2003.
Tabla 54. Evaluación de las pruebas
150
Los resultados obtenidos, fueron acordes a las expectativas de los
desarrolladores, ya que cumplieron con todos los casos se hablan planteado. Sin
embargo, las empresas desarrolladoras de libros tienen otras aplicaciones en las
cuales el sistema no influye como lo son: contabilidad, facturación, inventario
bodega y otros: por esta razón el sistema se limita al alcance determinado en la
presente tesis.
151
CAPITULO 5. CONCLUSIONES Y RECOMENDACIONES.
5.1 CONCLUSIONES.
La realización del sistema SMARTBOOKSB ha alcanzado los objetivos trazados
inicialmente, durante el desarrollo del sistema surgieron varias conclusiones que
son expuestas a continuación:
• Al utilizar la arquitectura Smart Client para el desarrollo de un sistema se
puede optimizar el funcionamiento del mismo, y dicha arquitectura permite
al programa trabajar aprovechando los recursos del lado del cliente
minimizando la carga para el servidor de datos y/o de aplicaciones.
• La arquitectura Smart Client, permite a los usuarios trabajar en un
ambiente totalmente desconectado, mediante el uso de las características
offline que posee el mismo. Dichas características se fundamenten en el
uso del caché local de datos y una cola de peticiones al servidor de base
de datos, de tal manera que cuando la aplicación cliente vuelva a estar en
línea, las peticiones que quedaron pendientes en la cola se envían al
servidor.
• Las aplicaciones Smart Client se actualizan automáticamente. Cuando un
archivo de biblioteca (DLL) se actualiza en un recurso compartido de red, la
misma es bajada automáticamente cuando se abre la aplicación Smart
Client utilizando las características de actualización que posee la
arquitectura Smart Client.
• Visual Studio Tools para Office aprovecha las características de seguridad
del .NET Framework para garantizar que en Word y Excel únicamente se
ejecutará código de confianza. Los administradores establecen las políticas
de seguridad, al configurar las directivas de seguridad dentro del .NET
Framework usando certificados digitales, lo que les permite impedir la
ejecución del código mal intencionado.
152
• Una de las ventajas de los Smart Client, es que permite eliminar los cuellos
de botella de procesamiento del servidor, pues distribuyen las operaciones
en la red por medio del uso de dispositivos inteligentes y servicios web
XML.
• El sistema SMARTBOOKSB presenta una interfaz fácil de utilizar, ya que
forma parte de una herramienta muy utilizada y conocida por los usuarios
como es Microsoft Office Word. Esto también fue comprobado por los
usuarios del sistema, durante la fase de pruebas e implantación.
• El sistema permite trabajar a los Vendedores de las empresas
Distribuidoras de Libros de una manera más eficiente, ya que evita el
reingreso de la información en la matriz, mediante la recolección de los
pedidos de venta en el sitio de trabajo, debido a que la aplicación puede
trabajar en un ambiente desconectado
• El proceso unificado de desarrollo de software permite realizar el desarrollo
de una aplicación de manera ordenada y eficiente, su correcta y completa
aplicación puede casi asegurar el éxito de un proyecto.
153
5.2 RECOMENDACIONES :
• A pesar de que RUP es una metodología fácil de aprender, se recomienda
realizar un estudio previo de las metodologías de desarrollo a ser
utilizadas, basándose los requerimientos, el alcance, el ambiente
tecnológico, los recursos a ser utilizados, así como las herramientas de
desarrollo. Este estudio ayudará a aprovechar de mejor forma los
conceptos y la tecnología que se este implementando para el desarrollo de
un sistema.
• La arquitectura Smart Client es sin duda una nueva tecnología que se
debería explotar y sacar el máximo provecho de la misma, para reutilizar
los recursos del sistema.
• Se recomienda verificar que las versiones de los componentes sean las
adecuadas antes de realizar la construcción del sistema, para que el
mismo funcione en óptimas condiciones y pueda prestar un adecuado
servicio y así satisfacer las necesidades tanto del usuario como de la
empresa.
• Al realizar el estudio y aplicación de nuevas tecnologías para desarrollo e
implantación de sistemas, incentivaremos el uso de las mismas para
mejorar el desarrollo de nuevas aplicaciones.
• Se recomienda el uso de la aplicación SMARTBOOKSB, el mismo que se
ajusta a las necesidades operativas de una empresa distribuidora de libros,
basándonos en las pruebas realizadas por los usuarios.
154
5.3 GLOSARIO
GLOSARIO
Término Dscripción
ASP Active Server Pages
Smart Tag Etiqueta embebida dentro de un documento, que es
sensible al contexto del mismo y ayuda a dar
información mientras el usuario escribe.
Smart Document Documento que permite una interacción más fácil del
usuario con un sistema de software. Posee integración
con servicios web XML y fuentes de datos diversas.
DTS Data Transformation Services – Servicios de
Transformación de Datos.
SOAP Protocolo Simple de Acceso de Objetos. El protocolo
SOAP el formato estándar para mensajes XML, los
mismos que son usados para intercomunicar sistemas.
ISP Proveedor de Servicios de Internet
SMARTBOOKSB Sistema para comprar y venta de libros utilizando la
tecnología Smart Client.
URI Uniform Resource Identification
LOB Término utilizando para identificar a las aplicaciones
pertenecientes a la Línea del negocio.
XML Lenguaje Extensible de Marca
DLL Librería de vínculos dinámicos
SMS Systems Mnagement Server – Servidor para
administración de sistemas.
API Aplication Programming Interface
JRE Java Runtime Environment
MSDE Microsoft Data Engine – Versión más ligera de SQL
Server debido a que trabaja en la máquina del cliente.
155
Rich Client Applications Aplicaciones cliente ricas
Thin Client Applications Aplicaciones cliente delgadas
Desktop PC Computador de escritorio
Tablet PC Computador portátil
Windows Installer Instalador de Paquetes Windows
Stylus Dispositivo apuntador para pantallas táctiles
156
5.4 BIBLIOGRAFIA
• Microsoft Corporation, “DIstributed Application Desgin Student
Workbook”, Quito 1998.
• Microsoft Corporation, “Smart Client Aplication Model and the .NET
Frmaework 1.1”,
http://msdn.microsoft.com/netframework/programming/winforms/smartcli
ent.aspx
• Microsoft Corporation, “Scurity and Versioning Model in the Windows
Forms Enginee Help You Create Deploy Smart Clients”,
http://msdn.microsoft.com/msdnmag/issues/02/07/NtSmartClients/defaul
t.aspx
• Microsoft Corporation, “Architecting Smart Client Solution”, http://
msdn.microsoft.com/seminar/shared/asp/view.asp/?url=/Seminar/en/200
40412SmartClient03/manifest.xml&rate=1
• Microsoft Corporation, “Smart Client Platform Architectural Guidance”,
http://msdn.microsoft.com/smartclient/understanding/essentials/pagi/def
aults.aspx
• Microsoft Corporation, “Microsoft Office as a Smart Client”,
http://www.microsoft.com/NET/smarclient_Offcie.aspx.
• Microsoft Corporation, “Microsoft smart clients: Power, performance,
flexibility", http://www.microsoft.com/net/smartclient.aspx
• PRESSMAN Roger, INGENIERIA DE SOFTWARE – UN ENFOQUE
PRÁCTICO, MacGraw Hill, Madrid – España,2002.
• JACOBSON Ivan; BOOCH Grday; RUMBAUGH Jame; Proceso
Unificado de Desarrollo, Pearson Education, 200