• No se han encontrado resultados

Diseno e Implementacion de Componentes Reutilizables para la capa de Interfaz del Proyecto Telebanca 2.0.

N/A
N/A
Protected

Academic year: 2023

Share "Diseno e Implementacion de Componentes Reutilizables para la capa de Interfaz del Proyecto Telebanca 2.0."

Copied!
78
0
0

Texto completo

(1)

Título: Diseño e Implementación de Componentes Reutilizables Para la capa de Interfaz del Proyecto Telebanca 2.0.

Trabajo de Diploma para optar por el título de Ingeniero en Ciencias Informáticas

Autor: Yordamy Reinoso Vigoa Tutor: Yuliesky Torres Iglesias

Junio 2007

(2)

Declaro que soy el único autor de este trabajo y autorizo al <nombre área> de la Universidad de las Ciencias Informáticas a hacer uso del mismo en su beneficio.

Para que así conste firmo la presente a los ____ días del mes de ________ del año ________.

_____________________________ ____________________________

(3)

Graduado de Ingeniero Informático en el 2005 y profesor instructor con dos años de experiencia docente en la Universidad de las Ciencias Informáticas (UCI). Actual jefe del Proyecto Telebanca.

(4)

momento. A mi familia y amigos por estar siempre conmigo apoyándome. A mi tutor Yuliesky por su asesoramiento científico y su estímulo para seguir creciendo intelectualmente. A todos los integrantes del proyecto Telebanca por su disposición permanente e incondicional en aclarar mis dudas.

(5)

caracterizados. A mis hermanas por siempre cuidar de mi salud y preocuparse por mis problemas. A toda mi familia y amigos por su apoyo y ayuda incondicional. A todos los estudiantes y profesores de la UCI que de una forma u otra han contribuido a mi formación como intelectual.

(6)

los clientes. El servicio tuvo buena aceptación por parte de los clientes pero la aplicación se retrasaba más de lo debido en responder las acciones que las operadoras le solicitaban como es el caso de imprimir tarjetas y pines.

El siguiente trabajo se propone desarrollar componentes reutilizables para la capa de interfaz de usuario con el objetivo de agilizar el proceso desarrollo de la versión 2.0 y poder brindar un servicio de mayor calidad. Para llevar a cabo este proyecto se necesito identificar los procesos más comunes para implementar componentes que soportaran dichos procesos. Además se realizó un estudio con el que se arribo a la conclusión de migrar la capa de presentación a Windows Form.

(7)

DEDICATORIA ... III  RESUMEN ... IV 

INTRODUCCIÓN... 1 

CAPÍTULO 1: FUNDAMENTACIÓN TEÓRICA ... 4 

1.1 ¿Qué es un Componentes? ... 4 

1.2 Controles de usuarios ... 4 

1.3 Ventajas de los componentes reutilizables. ... 5 

1.3 Componentes reutilizables en .Net ... 5 

1.4 Ejemplos de componentes reutilizables ... 5 

1.5 Desventajas de los Web Form ... 6 

1.6 Ventajas del los Windows Form ... 6 

1.7 Herramientas y tecnologías utilizadas. ... 7 

1.7.1 .NET Framework ... 7 

1.7.2 Lenguaje C# ... 7 

1.7.3 Metodología utilizada ... 9 

1.7.4 Herramientas ... 9 

1.8 Conclusiones ... 11

CAPÍTULO 2: CARACTERÍSTICAS DEL SISTEMA ... 12 

2.1 Objeto de Estudio ... 12 

2.1.1 Situación problémica ... 12 

2.1.2 Problema ... 13 

2.2 Objeto de automatización ... 13 

2.3 Información que se maneja ... 13 

2.4 Propuesta del sistema ... 13 

2.5 Modelo del Dominio ... 13 

2.6 Especificación de los requisitos de software ... 14 

2.6.1 Requerimientos Funcionales ... 14 

2.6.2 Requerimientos No Funcionales ... 14 

2.6 Definición de los casos de uso ... 15 

2.6.1 Definición de los actores. ... 15 

2.6.2 Listado de los casos de uso. ... 15 

2.6.3 Diagrama de casos de uso. ... 18 

2.6.4 Casos de uso ... 18 

(8)

3.1 Análisis ... 34 

3.1.1 Diagrama de Clases del Análisis ... 35 

3.2 Diseño ... 36 

3.2.1 Diagrama de interacción: CU _Crear Entidad ... 36 

3.2.2 Diagrama de interacción: CU _Modificar Entidad ... 37 

3.2.3 Diagrama de interacción: CU _Eliminar Entidad ... 38 

3.2.4 Diagrama de interacción: CU _Autenticar Cliente ... 39 

3.2.5 Diagrama de interacción: CU _Imprimir Tarjetas o Pines... 40 

3.2.6 Diagrama de interacción: CU _Reimprimir y Finalizar (Finalizar) ... 41 

3.2.7 Diagrama de interacción: CU _Reimprimir y Finalizar (Reimprimir) ... 42 

3.2.8 Diagrama de clases: Componente de Gestión ... 43 

3.2.9 Diagrama de clases: Componente de Servicio de Pago ... 44 

3.2.10 Diagrama de clases: Componente de Impresión ... 45 

3.2.11 Descripciones de las clases del componente de gestión ... 45 

3.2.12 Descripciones de las clases del componente de servicio de pago. ... 48 

3.2.13 Descripción de las clases del componente de impresión. ... 51 

3.3 Conclusiones ... 55

CAPÍTULO 4: IMPLEMENTACIÓN Y PRUEBA ... 56 

4.1 Implementación ... 56 

4.1.1 Diagrama de despliegue. ... 56 

4.1.2 Diagramas de componentes ... 57 

4.2 Prueba ... 60 

4.2.1 Prueba: CU _Crear Entidad ... 60 

4.2.2 Prueba: CU _Modificar Entidad ... 61 

4.2.3 Prueba: CU _Eliminar Entidad ... 61 

4.2.4 Prueba: CU _ Autenticar Cliente ... 61 

4.2.5 Prueba: CU _ imprimir Tarjetas o Pines ... 63 

4.2.6 Prueba: CU _ Reimprimir y Finalizar: Finalizar ... 63 

4.2.7 Prueba: CU _ Reimprimir y Finalizar: Reimprimir ... 64 

4.3 Conclusiones ... 64

CONCLUSIONES ... 65 

RECOMENDACIONES ... 66 

BIBLIOGRÁFICAS ... 67 

(9)
(10)

INTRODUCCIÓN

Con el desarrollo de las nuevas tecnologías de la informática en la automatización con el fin de usar la capacidad de las máquinas para llevar a cabo determinadas tareas anteriormente efectuadas por seres humanos y para controlar la secuencia de las operaciones sin intervención humana, liberando al ser humano de operaciones rutinarias, disminuyendo así errores y a su vez aumentando la producción. Hoy en día la automatización es más requerida que nunca para que una industria o empresa mantenga la competitividad, los niveles de producción y los estándares de calidad exigidos en los mercados internos y externos.

Por estas razones nuestro país se interesa por desarrollar sus conocimientos en el mundo de la informática y la producción de software y es así que surge nuestra universidad. Pero la automatización solo es viable si al evaluar los beneficios económicos y sociales de las mejoras que se podrían obtener al automatizar, estas son mayores a los costos de operación de desarrollo y mantenimiento del software. La demanda de bajar los costos de la producción y mantenimiento de software, la rápida entrega de los sistemas y el incremento de la calidad pueden lograrse ampliamente mediante la reutilización sistemática de software. Para ello se hace necesario identificar y estandarizar las entidades reutilizables y los procesos para producirlos, así como los mecanismos organizacionales adecuados para facilitar la reutilización de los mismos.

Durante el desarrollo de la versión 1.0 del proyecto Telebanca no se identificaron procesos con funciones comunes, lo cual propicio a que no se definiera un estándar para los controles a utilizar en la interfaz de usuario, diversificando el modo de visualizar la información y creando confusión a los usuarios cuando utilizan la aplicación. Además no permitía la reutilización de código en la capa de presentación aumentando el tiempo de desarrollo y la complejidad del proyecto. Otro de los argumentos por los cuales se decidió desarrollar una segunda versión fue que la aplicación se tardaba en responder las solicitudes de las operadoras lo cual dificulta el trabajo con la aplicación.

Este trabajo tiene como principal objetivo dar solución a la situación antes expuesta por lo que el problema consiste en: ¿Cómo desarrollar componentes reutilizables para la capa de Interfaz del proyecto Telabanca 2.0?

(11)

Los aportes prácticos esperados con el desarrollo de estos componentes es que los programadores puedan contar con un código reutilizable que se pueda adaptar no solo al proyecto Telebanca sino también a otros software disminuyendo el esfuerzo, tiempo de duración y costo de los mismos, al mismo tiempo se exponen las ventajas que proporciona el uso de atributos personalizados mediante la declaración de una clase atributo y la obtención de los mismos mediante la reflexión.

El Objeto de estudio de este trabajo de diploma es el desarrollo componentes reutilizables.

El Campo de acción es el desarrollo de componentes reutilizables para la capa de Interfaz del proyecto Telebanca 2.0.

Objetivos Generales: Desarrollar componentes reutilizables para una capa de presentación que se encarguen de asumir el procesamiento de interfaz de las funcionalidades más comunes para la el proyecto Telebanca 2.0.

De los objetivos generales se derivan los siguientes Objetivos Específicos:

• Identificar los diferentes componentes a desarrollar para la capa de interfaz gráfica de la aplicación Telebanca 2.0.

• Definir una lógica de presentación para cada componente identificado.

• Definir una interfaz para la comunicación de la aplicación con cada uno de los componentes identificados.

• Diseñar e implementar los componentes identificados.

Para el cumplimiento de los objetivos se desarrollaron varias tareas que sirvieran de ubicación en el dominio del problema. Se comenzó por estudiar sobre las ventajas que proporcionan la utilización de componentes reutilizables en la implementación de la capa de presentación de un software. Investigar sobre otros sistemas que en su desarrollo utilizaron componentes con el fin de reutilizar el código y estandarizar las vistas de las operaciones comunes. Indagar en aspectos relacionado con la implementación de componentes y las diferentes técnicas para mejorar la reutilización de los mismos. Se

(12)

realizaron varias entrevistas con los desarrolladores de la versión 1.0 del proyecto Telebanca, las cuales ofrecieron un valioso aporte a la comprensión de todas las funciones del proyecto.

El informe esta estructurado en cuatro capítulos, a continuación se presentará el nombre del capítulo y sus objetivos:

El Capítulo 1. Fundamentación teórica: En este capítulo se realiza un estudio del estado del arte y un análisis de las herramientas y tecnologías necesarias para facilitar el desarrollo de los componentes necesarios para Telebanca 2.0.

El Capítulo 2. Características del sistema: En este capítulo se realiza en estudio preliminar del sistema.

Se analizan temas tales como el problema, objeto de automatización exponiendo una propuesta del sistema que se desea construir, así como un estudio detallado de los requisitos que debe cumplir nuestra aplicación.

El Capítulo 3. Análisis y diseño del sistema: En este capítulo se logra un análisis refinado de los requisitos y nos permite razonar sobre aspectos técnicos del sistema obteniendo una mayor formalización.

Modelamos el sistema encontrando una forma para que soporte todos los requisitos.

El Capítulo 4. Implementación y pruebas: En este capítulo se implementan las clases y subsistemas encontrados durante el diseño y se le realizan las pruebas a las construcciones.

(13)

CAPÍTULO 1: FUNDAMENTACIÓN TEÓRICA Introducción

En el presente capítulo se abordan conceptos relacionados con el desarrollo de componentes generalizados así como las tecnologías y herramientas que se utilizarán para su implementación y análisis. Además tratarán cuestiones como: ¿Qué es un componente?, ventajas de los componentes reutilizables, componentes reutilizables en .Net y ejemplos de componentes. También se exponen algunas de las ventajas que presenta el Windows Form con respecto a la Web Form. Se describe el lenguaje de programación C# que es en el cual se implementaran los componentes y la plataforma .NET Framework, la utilizada por el lenguaje. Otros aspectos que se refleja en este capítulo debido a la importancia son los atributos y la reflexión.

1.1 ¿Qué es un Componente?

Unidad de composición de aplicaciones de software, que posee un conjunto de interfaces y un conjunto de requisitos, y que ha de poder ser desarrollado, adquirido, incorporado al sistema y compuesto con otros componentes de forma independiente, en tiempo y espacio.

1.2 Controles de usuarios

Los controles de los formularios Windows Forms son componentes reutilizables que encapsulan funciones de la interfaz de usuario y se utilizan en aplicaciones Windows cliente. Estos formularios Windows Forms no sólo proporcionan varios controles listos para usar, sino que también proporcionan la infraestructura para desarrollar controles personalizados. Los controles existentes se pueden combinar entre sí o ampliar, también se pueden crear otros controles personalizados. UserControl proporciona la capacidad de crear controles que se pueden usar en varios lugares de una aplicación o de una organización. Puede incluir todo el código necesario para la validación de datos frecuentes que se solicitan al usuario.

(14)

1.3 Ventajas de los componentes reutilizables.

La POC (Programación Orientada a Componentes) nace con el objetivo de construir un mercado global de componentes software, cuyos usuarios son los propios desarrolladores de aplicaciones que necesitan reutilizar componentes ya hechos y probados para construir sus aplicaciones de forma más rápida y robusta (3). El uso de componentes aporta grandes beneficios a los desarrolladores de software en cuanto a reducción de costes, de riesgos y del tiempo necesario para concluir el producto.

La personalización de componentes acelera la implementación y reduce el mantenimiento de la aplicación, lo cual es un factor clave para el éxito ya que permite ser ágiles y responder adecuadamente a cambios que pueden surgir dentro del software.

1.3 Componentes reutilizables en .Net

Los formularios Windows Form proporcionan una interfaz para desarrollar controles personalizados además de algunos que el ya tiene listos para usar. Los controles existentes se pueden combinar entre sí o ampliar, también se pueden crear otros controles personalizados.

1.4 Ejemplos de componentes reutilizables Active X

Componente que se puede insertar en una página Web para proporcionar una funcionalidad que no está directamente disponible en HTML, como secuencias de animación. Pequeños programas que permiten mostrar páginas Web dinámicas en la PC y que suplen las limitaciones que, al respecto, tiene el lenguaje HTML.

DCOM(Distributed Component Objetc Model)

Es un componente que esta pensado para que el sistema pueda funcionar bajo cualquier tipo de red, ya sea LAN, WAN o Internet. DCOM es capaz de transferir la petición de un objeto local a uno remoto ejecutándose en una máquina diferente.

(15)

1.5 Desventajas de los Web Form

Desde que apareció el World Wide Web, la mayor parte de los usuarios y desarrolladores han demostrado un mayor interés en las aplicaciones Web que en las aplicaciones "normales" de Windows. Pero si se compara con las aplicaciones de Windows, el Web presenta varias desventajas, las cuales pudieran provocar que el proyecto no tuviera la aceptación esperada por los clientes del banco, ya que las aplicaciones Web utilizan un gran número de recursos del servidor, ancho de banda y mucha paciencia por parte del usuario, ya que la mayoría de las tareas se deben hacer en el servidor con un recorrido de ida y vuelta, lo que requiere cierto grado de paciencia. Teniendo en cuanta que nuestro proyecto fue realizado con el fin de prestar servicio a clientes mediante un Call Center, si la aplicación no funciona con un cierto grado de rapidez lo cual impediría que la operadora no logre atender eficientemente al cliente, que quedaría insatisfecho con el servicio. Dependiendo del navegador que se use, puede aparecer diferente la interfaz de usuarios. Esto puede causar alguna confusión si los usuarios se mueven de una estación de trabajo a otra diferente. La impresión se limita a la "tecnología de imprimir pantalla", con poco control sobre elementos como saltos de página debido a las distintas fuentes, márgenes y tamaño del papel.

1.6 Ventajas del los Windows Form

Cuando se programa en Windows se tiene un juego de controles de interfaz de usuario mucho más rico que con HTML. También se tiene un control exacto del posicionamiento de los elementos de la pantalla. Si necesita integración con algún hardware especial, tal como en los sistemas de Punto de Venta (POS), máquinas de control numérico, impresoras y scanners, es mucho más fácil hacerlo desde una aplicación Windows que desde un navegador. Cuando es necesaria la integración con otros productos, es también mucho más fácil hacerlo desde una aplicación Windows que desde un navegador. Muchas veces es necesario intercambiar datos con Word o Excel. Hacer esto desde una aplicación Windows usando automatización es muy fácil, pero no tanto desde una aplicación basada en navegador.

(16)

1.7 Herramientas y tecnologías utilizadas.

1.7.1 .NET Framework

.NET Framework es un componente integral de Windows que admite la creación y la ejecución de la siguiente generación de aplicaciones y servicios Web XML. El diseño de .NET Framework está enfocado a cumplir los objetivos siguientes:

ƒ Proporcionar un entorno de ejecución de código que reduzca lo máximo posible la implementación de software y los conflictos de versiones.

ƒ Ofrecer un entorno de ejecución de código que fomente la ejecución segura del mismo, incluso del creado por terceras personas desconocidas o que no son de plena confianza.

ƒ Proporcionar un entorno de ejecución de código que elimine los problemas de rendimiento de los entornos en los que se utilizan secuencias de comandos o intérpretes de comandos.

ƒ Ofrecer al programador una experiencia coherente entre tipos de aplicaciones muy diferentes, como las basadas en Windows o en el Web.

ƒ Basar toda la comunicación en estándares del sector para asegurar que el código de .NET Framework se puede integrar con otros tipos de código.

.NET Framework contiene dos componentes principales:

1.7.2 Lenguaje C#

C# (pronunciado "si sharp", C sostenido o C almohadilla) es el nuevo lenguaje de propósito general orientado a objetos creado por Microsoft para su nueva plataforma .NET. Combina los mejores elementos de múltiples lenguajes de amplia difusión como C++, Java, Visual Basic o Delphi.

La idea principal detrás del lenguaje es combinar la potencia de lenguajes como C++ con la sencillez de lenguajes como Visual Basic, y que además la migración a este lenguaje por los programadores de C/C++/Java sea lo más inmediata posible. Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET el cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes (más notablemente de Delphi y Java). C# fue diseñado para combinar el control a bajo nivel de lenguajes como C y la velocidad de programación de lenguajes como Visual Basic.

(17)

1.7.2.1 Biblioteca de clases (BCL)

Biblioteca de clases es una completa colección orientada a objetos de tipos reutilizables que se pueden emplear para desarrollar aplicaciones que abarcan desde las tradicionales herramientas de interfaz gráfica de usuario (GUI) o de línea de comandos hasta las aplicaciones basadas en las innovaciones más

recientes proporcionadas por ASP.NET, como los formularios Web Forms y los servicios Web XML. Se integran estrechamente con Common Language Runtime.

Como en cualquier biblioteca de clases orientada a objetos, los tipos de .NET Framework permiten realizar diversas tareas de programación comunes, como son la administración de cadenas, recopilación de datos, conectividad de bases de datos y acceso a archivos. Además de estas tareas habituales, la biblioteca de clases incluye tipos adecuados para diversos escenarios de desarrollo especializados. Por ejemplo, puede utilizar .NET Framework para desarrollar los siguientes tipos de aplicaciones y servicios:

Aplicaciones de consola

Aplicaciones GUI de Windows (Windows Forms) Aplicaciones de ASP.NET

Servicios Web XML Servicios de Windows

La Biblioteca de Clases Base se clasifica, en tres grupos clave:

ASP.NET y Servicios Web XML.

Windows Forms.

ADO.NET.

1.7.2.2 System.Reflection

Es un Biblioteca de clases de .NET Framework. El espacio de nombres System.Reflection contiene clases e interfaces que proporcionan una vista administrada de los campos, los métodos y los tipos cargados, con la posibilidad de crear e invocar tipos dinámicamente.

(18)

1.7.2.3 Atributos

Los atributos constituyen un medio apropiado para asociar información declarativa con código de C#, los que se asocian a una entidad de programación y después se consultan en tiempo de ejecución mediante la técnica de reflexión.

1.7.3 Metodología utilizada 1.7.3.1 RUP

Proceso de desarrolla de software basado en el Lenguaje Unificado de Modelado y que es iterativo e incremental, centrado en la arquitectura y dirigido por los casos de usos y los riesgos. Proceso que se organiza en cuatro fases: inicio, elaboración, construcción, transición y que se estructura en torno a cinco flujos de trabajos fundamentales: recopilación de requisitos, análisis, diseño, implementación, y prueba.

Proceso que se describe en términos de negocio, el cual está a su vez estructurado en función de cuatro bloques de construcción: trabajadores, actividades, artefactos y flujo de actividades.

1.7.3.2 Lenguaje Unificado de Modelado (UML)

Lenguaje estándar para el modelado de software. Lenguaje para visualizar, especificar, construir y documentar los artefactos de un sistema con gran cantidad de software. Lenguaje utilizado por el Proceso Unificado. Lenguaje que permite a los desarrolladores visualizar el producto de su trabajo (artefactos) en esquemas o diagramas estandarizados.

1.7.4 Herramientas

1.7.4.1 Visual Studio .NET 6.1

Visual Studio .NET es un IDE (Integrated Development Environment) (Entorno de Desarrollo Integrado) desarrollado por Microsoft a partir de 2002. Es para el sistema operativo Microsoft Windows y está pensado, principal pero no exclusivamente, para desarrollar plataformas Win32. Visual Studio .NET puede utilizarse para construir aplicaciones dirigidas a Windows (utilizando Windows Forms), Web (usando ASP.NET y Servicios Web) y dispositivos portátiles (utilizando .NET Compact Framework).

(19)

Visual Studio .NET es la herramienta de desarrollo multilenguaje más completa para construir e integrar rápidamente aplicaciones y servicios Web XML. Aumenta de un modo extraordinario la productividad de los desarrolladores y crea nuevas oportunidades de negocio. En su diseño se han integrado a fondo los estándares y protocolos de Internet, como XML y SOAP, por lo que Visual Studio .NET simplifica considerablemente el ciclo de vida del desarrollo de aplicaciones.

La versión de visual studio utilizada en la realización del proyecto Telebanca vio la luz en Noviembre del 2005.

ƒ Incorpora .NET Framework 2.0

ƒ Hay más ediciones diferenciadas por el precio y las características.

ƒ Ayuda con refactorización.

ƒ El desarrollo de páginas con ASP.NET ha cambiado.

ƒ Soporte para el nuevo software servidor Team System.

ƒ Añadido soporte de testos para todo tipo de aplicaciones.

1.7.4.1.1 Diseño de clases en Visual studio 2005

El diseñador de clases (Class Designer de Visual Studio 2005) genera diagramas de clases y relaciones entre clases inspirados en UML, pero no son diagramas UML puro. A través del diseñador de clases se genera código automáticamente mientras se diseña. Igualmente los cambios que se realicen sobre el código se reflejan inmediatamente en el diagrama de clases.

1.7.4.2 Racional Rose 6.2

Es la herramienta líder en el mundo para el modelado de sistemas complejos y de tiempo real. Para los analistas de negocios, Rose ofrece la capacidad de modelar y visualizar sus procesos de negocios y destacar oportunidades para aumentar la eficiencia. Para los analistas de datos, el modelado de su diseño de base de datos en Rose, mejora la comunicación entre usted y los desarrolladores, y, cuando usted modela sus casos de uso en Rose, asegura que la solución sea creada con el usuario en mente. Rational Rose unifica a los analistas de negocios, sistemas y datos al permitirles crear y administrar modelos en una herramienta con un solo lenguaje de modelado.

(20)

1.8 Conclusiones

En este capítulo se han definido los conceptos fundamentales para lograr el desarrollo de los componentes reutilizables para la capa de presentación del proyecto Telebanca 2.0. Después de haber analizado los conceptos y definiciones abordadas fue posible percatarse de las ventajas que proporciona el uso de los componentes reutilizables para agilizar la implementación y garantizar un mejor mantenimiento de la aplicación.

Con las características expuestas sobre Web Form y Windows Form se puede arribar a la conclusión de que lo más recomendables para nuestro proyecto es la utilización de Windows Form con el objetivo de que la aplicación pueda brindar los servicios con mayor eficiencia. Finalmente se decide que los componentes se realizaran en las siguientes tecnologías por las características antes mencionadas: para el análisis y diseño se utilizara como metodología RUP y como herramienta Racional Rose, como plataforma .NET Framework y lenguaje C# y Windows Form.

(21)

CAPÍTULO 2: CARACTERÍSTICAS DEL SISTEMA Introducción

En el presente capítulo se describen aspectos importantes tales como información que se maneja, objeto de automatización, situación problémica y se hace una propuesta del los componentes que se desean implementar. Se realiza un estudio detallado de los requisitos funcionales y no funcionales que debe tener el sistema, finalmente determinan los actores y se describen los casos de uso.

2.1 Objeto de Estudio

Hoy en día todas las empresas están necesitando software más competente para automatizar sus actividades lo cual le proporciona una mayor productividad y eficiencias en sus servicios, esto provoca que exista una gran competencia en el mundo de la producción de software. Nuestro país también necesita software competente para sus empresas por lo que se dispuso a desarrollar software y no solo para informatizar el país si no también para insertarse en el mercado del software mundial.

La Universidad de Ciencias Informáticas de Cuba (UCI) es una nueva institución que su principal objetivo es la formación de personal preparado para desarrollar software. Aunque la UCI ya ha producido varios software los cuales han tenido una gran aceptación por parte del cliente como es el caso del proyecto Telebanca el cual su primera versión ya esta instalada y prestando servicio, existe una demanda por bajar los costos de la producción y mantenimiento, la rápida entrega de los sistemas y el incremento de la calidad.

2.1.1 Situación problémica

Durante el desarrollo de la versión 1.0 del proyecto Telebanca no se identificaron procesos con funciones comunes, lo cual propició a que no se definiera un estándar para los controles a utilizar en la interfaz de usuario, diversificando el modo de visualizar la información y creando confusión a los usuarios cuando utilizan la aplicación. Además no permitía la reutilización de código aumentando el tiempo de desarrollo y la complejidad del proyecto.

Se desea desarrollar componentes reutilizables para la capa de interfaz de del proyecto Telebanca que sean capaces de dar soporte a las funcionalidades más comunes y así garantizar la estandarización de la presentación.

(22)

2.1.2 Problema

De la situación problémica antes expuesta se deriva el siguiente problema: ¿Cómo desarrollar componentes reutilizables para la capa de Interfaz del proyecto Telabanca 2.0?

2.2 Objeto de automatización

Se desea automatizar los procesos más comunes de Telebanca 1.0 con el desarrollo de componentes reutilizables, con el objetivo de disminuir los costos y el tiempo de desarrollo de la versión 2.0 del proyecto y estandarizar la interfaz de usuario.

2.3 Información que se maneja

La información que se maneja es relacionada con el desarrollo de componentes reutilizables dentro de la solución de los proyectos. Analizar sobre las técnicas existentes para un mejor aprovechamiento en la reutilización del código.

2.4 Propuesta del sistema

Los componentes reutilizables que se proponen, se espera que ayuden a los responsables de la implementación de la versión 2.0 del proyecto Telebanca pues los mismos permiten reutilizar el código lo cual agiliza el proceso de desarrollo disminuyendo el costo de producción y mantenimiento y una rápida entrega del sistema, minimizando de una forma sorprendente grandes cantidades de código en una aplicación. Código que en la mayoría de los casos puede ser el mismo en centenares de formularios Windows. También permiten una estandarización en la capa de interfaz y un código más simple y organizado.

2.5 Modelo del Dominio

En el modelo del dominio se describen las clases más importantes dentro del contexto del sistema, siendo su principal objetivo la comprensión y obtención de los requisitos del sistema. Debe contribuir a una comprensión del problema que se supone que el sistema resuelve en relación con el contexto. (1)

(23)

La obtención de los requisitos del presente trabajo se realizó apoyándose en los análisis de la versión 1.0 del proyecto Telebanca por lo que no fue necesario el modelo del dominio.

2.6 Especificación de los requisitos de software

2.6.1 Requerimientos Funcionales

Los requisitos funcionales son las acciones u operaciones que la aplicación debe ser capaz de realizar.

2.6.1.1 Componente de gestión: Permitir crear, modificar y eliminar entidades de una lista.

2.6.1.1.1 Crear una nueva Entidad

2.6.1.1.2 Modificar una entidad existente.

2.6.1.1.3 Eliminar una entidad existente.

2.6.1.2 Componente de Servicio de Pago: Autenticar un cliente.

2.6.1.2.1 Verificar número de tarjeta.

2.6.1.2.2 Verificar número del PIN de la tarjeta con dos dígitos.

2.6.1.2.3 Verificar una coordenada de la matriz de la tarjeta.

2.6.1.3 Componente de Impresión: Permitir imprimir tarjetas o pines.

2.6.1.3.1 Imprimir las tarjetas.

2.6.1.3.2 Imprimir los pines.

2.6.2 Requerimientos No Funcionales

Los requisitos no funcionales especifican propiedades del sistema.

2.6.2.1 Requerimientos de apariencia o interfaz externa

Los componentes deben tener una interfaz amigable y fácil de manejar porque pueden ser utilizados en una aplicación donde los usuarios que trabajaran con ella, pueden no tener conocimiento de la información que se gestiona.

2.6.2.2 Requerimientos de Portabilidad

(24)

Los componentes podrán ser utilizados en sistemas operativos como Microsoft® Windows® 98 Windows 98 Second Edition o superior que tengan instalado en .NET Framework 2.0 o superior.

2.6.2.3 Requerimientos de Software

Requiere tener instalado .Net Framework 2.0 o superior. 2.6.2.4 Requerimientos de Hardware.

El usuario requiere una maquina con un procesador 600 megahertz (MHz) como mínimo y se recomienda 800 (MHz), con una memoria RAM como mínimo 128 megabytes (MB) y se recomienda 256 MB. También requiere una capacidad en el disco duro de 800MB.

2.6 Definición de los casos de uso

2.6.1 Definición de los actores.

Actores Justificación

Operadora Cualquier trabajador que interactúe con el sistema.

Operadora de Servicio de Pago Cualquier trabajador que tenga acceso al Módulo de Servicio de Pago.

Operadora de Impresión Cualquier trabajador que acceso al Módulo de Autenticación.

2.6.2 Listado de los casos de uso.

2.6.2.1 Entidad

Los lenguajes orientados a objetos se clasifican como lenguajes de quinta generación. La programación orientada a objetos, intenta simular el mundo real a través del significado de objetos que contiene características y funciones, se basa en la idea de un objeto, que es una combinación de variables locales y procedimientos llamados métodos que juntos conforman una entidad de programación. (2)

(25)

CU _Crear Entidad Crear Entidad

Actor Operadora

Descripción Le permite a la Operadora Crear una nueva Entidad.

Referencia No tiene

CU _Modificar Entidad Modificar Entidad

Actor Operadora

Descripción Le permite a la Operadora Modificar una entidad existente.

Referencia No tiene

CU _Eliminar Entidad Eliminar Entidad

Actor Operadora

Descripción Le permite a la Operadora Eliminar una entidad existente.

Referencia No tiene

CU _Autenticar Cliente Autenticar Cliente

Actor Operadora de Servicio de Pago

Descripción Le permite a la Operadora de Servicio de Pago autenticar un cliente de Telebanca.

Referencia No tiene

CU _Imprimir Tarjetas o Pines

Imprimir Tarjetas o Pines

Actor Operadora de Impresión

Descripción Le permite a la Operadora de Impresión imprimir tanto los pines como las tarjetas que han sido creados al generarse las autenticaciones.

(26)

Referencia Reimprimir y Finalizar

CU_ Reimprimir y Finalizar Reimprimir y Finalizar Actor Operadora de Impresión

Descripción Le permite a la Operadora de Impresión finalizar varios lotes o reimprimir los datos que desee de un lote.

Referencia No tiene

(27)

2.6.3 Diagrama de casos de uso.

DIAGRAMA DE CASOS DE USO

CU_Crear Entidad

(from Casos de Uso gestionar)

CU_Modificar Entidad

(from Casos de Uso gestionar)

CU_Eliminar Entidad

(from Casos de Uso gestionar)

Operadora

(f rom Actors)

Operadora de Servicio de Pago

(f rom Actors)

CU_Autenticar Cliente

(from Casos de Uso de Servici o de Pago)

Imprimir Tarjetas o Pines

(from i mprim ir)

Operadores de Impresión

(f rom Actors)

CU_Reimprimir y Finalizar

 2.6.4 Casos de uso

Cód Nombre de caso de uso Paquete Justificación de la selección.

1

Crear

Gestionar

Permite Crear una nueva Entidad.

Modificar Permite Modificar una Entidad existente.

Eliminar Permite Eliminar una Entidad existente.

2 Verificar Autenticidad de Usuario Servicio de Pago

Le permite a la Operadora de Servicio de Pago Verificar si un Cliente esta registrado

(28)

ƒ Casos de uso expandidos.

a) Especificación del Caso de Uso: CU _Crear Entidad 1. CU _Crear Entidad

El caso de uso tiene como objetivo permitirle a la Operadora del Sistema crear una nueva entidad.

2. Flujo de Eventos a. Flujo básico

Caso de Uso: CU_ Crear Entidad Actores: Operadora del Sistema

Resumen:

El caso de uso comienza cuando la Operadora del Sistema selecciona la opción

“Crear” para introducir los datos de la nueva Entidad. Finaliza cuando los datos introducidos son correctos y se adiciona la nueva Entidad.

Flujo Normal de Eventos Acción del Actor Respuesta del Sistema

1. El caso de uso comienza cuando la Operadora selecciona la opción “Crear”.

2. El Sistema muestra un formulario que le permite a la Operadora introducir los datos de la Entidad y las opciones “Guardar” y “Cancelar”.

3. La Operadora introduce los datos.

en Telebanca.

3

Imprimir Tarjetas o Pines Imprimir Le permite a la Operadora de Impresión imprimir tanto los pines como las tarjetas que han sido creados al generarse las

autenticaciones.

Reimprimir y Finalizar Le permite a la operadora de impresión finalizar varios lotes o reimprimir los datos que desee de un lote.

(29)

4. La Operadora selecciona la opción

“Guardar”.

5. El Sistema valida los datos.

6. El Sistema muestra el mensaje “Esta Seguro que desea crear la nueva entidad.”

7. La Operadora selecciona la opción

“Sí”.

8. El Sistema guarda la nueva entidad.

9. El Sistema muestra el mensaje “La entidad ha sido guardada satisfactoriamente.”.

10. Termina el caso de uso.

b. Flujo Alternativo.

Acción 4 Si la Operadora selecciona la opción “Cancelar”.

Acción 5 F1 Si existe algún campo obligatorio que no se le introdujo dato.

Acción 5 F2 Si existe algún campo que es incorrecto.

Acción 7 Si la operadora selecciona “No”.

Acción 8 Si el Sistema no puede guardar los datos.

Flujos Alternos

Acción del Actor Respuesta del Sistema Acción 4 4.1 Se termina el caso de uso.

Acción 5 F1 5.1 F1 El Sistema muestra el mensaje de error.

5.2 F1 La Operadora acepta el mensaje. 5.3 F1 Pasa a la acción 3.

Acción 5 5.1 F2 El Sistema muestra el mensaje de error.

5.2 F2 La Operadora Acepta el mensaje. 5.3 F2 Pasa a la acción 3.

Acción 7 7.1 Pasa a la acción 3.

Acción 8 8.1 El Sistema muestra el mensaje “El siguiente error a ocurrido:” a continuación muestra el mensaje de error.

8.2 La Operadora acepta el mensaje 8.3 Finaliza el caso de uso.

(30)

b) Especificación del Caso de Uso: CU _Modificar Entidad.

1. CU _Modificar Entidad.

El caso de uso tiene como objetivo permitirle a la Operadora modificar una entidad existente.

2. Flujo de Eventos a. Flujo básico

Caso de Uso: CU _Modificar Actores: Operadora

Resumen:

El caso de uso comienza cuando la Operadora del Sistema selecciona la Entidad que desea modificar. Posteriormente selecciona la opción “Modificar”. Finaliza cuando la Entidad es modificada.

Flujo Normal de Eventos Acción del Actor Respuesta del Sistema

1. El caso de uso comienza cuando la Operadora selecciona la Entidad que desea modificar.

2. El Sistema muestra los datos de la Entidad seleccionada.

3. La Operadora selecciona la opción

“Modificar”.

4. El sistema muestra un formulario que permite modificar la Entidad y las opciones “Guardar” y

“Cancelar”.

5. La Operadora introduce los datos.

6. La Operadora selecciona la opción

“Guardar”.

7. El Sistema valida los datos.

8. El Sistema muestra el mensaje “Esta Seguro que desea modificar la entidad.”

9. La Operadora selecciona la opción

“Sí”.

10. El Sistema modifica la Entidad.

11. El Sistema muestra el mensaje “La entidad ha sido

(31)

12. Pasa a la acción 2.

b. Flujo Alternativo

Acción 6 Si la Operadora selecciona la opción Cancelar.

Acción 7 F1 Si existe algún campo obligatorio que no se le introdujo dato.

Acción 7 F2 Si existe algún campo que es incorrecto.

Acción 9 Si la operadora selecciona la opción “No”.

Acción 10 Si el Sistema no puede modificar los datos.

Flujos Alternos

Acción del Actor Respuesta del Sistema

Acción 6 6.1 Pasa a la acción 2.

Acción 7 F1 7.1 El Sistema muestra mensaje “El campo X es obligatorio”.

7.2 F1 La Operadora acepta el mensaje. 7.3 F1 Pasa a la acción 5.

Acción 7 F2 7.1 F2 El Sistema muestra el mensaje “Los datos del campo X son incorrectos.”.

7.2 F2 La Operadora acepta el mensaje. 7.3 F2 Pasa a la acción 5.

Acción 9 9.1 Pasa a la acción 5.

Acción 10 10.1 El Sistema muestra el mensaje “El siguiente error a ocurrido:” a continuación muestra el mensaje de error.

10.2 La Operadora acepta el mensaje. 10.3 Finaliza el caso de uso.

c) Especificación del Caso de Uso: CU _Eliminar Entidad 1. CU _Eliminar Entidad.

El caso de uso tiene como objetivo permitirle a la Operadora eliminar una entidad existente.

(32)

2. Flujo de Eventos

a. Flujo básico

b. Flujo Alternativo

Acción 5 Si la Operadora selecciona la opción “No”.

Acción 6 Si el Sistema no puede eliminar la Entidad.

Flujos Alternos

Acción del Actor Respuesta del Sistema

Acción 5 4.1 Pasa a la acción 2.

Acción 6 6.1 El Sistema muestra el mensaje “El siguiente error a ocurrido:” a continuación muestra el mensaje de error.

6.2 La Operadora acepta el mensaje. 6.3 Finaliza el caso de uso.

Caso de Uso: CU _Eliminar Entidad.

Actores: Operadora.

Resumen:

El caso de uso comienza cuando la Operadora del Sistema selecciona la Entidad que desea eliminar. Posteriormente selecciona la opción “Eliminar”. Finaliza cuando la Entidad fue eliminada.

Flujo Normal de Eventos Acción del Actor Respuesta del Sistema

1. El caso de uso comienza cuando la Operadora selecciona la Entidad que desea eliminar.

2. El Sistema muestra los datos de la Entidad seleccionada.

3. La Operadora selección la opción

“Eliminar”.

4. El Sistema muestra el mensaje “Esta seguro que desea eliminar la entidad.”

5. La Operadora selecciona la opción “Sí”. 6. El Sistema elimina la entidad.

7. El Sistema muestra el mensaje “La entidad ha sido eliminada satisfactoriamente.”

8. Se termina el caso de uso.

(33)

d) Especificación del Caso de Uso: CU_Autenticar Cliente 1. CU_ Verificar Autenticidad de Usuario.

El caso de uso tiene como objetivo permitirle a la Operadora de Servicio de Pago Verificar si un usuario esta registrado en Telebanca.

2. Flujo de Eventos a. Flujo básico

Caso de Uso: CU_ Autenticar Cliente

Actores: Operadora de Servicio de Pago

Resumen:

El caso de uso comienza cuando la Operadora de Servicio de Pago selecciona una opción que requiera autenticar un Cliente en Telebanca. La Operadora de Servicio de Pago introduce los datos que el Sistema solicite. El caso de uso termina cuando se verifica que el Cliente esta registrado en Telebanca.

Flujo Normal de Eventos Acción del Actor Respuesta del Sistema

1. El caso de uso comienza cuando la Operadora de Servicio de Pago

selecciona una opción que requiere de autenticar un Cliente de Telebanca.

2. El Sistema solicita el número de la tarjetea del cliente.

3. La Operadora de Servicio de Pago introduce el número de la tarjeta.

4. La Operadora selecciona la opción

“Siguiente”.

5. El Sistema valida la entrada de datos.

6. El Sistema obtiene el estado de la tarjeta.

7. El Sistema muestra el nombre y apellido del cliente asociado a la tarjeta.

(34)

8. El Sistema solicita dos dígitos del PIN.

9. La Operadora de Servicio de Pago introduce dos dígitos del PIN.

10. La operadora de Servicio de Pago selecciona la opción “Siguiente”.

11. El Sistema valida la entrada de datos.

12. El Sistema verifica los dos dígitos del PIN asociados a la tarjeta son correctos.

13. El sistema solicita una coordenada de la matriz.

14. La Operadora de Servicio de Pago introduce la coordenada de la matriz.

15. La operadora de Servicio de Pago selección la opción “Siguiente”.

16. El Sistema valida la entrada de los datos.

17. El sistema verifica que la coordenada sea correcta.

18. Finaliza el caso de uso.

a. Flujo Alternativo

Acción 4 Si la Operadora de Servicio de Pago selecciona la opción “Cancelar”.

Acción 5 Si los datos no son válidos.

Acción 6 F1 Si no se pudo obtener el estado de la tarjeta.

Acción 6 F2 Si el estado de la tarjeta es diferente de “A”.

Acción 10 Si la Operadora de Servicio de Pago selecciona la opción “Cancelar”.

Acción 11 Si los datos no son válidos.

Acción 12 F1 Si el sistema no puede verificar los dígitos del pin.

Acción 12 F2 Si los dígitos del PIN son erróneos.

Acción 15 Si la Operadora de Servicio de Pago selecciona la opción “Cancelar”.

Acción 16 Si los datos no son válidos.

Acción 17 F1 Si el Sistema no puede verificar la coordenada de la matriz.

Acción 17 F2 Si la coordenada en incorrecta.

(35)

Flujos Alternos

Acción del Actor Respuesta del Sistema

Acción 4 4.1 Finaliza el caso de uso.

Acción 5 5.1 El Sistema muestra dos asteriscos en los campos con errores y el mensaje “Faltan datos por introducir.”.

5.2 La Operadora de Servicio de Pago acepta el mensaje.

5.3 Pasa a la acción 2.

Acción 6 F1 6.1 F1 El Sistema muestra el mensaje “El Siguiente error a ocurrido:” a continuación el mensaje de error.

6.2 F1 La Operadora de Servicio de Pago acepta el mensaje.

6.1 F1 Finaliza el caso de uso.

Acción 6 F2 6.1 El sistema verifica que no es el tercer intento de entrada del número de la tarjeta. Muestra el mensaje de estado. Pasa a la acción 2. En caso contrario muestra el mensaje "Ha realizado el número máximo de intentos " y finaliza el caso de uso.

Acción 10 10.1 Finaliza el caso de uso.

Acción 11 11.1 El Sistema muestra dos asteriscos en los campos con errores y el mensaje “Faltan datos por introducir.”.

11.2 La Operadora de Servicio de Pago acepta el mensaje.

11.3 Pasa a la acción 9.

Acción 12 F1 12.1 El sistema muestra el mensaje “El siguiente error a ocurrido:” a continuación el mensaje de error.

12.2 F2 12.3 Finaliza el caso de uso.

Acción 12 F2 12.1 El sistema verifica que no sea el tercer intento de entrada de PIN, muestra en mensaje “Los dígitos del PIN son erróneos.” pasa a la acción 9. En caso contrario muestra el mensaje “Ha realizado el número máximo de intentos” y finaliza el caso de uso.

(36)

12.2 La Operadora de Servicio de Pago acepta el mensaje.

12.3 Pasa a la acción 9.

Acción 15 15.1 Finaliza el caso de uso.

Acción 16 16.1 El Sistema muestra dos asteriscos en los campos con errores y el mensaje “Faltan datos por introducir.”.

16.2 La Operadora de Servicio de Pago acepta el mensaje.

16.3 Pasa a la acción 14.

Acción 17 F1 17.1 F1 El Sistema muestra el mensaje: “El siguiente error a ocurrido:” a continuación el mensaje de error.

17.2 F1 La Operadora de Servicio de Pago acepta el mensaje.

17.3 F1 Finaliza el caso de uso.

Acción 17 F2 17.1 F2 El sistema verifica que no sea el tercer intento de entrada de coordenada. Muestra en mensaje” La coordenada es errónea.”. Pasa a la acción 14. En caso contrario muestra el mensaje “Ha realizado el número máximo de intentos” y finaliza el caso de uso.

17.2 La Operadora de Servicio de Pago acepta el mensaje.

17.3 Pasa a la acción 14.

e) Especificación del Caso de Uso: CU_Imprimir Tarjetas o Pines.

1. CU _ Imprimir Tarjetas o Pines.

El caso de uso tiene como objetivo permitirle a la Operadora de Impresión imprimir varios Lotes.

2. Flujo de Eventos a. Flujo básico

Caso de Uso: CU_ Imprimir Tarjetas o Pines Actores: Operadora de Impresión

Resumen:

El caso de uso se inicia cuando la Operadora de Impresión selecciona una de las opciones de Imprimir Tarjetas o Imprimir Pines. La Operadora de Impresión

(37)

imprimen los datos.

Flujo Normal de Eventos Acción del Actor Respuesta del Sistema

1. El caso de uso se inicia cuando la Operadora de Impresión selecciona una de las opciones:

“Imprimir Pines” o “Imprimir Tarjetas”.

2. El Sistema obtiene los identificadores de los lotes con estado “creado” y la cantidad a imprimir en cada uno de ellos.

3. El Sistema muestra los identificadores de los lotes con estado “creado” y la cantidad a imprimir en cada uno de ellos y la opción “Cancelar”.

4. La Operadora de Impresión selecciona el o los lotes que desea imprimir.

5. El Sistema muestra la cantidad seleccionados a imprimir y activa la opción de “Imprimir”.

6. La Operadora de Impresión selecciona la opción “Imprimir”.

7. El Sistema obtiene los datos que corresponden al o los lote(s) seleccionado(s).

8. El Sistema verifica si la impresora es válida.

9. El Sistema muestra el mensaje “¿Está seguro que desea Imprimir?”.

10. La Operadora de Impresión de Pines selecciona la opción “Sí”.

11. El Sistema actualiza los datos cambiando el estado a “Impreso”.

12. El Sistema le manda los datos a imprimir a la impresora.

13. El Sistema imprime automáticamente los datos.

14. El Sistema muestra el mensaje “El proceso de impresión ha concluido

satisfactoriamente.”

(38)

15. Ver caso de uso Reimprimir y Finalizar

b. Flujo Alternativo

Acción 6 Si la Operadora de Impresión selecciona la opción “Cancelar”.

Acción 7 Si el Sistema no puede obtener los datos.

Acción 8 Si la impresora no es válida.

Acción 10 Si la Operadora de Impresión selecciona la opción “No”.

Acción 11 Si el Sistema no puede actualizar los datos.

Flujos Alternos

Acción del Actor Respuesta del Sistema

Acción 6 6.1 Finaliza el caso de uso.

Acción 7 7.1 El Sistema muestra el mensaje “El siguiente error a ocurrido:” a continuación muestra el mensaje de error.

7.2 La Operadora de Impresión acepta el mensaje.

7.3 Finaliza el caso de uso.

Acción 8 8.1 El Sistema muestra el mensaje “Impresora no válida”.

8.2 La Operadora acepta el mensaje. 8.3 Pasa a la acción 5.

Acción 10 10.1 Pasa a la acción 5.

Acción 11 11.1 El Sistema muestra el mensaje “El siguiente error a ocurrido:” a continuación muestra el mensaje de error.

11.2 La Operadora acepta el mensaje. 11.3 Finaliza el caso de uso.

f) Especificación del Caso de Uso: CU _Reimprimir y Finalizar.

1. CU _ Reimprimir y Finalizar.

(39)

El caso de uso tiene como objetivo permitirle a la Operadora de Impresión reimprimir o finalizar lo lotes que se hayan impreso.

2. Flujo de Eventos a. Flujo básico

Caso de Uso: CU _ Reimprimir y Finalizar Actores: Operadora de Impresión

Resumen:

El caso de uso se inicia cuando la Operadora de Impresión selecciona la opción Reimprimir y Finalizar. La Operadora de Impresión selecciona el lote que desea reimprimir o el lote o los lotes que desea Finalizar. El caso de uso finaliza cuando se reimprimió un lote o cuando se finalizaron uno o varios lotes.

Flujo Normal de Eventos Acción del Actor Respuesta del Sistema

1. El caso de uso se inicia cuando la Operadora de Impresión selecciona la opción “Reimprimir y Finalizar”.

2. El Sistema muestra los lotes con estado “Impreso” y la opción “Marcar todos”.

3. La Operadora de Impresión selecciona:

a) El lote que desea Reimprimir. Ver sección Reimprimir.

b) El o los lote(s) que desea finalizar. Ver sección Finalizar

Sección Reimprimir

4. El sistema activa las opciones de ”Reimprimir” y

“Finalizar”

5. La Operadora de Impresión selecciona la opción “Reimprimir”.

6. El Sistema obtiene los datos que pertenecen al lote a reimprimir el número de la tarjeta, nombre, primer apellido e identificador del cliente.

7. El Sistema muestra los datos y brinda la posibilidad de seleccionar los que se deseen reimprimir y la opción “Cancelar”.

(40)

8. La Operadora de Impresión selecciona lo que desea reimprimir.

9. La Operadora de Impresión selecciona la opción “Imprimir”

10. El Sistema obtiene los datos a reimprimir.

11. El Sistema verifica si la impresora es válida.

12. El Sistema muestra el mensaje “¿Está seguro que desea Imprimir?”.

13. La Operadora de Impresión selecciona la “Si”.

14. El Sistema manda los datos para la impresora.

15. El Sistema imprime automáticamente los pines.

16. El Sistema muestra el mensaje “El proceso de impresión se realizó satisfactoriamente.”.

17. Pasa a la acción 8.

Sección Finalizar

17. El Sistema activa la opción “Finalizar”.

18. La Operadora de Impresión selecciona la opción “Finalizar”.

19. El Sistema muestra el siguiente mensaje: "Si finaliza no podrá volver a imprimir los datos que forman el lote o los lotes escogidos por usted.

¿Está seguro que desea finalizar?”.

20. La Operadora de Impresión selecciona la opción “Si”.

21. El Sistema actualiza el estado de lo datos seleccionados cambiándolos de “Impreso” a

“Finalizado”.

22. El Sistema muestra el mensaje: “Los lotes han sido finalizados satisfactoriamente.”

23. La Operadora de Impresión 24. Finalizar el caso de uso.

(41)

b. Flujo Alternativo

Acción 6 Si el sistema no puede obtener los datos.

Acción 9 F1 Si la Operadora de Impresión selecciona la opción “Cancelar”.

Acción 9 F2 Si no hay ningún dato seleccionado.

Acción 10 Si el Sistema no obtiene los datos.

Acción 11 Si la impresora no es válida.

Acción 13 Si la Operadora de Impresión selecciona la opción “No”.

Acción 21 Si el Sistema no puede actualizar los datos.

Flujos Alternos

Acción del Actor Respuesta del Sistema

Acción 6 6.1 El Sistema muestra el mensaje:”El siguiente error a ocurrido:” a continuación se muestra el mensaje de error.

6.2 La Operadora de Impresión acepta el mensaje.

6.3 Finaliza el caso de uso.

Acción 9 F1 9.1 F1 Finaliza el caso de uso.

Acción 9 F2 9.1 F2 El Sistema muestra el mensaje “Debe seleccionar los datos que desea imprimir.”

9.2 F1 9.3 F2 Pasa a la acción 8.

Acción 10 10.1 El Sistema muestra el mensaje:”El siguiente error a ocurrido:” a continuación se muestra el mensaje de error.

10.2 10.3 Finaliza el caso de uso.

Acción 11 11.1 El Sistema muestra el mensaje “Impresora no válida”.

11.2 La Operadora de Impresión acepta el mensaje.

11.3 Pasa a la acción 8.

Acción 13 11.3 Pasa a la acción 8.

Acción 21 21.1 El Sistema muestra el mensaje:”El siguiente error

(42)

a ocurrido:” a continuación muestra el mensaje de error.

21. 2 La Operadora de Impresión acepta el mensaje.

21.3 Finaliza el caso de uso.

2.7 Conclusiones

En este capítulo se a realizado una descripción de las principales funcionalidades que deben ser capaces de soportar los componentes que se desean desarrollar, la situación problémica, y una propuesta del sistema o componentes a desarrollar. Se expusieron los requisitos funcionales y los no funcionales, el diagrama de casos de uso, los actores y las descripciones de los casos de uso.

(43)

CAPÍTULO 3: ANÁLISIS Y DISEÑO DEL SISTEMA Introducción

En este capítulo se realizará el análisis y diseño de los componentes que se desean desarrollar. Con el análisis se desea profundizar en aspectos de formalización de los componentes y con el diseño se obtiene una aproximación a la implementación creando las diferentes clases. Se exponen los diagramas de clases del análisis, los de iteración en este caso secuencia y los de clases del diseño.

3.1 Análisis

El modelo de análisis nos ayuda a refinar los requisitos obtenidos durante la captura de requisitos y razonar sobre aspectos técnicos del sistema, ofreciendo un mayor poder expresivo y formalización. Nos ayuda a estructurar los requisitos de modo que facilita su comprensión, preparación, su modificación y en general su mantenimiento. Es la primera aproximación al diseño.

(44)

3.1.1 Diagrama de Clases del Análisis

DIAGRAMA DE CLASES DE ANÁLISIS

Operadora

Operadora de Servicio de Pago

CI_Gestionar Entidad CI_Imprimir CI_Reimprimir y Finalizar

Operadores de Impresión

CC_TeleBancaWS

CI_Autenticar Cliente

(45)

3.2 Diseño

En el diseño modelamos el sistema y encontramos su forma para dar soporte a los requisitos. Crea una entrada apropiada y un punto de partida para actividades de implementación subsiguientes capturando los requisitos o subsistemas individuales, interfaces y clases. (1)

3.2.1 Diagrama de interacción: CU _Crear Entidad

DIAGRAMA DE INTERACCION: CU _Crear Entidad

: Operadora UserControl_Gestionar Form Gestionar Entidad

Opción Crear

AdicionarEntidad(entidad) validarDatos()

bool CrearEntidad()

(46)

3.2.2 Diagrama de interacción: CU _Modificar Entidad

DIAGRAMA DE INTERACCION: CU _Modificar Entidad

: Operadora

UserControl_Gestionar Form Gestionar Entidad

Opción Modificar

validarDatos()

AdicionarEntidad(entidad)

bool Seleciona Entidad

Mostrar datos de la Entidad

ModificarEntidad()

(47)

3.2.3 Diagrama de interacción: CU _Eliminar Entidad

DIAGRAMA DE INTERACCION: CU _Eliminar Entidad

: Operadora UserControl_Gestionar Form Gestionar Entidad

Opción Eliminar

EliminiarEntidad(entidad)

bool Seleciona Entidad

Mostrar datos de la Entidad

EliminaEntidad()

(48)

3.2.4 Diagrama de interacción: CU _Autenticar Cliente

DIAGRAMA DE INTERACCION: CU _Autenticar Cliente

: Operadora UserControl_Datos_Tarjetas UserControl_Datos

_de_Pin

Form Servicio de Pago UserControl_Datos_de_Matriz

Opción Siguiente

ValidarDatos()

IdentificarTarjetas(numeroTarjeta)

Opción Siguiente Opción Siguiente

ValidarDatos()

IdentificarPin(pin)

ValidarDatos()

IdentificarMatriz(coordenadas_matriz) Mostrar_Componente_Pin(numeroTarjeta)

bool visualizar (Nombre del Cliente)

bool

Mostrar_Componente_Matriz()

visualizarMatriz()

bool

Destino()

(49)

3.2.5 Diagrama de interacción: CU _Imprimir Tarjetas o Pines

DIAGRAMA DE INTERACCION: CU _Imprimir Tarjetas o Pines

: Operadores de Impresión

UserControl Imprimir Form Im primir

Seleciona los lotes a imprimir

Muestra la cantidad a imprimir

Opción Imprimir

ImprimirLotes(Selecionados)

ValidarImpresora()

ActualizarDatos(Selecionados) IList

CrearReporte()

Im primir()

(50)

3.2.6 Diagrama de interacción: CU _Reimprimir y Finalizar (Finalizar)

DIAGRAMA DE INTERACCION: CU _Reimprimir y Finalizar (Finalizar)

: Operadores de Impresión

UserControl_Finalizar Form Imprimir

Seleciona el o los lote(s)

Opción Finalizar

Finalizar(Selecionados) Muestra la cantidad

(51)

3.2.7 Diagrama de interacción: CU _Reimprimir y Finalizar (Reimprimir)

DIAGRAMA DE INTERACCION: CU _Reimprimir y Finalizar(Reimprimir)

: Operadores de Impresión

UserControl_Finalizar UserControl Reimprimir Form Imprimir

Seleciona un lote

Muestra la cantida

Opción Reimprimir

MostrarDatos(lote)

visualizar(datos)

Número de Tarjeta, Nombre, Apellido, IDCliente

Opción Imprimir

validarDatos()

Reimprimir(NumerosTarjetasAReimprimir,pinAImprimir)

IList

ValidarIm presora() CrearReporte()

Imprimir()

(52)

3.2.8 Diagrama de clases: Componente de Gestión

DIAGRAMA DE CLASES: Componente de Gestión

(53)

3.2.9 Diagrama de clases: Componente de Servicio de Pago

DIAGRAMA DE CLASES: Componente de Servicio de Pago

(54)

3.2.10 Diagrama de clases: Componente de Impresión

DIAGRAMA DE CLASES: Componente de Impresión

3.2.11 Descripciones de las clases del componente de gestión

Nombre: UserControl_Gestionar Tipo de clase: interfaz

(55)

button_Cancelar Button button_Crear Button button_Eliminar Button button_Modificar Button DataSource IList delegadoCancelar Delegate delegadoCrear Delegate delegadoEliminar Delegate delegadoError Delegate delegadoModificar Delegate listBox_Lista ListBox panel1 Panel tableLayoutPanel1 TableLayoutPanel Para cada responsabilidad:

Nombre: BT_AceptarCrear_Click(object sender, EventArgs e) Descripción: Adiciona una nueva Entidad.

Nombre: BT_AceptarModif_Click(object sender, EventArgs e) Descripción: Modifica un Entidad existente

Nombre: BT_CancelarCrear_Click(object sender, EventArgs e) Descripción: Cancela la operación de crear una Entidad.

Nombre: BT_CancelarModif_Click(object sender, EventArgs e) Descripción: Cancela la operación de modificar una Entidad.

Nombre: button_Cancelar_Click(object sender, EventArgs e) Descripción: Invoca un de legado.

Nombre: button_Crear_Click(object sender, EventArgs e) Descripción: Muestra un formulario que permite crear una Entidad.

Nombre: button_Eliminar_Click(object sender, EventArgs e) Descripción: Elimina una Entidad existente.

Nombre: button_Modificar_Click(object sender, EventArgs e) Descripción: Muestra un formulario que permite modificar una Entidad.

Nombre: C_CheckedListBox(string Cnombre, string Cdescripcion, List<string> Cvalores, int pos) Descripción: Crea un componente CheckedListBox y un Label y lo adiciona al tableLayoutPanel1.

Nombre: C_combobox(string Cnombre, string Cdescripcion,List<string> CValores, int pos) Descripción: Crea un componente ComboBox y un Label y lo adiciona al tableLayoutPanel1.

Nombre: C_ConfirmarContrasenna(string Cnombre, int pos)

Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: C_MaskedTextBox(string ExRegular, string Cnombre,string Cdescripcion,int pos) Descripción: Crea un componente MaskedTextBox y un Label y lo adiciona al tableLayoutPanel1.

Nombre: C_TextBoxDescripcion(string Gnombre, string Gdescripcion, int pos)

Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: C_Texto(string Cnomber,string Cdescripcion,int pos)

Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: C_TextoLetras(string Cnomber, string Cdescripcion, int pos)

(56)

Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: C_TextoLetras_KeyPress(object sender, KeyPressEventArgs e)

Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: C_TextoNumeros(string Cnomber, string Cdescripcion,int longitud, int pos) Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: C_TextoNumeros_KeyPress(object sender, KeyPressEventArgs e) Descripción: Valida dato.

Nombre: DataBind(System.Collections.IList toma) Descripción: Muestra los datos que son listadles.

Nombre: listBox1_SelectedIndexChanged(object sender, EventArgs e) Descripción: Muestra los datos de la Entidad seleccionada.

Nombre: M_combobox(string Mnombre, string Mdescripcion, string Mvalor, int pos) Descripción: Crea un componente ComboBox y un Label y lo adiciona al tableLayoutPanel1.

Nombre: M_listbox(string Mnombre, string Mdescripcion, List<string> Mvalor, int pos) Descripción: Crea un componente ListBox y un Label y lo adiciona al tableLayoutPanel1.

Nombre: M_TextBox(string Gnombre, string Gdescripcion, string Gvalor, int pos)

Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: M_TextBoxDescripcion(string Mnombre, string Mdescripcion, string Mvalor, int pos) Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: MD_CheckedListBox(string MDnombre, string MDdescripcion, List<string> MDvalores, List<string> MDvaloresReal, int pos)

Descripción: Crea dos componentes CheckedListBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: MD_Combobox(string MDnombre, string MDdescripcion, List<string> MDvalores,string MDvalor, int pos)

Descripción: Crea dos componentes ComboBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: MD_ConfirmarContrasenna(string MDnombre, int pos)

Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: MD_MaskedTextBox(string MDExRegular, string MDnombre, string MDdescripcion,string MDvalor, int pos)

Descripción: Crea dos componentes MaskedTextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: MD_TextBox(string MDnombre, string MDdescripcion, string MDvalor, int pos) Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: MD_TextBoxDescripcion(string MDnombre, string MDdescripcion, string MDvalor, int pos) Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: MD_TextoLetras(string Cnomber, string Cdescripcion,string MD_valor , int pos) Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: MD_TextoLetras_KeyPress(object sender, KeyPressEventArgs e) Descripción: Valida dato.

Nombre: MD_TextoNumeros(string MDnomber, string MDdescripcion,string MDvalor,int MDlongitud, int pos)

Descripción: Crea dos componentes TextBox y dos Label y lo adiciona al tableLayoutPanel1.

Nombre: MDTextoNumeros_KeyPress(object sender, KeyPressEventArgs e)

Referencias

Documento similar