Introducción
El proyecto del Sistema de Información de Ventas de Tickets vía Web para el Estadio de Fútbol, va a estar dividida en dos fases: “Análisis técnico, funcional y propuesta de Diseño” y “Desarrollo e Implantación del Nuevo Sistema”. La primera fase corresponde a las fases Inicio y Elaboración en RUP (Racional Unified Process, la metodología que se propone utilizar). La otra fase corresponde en RUP a las fases de Construcción y de Transición, pero para efectos de éste trabajo académico no se presentará.
El enfoque desarrollo propuesto constituye una configuración del proceso RUP de acuerdo a las características del proyecto, seleccionando los roles de los participantes, las actividades a realizar.
Al momento de empezar la construcción de la Base de datos, se utilizará al servidor de Base de datos, PostgreSQL, por ser un administrador de Base de datos Robusto, confiable y OpenSource, bajo la licencia GPL.
Propósito
El propósito del Plan de Desarrollo de Software es proporcionar la información necesaria para controlar el proyecto. En él se describe el enfoque de desarrollo del software.
Los usuarios del Plan de Desarrollo del Software son:
- El jefe del proyecto lo utiliza para organizar la agenda y necesidades de recursos, y para realizar su seguimiento.
- Los miembros del equipo de desarrollo lo usan para entender lo qué deben hacer, cuándo deben hacerlo y qué otras actividades dependen de ello.
Alcance
El Plan de Desarrollo del Software describe el plan global usado para el desarrollo del “Sistema de Información para Ventas vía Web de Tickets para el Estadio de Futbol”. El detalle de las iteraciones individuales se describe en los planes de cada iteración. Durante el proceso de desarrollo en el artefacto “Visión” se definen las características del producto a desarrollar, lo cual constituye la base para la planificación de las iteraciones.
Vista General del Proyecto
Propósito, Alcance y Objetivos
Las nuevas tendencias tecnológicas y la globalización, así como la automatización de los servicios, inducen a crear siempre nuevas formas para proveer estos, con la finalidad de llegar a más clientes y usuarios, por caminos más seguros, rápidos y eficientes.
Es por esto, que la administración del “Estadio de Futbol”, requiere de la creación y puesta en marcha de un sistema de información de ventas vía web, para de esta forma dar un servicio más oportuno y eficaz para la adquisición de los espectadores de sus entradas a los diferentes eventos en dicho estadio.
El proyecto debe proporcionar una propuesta para el desarrollo de todos los subsistemas implicados en la gestión de la venta de Tickets Vía Web. Estos subsistemas se pueden diferenciar en cuatro grandes bloques:
Operaciones por Clientes:
- Registro de Clientes
- Módulo de Consulta de Eventos
- Módulo de Compras
- Módulo de Reclamos
Operaciones para los administradores:
- Administración general de Usuarios
- Administración de Eventos
- Administración de Compras
- Administración del módulo de reclamos
Control de envíos y entregas:
- Administración de Servicios de entrega
- Tickets enviados
- Tickets entregados
- Tickets devueltos
Consultas y Reportes
Entregables del proyectoA continuación se indican y describen cada uno de los artefactos que serán generados y utilizados por el proyecto y que constituyen los entregables. Esta lista constituye la configuración de RUP desde la perspectiva de artefactos, y que proponemos para este proyecto.
Es preciso destacar que de acuerdo a la filosofía de RUP (y de todo proceso iterativo e incremental), todos los artefactos son objeto de modificaciones a lo largo del proceso de desarrollo, con lo cual, sólo al término del proceso podríamos tener una versión definitiva y completa de cada uno de ellos. Sin embargo, el resultado de cada iteración y los hitos del proyecto están enfocados a conseguir un cierto grado de completitud y estabilidad de los artefactos. Esto será indicado más adelante cuando se presenten los objetivos de cada iteración.
1. Plan de Desarrollo del Software
Es el presente documento.
2. Modelo de Casos de Uso del Negocio
Es un modelo de las funciones de negocio vistas desde la perspectiva de los actores externos (Usuarios, Administradores, Servicios de Entrega etc.). permite situar al sistema en el contexto organizacional haciendo énfasis en los objetivos en este ámbito. Este modelo se representa con un Diagrama de Casos de Uso usando estereotipos específicos para este modelo.
3. Modelo de Objetos del Negocio
Es un modelo que describe la realización de cada caso de uso del negocio, estableciendo los actores internos, la información que en términos generales manipulan y los flujos de trabajo (workflows) asociados al caso de uso del negocio. Para la representación de este modelo se utilizan Diagramas de Colaboración (para mostrar actores externos, internos y las entidades (información) que manipulan, un Diagrama de Clases para mostrar gráficamente las entidades del sistema y sus relaciones, y Diagramas de Actividad para mostrar los flujos de trabajo.
4. Glosario
Es un documento que define los principales términos usados en el proyecto. Permite establecer una terminología consensuada.
5. Modelo de Casos de Uso
El modelo de Casos de Uso presenta las funciones del sistema y los actores que hacen uso de ellas. Se representa mediante Diagramas de Casos de Uso.
6. Visión
Este documento define la visión del producto desde la perspectiva del cliente, especificando las necesidades y características del producto. Constituye una base de acuerdo en cuanto a los requisitos del sistema.
7. Especificaciones de Casos de Uso
Para los casos de uso que lo requieran (cuya funcionalidad no sea evidente o que no baste con una simple descripción narrativa) se realiza una descripción detallada utilizando una plantilla de documento, donde se incluyen: precondiciones, post-condiciones, flujo de eventos, requisitos no-funcionales asociados. También, para casos de uso cuto flujo de eventos sea complejo podrá adjuntarse una representación gráfica mediante un Diagrama de Actividad.
8. Especificaciones Adicionales
Este documento capturará todos los requisitos que no han sido incluidos como parte de los casos de uso y se refieren requisitos no-funcionales globales. Dichos requisitos incluyen: requisitos legales o normas, aplicación de estándares, requisitos de calidad del producto, tales como: confiabilidad, desempeño, etc., u otros requisitos de ambiente, tales como: sistema operativo, requisitos de compatibilidad, etc.
9. Prototipos de Interfaces de Usuario
Se trata de prototipos que permiten al usuario hacerse una idea más o menos precisa de las interfaces que proveerá el sistema y así, conseguir retroalimentación de su parte respecto a los requisitos del sistema. Estos prototipos se realizarán como: dibujos a mano en papel, dibujos con alguna herramienta gráfica o prototipos ejecutables interactivos, siguiendo ese orden de acuerdo al avance del proyecto. Sólo los de este último tipo serán entregados al final de la fase de Elaboración, los otros serán desechados. Asimismo, este artefacto, será desechado en la fase de Construcción en la medida que el resultado de las iteraciones vayan desarrollando el producto final.
10. Modelo de Análisis y Diseño
Este modelo establece la realización de los casos de uso en clases y pasando desde una representación en términos de análisis (sin incluir aspectos de implementación) hacia una de diseño (incluyendo una orientación hacia el entorno de implementación), de acuerdo al avance del proyecto.
11. Modelo de Datos
Previendo que la persistencia de la información del sistema será soportada por un a base de datos relacional, este modelo describe la representación lógica de los datos persistentes, de acuerdo con el enfoque para modelado relacional de datos. Para expresar este modelo se utiliza un Diagrama de Clases (donde se utiliza un profile UML para Modelado de Datos, para conseguir la representación de tablas, claves, etc.) .
12. Modelo de Implementación
Este modelo es una colección de componentes y los subsistemas que los contienen. Estos componentes incluyen: ficheros ejecutables, ficheros de código fuente, y todo otro tipo de ficheros necesarios para la implantación y despliegue del sistema. (Este modelo es sólo una versión preliminar al final de la fase de Elaboración, posteriormente tiene bastante refinamiento).
13. Modelo de Despliegue
Este modelo muestra el despliegue la configuración de tipos de nodos del sistema, en los cuales se hará el despliegue de los componentes.
14. Casos de Prueba
Cada prueba es especificada mediante un documento que establece las condiciones de ejecución, las entradas de la prueba, y los resultados esperados. Estos casos de prueba son aplicados como pruebas de regresión en cada iteración. Cada caso de prueba llevará asociado un procedimiento de prueba con las instrucciones para realizar la prueba, y dependiendo del tipo de prueba dicho procedimiento podrá ser automatizable mediante un script de prueba.
15. Solicitud de Cambio
Los cambios propuestos para los artefactos se formalizan mediante este documento. Mediante este documento se hace un seguimiento de los defectos detectados, solicitud de mejoras o cambios en los requisitos del producto. Así se provee un registro de decisiones de cambios, de su evaluación e impacto, y se asegura que éstos sean conocidos por el equipo de desarrollo. Los cambios se establecen respecto de la última baseline (el estado del conjunto de los artefactos en un momento determinado del proyecto) establecida. En nuestro caso al final de cada iteración se establecerá una baseline.
16. Plan de Iteración
Es un conjunto de actividades y tareas ordenadas temporalmente, con recursos asignados, dependencies entre ellas. Se realiza para cada iteración, y para todas las fases.
17. Evaluación de Iteración
Este documento incluye le evaluación de los resultados de cada iteración, el grado en el cual se han conseguido los objetivos de la iteración, las lecciones aprendidas y los cambios a ser realizados.
18. Lista de Riesgos
Este documento incluye una lista de los riesgos conocidos y vigentes en el proyecto, ordenados en orden decreciente de importancia y con acciones específicas de contingencia o para su mitigación.
19. Manual de Instalación
Este documento incluye las instrucciones para realizar la instalación del producto.
20. Material de Apoyo al Usuario Final
Corresponde a un conjunto de documentos y facilidades de uso del sistema, incluyendo: Guías del Usuario, Guías de Operación, Guías de Mantenimiento y Sistema de Ayuda en Línea
21. Producto
Los ficheros del producto empaquetados y almacenadas en un CD con los mecanismos apropiados para facilitar su instalación. El producto, a partir de la primera iteración de la fase de Construcción es desarrollado incremental e iterativamente, obteniéndose una nueva release al final de cada iteración.
Los artefactos 19, 20 y 21 se generarán a partir de la fase de Construcción, con lo cual se han incluido aquí sólo para dar una visión global de todos los artefactos que se generarán en el proceso de desarrollo.
Organización del Proyecto
Participantes en el Proyecto
De momento no se incluye el personal que la Administración del Estadio de Futbol designará Responsable del Proyecto, Comité de Control y Seguimiento, otros participantes que se estimen convenientes para proporcionar los requisitos y validar el sistema.
El resto del personal del proyecto, sólo considerando las fases de Inicio y Elaboración, estará formado por los siguientes puestos de trabajo y personal asociado:
- Jefe de Proyecto. Ingeniero en Informática ó Sistemas. Experiencia en metodologías de desarrollo, herramientas CASE y notaciones, en particular la notación UML y el proceso de desarrollo RUP.
- 2 Analistas de Sistemas. El perfil establecido es: Ingeniero en Informática con conocimientos de UML, uno de ellos al menos con experiencia en sistemas afines a la línea del proyecto.
- 1 Programador. Con experiencia en el entorno de desarrollo vía Web, con el fin de que los prototipos puedan ser lo más cercanos posibles al producto final.
- 2 Ingenieros de Software. El perfil establecido es: Ingeniero en Informática. Con experiencia en labores de gestión de requisitos, gestión de configuración, documentación y diseño de datos.
- Asesor Legal. Un especialista en los aspectos legales relacionados con el sistema y su puesta en operación.
- Asesor Técnico y Operacional. Un especialista en aspectos técnicos y operacionales tales como: Programación y administración de Eventos de Futbol, Logistica, Marketing de Eventos de Futbol, procesos de ventas, comercio Electrónico.
Calendario del Proyecto
A continuación se presenta un calendario de las principales tareas del proyecto incluyendo solo las fases de Inicio y Elaboración. Como se ha comentado, el proceso iterativo e incremental de RUP está caracterizado por la realización en paralelo de todas las disciplinas de desarrollo a lo largo del proyecto, con lo cual la mayoría de los artefactos son generados muy tempranamente en el proyecto pero van desarrollándose en mayor o menor grado de acuerdo a la fase e iteración del proyecto. La siguiente figura ilustra este enfoque, en ella lo ensombrecido marca el énfasis de cada disciplina (workflow) en un momento determinado del desarrollo.
![]()
Para este proyecto se ha establecido el siguiente calendario. La fecha de aprobación indica cuando el artefacto en cuestión tiene un estado de completitud suficiente para someterse a revisión y aprobación, pero esto no quita la posibilidad de su posterior refinamiento y cambios.
Fase de Inicio
Disciplinas/Artefactos generados o modificados
durante la Fase de InicioComienzo
Aprobación
Modelado del Negocio
Modelo de Casos de Uso del Negocio y Modelo de Objetos del Negocio
Semana 1
Semana 2
Requisitos
Glosario
Semana 1
Semana 2
Visión
Semana 2
Semana 3
Modelo de Casos de Uso
Semana 3
siguiente fase
Especificación de Casos de Uso
Semana 3
siguiente fase
Especificaciones Adicionales
Semana 2
siguiente fase
Análisis/Diseño
Modelo de Análisis/Diseño
Semana 2
siguiente fase
Modelo de Datos
Semana 2
siguiente fase
Implementación
Prototipos de Interfaces de Usuario
Semana 2
siguiente fase
Modelo de Implementación
Semana 2
siguiente fase
Pruebas
Casos de Pruebas Funcionales
Semana 2
siguiente fase
Despliegue
Modelo de Despliegue
Semana 2
siguiente fase
Gestión de Cambios y Configuración
Durante todo el proyecto
Gestión del proyecto
Plan de Desarrollo del Software en su versión 1.0 y planes de las Iteraciones
Semana 1
Semana 2
Ambiente
Durante todo el proyecto
Fase de Elaboración – Iteración 1
Disciplinas/Artefactos
generados o modificados durante la
Fase de Elaboración – Iteración 1 (4 semanas de duración)Comienzo
Aprobación
Modelado del Negocio
Modelo de Casos de Uso del Negocio y Modelo de Objetos del Negocio
Semana 1
aprobado
Requisitos
Glosario
Semana 1
aprobado
Visión
Semana 2
aprobado
Modelo de Casos de Uso
Semana 3
Semana 7
Especificación de Casos de Uso
Semana 3
Semana 7
Especificaciones Adicionales
Semana 2
Semana 7
Análisis/Diseño
Modelo de Análisis/Diseño
Semana 2
siguiente iteración
Modelo de Datos
Semana 2
siguiente iteración
Implementación
Prototipos de Interfaces de Usuario
Semana 2
siguiente iteración
Modelo de Implementación
Semana 2
siguiente iteración
Pruebas
Casos de Pruebas Funcionales
Semana 2
siguiente iteración
Despliegue
Modelo de Despliegue
Semana 2
siguiente iteración
Gestión de Cambios y Configuración
Durante todo el proyecto
Gestión del proyecto
Plan de Desarrollo del Software en su versión 2.0 y planes de las Iteraciones
Semana 4
Semana 4
Ambiente
Durante todo el proyecto
Fase de Elaboración – Iteración 2
Disciplinas/Artefactos
generados o modificados durante la
Fase de Elaboración – Iteración 2 (4 semanas de duración)Comienzo
Aprobación
Modelado del Negocio
Modelo de Casos de Uso del Negocio y Modelo de Objetos del Negocio
Semana 1
aprobado
Requisitos
Glosario
Semana 1
aprobado
Visión
Semana 2
aprobado
Modelo de Casos de Uso
Semana 3
aprobado
Especificación de Casos de Uso
Semana 3
aprobado
Especificaciones Adicionales
Semana 2
aprobado
Análisis/Diseño
Modelo de Análisis/Diseño
Semana 2
Semana 9
Modelo de Datos
Semana 2
Semana 9
Implementación
Prototipos de Interfaces de Usuario
Semana 2
Semana 10
Modelo de Implementación
Semana 2
Semana 10
Pruebas
Casos de Pruebas Funcionales
Semana 2
Semana 9
Despliegue
Modelo de Despliegue
Semana 2
Semana 9
Gestión de Cambios y Configuración
Durante todo el proyecto
Gestión del proyecto
Plan de Desarrollo del Software en su versión 3.0 y planes de las Iteración 2 de Elaboración
Semana 7
Semana 7
Ambiente
Durante todo el proyecto
Seguimiento y Control del Proyecto
Gestión de Requisitos
Los requisitos del sistema son especificados en el artefacto Visión. Cada requisito tendrá una serie de atributos tales como importancia, estado, iteración donde se implementa, etc. Estos atributos permitirán realizar un efectivo seguimiento de cada requisito. Los cambios en los requisitos serán gestionados mediante una Solicitud de Cambio, las cuales serán evaluadas y distribuidas para asegurar la integridad del sistema y el correcto proceso de gestión de configuración y cambios.
Control de Plazos
El calendario del proyecto tendrá un seguimiento y evaluación semanal por el jefe de proyecto y por el Comité de Seguimiento y Control.
Control de Calidad
Los defectos detectados en las revisiones y formalizados también en una Solicitud de Cambio tendrán un seguimiento para asegurar la conformidad respecto de la solución de dichas deficiencias Para la revisión de cada artefacto y su correspondiente garantía de calidad se utilizarán las guías de revisión y checklist (listas de verificación) incluidas en RUP.
Gestión de Riesgos
A partir de la fase de Inicio se mantendrá una lista de riesgos asociados al proyecto y de las acciones establecidas como estrategia para mitigarlos o acciones de contingencia. Esta lista será evaluada al menos una vez en cada iteración.
Gestión de Configuración
Se realizará una gestión de configuración para llevar un registro de los artefactos generados y sus versiones. También se incluirá la gestión de las Solicitudes de Cambio y de las modificaciones que éstas produzcan, informando y publicando dichos cambios para que sean accesibles a todo los participantes en el proyecto. Al final de cada iteración se establecerá una baseline (un registro del estado de cada artefacto, estableciendo una versión), la cual podrá ser modificada sólo por una Solicitud de Cambio aprobada.
Conclusiones
El uso de la base de datos PostgreSQL es cada vez más amplia en las empresas que buscan un servidor de base de datos altamente sofisticado, con alto rendimiento, estable y capacitado para lidiar con grandes volúmenes de datos. El hecho de ser un producto Open Source, sin costos de licencia, convierte al PostgreSQL en una alternativa extremadamente atractiva para las empresas que buscan un ahorro significativo de costos en activos. Finalmente, esta base de datos hace varios años dejó de ser una curiosidad de una comunidad de investigadores para ser el datacenter de grandes empresas del mundo.