201
 FACULTAD DE INGENIERÍA DE SISTEM A S UNIVERSIDAD DE MEDELLÍN MEDELLÍN 2005

02.Texto Completo

  • Upload
    ngegs

  • View
    46

  • Download
    0

Embed Size (px)

Citation preview

  • FACULTAD DE

    INGENIERA DE SISTEM AS

    UNIVERSIDAD DE MEDELLN

    MEDELLN

    2005

  • IMPLEMENTACIN DE UN PROTOTIPO PARA LA GESTIN

    ADMINISTRATIVA DEL PARQUE DE DIVERSION DEL CENTRO COMERCIAL

    SANDIEGO, CON UN LECTOR Y TARJETAS MAGNETICAS.

    FABIAN ELI GOMEZ MURILLO

    UNIVERSIDAD DE MEDELLN

    FACULTAD DE INGENIERA DE SISTEMAS

    MEDELLN

    2005

  • IMPLEMENTACIN DE UN PROTOTIPO PARA LA GESTIN

    ADMINISTRATIVA DEL PARQUE DE DIVERSION DEL CENTRO COMERCIAL

    SANDIEGO, CON UN LECTOR Y TARJETAS MAGNETICAS.

    FABIAN ELI GOMEZ MURILLO

    Trabajo para optar al ttulo de Ingeniero de Sistemas

    ASESORES

    DIANA MARIA MONTOYA

    UNIVERSIDAD DE MEDELLN

    FACULTAD DE INGENIERA DE SISTEMAS

    MEDELLN

    2005

  • NOTA DE ACEPTACIN

    _____________________________________

    _____________________________________

    _____________________________________

    _____________________________________

    ASESOR TEMTICO

    _____________________________________

    _____________________________________

    _____________________________________

    JURADO

  • A mi madre, que ha sabido apoyarme como le ha sido

    posible, de una manera incondicional y que con el

    ejemplo y educacin que me ha dado me ha permitido

    lograr mis metas.

    Fabin El Gmez

  • AGRADECIMIENTOS

    Expreso mis agradecimientos a:

    La asesora Diana Mara Montoya, por sus orientaciones en el transcurso del

    proyecto

    La universidad de Medelln, por brindarme un espacio acogedor durante mi vida

    universitaria, donde no slo aprend de la ingeniera de sistemas, sino que tambin

    a formarme como un ser ntegro.

    A mi madre Lucia, a mi esposa Bibiana y a mis hijos Juan Pablo y Danna Leandra.

    Que supieron entender todo el tiempo que invert en mi estudio, me apoyaron

    incondicionalmente y se convirtieron en mi mayor motivacin.

    A los Gerentes de Divertrnica Medelln S.A.: Lus Guillermo Hoyos y Julin

    Hoyos, por facilitarme todo el tiempo que me tuve que ausentar de la empresa

    para fines de estudio, durante la carrera y el trabajo de grado.

  • VII

    TABLA DE CONTENIDO

    Pg.

    INTRODUCCIN ...............................................................................................................15

    RESUMEN EJECUTIVO ...................................................................................................16

    ABSTRACT .........................................................................................................................17

    1. PLANTEAMIENTO Y JUSTIFICACIN .................................................................18

    1.1. ANTECEDENTES HISTRICOS DE LA EMPRESA...................................18

    1.1.1 Historia de DIVERTRONICA MEDELLN S.A. ......................................18

    1.1.2 Funcionamiento de la empresa ...............................................................19

    1.1.3 Direccionamiento estratgico ...................................................................19

    1.1.4 Organigrama ...............................................................................................21

    1.2. FORMULACIN DEL PROBLEMA.................................................................21

    1.3. JUSTIFICACIN ................................................................................................22

    2. MARCO TERICO ....................................................................................................24

    2.1. ESTADO DEL ARTE .........................................................................................24

    2.2. TARJETAS MAGNTICAS ..............................................................................25

    2.3. LECTORES .........................................................................................................28

    2.4. UML ......................................................................................................................31

    2.4.1 Una breve historia ......................................................................................31

    3. PLANEACIN Y ELABORACIN DEL SISTEMA ...............................................67

    3.1. Sistema Actual (DIVERTRONICA MEDELLIN S.A.) ....................................67

    3.2. Ciclo de Vida .......................................................................................................68

  • VIII

    3.3. mbito del Software ...........................................................................................70

    3.3.1 Descomposicin .........................................................................................70

    3.4. OBJETIVOS ........................................................................................................71

    3.4.1 Objetivo General ........................................................................................71

    3.4.2 Objetivos especficos.................................................................................71

    3.5 DISEO METODOLOGICO .............................................................................72

    3.5.1 METODOLOGA DE DESARROLLO .....................................................72

    3.5.2 INSTRUMENTOS Y TCNICAS DE RECOLECCIN DE DATOS...72

    3.6. ALCANCES DEL SISTEMA .............................................................................73

    3.6.1 Mdulo Lectores .........................................................................................73

    3.6.2 Mdulo Atracciones ...................................................................................73

    3.6.3 Mdulo Pos .................................................................................................74

    3.6.4 Mdulo Administrativo ...............................................................................74

    3.7. RESULTADOS ESPERADOS .........................................................................74

    3.8. BENEFICIOS DEL SISTEMA...........................................................................76

    3.8.1 Beneficios Econmicos .............................................................................76

    3.8.2 Beneficios Administrativos........................................................................76

    3.9. RESTRICCIONES DEL SISTEMA ..................................................................76

    3.10. ESTUDIO DE FACTIBILIDAD Y VIABILIDAD ...........................................77

    3.10.1 RECURSOS ECONOMICOS ...................................................................77

    3.10.2 Presupuesto ................................................................................................78

    3.10.3 Recursos Informticos...............................................................................79

    3.11. REQUERIMIENTOS DEL SISTEMA ..........................................................81

    3.11.1 Documentacin de los Casos de Uso. ...................................................81

    3.11.2 Requerimientos no Funcionales ..............................................................95

    3.11.3 Requerimientos de Prestaciones .............................................................95

    3.11.4 Requerimientos de Interfaz ......................................................................95

    3.11.5 Requerimientos de Operaciones .............................................................96

    3.11.6 Requerimientos de Entorno de Desarrollo .............................................96

    3.11.7 Requerimientos de Verificacin ...............................................................96

  • IX

    3.11.8 Requerimientos de Pruebas de Aceptacin ..........................................96

    3.11.9 Requerimientos de Documentacin ........................................................96

    3.12. RESTRICCIONES DE DISEO ..................................................................96

    3.13. ATRIBUTOS DE CALIDAD ..........................................................................97

    3.13.1 Seguridad ....................................................................................................97

    3.13.2 Portabilidad .................................................................................................97

    3.13.3 Revisiones de Calidad...............................................................................97

    3.13.4 Confiabilidad ...............................................................................................97

    3.13.5 Mantenibilidad.............................................................................................97

    4. MODULO LECTORES ..............................................................................................98

    4.1. OBJETIVOS ........................................................................................................98

    4.2. Casos de uso ......................................................................................................98

    4.2.1 Caso de uso: MATRICULA DE LECTORES .........................................98

    4.2.2 Caso de uso: CONSULTA DE LECTORES...........................................99

    4.2.3 Caso de uso: MODIFICAR LECTORES.............................................. 100

    4.2.4 Caso de uso: CONFIGURACIN DE LECTORES ........................... 100

    4.2.5 Caso de uso: CONSULTA DE CONFIGURACION DE LECTORES

    101

    4.2.6 Caso de uso: MODIFICACIN DE LA CONFIGURACIN DE

    LECTORES .............................................................................................................. 102

    4.3. DIAGRAMA DE CASOS DE USO ................................................................ 103

    4.4. DICCIONARIO DE DATOS ........................................................................... 104

    4.4.1 Tabla: LECTOR ....................................................................................... 104

    4.4.2 Tabla: CF_LECTOR: .............................................................................. 105

    4.5. RELACIONES.................................................................................................. 106

    4.6. REPORTES GENERADOS........................................................................... 107

    5. MODULO ATRACCIONES .................................................................................... 108

    5.1. OBJETIVOS ..................................................................................................... 108

  • X

    5.2. CASOS DE USO ............................................................................................. 108

    5.2.1 Caso de uso: MATRICULA DE ATRACCIONES ............................... 108

    5.2.2 Caso de uso: CONSULTA DE ATRACCIONES ................................ 109

    5.2.3 Caso de uso: MODIFICACIN DE ATRACCIONES ............................ 109

    5.3. DIAGRAMA DE CASOS DE USO ................................................................ 110

    4.4. DIAGRAMA DE ESTADOS ........................................................................... 111

    4.5. DICCIONARIO DE DATOS ........................................................................... 111

    4.6. RELACIONES.................................................................................................. 113

    4.7. REPORTES GENERADOS........................................................................... 114

    6. MODULO POS (PUNTO DE VENTA) ................................................................. 115

    6.1. OBJETIVOS ..................................................................................................... 115

    6.2. CASOS DE USO ............................................................................................. 115

    6.2.1 Caso de uso: MATRICULA DE POS (PUNTO DE VENTA) ............ 115

    6.2.2 Caso de uso: CONSULTAR POS (PUNTO DE VENTA).................. 116

    6.2.3 Caso de uso: MODIFICAR POS (PUNTO DE VENTA) .................... 116

    6.2.4 Caso de uso: APERTURA DE CAJA ................................................... 117

    6.2.5 Caso de uso: CORTE DE CAJA........................................................... 117

    6.2.6 Caso de uso: EXPULSAR TARJETA DEL LECTOR ........................ 118

    6.2.7 Caso de uso: VENTA DE TARJETAS ................................................. 118

    6.2.8 Caso de uso: CONSULTA DE VENTAS ............................................. 119

    6.2.9 Caso de uso: DEVOLUCIN DE VENTAS ........................................ 120

    6.2.10 Caso de uso: CONSULTA DE CARGA DE TARJETAS................... 120

    6.3. DIAGRAMA DE CASOS DE USO ................................................................ 122

    6.4. DICCIONARIO DE DATOS ........................................................................... 123

    6.4.1 Tabla: POS............................................................................................... 123

    6.4.2 Tabla: FACTURA: ................................................................................... 123

    6.4.3 Tabla: TURNO: ........................................................................................ 124

    6.5. RELACIONES.................................................................................................. 126

    6.6. REPORTES GENERADOS........................................................................... 127

  • XI

    7. MODULO USUARIOS ............................................................................................ 128

    7.1. OBJETIVOS ..................................................................................................... 128

    7.2. CASOS DE USO ............................................................................................. 128

    7.2.1 Caso de uso: CREAR USUARIO ......................................................... 128

    7.2.2 Caso de uso: MODIFICAR USUARIO ................................................. 129

    7.3. DIAGRAMA DE CASOS DE USO ................................................................ 130

    7.4. DICCIONARIO DE DATOS ........................................................................... 130

    7.4.1 Tabla: Usuario: ........................................................................................ 130

    7.5. RELACIONES.................................................................................................. 132

    8. MODULO ADMINISTRATIVO............................................................................... 133

    8.1. OBJETIVOS ..................................................................................................... 133

    8.2. CASOS DE USO ............................................................................................. 133

    8.2.1 Caso de Uso: Registro de la Empresa ................................................ 133

    8.2.2 Caso de Uso: Matrcula de Lneas ....................................................... 134

    8.2.3 Caso de Uso: Modificacin de Lneas ................................................. 135

    8.2.4 Caso de Uso: Ventas de Atraccin ...................................................... 136

    8.3. DIAGRAMA DE CASOS DE USO ................................................................ 137

    8.4. DICCIONARIO DE DATOS ........................................................................... 137

    8.4.1 Tabla: EMPRESA.................................................................................... 137

    8.4.2 Tabla: VENTASXATRACCION: ............................................................ 138

    8.5. RELACIONES.................................................................................................. 140

    8.6. REPORTES GENERADOS........................................................................... 141

    9. DISEO GENERAL ................................................................................................ 143

    9.1. OBJETIVOS ..................................................................................................... 143

    9.2. CASOS DE USO ............................................................................................. 143

    9.2.1 Caso de Uso: Conectar base de datos................................................ 143

    9.3. DIAGRAMA DE CASOS DE USO ................................................................ 144

  • XII

    3.7. DIAGRAMA DE ACTIVIDADES.................................................................... 145

    9.4. DIAGRAMA DE COMPONENTES ............................................................... 146

    ANEXO II .......................................................................................................................... 148

    ANEXO II .......................................................................................................................... 149

    ANEXO III ......................................................................................................................... 150

    MANUAL DEL USUARIO .............................................................................................. 151

    CONCLUSIONES ........................................................................................................... 181

    BIBLIOGRAFA................................................................................................................ 182

    GLOSARIO ...................................................................................................................... 185

  • XIII

    LISTA DE ILUSTRACIONES

    Pg.

    Ilustracin 1 - Organigrama ..............................................................................................21

    Ilustracin 2 - Actores y Casos de uso. ..........................................................................53

    Ilustracin 3 - Nombres simples y de camino................................................................54

    Ilustracin 4 - Ejemplo de Diagrama de Casos de uso................................................58

    Ilustracin 5 - Ejemplo de Diagrama de Actividades....................................................60

    Ilustracin 6 - Lectores Diagrama de Casos de Uso ............................................. 103

    Ilustracin 7 - Lectores Relaciones........................................................................... 106

    Ilustracin 8 - Lectores Listado de Lectores............................................................ 107

    Ilustracin 9 - Lectores Listado de Lectores por Atraccin ................................... 107

    Ilustracin 10 - Atracciones Diagrama de Casos de Uso ..................................... 110

    Ilustracin 11 - Uso de una atraccin por un cliente Diagrama de Estados ...... 111

    Ilustracin 12 - Atracciones - Relaciones .................................................................... 113

    Ilustracin 13 - Atracciones Listado de Atracciones .............................................. 114

    Ilustracin 14 - Atracciones Listado de Atraccin por Lector ............................... 114

    Ilustracin 15 - Pos (Punto de Venta) Diagrama de Casos de Uso .................... 122

    Ilustracin 16 - Pos - Relaciones .............................................................................. 126

    Ilustracin 17 Pos Ventas de Pos .......................................................................... 127

    Ilustracin 18 - Usuarios Diagrama de Casos de Uso ....................................... 130

    Ilustracin 19 - Usuarios - Relaciones ......................................................................... 132

    Ilustracin 20 - Administrativo Diagrama de Casos de Uso ................................. 137

    Ilustracin 21 - Administrativo - Relaciones................................................................ 140

    Ilustracin 22 - Administrativo Ventas por Atraccin ............................................. 141

    Ilustracin 23 Administrativo Ventas por Lnea ................................................... 142

    Ilustracin 24 - Principal Diagrama de Casos de Uso ........................................... 144

  • XIV

    LISTA DE TABLAS

    Pg.

    Tabla 1 - Presupuesto .......................................................................................................79

    Tabla 2 - Lectores Lectores del Parque ................................................................... 104

    Tabla 3 - Lectores Configuracin de Lectores ........................................................ 105

    Tabla 4 - Atracciones Informacin Bsica de Atracciones ................................... 112

    Tabla 5 - Pos - Punto de Venta ................................................................................... 123

    Tabla 6 - Pos Factura . ................................................................................................ 124

    Tabla 7 - Pos - Corte. ..................................................................................................... 125

    Tabla 8 - Usuario Usuarios de la Aplicacin ........................................................... 131

    Tabla 9 - Administrativo Empresa. ............................................................................ 138

    Tabla 10 - Administrativo Ventas por Atraccin. .................................................... 139

    Tabla 11 - Administrativo Lnea................................................................................. 139

  • 15

    INTRODUCCIN

    En el transcurso de ste proyecto, se desarroll un prototipo de software que

    apoya la gestin administrativa del parque de recreacin del Centro Comercial

    Sandiego de la empresa DIVERTRONICA MEDELLN S.A.

    Con base en los requerimientos de gestin administrativa del parque de recreacin

    Sandiego, se proporciona un prototipo del sistema, en el cual su parte fundamental

    es el manejo de del lector y las tarjetas de banda magntica. Estos dos elementos

    estn ocupando un lugar muy importante en el comercio alrededor del mundo,

    conocindosele a este como la filosofa del dinero plstico.

    El proyecto consisti en elaborar un prototipo que agilizar la gestin del parque

    de diversin Sandiego en los siguientes aspectos: Venta de tarjetas magnticas

    cargadas con dinero, uso de las atracciones a travs de un lector de tarjetas (claro

    que para esto se tendra que tener todo el parque en red, que podra

    implementarse en un futuro), liquidacin de las atracciones para ver sus ventas

    individuales, tener un inventario de atracciones y lectores instalados en el parque.

    Para el desarrollo de proyectos con un alto grado de complejidad, requieren de un

    diagnstico y una gestin previa para garantizar que la herramienta a disear e

    implementar, cumpla con los objetivos propuestos, y tambin satisfaga la

    necesidad planteada. Esto se logra con la recoleccin de datos relacionados con

    el sistema y definiendo un objetivo claro para llegar al feliz trmino del trabajo.

  • 16

    RESUMEN EJECUTIVO

    El presente trabajo de grado tiene como objetivo el estudio de la sistematizacin

    de la gestin administrativa del parque de diversin de DIVERTRONICA

    MEDELLIN S.A., con proyeccin a los otros parques de la empresa.

    La necesidad de un sistema eficaz que ayude a la gestin administrativa de

    parques de recreacin, requiere el uso de tcnicas y principios de desarrollo de

    software y hardware. Es por esto, que en este trabajo se hizo un anlisis, diseo y

    evaluacin de un programa para este fin.

    Con base en los objetivos trazados y los requerimientos deseados por la empresa,

    se propone un sistema apropiado para llevar a cabo los procesos administrativos

    beneficiando a la empresa en un alto grado, a travs de una sencilla interfase, en

    ambiente grafico. Finalmente, se presenta un prototipo gil y amigable para el

    usuario.

    Para facilitar el entendimiento del sistema se ha dividido por mdulos, que he

    desarrollado usando la notacin UML. Estos mdulos son: Lectores, Atracciones,

    Pos y Administrativo.

  • 17

    ABSTRACT

    The present graduation work has as goal the study of the systematizing of the

    management of entertain parks of DIVERTRONICA MEDELLIN S.A., with

    projection to the others parks of the enterprise.

    The need of a system effective that may help the management of entertain parks,

    requires the use of techniques and principles of software development and

    hardware. This is the reason why an analisys was made carefuly, design and

    evaluation of a program for this work.

    According to the objectives design and the requirements needs for enterprise, it is

    proposed a system able to take the administrative processes benefit to enterprise

    in grade high, through a simple interface, in graphic atmosphere. Finally, a present

    prototype, agile and friendly for the user.

    For further system understanding it has been divided by modules that i have

    developed using the UML notacin. These modules are: Readers, attractions, Pos

    and administrative.

  • 18

    1. PLANTEAMIENTO Y JUSTIFICACIN

    1.1. ANTECEDENTES HISTRICOS DE LA EMPRESA

    Historia de DIVERTRONICA MEDELLN S.A.

    DIVERTRONICA MEDELLIN S.A. fue creada en 1982 con el objetivo de operar

    vdeo juegos de habilidad y destreza, en las principales ciudades del pas. Durante

    los primeros 7 aos se dedic exclusivamente a manejar y prestar servicio de

    mantenimiento y reparacin a sus propios video juegos.

    En los aos siguientes empez a diversificar su negocio y fue as como incursion

    en la industria de la recreacin infantil y familiar fabricando e importando sus

    propios equipos y operndolos en almacenes de cadena, puntos especializados,

    centros comerciales, entre otros.

    La empresa pertenece desde 1985 a la IAAPA (asociacin internacional de

    Parques y Atracciones de Recreacin). Agrupa los fabricantes y operadores de

    parques y atracciones de recreacin ms importantes del mundo.

    Desde 1985 cuenta con unas instalaciones fsicas y un equipo tcnico y humano

    aptos para el diseo, fabricacin, importacin, exportacin, operacin y

    mantenimiento de una gran cantidad y variedad de atracciones que conforman lo

    que hoy es DIVERTRONICA MEDELLN S.A. LA GRAN DIVERSIN S.A.

  • 19

    Las instalaciones donde se realizan todas las operaciones de fabricacin y

    comercializacin de DIVERTRONICA LA GRAN DIVERSIN se encuentra

    localizada en el municipio de itagu (calle 51 N. 46 11).

    Funcionamiento de la empresa

    DIVERTRONICA MEDELLN S.A. es una empresa moderna, la cual

    constantemente se encuentra investigando acerca de la variedad en la fabricacin

    de atracciones electromecnicas, para poder ofrecer a sus clientes una gran

    diversidad para satisfacer la demanda del mercado.

    La empresa cuenta con ms de 40 puntos de venta en Antioquia, como tambin

    con representantes a nivel nacional localizados en las principales ciudades de

    Colombia (Bogot, Cali, Barranquilla, Bucaramanga, Pereira, Cartagena, Neiva)

    Dispuestos a brindar el mejor servicio de recreacin familiar que se ofrece en el

    pas con sus 2.500 equipos, ubicados en los diferentes centros de recreacin

    familiar, en los principales centros comerciales y los ms importantes almacenes

    de cadena del pas.

    En todos estos puntos de venta se cuenta con un gran nmero de colaboradores

    que conforman un equipo tcnico y administrativo capacitado para prestar un

    excelente servicio.

    Direccionamiento estratgico

    a. Misin

    Somos una empresa dedicada a la promocin y comercializacin de servicios de

    recreacin infantil y familiar, orientada a satisfacer las necesidades de nuestros

  • 20

    clientes, mediante actividades de diversin en parques recreativos, centros

    comerciales, almacenes de cadena, sector oficial, entre otros; a travs del

    entretenimiento, recreacin e innovacin de los equipos utilizados.

    Convencidos de la calidad humana de las personas con que contamos,

    trabajamos con orgullo buscando siempre la excelencia de nuestra gente y de

    nuestros servicios.

    b. Visin

    Ser la empresa lder en Colombia en la operacin de atracciones para

    entretenimiento familiar e infantil, mediante la creacin de alternativas que

    representen satisfacciones y beneficios sociales y econmicos para socios,

    clientes y empleados.

    c. Valores

    DIVERTRONICA MEDELLIN S.A. cimienta todas sus decisiones y actuaciones en

    la tica, honestidad, respeto, cumplimiento, profesionalismo en la prestacin de

    sus servicios a sus clientes y todas aquellas personas involucradas directa o

    indirectamente con la empresa.

  • 21

    Organigrama

    Ilustracin 1 - Organigrama

    1.2. FORMULACIN DEL PROBLEMA

    En los procesos administrativos de los puntos de Venta de DIVERTRONICA

    MEDELLIN S.A. y en especial el Centro Comercial Sandiego, se ha observado la

    necesidad de un sistema de gestin para ellos entre los cuales estn: Recaudos e

    informes de ventas en periodos determinados, y la facilitacin prctica de utilizar

    las atracciones por parte de los clientes(desde el momento en que se compra la

    boletera de los mismos), han hecho notar una falta de informacin gil, oportuna y

    confiable en la gestin de procesos administrativos dentro del establecimiento,

    generando a la empresa prdidas de tiempo para el recurso humano involucrado,

    produciendo as un aumento en los costos de nmina. Cuando se necesita

    conocer las ventas hechas por cada atraccin en algn momento determinado, no

    es posible saberlo de una manera gil y confiable, ya que se tendra que pasar por

    cada una de ellas y tomar las fichas depositadas en sus respectivas alcancas y a

    su vez confrontar el nmero contado con el contador que tiene cada atraccin que

    ASAMBLEA DE ACCIONISTAS

    JUNTA DIRECTIVA

    GERENTE GENERAL

    COMERCIAL MANTENIMIENTOS Y OFICIOS VARIOS

    CONTABILIDAD Y TESORERIA

    RECURSOS HUMANOS SALUD OCUPACIONAL

    ASISTENTES

    RECEPCIONISTA

    REVISOR FISCAL

    REPRESENTANTES DE OTRAS CIUDADES

    ASISTENTE COMERCIAL

    PROMOTRES

  • 22

    ste se incrementa cada vez que se haga uso de ella. Hacer este proceso resulta

    ser muy lento puesto que el tiempo que se invierte en ello es muy largo, a parte de

    eso no lo puede hacer una sola persona y el parque no puede estar en

    funcionamiento, como mnimo son dos personas las que lo hacen. Con relacin a

    la utilizacin por parte del cliente de la atraccin, ste lo hace a travs de fichas o

    boletas, dependiendo de la atraccin que decida utilizar. Este resulta ser un

    proceso poco amigable desde el momento en que se compran los crditos en el

    punto de venta, a parte de esto se le pueden perder al cliente con ms facilidad.

    1.3. JUSTIFICACIN

    DIVERTRONICA MEDELLN S.A. ha tomado la decisin de prestar un mejor

    servicio en sus puntos de venta a todos sus clientes, teniendo como punto de

    partida el parque de diversin del C.C. Sandiego. Optimizando paralelamente la

    gestin administrativa de cada uno de ellos. Para este fin eligi adquirir

    primeramente un prototipo de software que pueda permitir llevar a cabo ste

    proceso.

    Actualmente la empresa lleva la gestin de los parques de una forma muy manual,

    vendiendo boletas o fichas para el funcionamiento de las atracciones y contando

    manualmente las mismas. Este es un proceso bastante lento y poco fiable para

    dar respuesta a las ventas diarias, al igual que su proceso de ganancias despus

    de liquidar el da de las ventas en el parque.

    La empresa tiene como objetivo expandir sus puntos de venta, para lo cual se

    hace cada vez ms necesaria la computarizacin de las gestiones administrativas,

    ofreciendo a los clientes una mejor atencin y comodidad en sus servicios, como

    tambin dando a su recurso humano involucrado en la gestin, una mayor

    satisfaccin personal en el desempeo de sus labores.

    DIVERTRONICA MEDELLN S.A., requiere de un sistema que est en capacidad

    de manejar la gestin de consumo por parte de los clientes en sus puntos de

  • 23

    venta, como es el uso de las atracciones y los recaudos e informes de ventas, de

    una manera eficiente, eficaz y confiable. Para ello se propone un prototipo que

    permita dar solucin a las falencias mencionadas anteriormente.

  • 24

    2. MARCO TERICO

    2.1. ESTADO DEL ARTE

    En la actualidad a nivel local el Parque de Diversin del Centro Comercial el

    Tesoro, cuenta con un sistema de manejo de tarjetas magnticas y lectores para

    hacer uso de sus atracciones. Este sistema lo tiene para un gran nmero de

    mquinas del parque, an que no todas se encuentran en esta red.

    A nivel nacional est Bogot, hay dos empresas en donde cuentan con un sistema

    similar a ste: Carrusel y Multijuego, donde esta ltima tiene dos parques (Rodeo

    Landia y Play Time). El sistema que manejan se llama SACOA, es un sistema

    argentino. Mientras que en Medelln en el Centro Comercial El Tesoro se maneja

    uno llamado Arcade Management Software Suite, de la empresa Intercard Inc.

    Norteamericana.

    Esto sistemas cuentan con las siguientes caractersticas:

    Configuracin de Lectores

    Recopilacin de Informacin de ventas de los lectores

    Reportes grficos acerca de informacin leda en los lectores

    Arcade Management Software Suite

    Es una herramienta desarrollada por Intercard (USA), la cual maneja el

    funcionamiento de un parque de recreacin por medio de tarjetas de banda

    magntica con las cuales se hace uso de las atracciones.

  • 25

    Esta herramienta cuenta con las siguientes funciones:

    Permite configurar los lectores para determinar con qu costo va a funcionar la

    atraccin en la que se encuentre instalado y as poder descontar del saldo que

    tenga la tarjeta.

    Permite hacer recoleccin de la informacin guardada en cada lector del

    parque de recreacin a travs de una red de datos.

    Entrega reportes acerca de los registros capturados de los lectores, como:

    ventas, horas en las que se hizo uso de las mquinas, entre otros.

    Tams 2000 (FESCO)

    Este Tams2000 es el Pos y en l tambin se manejan los cumpleaos, que son

    eventos de nios que se celebran en el parque. En este mdulo se hace la

    reservacin de la fiesta y el respectivo abono si lo hay. Por el lado de las

    promociones el Tams permite el manejo de bonos para cancelar en los puntos de

    venta. Actualmente se manejan 2 bonos que vienen en los combos Familiar y Kids

    y que sirven para recargar tarjetas.

    2.2. TARJETAS MAGNTICAS

    Las tarjetas de plstico con una franja magntica ya forman parte de la vida de

    todos, simplificando las operaciones bancarias, compras, controlando el acceso a

    lugares restringidos, etc. Por lo tanto, no es necesaria la explicacin sobre las

    posibilidades actuales y futuras de dichas tarjetas.

  • 26

    Aspectos fsicos:

    Las dimensiones fsicas de las tarjetas estn estandarizadas por ANSI

    (American Nacional Standard Institute: Instituto Nacional Americano de

    Patrones) y fueron definidas para facilitar la manipulacin y almacenamiento de

    las mismas. La franja magntica existente en estas tarjetas posee tres pistas

    con usos y formatos independientes entre s.

    Caractersticas de la pista 1:

    La pista 1 tiene densidad de 210bpi (bists por pulgada) con palabras de 6 bits

    ms 1, para paridad impar. La codificacin de 6 bits es un subconjunto del

    cdigo ASCII. Teniendo la tarjeta 3.375, y siendo reservadas 0.293 al

    comienzo y 0.273 al final para sincrona, puede contener 84 palabras de

    informacin: ((3.375 0.293 0.273) x 210bits/pulgada) 7 bits/palabra =

    84.27 palabras.

    Caractersticas de la pista 2:

    La pista 2 tiene densidad de 75bpi con palabras de 4 bits ms 1 para paridad

    impar. La codificacin de 4 bits permite la formacin de solamente 10

    caracteres numricos ms 6 de cdigos. El nmero mximo de palabras es de

    42 en una tarjeta: ((3.375 0.293 0.273) x 75 bits/pulgada) 5 bits/palabra

    = 42.13 palabras.

    El comienzo y el final de la pista tambin son reservados para sincrona.

    Caractersticas de la pista 3:

    La pista 3 tiene densidad de 210bpi como la pista 1 y palabras de 4 bits ms 1

    para paridad impar como la pista 2. En este caso, el nmero mximo de

  • 27

    palabras posibles de almacenar en una tarjeta es de 117: ((3.375 0.293

    0.273) x 210 bits/pulgada) 5 bits/palabra).

    Otros tipos de tarjetas:

    Existen otros tipos de tarjetas con franja magntica con fines especficos, que

    no tienen las dimensiones o densidades descriptas anteriormente, pero con

    mtodos de escritura y lectura semejantes. Citamos como ejemplo los boletos

    magnticos usados en trenes y subterrneos.

    (Ver Anexo III)

    Tcnicas de codificacin:

    La tcnica de codificacin fue desarrollada por Airen en 1954 y es conocida

    como Two-Frequency, coherent Phase Recording grabacin de fase

    coherente y dos frecuencias). Este mtodo permite la grabacin de datos en

    forma seriada sin necesidad de pulsos de sincrona en canal separado y con

    velocidad de lectura variable.

    En la pista tenemos, a espacios fijos, transiciones de flujo magntico (la franja

    magntica no es ms que una cinta de material ferromagntico semejante al

    usado en las cintas de audio). Estas transiciones a espacios fijos son usadas

    como clock.

    Entre una transicin y otra puede o no existir una transicin intermedia. Si

    existe, el bit grabado es 1; si no existe la transicin intermedia, el bit grabado

    es 0.

    La figura 2(del documento) muestra una seal digital obtenida de la lectura de

    una tarjeta magntica.

    Note que a cada espacio regular existe una transicin de nivel lgico alto (H) a

    nivel lgico bajo (L) o de nivel lgico L a nivel lgico H (no importa el sentido de

  • 28

    transicin y s solamente la existencia de sta). Cada transicin es un pulso de

    clock.

    La permanencia del nivel en H o L de un clock gasta el prximo clock significa

    que el dato es 0 (cero). Si hubiera una transicin de H a L o de L a H entre un

    clock y otro, indica un bit de dato 1 (uno).

    Las palabras son grabadas en la tarjeta de forma tal que el bit menos

    significativo quede a la derecha y el bit de paridad quede a la izquierda si se

    mira la tarjeta como en la figura 1. Como la tarjeta se lee de derecha a

    izquierda, el bit menos significativo es el primero en ser ledo.

    La grabacin magntica:

    Bsicamente, la grabacin magntica de una tarjeta se hace a travs de una

    cabeza magntica, en la cual provoca una inversin en el sentido de la

    corriente que circula por su bobinado a cada transicin de flujo magntico

    deseada. La franja magntica se desplaza longitudinalmente a la cabeza,

    recibiendo las lneas de flujo, y es magnetizada. A cada inversin en el sentido

    de la corriente, corresponde una inversin en el sentido de magnetizacin. En

    la franja magntica aparecen imanes con polos invertidos correspondiendo

    cada inversin a una transicin de clock o de dato 1.

    2.3. LECTORES

    Cuando hice el estudio sobre el estado del arte, enfatic en el Centro Comercial el

    Tesoro.

    OPERACIN DE LECTORES DE ATRACCIONES

    Las dificultades ms frecuentes y la forma de resolverlas son las siguientes:

  • 29

    Si al introducir una tarjeta el lector no la expulsa y la deja en su interior, se

    debe probar primero apagando el lector por unos instantes y volverlo a prender

    para que expulse la tarjeta por si solo, si luego de varios intentos con este

    procedimiento no se obtiene resultado, se debe apagar el lector y abrirlo con su

    respectiva llave; luego de abrir el lector, se extrae la tarjeta sujetndola con los

    dedos pero poniendo atencin de no doblarla o hacerle algn dao, luego se

    cierra el lector y se prende de nuevo. Esta situacin se puede presentar por

    suciedad en el lector o porque la tarjeta estaba doblada o quebrada antes de

    introducirla.

    Si al introducir la tarjeta al lector esta se queda entrando y saliendo de manera

    sucesiva, hay que procurar sujetarla con los dedos en el momento que sale y

    antes de que se introduzca de nuevo, luego halarla hacia fuera, esto puede

    generar un mensaje de error 31; aunque la mayora de las veces, en muy

    pocas no, la tarjeta queda mala despus de este procedimiento, es decir, si se

    introduce de nuevo a un lector produce error 4 .

    Nunca se debe halar la tarjeta en el momento que el lector la esta

    reconociendo, es necesario esperar a que el lector la expulse por si solo, de lo

    contrario la tarjeta sufrir el mismo dao que se menciona en el tem anterior.

    Es indispensable que el operario este atento a la informacin que el lector

    despliega en su pantalla, ya sea para que le informe al visitante el saldo de la

    tarjeta, o para que en caso de tener que reponer la tarjeta al cliente porque

    sufri dao en el lector, pueda informar el monto de dinero a grabar en la

    nueva tarjeta para hacerle la reposicin.

    Nunca se debe de introducir en los lectores tarjetas dobladas, mordidas,

    quebradas o deterioradas, porque es muy probable que se atasquen en el

    interior del lector y puedan ocasionar daos fsicos en ste.

    Cuando un lector reporta en su pantalla error 4 mientras lee una tarjeta, puede

    ser que la tarjeta esta realmente mala, o muy sucia y la cabeza lectora no

  • 30

    reconoce la informacin en la tarjeta, o la cabeza lectora est sucia y no

    identifica la informacin en la tarjeta .

    Cuando un lector muestra en su pantalla de forma permanente la palabra

    CARD, quiere decir que hay una tarjeta atascada en su interior, en este caso

    se debe proceder de acuerdo a las instrucciones explicadas en el primer tem

    de esta lista.

    Cuando el lector despliega en su pantalla error 43 mientras lee una tarjeta,

    quiere decir que la tarjeta ha sufrido dao parcial en su informacin y no puede

    ser reconocida enteramente, por lo tanto es necesario reponerle esta tarjeta al

    cliente con una nueva, esta reposicin se hace con el personal de la seccin

    de sistemas.

    Solo se reponen tarjetas a los clientes cuando hay evidencia de que fueron

    compradas, recargadas o usadas exitosamente, momentos antes de que algn

    lector reportara error 4, 30 43 al intentar leerlas. No se debe hacer

    reposicin cuando la tarjeta es vieja, ya que el dao que presente pudo ser

    causado por maltra to o descuido del cliente antes de regresar al parque a

    usarla.

    El prototipo de software que propongo desarrollar estar en capacidad de manejar

    un pos bsico, en el cual solo se vendern tarjetas de banda magntica, cargadas

    con el valor de dinero escogido por un cliente. Una vez se haga esta venta, se

    confirmar la carga exitosa en la tarjeta a travs de una consulta, luego se podr

    hacer uso de la tarjeta en una atraccin que tendr un lector. Este ltimo proceso

    se har a travs de una simulacin en el prototipo de una forma local y en un

    futuro como propuesta de proyecto para Divertrnica Medelln S.A., sera hacerlo

    en red con todas las atracciones de un parque de diversin pero para el prototipo

    se har localmente con el mismo software.

  • 31

    En este proto tipo se podrn ingresar todas las atracciones de un parque de

    diversin con sus caractersticas respectivas, como por ejemplo el valor del turno

    en la atraccin para poder saber cunto se descontar de la tarjeta en el momento

    de hacer uso de ella. Tambin permitir registrar los lectores y sacar reportes

    bsicos de atracciones, lectores y ventas.

    Para el desarrollo de este prototipo lo fundamento en el uso de la metodologa del

    Lenguaje Unificado de Modelado (UML), ya que este me permite hacer el diseo y

    modelado del mismo. Y como UML, es efectivo tambin para aplicaciones con

    grandes cantidades de software, sera ideal para mi propuesta a Divertrnica

    Medelln S.A. de hacer la aplicacin completa en red.

    2.4. UML

    2.4.1 Una breve historia

    Los lenguajes de modelado orientados a objetos aparecieron, en algn momento,

    entre la mitad de los setenta y finales de los ochenta cuando os metodologistas,

    enfrentados a los nuevos lenguajes de programacin orientados a objetos y a

    unas aplicaciones cada vez ms complejas, empezaron a experimentar con

    enfoques alternativos al anlisis y al diseo. El nmero de mtodos orientados a

    objetos se increment de menos de 10 a ms de 50 durante el perodo entre 1989

    y 1994. muchos usuarios de estos mtodos tenan problemas al intentar encontrar

    un lenguaje de modelado que cubriera sus necesidades completamente,

    alimentado de esta forma la llamada guerra de mtodos. Aprendiendo de estas

    experiencias comenzaron a aparecer nuevas generaciones de mtodos,, entre los

    que destacaron de manera muy clara unos pocos mtdoso, en especial el mtodo

    de Booch, el mtodo OOSE (Object-Oriented Software Engineering, Ingeniera del

    Software Orientada a Objetos) de Jacobson y el mtodo OMT (Object Modeling

  • 32

    Technique, Tcnica e Modelado de Ojetos) de Rumbaugh. Cada uno de estos era

    un mtodo completo, aunque todos tenan sus puntos fuertes y sus debilidades.

    En pocas palabras, el mtodo de Booch era particularmente expresivo durante las

    fases de diseo y construccin de los proyectos, OOSE proporcionaba un soporte

    excelente para los casos de uso como forma de dirigir la captura de requisitos, el

    anlisis y el diseo de alto nivel, y OMT-2 era principalmente til para el anlisis y

    para los sistemas de informacin con gran cantidad de datos.

    En la primera mitad de los noventa, empezaron a adoptar ideas de cada uno de

    los dos mtodos, los cuales haban sido reconocidos en conjunto como los tres

    principales mtodos orientados a objetos a nivel mundial. Como creadores

    principales de los mtodos de Booch, OOSE y OMT, nos sentimos motivados para

    crear un lenguaje unificado de modelado por tres razones. En primer lugar, cada

    uno de nuestros mtodos ya estaba evolucionando independientemente hacia los

    otros dos. Tena sentido hacer continuar esa evolucin de forma conjunta en vez

    de hacerlo por separado, eliminando la posibilidad de cualquier diferencia gratuita

    e innecesaria que confundira an ms a los usuarios. En segundo lugar, al

    unificar nuestros mtodos, podramos proporcionar cierta estabilidad al mercado

    orientado a objetos, perdimiento que los proyectos se pusieran de acuerdo en un

    lenguaje de modelado madura y permitiendo a los Constructores de herramientas

    que se centraran en proporcionar ms caractersticas tiles. En tercer lugar,

    esperbamos que nuestra colaboracin introducira mejoras en los tres mtodos

    anteriores, ayudndonos a capturar lecciones aprendidas y a cubrir problemas que

    ninguno de nuestros mtodos haba manejado bien anteriormente.

    Cuando comenzamos con la unificacin, establecimos tres metas para nuestro

    trabajo:

    1. modelar sistemas, desde el concepto hasta los artefactos ejecutables,

    utilizando tcnicas orientadas a objetos.

    2. cubrir las cuestiones relacionadas con el tamao inherente a los sistemas

    complejos crticos.

  • 33

    3. crear un lenguaje de modelado utilizable tanto para las personas como por las

    mquinas.

    El esfuerzo de UML comenz en octubre de 1994, cuando Rumbaugh se uni a

    Booch en Rational. El objetivo inicial de nuestro proyecto fue la unificacin de los

    mtodos de Booch y OMT.

    Por qu modelamos

    Una empresa de software con xito es aqulla que produce de una manera

    consistente software de calidad que satisface las necesidades de sus usuarios.

    Una empresa que puede desarrollar este software de forma predecible y puntual,

    con un uso eficiente y efectivo de recursos, tanto humanos como materiales, tiene

    un negocio sostenible.

    El modelado es una parte central de todas las actividades que conducen a la

    produccin de buen software. Construimos modelos para comunicar la estructura

    deseada y el comportamiento de nuestro sistema. Construimos modelos para

    visualizar y controlar la arquitectura del sistema. Construimos modelos para

    comprender mejor el sistema que estamos construyendo, muchas veces

    descubriendo oportunidades para la simplificacin y la reutilizacin. Construimos

    modelos para controlar el riesgo.

    La importancia de modelar

    Los proyectos software que fracasan lo hacen por circunstancias propias, pero

    todos los proyectos con xito se parecen en muchos aspectos. Hay muchos

    elementos que contribuyen a una empresa de software con xito; uno en comn

    es el uso del modelado.

  • 34

    El modelado es una tcnica de ingeniera probada y bien aceptada. Construimos

    modelos arquitectnicos de casas y rascacielos para ayudar a sus usuarios a

    visualizar el producto final. Incluso podemos construir modelos matemticos para

    analizar los efectos de vientos o terremotos sobre nuestros edificios.

    Un modelo es una simplificacin de la realidad.

    QUE ES

    El Lenguaje Unificado de Modelado (Unified Modeling Language, UML) es un

    lenguaje estndar para escribir planos de software. UML puede utilizarse para

    visualizar, especificar, construir y documentar los artefactos de un sistema que

    involucra una gran cantidad de software.

    UML es apropiado para modelar desde sistemas de informacin en empresas

    hasta aplicaciones distribuidas basadas en la Web, e incluso para sistemas

    empotrados de tiempo real muy exigentes. Es un lenguaje muy expresivo, que

    cubre todas las vistas necesarias para desarrollar y luego desplegar tales

    sistemas. Aunque sea expresivo, UML no es difcil de aprender ni de utilizar.

    Aprender a aplicar UML de modo eficaz comienza por crear un modelo conceptual

    del lenguaje, lo cual requiere aprender tres elementos principales: los bloques

    bsicos de construccin de UML, las reglas que dictan cmo pueden combinarse

    esos bloques y algunos mecanismos comunes que se aplican a lo largo del

    lenguaje.

    UML es slo un lenguajes y por tanto es tan slo una parte de un mtodo de

    desarrollo de software. UML es independiente del proceso, aunque para utilizarlo

    ptimamente se debera usar en un proceso que fuese dirigido por los casos de

    uso, centrado en la arquitectura, iterativo e incremental.

  • 35

    UML es un lenguaje

    Un lenguaje proporciona un vocabulario y las reglas para combinar palabras de

    ese vocabulario con el objetivo de posibilitar la comunicacin. Un lenguaje de

    modelado es un lenguaje cuyo vocabulario y reglas se centran en la

    representacin conceptual y fsica de un sistema. Un lenguaje de modelado como

    UML es por tanto un lenguaje estndar para los planos del software.

    El modelado proporciona una comprensin de un sistema. Nunca es suficiente un

    nico modelo. Ms bien, para comprender cualquier cosa, a menudo se necesitan

    mltiples modelos conectados entre s, excepto en los sistemas ms triviales. Para

    sistemas con gran cantidad de software, se requiere un lenguaje que cubra las

    diferentes vistas de la arquitectura de un sistema mientras evoluciona a travs del

    ciclo de vida del desarrollo de software.

    El vocabulario las reglas de un lenguaje como UML indican cmo crear y leer

    modelos bien formados, pero no dicen qu modelos se deben crear ni cundo se

    deberan crear. Esta es la tarea del proceso de desarrollo de software. Un proceso

    bien definido guiar a sus usuarios al decidir qu artefactos producir, qu

    actividades y qu personal se emplea para crearlos y gestionarlos, y cmo usar

    esos artefactos para medir y controlar el proyecto de forma global.

    UML es un lenguaje para visualizar

    Para muchos programadores, la distancia entre pensar en una implementacin y

    transformarla en cdigo es casi cero. Lo piensas, lo codificas. De hecho, algunas

    cosas se modelan mejor directamente en cdigo. El texto es un medio maravilloso

    para escribir expresiones y algoritmos de forma concisa y directa.

    En tales casos, el programador todava est haciendo algo de modelado, si bien lo

    hace de forma completamente mental. Incluso puede bosquejar algunas ideas

    sobre una pizarra blanca o sobre una servilleta. Sin embargo, esto plantea algunos

    problemas.

  • 36

    Primero, la comunicacin de esos modelos conceptuales a otros est sujeta a

    errores a menos que cualquier persona implicada hable el mismo lenguaje.

    Normalmente, los proyectos y las organizaciones desarrollan su propio lenguaje, y

    es difcil comprender lo que est pasando para alguien nuevo o ajeno al grupo.

    Segundo, hay algunas cuestiones sobre un sistema software que no se pueden

    entender a menos que se construyan modelos que trasciendan el leguaje de

    programacin textual. Por ejemplo, el significado de una jerarqua de clases puede

    inferirse, pero no capturarse completamente, inspeccionando el cdigo de todas

    las clases en la jerarqua. De forma parecida, la distribucin fsica y posible

    migracin de los objetos en un sistema basado en la Web puede inferirse, pero no

    capturarse completamente, estudiando el cdigo fuente del sistema. Tercero, si el

    desarrollador que escribi el cdigo no dej documentacin escrita sobre los

    modelos que haba en su cabeza, esa informacin se perder para siempre o,

    como mucho, ser slo parcialmente reproducible a partir de la implementacin

    una vez que el desarrollador se haya marchado.

    Al escribir modelos en UML se afronta el tercer problema: un modelo explicito

    facilita la comunicacin.

    UML es un lenguaje para especificar

    En este contexto, especificar significa construir modelos precisos, no ambiguos y

    completos. En particular, UML cubre la especificacin de todas las decisiones de

    anlisis, diseo e implementacin que deben realizarse al desarrollar y desplegar

    un sistema con gran cantidad de software.

    UML es un lenguaje para construir

    UML no es un lenguaje de programacin visual, pero sus modelos pueden

    conectarse de forma directa a una gran variedad de lenguajes de programacin.

    Esto significa que es posible establecer correspondencias desde un modelo UML

  • 37

    a un lenguaje de programacin como Java, C++ o Visual Basic, o incluso a tablas

    en una base de datos relacional o al almacenamiento persistente en una base de

    datos orientada a objetos. Las cosas que se expresan mejor grficamente

    tambin se representan grficamente en UML, mientras que las cosas que se

    expresan mejor textualmente se plasman con el lenguaje de programacin.

    Esta correspondencia permite ingeniera directa: la generacin de cdigo a partir

    de un modelo UML es un lenguaje de programacin. Lo contrario tambin es

    posible: se puede reconstruir un modelo en UML a partir de una implementacin.

    La ingeniera inversa no es magia. A menos que se codifique esa informacin en

    la implementacin, la informacin se pierde cuando se pasa de los modelos al

    cdigo. La ingeniera inversa requiere, por lo tanto, herramientas que la soporten e

    intervencin humana. La combinacin de estas dos vas de generacin de cdigo

    y de ingeniera inversa produce una ingeniera de ida y vuelta, entendiendo por

    esto la posibilidad de trabajar en una vista grfica o textual, mientras las

    herramientas mantiene la consistencia entre las dos vistas.

    UML es un lenguaje para documentar

    Una organizacin de software que trabaje bien produce toda clase de artefactos

    adems de cdigo ejecutable. Estos artefactos incluyen (aunque no se limitan a:):

    Requisitos.

    Arquitectura.

    Diseo.

    Cdigo fuente.

    Planificacin de proyectos.

    Pruebas.

  • 38

    Prototipos.

    Versiones.

    Dependiendo de la cultura de desarrollo, algunos de estos artefactos no son slo

    los entregables de un proyecto, tambin son crticos en el control, la medicin y

    comunicacin que requiere un sistema durante su desarrollo y despus de su

    despliegue.

    UML cubre la documentacin de la arquitectura de un sistema y todos sus

    detalles. UML tambin proporciona un lenguaje para expresar requisitos y

    pruebas. Finalmente, UML proporciona un lenguaje para modelar las actividades

    de planificacin de proyectos y gestin de versiones.

    Dnde puede utilizarse UML?

    UML est pensado principalmente para sistemas con gran cantidad de software.

    Ha sido utilizado de forma efectiva en dominios tales como:

    Sistemas de informacin de empresa.

    Bancos y servicios financieros.

    Telecomunicaciones.

    Transporte.

    Defensa/industria aeroespacial.

    Comercio

    Electrnica mdica.

    Ambito cientfico.

    Servicios distribuidos basados en la Web.

  • 39

    UML no est limitado al modelado de software. De hecho, es lo suficientemente

    expresivo para modelar sistemas que no son software, como flujos de trabajo

    (workflows) en el sistema jurdico, estructura y comportamiento de un sistema de

    vigilancia mdica de un enfermo, y el diseo de hardware.

    Un modelo conceptual de UML

    Para comprender UML, se necesita adquirir un modelo conceptual del lenguaje, y

    esto requiere aprender tres elementos principales: los bloques bsicos de

    construccin de UML, las reglas que dictan cmo se pueden combinar estos

    bloques bsicos y algunos mecanismos comunes que se aplican a travs de UML.

    Una vez comprendidas estas ideas, se pueden leer modelos UML y crear algunos

    modelos bsicos. Conforme se gana ms experiencia en la aplicacin de UML, se

    puede edificar sobre este modelo conceptual, utilizando caractersticas ms

    avanzadas del lenguaje.

    Bloques de construccin de UML

    El vocabulario de UNL incluye tres clases de bloques de construccin:

    1. Elementos.

    2. Relaciones.

    3. Diagramas.

    Los elemento son abstracciones que son ciudadanos de primera clase en un

    modelo; las relaciones ligan estos elementos entre s; los diagramas agrupan

    colecciones interesantes de elementos.

  • 40

    Elementos en UML

    Hay cuatro tipos de elementos en UML:

    1. Elementos estructurales.

    2. Elementos de comportamiento.

    3. Elementos de agrupacin.

    4. Elementos de anotacin.

    Estos elementos son los bloques bsicos de construccin orientados a objetos de

    UML. Se utilizan para escribir modelos bien formados.

    Elementos estructurales. Los elementos estructurales son los nombres de los

    modelos UML. En su mayora son las partes estticas de un modelo, y

    representan cosas que son conceptuales o materiales. En total, hay siete tipos de

    elementos estructurales.

    Primero, una clase es una descripcin de un conjunto de objetos que comparten

    los mismos atributos, operaciones, relaciones y semntica. Una clase implementa

    una o ms interfaces. Grficamente, una clase se representa como un rectngulo,

    que normalmente incluye su nombre, atributos y operaciones.

    Segundo, una interfaz es una coleccin de operaciones que especifican un

    servicio de una clase o componente. Por lo tanto, una interfaz describe el

    comportamiento visible externamente de ese elemento. Una interfaz puede

    representar el comportamiento completo de una clase o componente o slo una

    parte de ese comportamiento. Una interfaz define un conjunto de especificaciones

    de operacin (o sea, sus signaturas), pero nunca un conjunto de

    implementaciones de operaciones. Grficamente, una interfaz se representa como

    un crculo junto con su nombre. Una interfaz raramente se encuentra aislada ms

    bien, suele estar conectada a la clase o componente que la realiza.

  • 41

    Tercero, una colaboracin define una interaccin y es una sociedad de roles y

    otros elementos que colabora para proporcionar un comportamiento cooperativa

    mayor que la suma de los comportamientos de sus elementos. Por lo tanto, las

    colaboraciones tiene dimensin tanto estructural como de comportamiento. Una

    clase dada puede participar en varias colaboraciones. Estas colaboraciones

    representan, pues, la implementacin de patrones que forman un sistema.

    Grficamente, una colaboracin se representa como una elipse de borde

    discontinuo, incluyendo normalmente slo su nombre.

    Cuarto, un caso de uso es una descripcin de un conjunto de secuencias de

    acciones que un sistema ejecuta y que produce un resultado observable de inters

    para un actor particular. Un caso de uso se utiliza para estructurar los aspectos de

    comportamiento en un modelo. Un caso de uso es realizado por una colaboracin.

    Grficamente, un caso de uso se representa como una elipse de borde continuo,

    incluyendo normalmente slo su nombre.

    Los tres elementos restantes (clases activas, componentes y nodos) son todos

    similares a las clases, en cuanto que tambin describen un conjunto de objetos

    que comparten los mismos atributos, operaciones, relaciones y semntica. Sin

    embargo, estos tres son suficientes diferentes y son necesarios para modelar

    ciertos aspectos de un sistema orientado a objetos, as que est justificando un

    tratamiento especial.

    Quinto, una clase activa es una clase cuyos objetos tienen uno o ms procesos o

    hilos de ejecucin y por lo tanto pueden dar origen a actividades de control. Una

    clase activa es igual que una clase, excepto en que sus objetos representan

    elementos cuyo comportamiento es concurrente con otros elementos.

    Grficamente, una clase activa se representa como una clase, pero con lneas

    ms gruesas, incluyendo normalmente su nombre, atributos y operaciones.

    Los dos elementos restantes (componentes y nodos) tambin son diferentes.

    Representan elementos fsicos, mientras los cinco elementos anteriores

    representan cosas conceptuales o lgicas.

  • 42

    Sexto, un componente es una parte fsica y reemplazable de un sistema que

    conforma con un conjunto de interfaces y proporciona la implementacin de dicho

    conjunto. En un sistema, se podrn encontrar diferentes ti pos de componentes de

    despliegue, tales como componentes COM+ o JavaBeans, as como componentes

    que sean artefactos del proceso de desarrollo, tales como archivos de cdigo

    fuente. Un componente representa tpicamente el empaquetamiento fsico de

    diferentes elementos lgicos, como clases, interfaces y colaboraciones.

    Grficamente, un componente se representa como un rectngulo con pestaas,

    incluyendo normalmente slo su nombre.

    Sptimo, un nodo es un elemento fsico que existe en tiempo de ejecucin y

    representa un recurso computacional, que por lo general dispone de algo de

    memoria y, con frecuencia, capacidad de procesamiento. Un conjunto de

    componentes puede residir en un nodo y puede tambin migrar de un nodo a otro.

    Grficamente, un nodo se representa como un cubo, incluyendo normalmente slo

    su nombre.

    Estos siete elementos (clases, interfaces, colaboraciones casos de uso, clases

    activas, componentes y nodos) son los elementos estructurales bsicos que se

    pueden incluir en un modelo UML. Tambin existen variaciones de estos siete

    elementos, tales como actores, seales, utilidades (tipos de clases), proceso e

    hilos (tipos de clases activas), y aplicaciones, documentos, archivos, bibliotecas,

    pginas y tablas (tipos de componentes).

    Elementos de comportamiento. Los elementos de comportamiento son las

    partes dinmicas de los modelos UML. Estos son los verbos de un modelo, y

    representan comportamiento en el tiempo y el espacio. En total hay do tipos

    principales de elementos de comportamiento:

    Primero, una interaccin es un comportamiento que comprende un conjunto de

    mensajes intercambiados entre un conjunto de objetos, dentro de un contexto

  • 43

    particular, para alcanzar un propsito especfico. El comportamiento de una

    sociedad de objetos o una operacin individual puede especificarse con una

    interaccin. Una interaccin involucra muchos otros elementos, incluyendo

    mensajes, secuencias de accin (el comportamiento invocado por un mensaje) y

    enlaces (conexiones entre objetos). Grficamente, un mensaje se muestra como

    una lnea dirigida, incluyendo casi siempre el nombre de su operacin.

    Segundo, una mquina de estados es un comportamiento que especifica las

    secuencias de estados por las que pasa un objeto o una interaccin durante su

    vida en respuesta a eventos, junto con sus reacciones a esto eventos. El

    comportamiento de una clase individual o una colaboracin de clases pueden

    especificarse con una mquina de estados. Una mquina de estados involucra a

    otros elementos, incluyendo estados, transiciones (el flujo de un estado a otro),

    eventos (que disparan una transicin) y actividades (la respuesta a una transicin.

    Grficamente, un estado se representa como un rectngulo de esquinas

    redondeadas, incluyendo normalmente su nombre y sus subastados, si los tiene.

    Estos dos elementos (interacciones y mquinas de estados) son los elementos

    bsicos de comportamiento que se pueden incluir en un modelo UML.

    Semnticamente, estos elementos estn conectados normalmente a diversos

    elementos estructurales, principalmente clases, colaboraciones y objetos.

    Elementos de agrupacin. Los elementos de agrupacin son las partes

    organizativas de los modelos UML. Estos son las cajas en las que puede

    descomponerse un modelo.

    En total, hay un elemento de agrupacin principal, los paquetes.

    Un paquete es un mecanismo de propsito general para organizar elementos en

    grupos. Los elementos estructurales, los elementos de comportamiento, e incluso

    otros elementos de agrupacin pueden incluirse en un paquete. Al contrario que

    los componentes (que existen en tiempo de ejecucin), un paquete es puramente

  • 44

    conceptual (slo existe en tiempo de desarrollo). Grficamente, un paquete se

    visualiza como una carpeta, incluyendo normalmente slo su nombre y, a veces,

    su contenido.

    Los paquetes son los elementos de agrupacin bsicos con los cuales se puede

    organizar un modelo UML. Tambin hay variaciones, tales como los frameworks,

    los modelos y los subsistemas (tipos de paquetes).

    Elementos de anotacin. Los elementos de anotacin son las partes explicativas

    de los modelos UML. Son comentarios que se pueden aplicar para describir,

    clarificar y hacer observaciones sobre cualquier elemento de un modelo. Hay un

    tipo principal de elementos de entonacin llamado nota. Una nota es simplemente

    un smbolo para mostrar restricciones y comentarios junto a un elemento o una

    coleccin de elementos. Grficamente, una nota se representa como un

    rectngulo con una esquina doblada, junto con un comentario textual o grfico.

    Este elemento es el objeto bsico de anotacin que se puede incluir en un modelo

    UML. Tpicamente, las notas se utilizarn para adornar los diagramas con

    restricciones o comentarios que se expresen mejor en texto informal o formal.

    Tambin hay variaciones sobre este elemento, tales como los requisitos (que

    especifican algn comportamiento deseado desde la perspectiva externa del

    modelo).

    Relaciones en UML.

    Hay cuatro tipos de relaciones en UML:

    1. Dependencia.

    2. Asociacin.

    3. Generalizacin.

    4. Realizacin.

  • 45

    Estas relaciones son los bloques bsicos de construccin para relaciones de UML.

    Se utilizan para escribir modelos bien formados:

    Primero, una dependencia es una relacin semntica entre dos elementos, en la

    cual un cambio a un elemento (elemento independiente) puede afectar a la

    semntica del otro elemento (elemento dependiente). Grficamente, una

    dependencia se representa como una lnea discontinua, posiblemente dirigida, que

    incluye a veces una etiqueta.

    Segundo, una asociacin es una relacin estructural que describe un conjunto de

    enlaces, los cuales son conexiones entre objetos. La agregacin es un tipo

    especial de asociacin, que representa una relacin estructural entre un todo y sus

    partes. Grficamente, una asociacin se representa como una lnea continua,

    posiblemente dirigida, que a veces incluye una etiqueta, y a menudo incluye otros

    adornos, como la multiplicidad y los nombres de rol.

    Tercero, una generalizacin es una relacin de especializacin/generalizacin en

    la cual los objetos del elemento especializado (el hijo) pueden sustituir a los

    objetos del elemento general (el padre). De esta forma, el hijo comparte la

    estructura y el comportamiento del padre. Grficamente, una relacin e

    generalizacin se representa como una lnea continua con una punta de flecha

    vaca apuntando al padre.

    Cuarto, una realizacin es una relacin semntica entre clasificadores, en donde

    un clasificador especifica un contrato de otro clasificador garantiza que cumplir.

    Se pueden encontrar relaciones de realizacin en dos sitio: entre interfaces y las

    clases y componentes que las realiza, y entre los casos de uso y las

    colaboraciones que los realizan. Grficamente, una relacin de realizacin se

    representa como una mezcla entre una generalizacin y una relacin de

    dependencia.

  • 46

    Estos cuatro elementos son los elementos bsicos relacionales que se pueden

    incluir en un modelo UML. Tambin existen variaciones de estos cuatro, tales

    como el refinamiento, la traza, la inclusin y la extensin (para las dependencias).

    Diagramas en UML.

    Un diagrama es la representacin grfica de un conjunto de elementos,

    visualizado la mayora de las veces como un grafo conexo de nodos (elementos) y

    arcos (relaciones). Los diagramas se dibujan para visualizar un sistema desde

    diferentes perspectivas, de forma que un diagrama es una proyeccin de un

    sistema. Para todos los sistemas, excepto los ms triviales, un diagrama

    representa una vista resumida de los elementos que constituyen un sistema. El

    mismo elemento puede aparecer en todos los diagramas, slo en unos pocos

    diagramas (el caso ms comn), o en ningn diagrama (un caso muy raro). En

    teora, un diagrama puede contener cualquier combinacin de elementos y

    relaciones. En la prctica, sin embargo, slo surge un pequeo nmero de

    combinaciones, las cuales son consistentes con las cinco vistas ms tiles que

    comprenden la arquitectura de un sistema con gran cantidad de software. Por esta

    razn, UML incluye nueve de estos diagramas:

    1. Diagrama de clases.

    2. Diagrama de objetos.

    3. Diagrama de casos de uso.

    4. Diagrama de secuencia.

    5. Diagrama de colaboracin.

    6. Diagrama de estados (statechart)

    7. Diagrama de actividades.

    8. Diagrama de componentes.

  • 47

    9. Diagrama de despliegue.

    Un diagrama de clases muestra un conjunto de clases, interfaces y

    colaboraciones, as como sus relaciones. Estos diagramas son los diagramas ms

    comunes en el modelado de sistemas orientados a objetos los diagramas de

    calases cubren la vista de diseo esttica de un sistema. Los diagramas de clases

    que incluyen clases activas cubren la vista de procesos esttica de un sistema.

    Un diagrama de objetos muestra un conjunto de objetos y sus relaciones. Los

    diagramas de objetos representan instantneas de instancias de los elementos

    encontrados en los diagramas de clases. Estos diagramas cubren la vista de

    diseo esttica o la vista de procesos esttica de un sistema como lo hacen los

    diagramas de clases, pero desde la perspectiva de casos reales o prototpicos.

    Un diagrama de casos de uso muestra un conjunto de casos de uso y actores

    (un tipo especial de clases) y sus relaciones. Los diagramas de casos de uso

    cubren la vista de casos de uso esttica de un sistema. Estos diagramas son

    especialmente importantes en el modelado y organizacin del comportamiento de

    un sistema.

    Tanto los diagramas de secuencia como los diagramas de colaboracin son

    un tipo de diagramas de interaccin. Un diagrama de interaccin muestra una

    interaccin, que consta de un conjunto de objetos y sus relaciones, incluyendo los

    mensajes que pueden ser enviados entre ellos. Los diagramas de interaccin

    cubren la vista dinmica de un sistema. Un diagrama de secuencia es un

    diagrama de interaccin que resalta la ordenacin temporal de los mensajes; un

    diagrama de colaboracin es un diagrama de interaccin que resalta la

    organizacin estructural de los objetos que envan y reciben mensajes. Los

  • 48

    diagramas de secuencia y los diagramas de colaboracin son isomorfo, es decir,

    que se puede tomar uno y transformarlo en el otro.

    Un diagrama de estados muestra una mquina de estados, que consta de

    estados, transiciones, eventos y actividades. Los diagramas de estados cubren la

    vista dinmica de un sistema. Son especialmente importantes en el modelado del

    comportamiento de una interfaz, una clase o una colaboracin y resaltan el

    comportamiento dirigido por eventos de un objeto, lo cual es especialmente til

    ene. Modelado de sistemas reactivos.

    Un diagrama de actividades es un tipo especial de diagrama de estados que

    muestra el flujo de actividades dentro de un sistema. Los diagramas de

    actividades cubren la vista dinmica de un sistema. Son especialmente

    importantes al modelar el funcionamiento de un sistema y resaltan el flujo de

    control entre objetos.

    Un diagrama de componentes muestra la organizacin y las dependencias entre

    un conjunto de componentes. Los diagramas de componentes cubre la vista de

    implementacin esttica de un sistema. Se relacionan con los diagramas de de

    clases en que un componente se corresponde, por lo comn, con una o ms

    clases, interfaces o colaboraciones.

    Un diagrama de despliegue muestra la configuracin de nodos de procesamiento

    en tiempo de ejecucin y los componentes que reside en ellos. Los diagramas de

    despliegue cubren la vista de despliegue esttica de una arquitectura. Se

    relacionan con los diagramas de componentes en que un nodo incluye, por lo

    comn, uno o ms componentes.

  • 49

    Esta no es una lista cerrada de diagramas. Las herramientas pueden utilizar UML

    para proporcionar otros tipos de diagramas, aunque estos nueve son, con mucho,

    los que con mayor frecuencia aparecern en la prctica.

    Reglas de UML

    Los bloques de construccin de UML no pueden simplemente combinarse de

    cualquier manera. Como cualquier lenguaje, UML tiene un nmero de reglas que

    especifican a qu debe parecerse un modelo bien formado. Un modelo bien

    formado es aqul que es semnticamente auto -consistente y est en armona con

    todos sus modelos relacionados.

    UML tiene reglas semnticas para:

    Nombres, Cmo llamar a los elementos, relaciones y diagramas.

    Alcance, El contexto que da un significado especfico a un nombre.

    Visibilidad, Cmo se pueden ver y utilizar esos nombres por otros.

    Integridad, Cmo se relacionan apropiada y consistentemente unos elementos

    con otros.

    Ejecucin , Qu significa ejecutar o simular un modelo dinmico.

    Los modelos construidos durante el desarrollo de un sistema con gran cantidad de

    software tienden a evolucionar y pueden ser vistos por diferentes usuarios de

    formas diferentes y en momentos diferentes. Por esta razn, es comn en el

    equipo de desarrollo no slo construir modelos bien formados, sino tambin

    construir modelos que sean:

    Abreviados, Ciertos elementos se ocultan para simplificar la vista.

  • 50

    Incompletos, Pueden estar ausentes ciertos elementos.

    Inconsistentes, No se garantiza la integridad del modelo.

    Estos modelos que no llegan a ser bien formados son inevitables conforme los

    detalles de un sistema van apareciendo y mezclndose durante el proceso de

    desarrollo de software. Las reglas de UML estimulan (pero no obligan) a

    considerar las cuestiones ms importantes de anlisis, diseo e implementacin

    que llevan a tales sistemas a convertirse en bien formados con el paso del tiempo.

    Mecanismos comunes en UML

    Un edificio se hace ms simple y ms simple y ms armonioso al ajustarse a un

    patrn de caractersticas comunes. Una casa puede construirse, en su mayor

    parte, de estilo victoriano o francs utilizando ciertos patrones arquitectnicos que

    definen esos estilos. Lo mismo es cierto para UML. Este se simplifica mediante la

    presencia de cuatro mecanismos comunes que se aplican de forma consistente a

    travs de todo el lenguaje:

    1. Especificaciones.

    2. Adornos.

    3. Divisiones comunes.

    4. Mecanismos de extensibilidad.

    Especificaciones. UML es algo ms que un lenguaje grfico. Ms bien, detrs de

    cada elemento de su notacin grfica hay una especificacin que proporciona una

    explicacin textual de la sintaxis y semntica de ese bloque de construccin. Por

    ejemplo, detrs de un icono de clase hay una especificacin que proporciona el

    conjunto completo de atributos, operaciones (incluyendo sus signaturas

  • 51

    completas) y comportamiento que incluye la clase; visualmente, ese icono de

    clase puede mostrar slo una pequea parte de especificacin.

    Las especificaciones de UML proporcionan una base semntica que incluy a todos

    los elementos de todos los modelos de un sistema, y cada elemento est

    relacionado con otros de manera consistente. Los diagramas de UML son as

    simples proyecciones visuales de esa base, y cada diagrama revela un aspecto

    especfico interesante del sistema.

    Adornos. La mayora de los elementos de UML tienen una nica y clara no tacin

    grfica que proporciona una representacin visual de los aspectos ms

    importantes del elemento. Por ejemplo, la notacin para una clase se ha diseado

    intencionadamente de forma que sea fcil de dibujar, porque las clases son los

    elementos que aparecen con ms frecuencia al modelar sistemas orientados a

    objetos. La notacin de la clase tambin revela los aspectos ms importantes de

    una clase, a saber: su nombre, atributos y operaciones.

    Divisiones comunes. Al modelar sistemas orientados a objetos, el mundo puede

    dividirse, al menos, en un par de formas.

    En primer lugar, esta la divisin entre clase y objeto. Una clase es una

    abstraccin; un objeto es una manifestacin concreta de esa abstraccin.

    En segundo lugar, tenemos la separacin entre interfaz e implementacin. Una

    interfaz declara un contrato, y una implementacin representa una realizacin

    concreta de ese contrato, responsable de hacer efectiva de forma fidedigna la

    semntica completa de la interfaz.

    Mecanismos de extensibilidad. UML proporciona un lenguaje estndar para

    escribir planos software, pero no es posible que un lenguaje cerrado sea siempre

  • 52

    suficiente para expresar todos los matices posibles de todos los modelos en todos

    los dominios y en todos los momentos. Por esta razn, UML es abierto-cerrado,

    siendo posible extender el lenguaje de manera controlada. Los mecanismos de

    extensin de UML incluyen:

    Estereotipos.

    Valores etiquetados.

    Restricciones.

    CASOS DE USO

    Ningn sistema se encuentra aislado. Cualquier sistema interesante interacta con

    actores humanos o mecnicos que lo utilizan con algn objetivo y que esperan

    que el sistema funcione de forma predecible. Un caso de uso especifica el

    comportamiento de un sistema o de una parte del mismo, y es una descripcin de

    un conjunto de secuencias de acciones, incluyendo variantes, que ejecuta un

    sistema para producir un resultado observable de valor para un actor.

    Los casos de uso se emplean para capturar el comportamiento deseado del

    sistema en desarrollo, sin tener que especificar cmo se implementa ese

    comportamiento. Los casos de uso proporcionan un medio para que los

    desarrolladores, los usuario finales del sistema y los expertos del dominio lleguen

    a una comprensin comn del sistema. Adems, los casos de uso ayudan a

    validar la arquitectura y a verificar el sistema mientras evoluciona a lo largo del

    desarrollo. Conforme se desarrolla el sistema, los casos de uso son realizados por

    colaboraciones, cuyos elementos cooperan para llevar a cabo cada caso de uso.

  • 53

    Los casos de uso bien estructurados denotan slo comportamientos esenciales

    del sistema o de un subsistema, y nunca debe ser excesivamente genricos ni

    demasiados especficos.

    Un caso de uso es una descripcin de un conjunto de secuencias de acciones,

    incluyendo variantes, que ejecuta un sistema para producir un resultado

    observable, de valor para un actor. Hay arias partes importantes en esta

    definicin.

    Un caso de uso describe un conjunto de secuencias, donde cada secuencia

    representa la interaccin de los elementos externos al sistema (sus actores) con el

    propio sistema (y con sus abstracciones claves). En realidad, estos

    comportamientos son funciones a nivel del sistema que se utilizan durante la

    captura de requisitos y el anlisis para visualizar, especificar, construir y

    documentar el comportamiento esperado del sistema. Un caso de uso representa

    un requisito funcional del sistema. Por ejemplo, un caso de uso fundamental en un

    banco es el procesamiento de prstamos. Como se muestra en la figura 1.

    5HVSRQVDEOH3UHVWDPRV

    3URFHVDU3UpVWDP R

    &DVRGHXVR

    $FWRU

    Ilustracin 2 - Actores y Casos de uso.

    Trminos y conceptos

    Un caso de uso es una descripcin de un conjunto de secuencias de acciones,

    incluyendo variantes, que ejecuta un sistema para producir un resultado

  • 54

    observable de valor para un actor. Grficamente, un caso de uso se representa

    como una elipse.

    Nombres

    Cada caso de uso debe tener un nombre que lo distinga de otros casos de uso. Un

    nombre es una cadena de texto. Ese nombre solo se llama nombre simple; un

    nombre de camino consta del nombre del caso de uso precedido del nombre del

    paquete en el que se encuentra. Normalmente, un caso de uso se dibuja

    mostrando slo su nombre, como se muestra en la figura 2.

    Ilustracin 3 - Nombres simples y de camino

    Casos de uso y actores

    Un actor representa un conjunto coherente de roles que los usuario de los casos

    de uso juegan al interactuar con stos. Normalmente, un actor representa un rol

    que es jugado por una persona, un dispositivo hardware o incluso otro sistema al

    interactuar con nuestro sistema.

    Casos de uso y flujo de eventos

    Un caso de uso describe qu hace un sistema (o un subsistema, una clase o una

    interfaz), pero no especifica cmo lo hace. Cuando se modela, es importante tener

    clara la separacin de objetivos entre las vistas externa e interna.

  • 55

    El comportamiento de un caso de uso se puede especificar describiendo un flujo

    de eventos de forma textual, lo suficientemente claro para que alguien ajeno al

    sistema lo entienda fcilmente. Cuando se escribe este flujo de eventos se debe

    incluir cmo y cundo empieza y acaba el caso de uso, cundo interacta con los

    actores y qu objetos se intercambian, el flujo bsico y los flujos alternativos del

    comportamiento.

    Casos de uso y escenarios

    Normalmente, primero se describe el flujo de eventos de un caso de uso mediante

    texto. Sin embargo, conforme se mejora la comprensin de los requisitos del

    sistema estos flujos se pueden especificar grficamente mediante diagramas de

    interaccin. Normalmente, se usa un diagrama de secuencia para especificar el

    flujo principal de un caso de uso, y se usan variaciones de ese diagrama para

    especificar los flujos excepcionales del caso de uso.

    Conviene separar el flujo principal de los flujos alternativos, parque un caso de uso

    describe un conjunto se secuencias, no una nica secuencia, y sera imposible

    expresar todos los detalles de un caso de uso no trivial en una nica secuencia.

    Casos de uso y colaboraciones

    Un caso de uso captura el comportamiento esperado del sistema (o subsistema,

    clase o interfaz) que se est desarrollando, sin tener que especificar cmo se

    implementa ese comportamiento. Esta separacin es importante porque el anlisis

    de un sistema (que especifica un comportamiento) no debera estar influenciado,

    mientras sea posible, por cuestiones de implementacin (que especifican cmo se

    lleva a cabo el comportamiento). No obstante un caso de uso debe implementarse

    al fin y al cabo, y esto se hace creando una sociedad de clases y otros elementos

    que colaborarn para llevar a cabo el comportamiento del caso de uso. Esta

  • 56

    sociedad de elementos, incluyendo tanto su estructura esttica como la dinmica,

    se modela en UML como una colaboracin.

    DIAGRAMAS DE CASOS DE USO

    Los diagramas de casos de uso son uno de los cinco tipo de diagramas de UML

    que se utilizan para el modelado de los aspectos dinmicos de un sistema (los

    otros cuatro tipos son los diagramas de actividades, de estados, de secuencia y de

    colaboracin). Los diagramas de casos de uso son importantes para modelar el