ESCUELA POLITÉCNICA NACIONAL · 2019. 4. 8. · 1.2.6 .net compact framework y smart client........

157
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 INGENIERO EN SISTEMAS INFORMÁTICOS Y DE COMPUTACIÓN MIGUEL ADOLFO MÁRQUEZ VACAS [email protected] SANDRA DEL ROCÍO PAREDES AYALA [email protected] DIRECTOR: ING. PAULVILCA [email protected] QUITO, MARZO 2008

Transcript of ESCUELA POLITÉCNICA NACIONAL · 2019. 4. 8. · 1.2.6 .net compact framework y smart client........

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

[email protected]

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

53

Figura 14. Diagrama de Casos de Uso – Administrar C ompra 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

91

2.2.2.3.6 Reportes

Figura 30. Diagrama de Secuencia - Reportes

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