Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Gimnasio Morel

No description
by

daniel urbina

on 26 November 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Gimnasio Morel

Ingeniería de Software II
Presentación de Trabajo de Campo

Gestor Atlas de Gimnasio
Diagrama de Clases
Patrones Grasp
Cardinalidad Y Navegabilidad
Cardinalidad:
se observó si los objetos pueden trabajar con uno, ninguno o varios objetos de otra clase.
Navegabilidad
se observó si objetos de una clase necesitan conocer atributos de otros objetos. El sentido de la flecha indica en qué dirección un objeto requiere conocer atributos de otros.
Para la elaboración del diagrama de clases aplicando los patrones GRASP se consideraron los diagramas de interacción previos. Se trabajó con las responsabilidades que debería tener cada clase cuando se relaciona con otras. Esto permitió identificar la forma apropiada en que las clases deben saber hacer y conocer sus funciones. Posteriormente, se pudo trabajar con el bajo acoplamiento, la alta cohesión, se buscó clases sencillas, completas y suficientes.
Se observó el acoplamiento existente en la Herencia Persona-Empleado, Persona-Cliente. Este grado de acoplamiento se puede tomar como aceptable en esta etapa.

Patrones de Diseño
• Prototipo (Prototype):
Se trabajó con este patrón para la Clase Persona con el objetivo de lograr que haya una clase que se ocupe de la creación de objetos tanto de Empleado y Cliente, que heredan de la Clase Persona. De esta forma, se mejora la forma en que se aprovechan las ventajas de la herencia. El patrón Prototipo Persona declara una interface que será usada por Persona para la clonación de objetos.
• Estado (State):
se trabajó con este patrón para las Clases Cliente, Usuario y Empleado. En cada una de ellas se observa que el estado de los objetos tiene un comportamiento que cambia con el tiempo. Entonces, es conveniente aplicar este patrón.

validarse en el sistema
Menú encargado
Registrar Asistencia
Si ya registra Asistencia...
Menú Dueño
Generar Balance Comercial
Registrar Sueldo
Registrar Cobro
Generar Listado Clientes
Diagrama de Paquetes
Viabilidad y Beneficios
Viabilidad
El Gestor Atlas de Gimnasio es posible de ser realizado dado que, para su desarrollo de principio a fin, no requiere lo siguiente:
• Tecnología Hardware no existente o aun no disponible en el mercado.

• Herramientas Software que estén fuera al alcance.

• Proceso Software adecuado para un Sistema grande o complejo.
Beneficios
• Reducción en el tiempo requerido para realizar la inscripción de los clientes.

• Aumento en la seguridad del Gimnasio con el control de la asistencia de clientes.

• Mejora en el control de los egresos evitando pérdidas por operaciones no registradas o sobrefacturadas.
Requisitos Funcionales Principales
Modelo de Arquitectura
Modelo de Repositorio
Fundamentamos en base que a toda la información que se almacena lo hace en un solo sector del sistema, y de ese mismo sector se extrae la información que se empleara para todas actividades del sistema.
Estilos del Control
Control Centralizado + Control Basado en Eventos
Es de una combinación de un Control Centralizado y un Control Basado en Eventos.

Control Centralizado
, porque un subsistema es el encargado de gestionar la ejecución de otros subsistemas.

Control Basado en Eventos
, porque tenemos actividades que son necesarias que surja un evento para su ejecución, como ser la de un pago, cobro, registrar una asistencia, etc.
Tipo de Aplicación
Sistema de Procesamiento de Transacción
Porque se gestiona el ingreso y extracción de datos de una base de datos, muy frecuentemente usas por varios usuarios. Además las acciones de los usuarios no pueden intervenir entre si y por lo tanto se mantiene la integridad de la base de datos.
Diagrama de Bloques
Se usan para describir diseños de subsistemas en donde cada rectángulo del diagrama representa un subsistema. Las flechas indican que los datos o señales de control pasan de un subsistema a otro en el sentido de éstas.
Descripción del Gimnasio y Problema

Alcance del Sistema
• Gestionar los datos de Clientes, Instructores y Empleados del Gimnasio Morel
• Gestionar las operaciones relacionadas con la actividad comercial de Gimnasio Morel

Objetivos del Sistema
• Gestionar datos de los clientes, controlar su asistencia al gimnasio,
• Consultar información correspondiente a los clientes, a los instructores, a las máquinas, etc.
• Generar las facturas.
• Gestionar los ingresos y egresos del sistema que determinan un resumen de la actividad económica.
Construcción del Sistema
Gestión de Entregas
Metodología Ágil Propuesta
Proponemos para el sistema de gimnasio que se está desarrollando la metodología ágil de XP (Programación Extrema) debido a que:
• Sistema bastante pequeño
• No es un sistema crítico
• No es un Sistema distribuido
• Disponibilidad de tiempo por parte del dueño
• No tenemos reglas externas que rigen al sistema
• No se necesitaría medios de alta seguridad
Forma de trabajo utilizando esta metodología:

Reuniones con el Cliente:
Se establecerán reuniones constantes con el cliente quién será nuestro usuario colaborador.

Historias de Usuario:
se desarrollaran las HU estimando el tiempo necesario para cumplirlas, se realizaran pruebas con datos propuestos por el equipo de desarrollo y el cliente. Se consideraran las posibles modificaciones propuestas por el cliente.
• Trabajo Colaborativo:
ambos programadores tendrán la facultad de mejorar o agregar mejoras al código, siempre y cuando estén de acuerdo.

Programación en pares y Prueba en Paralelo:
se implementará la programación en pares para evitar posibles salidas en falso y disminuir la cantidad de errores. Estos se encargaran de las pruebas y corrección de los posibles errores que se encuentren.


Reutilización de Componentes:
En caso de que alguno de los programadores recuerde el haber elaborado algún código similar al que necesitemos, entonces se añadirá el concepto de la reutilización.

Políticas de diversidad y redundancia

Código de comprobación adicional
: este código puede detectar ciertos tipos de fallas antes de que causen daños. Este código realizaría las siguientes actividades:
Un módulo para controlar los ingresos y egresos de datos a registrar, para que sean correctos.
Un módulo que permita controlar los datos de balance actuales, en referencia a valores pasados, En caso de suceder un GRAN cambio, notificar al usuario.


Mecanismos de recuperación:
para garantizar que el sistema continúe en ejecución, ante un estado de interrupción. Esto se lograra implementando segunda base de datos en la cual realicen respaldos de la información sensible (datos de pagos de cuotas de cliente, gastos, etc.).
Módulo de Generar Listado Cliente
Pruebas de integración:
se va agregando los distintos módulos (librerías, declaración de estructuras, inicialización de lista de productos, alta, búsqueda, modificación) que van agregando funcionalidad al sistema, se va evaluando la interacción con los demás módulos y si los cambios producidos producen errores o modifican la interfaz.

Pruebas de Rendimiento
Módulo Registrar Asistencia Cliente
Se realizaron las siguientes pruebas ingresando los datos de forma manual y cronometrando el tiempo. Se ingresaron valores que no producen errores de manera de evaluar el rendimiento.
Se consideró un tiempo estimado de 2 transacciones por minuto para realizar el Registro de la Asistencia que sería el que generalmente ocupa una persona encargada de la Carga de datos si manejara el Sistema.
Condiciones del Sistema Informático donde se hicieron las pruebas:
Procesador: 1 GHz
Memoria RAM: 2 GB
Sistema Operativo: Windows 7
Base de Datos: PostgresSQL, última versión

Proceso de Pruebas: Módulo de Registrar Asistencia Cliente
Pruebas Basadas en Requerimientos
Administración de Cambio
Gestión de versiones (VM)
Gestión del Almacenamiento: implementación de deltas
Registro de Historial de Cambios
Desarrollo Independiente (uso de branchin y merging)
Soporte de proyecto (check in - check out)

Conclusión
Herramienta de software libre
Modelo cliente-servidor
Uso de Repositorio.
Integrado con la IDE Netbeans
Cumple con las funciones descritas
Se adapta a la Construcción del Sistema
Subversión
Generación de rutinas.
Integración del sistema de gestión de versiones.
Recompilación mínima.
Creación del sistema ejecutable.
Automatización de pruebas.
Informes
Generación de documentación.

• Fechas de entrega: mayor tiempo para funcionalidades con mayor prioridad.

• Competencia

• Cambios de plataforma.

• La identificación de las entregas (releases) sigue el mismo orden que las versiones.

• Elaboración de parches y actualizaciones.
Diagrama de interacción
Full transcript