Post on 25-Jun-2015
CATEDRA PROYECTO FINAL
Diapositiva: 2 de 40
SISTEMA DE GESTION WEBSan Nicolás entregas
Entrega de cereales en los puertos de la zona.Servicio de entrega de cereales y oleaginosas a puertos, molinos y fábricas. La empresa cuenta con peritos clasificadores de cereales y oleaginosas, personal altamente capacitado para realizar el control de peso y calidad, defendiendo la mercadería del cliente.
El proyecto
OrganigramaMatriz FODAAnálisis de los principales procesosAnálisis de problemasObjetivos del proyectoPropuesta de alternativas de solución
CATEDRA PROYECTO FINAL
Diapositiva: 3 de 40
SISTEMA DE GESTION WEBAnálisis de problemas
Actualmente la empresa está operando con un sistema muy completo, pero antiguo.
Este sistema mantiene el estado de las cuentas corrientes de la empresa fuera de línea.
El sistema no cuenta con las funciones necesarias para ser accedido vía Web y presenta varios problemas al momento de la sincronización de las bases de datos.La carga de datos: Es muy difícil volver atrás para cambiar un campo en un formulario.Interfaz: No existe soporte nativo para el Mouse y esto confunde a los usuarios. Tampoco se ofrece información acerca del progreso en transacciones largas.
CATEDRA PROYECTO FINAL
Diapositiva: 4 de 40
SISTEMA DE GESTION WEBObjetivos del proyecto
Reducir el tiempo de carga de datos en un 50%.
Permitir la carga de un camión en descarga o en posición en 40 segundos promedio.
Posibilitar que los clientes puedan tener acceso al estado de sus carguíos mediante la implementación de un sitio.
Permitir la carga de datos centralizada mediante el uso de una base de datos única en Internet.
Proveer de una interfaz sólida que muestre el progreso en todo momento y facilite la navegación.
Entregar informes estadísticos sobre aspectos de las descargas.
CATEDRA PROYECTO FINAL
Diapositiva: 5 de 40
SISTEMA DE GESTION WEBPropuesta de alternativas de solución
SOLUCIÓN A:
Acceso web a un sitio donde se encuentra el Sistema de Gestión.
La Base de datos se mantienede manera Centralizada.
Independiza al sistema de:
1. Sistema Operativo
2. Explorador Web
3. Prestaciones de los equipos.
Oficina San Nicolás
HTTP
HTTP
HTTP
Equipo Portátil PC Puerto
Sitio SNe
Página Web
DNS
Base de datosSistema Servidor
Web/Archivos
WEB
HTTP
ClienteA
HTTPCliente
B
Internet
WEB
WEB
CATEDRA PROYECTO FINAL
Diapositiva: 6 de 40
SISTEMA DE GESTION WEBPropuesta de alternativas de solución
SOLUCIÓN B:
Acceso web a un sitio donde se encuentra el Sistema de Gestión.
Clientes y usuarios de la empresa podrían acceder a los datos de posición y descargas desde el celular.
Esto haría que la empresa se destaque en el rubro por estar a la vanguardia tecnológica, y permitiría movilidad total a sus empleados y comodidad a sus clientes.
Oficina San Nicolás
HTTP
HTTP
WAP
Equipo Portátil
Sitio SNe
Página Wap
DNS
Base de datosSistema Servidor
Web/Archivos
HTTP
WAP
WAP
Internet
PDA Puerto
ClienteB
ClienteA
Pasarela
WEB
HTTP
WEBWEB
CATEDRA PROYECTO FINAL
Diapositiva: 7 de 40
SISTEMA DE GESTION WEBEntorno tecnológico
Lenguaje:Java: Lenguaje de programación orientado a objetos.
Entorno:Eclipse: Entorno de desarrollo integrado de código abierto multiplataforma para desarrollar lo que el proyecto llama "Aplicaciones de Cliente Enriquecido", opuesto a las aplicaciones "Cliente-liviano" basadas en navegadores.
Servidor HTTP:Apache Tomcat: Software (libre) servidor HTTP JAVA de código abierto que implementa el protocolo HTTP/1.1 y la noción de sitio virtual.
Base de datos:MySQL: Sistema de gestión de base de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones.
CATEDRA PROYECTO FINAL
Diapositiva: 8 de 40
SISTEMA DE GESTION WEBAnálisis de factibilidad:
Para evaluar la factibilidad económica de las alternativas del proyecto, utilizamos VAN (Valor Actual Neto)
El valor resultante del VAN, nos indica si es recomendable aceptar o no un proyecto en particular.
Un VAN igual a cero significa que las exigencias que se le hicieron al proyecto fueron cumplidas.
Si el VAN es superior a cero, el proyecto es rentable. Este valor representa el monto que el mismo va a generar a lo largo de su vida en forma neta a valores actuales.
Un proyecto con VAN menor a cero puede llegar a indicar que el mismo debe rechazarse.
CATEDRA PROYECTO FINAL
Diapositiva: 9 de 40
SISTEMA DE GESTION WEBAnálisis de factibilidad
Se compone de los análisis de:
• Factibilidad operacional
• Factibilidad técnica
• Factibilidad económico-financiera
Posterior elección de una alternativa.
En lo que al proyecto concierne la alternativa con mayor factibilidad es la A y por lo tanto la que se lleva a cabo.
Contrato
Luego de confirmar la elección de la alternativa se genera el contrato donde se establece la línea base de los requerimientos del software a desarrollar.
CATEDRA PROYECTO FINAL
Diapositiva: 10 de 40
SISTEMA DE GESTION WEB
Definición de la metodología de desarrollo a utilizar
La metodología de desarrollo de sistemas de información elegida para llevar adelante el proyecto es el Rational Unified Process (RUP). Las ventajas:
• Forma disciplinada de asignar tareas y responsabilidades (quién hace qué, cuándo y cómo)
• Pretende implementar las mejores prácticas en Ingeniería de Software• Desarrollo iterativo• Administración de requisitos• Uso de arquitectura basada en componentes• Control de cambios• Modelado visual del software• Verificación de la calidad del software
CATEDRA PROYECTO FINAL
Diapositiva: 11 de 40
SISTEMA DE GESTION WEBCiclo de vida
El ciclo de vida RUP es una implementación del desarrollo en espiral, organiza las tareas en fases e iteraciones.
Divide el proceso en cuatro fases, dentro de las cuales se realizan varias iteraciones en número variable según el proyecto y en las que se hace un mayor o menor hincapié en los distintas actividades. Estas fases son:
Fase de inicio las iteraciones hacen mayor énfasis en actividades de modelado del negocio y de requerimientos.
La fase de elaboración se orienta al desarrollo de la línea base de la arquitectura.
En la fase de construcción, se lleva a cabo la construcción del producto por medio de una serie de iteraciones.
En la fase de transición se pretende garantizar que se tiene un producto preparado para su entrega a la comunidad de usuarios.
CATEDRA PROYECTO FINAL
Diapositiva: 12 de 40
SISTEMA DE GESTION WEBCiclo de vida
CATEDRA PROYECTO FINAL
Diapositiva: 13 de 40
SISTEMA DE GESTION WEBCálculo del tamaño del sistema
Para la estimación del tamaño del sistema, se usará el análisis de Puntos de Casos de Uso.
Casos de uso
La captura de requisitos mediante casos de uso. Se identificaron catorce casos de uso distintos. Los mismos se encuentran documentados en el anexo B del proyecto.
CATEDRA PROYECTO FINAL
Diapositiva: 14 de 40
SISTEMA DE GESTION WEBCálculo de Puntos de Casos de Uso sin ajustar
El primer paso para la estimación consiste en el cálculo de los Puntos de Casos de Uso sin ajustar. Este valor, se calcula a partir de la siguiente ecuación:
UUCP = UAW + UUCWDonde:
UUCP: Puntos de Casos de Uso sin ajustarUAW: Factor de Peso de los Actores sin ajustarUUCW: Factor de Peso de los Casos de Uso sin ajustar
Factor de Peso de los Actores sin ajustar (UAW):Este valor se calcula mediante un análisis de la cantidad de Actores
presentes en el sistema y la complejidad de cada uno de ellos. La complejidad de los Actores se establece teniendo en cuenta en primer lugar si se trata de una persona o de otro sistema, y en segundo lugar, la forma en la que el actor interactúa con el sistema.
CATEDRA PROYECTO FINAL
Diapositiva: 15 de 40
SISTEMA DE GESTION WEBCálculo de Puntos de Casos de Uso sin ajustar
Factor de Peso de los Casos de Uso sin ajustar (UUCW)El UUCW se calcula mediante un análisis de la cantidad de Casos de Uso
presentes en el sistema y la complejidad de cada uno de ellos. La complejidad se establece teniendo en cuenta la cantidad de transacciones efectuadas en el mismo, donde una transacción se entiende como una secuencia de actividades atómica, es decir, se efectúa la secuencia de actividades completa, o no se efectúa ninguna de las actividades de la secuencia.
Luego, para nuestro sistema el UUCP = UAW + UUCW es de:
UUCP = 15 + 110 UUCP = 125
CATEDRA PROYECTO FINAL
Diapositiva: 16 de 40
SISTEMA DE GESTION WEBCálculo de Puntos de Casos de Uso ajustados
Una vez que se tienen los Puntos de Casos de Uso sin ajustar, se debe ajustar éste valor mediante la siguiente ecuación:
UCP = UUCP x TCF x EF
Donde:
UCP: Puntos de Casos de Uso ajustadosUUCP: Puntos de Casos de Uso sin ajustarTCF: Factor de complejidad técnicaEF: Factor de ambiente
CATEDRA PROYECTO FINAL
Diapositiva: 17 de 40
SISTEMA DE GESTION WEBCálculo de Puntos de Casos de Uso ajustados
Factor de complejidad técnica (TCF)
Este coeficiente se calcula mediante la cuantificación de un conjunto de factores que determinan la complejidad técnica del sistema. Cada uno de los factores se cuantifica con un valor de 0 a 5, donde 0 significa un aporte irrelevante y 5 un aporte muy importante.
CATEDRA PROYECTO FINAL
Diapositiva: 18 de 40
SISTEMA DE GESTION WEBCálculo de Puntos de Casos de Uso ajustados
En la siguiente tabla se muestra el significado y el peso de cada uno de éstos factores:
El Factor de complejidad técnica se calcula mediante la siguiente ecuación:TCF = 0.6 + 0.01 x Σ (Peso i x Valor asignado i)
CATEDRA PROYECTO FINAL
Diapositiva: 19 de 40
SISTEMA DE GESTION WEBFactor de ambiente (EF)
Las habilidades y el entrenamiento del grupo involucrado en el desarrollo tienen un gran impacto en las estimaciones de tiempo. Estos factores son los que se contemplan en el cálculo del Factor de ambiente. El cálculo del mismo es similar al cálculo del Factor de complejidad técnica, es decir, se trata de un conjunto de factores que se cuantifican con valores de 0 a 5.
En la siguiente tabla se muestra el significado y el peso de cada uno de éstos factores:
CATEDRA PROYECTO FINAL
Diapositiva: 20 de 40
SISTEMA DE GESTION WEBFactor de ambiente (EF)
Las habilidades y el entrenamiento del grupo involucrado en el desarrollo El Factor de ambiente se calcula mediante la siguiente ecuación:
EF = 1.4 - 0.03 x Σ (Peso i x Valor asignado i)
Teniendo esto en cuenta para nuestro sistema el valor es de:EF = 1.4 - 0.03 x 15.5EF = 0.935
Finalmente, los Puntos de Casos de Uso ajustados resultan:
UCP = UUCP x TCF x EFUCP = 125 x 0.905 x 0.935UCP = 105.77
CATEDRA PROYECTO FINAL
Diapositiva: 21 de 40
SISTEMA DE GESTION WEBDe los Puntos de Casos de Uso a la estimación del esfuerzo
Karner originalmente sugirió que cada Punto de Casos de Uso requiere 20 horas-hombre. Posteriormente, surgieron otros refinamientos que proponen una granularidad algo más fina, según el siguiente criterio:
• Se contabilizan cuántos factores de los que afectan al Factor de ambiente están por debajo del valor medio (3), para los factores E1 a E6.
• Se contabilizan cuántos factores de los que afectan al Factor de ambiente están por encima del valor medio (3), para los factores E7 y E8.
• Si el total es 2 o menos, se utiliza el factor de conversión 20 horas hombre/Punto
• Si el total es 3 o 4, se utiliza el factor de conversión 28 horas hombre/Punto de Casos de Uso
• Si el total es mayor o igual que 5, se recomienda efectuar cambios en el proyecto.
CATEDRA PROYECTO FINAL
Diapositiva: 22 de 40
SISTEMA DE GESTION WEBDe los Puntos de Casos de Uso a la estimación del esfuerzo
El esfuerzo en horas-hombre viene dado por:E = UCP x CF
Donde:E: esfuerzo estimado en horas-hombreUCP: Puntos de Casos de Uso ajustadosCF: factor de conversión
En nuestro proyecto, el CF es igual a 20hs hombre/UCP ya que solo 2 factores de ambiente están fuera de límites.
E = 105.77* 20hs hombreE = 2115 horas.E ≈ 264 días. E ≈ 8 meses y 25 días.
CATEDRA PROYECTO FINAL
Diapositiva: 23 de
SISTEMA DE GESTION WEBDiagrama de Gantt
CATEDRA PROYECTO FINAL
Diapositiva: 24 de 40
SISTEMA DE GESTION WEBAnálisis de riesgos
Concepto de RiesgoRiesgo en un proyecto: evento o condición incierta que, en caso de
ocurrir, tiene un efecto positivo o negativo sobre los objetivos de un proyecto. Un riesgo tiene una causa y, si ocurre (evento de riesgo), una consecuencia (efecto).
Riesgos conocidos: aquellos que han sido identificados y analizados durante la planificación del proyecto.
Habitualmente se gestionan los riesgos con efecto negativo, es decir, aquellos que suponen una amenaza para el éxito del proyecto.
CATEDRA PROYECTO FINAL
Diapositiva: 25 de 40
SISTEMA DE GESTION WEBConcepto de Gestión de RiesgosExisten cinco niveles de gestión de riesgos:
Control de crisis: intentar controlar los riesgos cuando ya se han convertido en problemas.
Arreglar cada error: reaccionar rápidamente cuando ya se ha producido el riesgo.
Mitigación de riesgos: planificar con antelación el tiempo que necesitaría para cubrir riesgos en caso de que ocurran.
Prevención: crear y ejecutar, como parte del proyecto software, un plan para identificar riesgos y evitar que se conviertan en problemas.
Eliminación de causas principales: identificar y eliminar los factores que pueden provocar la presencia de algún tipo de riesgo.
CATEDRA PROYECTO FINAL
Diapositiva: 26 de 40
SISTEMA DE GESTION WEBPara lograr los niveles más grandes de prevención es necesario decidir el énfasis con el que ejecutar los siguientesprocesos:
De planificación:
• Identificación de Riesgos• Análisis Cualitativo de Riesgos• Análisis Cuantitativo de Riesgos• Planificación de Respuestas a los Riesgos
De Control:
• Supervisión y Control de Riesgos
CATEDRA PROYECTO FINAL
Diapositiva: 27 de 40
SISTEMA DE GESTION WEB
Identificación:
Identificar los riesgos potenciales que pueden ocurrir en el proyecto es el primer paso. Los más habituales:
• Cambio de requisitos• Escatimar en la calidad• Planificaciones demasiado optimistas• Diseño inadecuado• Síndrome de la panacea • Desarrollo orientado a la investigación • Personal mediocre• Diferencias con los clientes
CATEDRA PROYECTO FINAL
Diapositiva: 28 de 40
SISTEMA DE GESTION WEB
Identificación:
Alternativamente se pueden usar checklists de riesgos comunes. Se construyen a partir de información histórica.
Ventaja: permiten una identificación de riesgos rápida y relativamente sencilla.
Desventaja: es prácticamente imposible tener una lista que incluye todos los posibles riesgos en un proyecto software.
CATEDRA PROYECTO FINAL
Diapositiva: 29 de 40
SISTEMA DE GESTION WEB
Análisis Cualitativo de Riesgos:
Una vez identificados los riesgos, el siguiente paso es analizar cada riesgo para determinar su impacto.
Lo primero que medimos es la “exposición a riesgos”, definida como la probabilidad de ocurrencia del riesgo multiplicada por la magnitud de pérdida del riesgo (impacto).
Por ejemplo: si existe un 25% de probabilidad de que ocurra un riesgo que retrasaría el proyecto en 4 semanas, entonces la exposición a este riesgo es de 0,25x4=1 semana
PriorizaciónUna vez identificados los riesgos, y realizada la estimación de la “exposición a riesgos”, el siguiente paso es priorizar los riesgos, de manera que se sepa dónde centrar el esfuerzo de la gestión de riesgos.
CATEDRA PROYECTO FINAL
Diapositiva: 30 de 40
SISTEMA DE GESTION WEB
Planificación de Respuestas
En esta actividad se construye un plan de contingencia para cada uno de los riesgos identificados en las actividades
anteriores, que se han elegido como significativos para gestionarlos.
La colección de todos los planes de contingencia se suele agrupar en el llamado Plan de Respuestas a Riesgos.
CATEDRA PROYECTO FINAL
Diapositiva: 31 de 40
SISTEMA DE GESTION WEB
Planificación de Respuestas
SupervisiónConsiste en realizar un seguimiento de los riesgos durante la ejecución del proyecto
Resolución o control de riesgosQué hacer en este punto depende mucho del tipo de riesgo. Las acciones o estrategias que se pueden seguir son las siguientes:
• Evitar el riesgo.• Trasladar el riesgo a un tercero (habitual en riesgos económicos) • Eliminar el origen del riesgo.• Mitigar el riesgo. • Comunicar el riesgo al resto del equipo, al cliente y a la dirección.• Controlar/Aceptar el riesgo. Hacer un plan de contingencias para minimizar suexposición.• Recordar el riesgo para planes futuros.
CATEDRA PROYECTO FINAL
Diapositiva: 32 de 40
SISTEMA DE GESTION WEB
Planificación de Respuestas (Ejemplo)
CATEDRA PROYECTO FINAL
Diapositiva: 33 de 40
SISTEMA DE GESTION WEB
¿Cuál es el impacto de un riesgo no gestionado?
CATEDRA PROYECTO FINAL
Diapositiva: 34 de 40
SISTEMA DE GESTION WEB
¿Cuál es el impacto de un riesgo no gestionado?
CATEDRA PROYECTO FINAL
Diapositiva: 35 de
SISTEMA DE GESTION WEB
MySQL es un sistema de gestión de base de datos relacional, multihilo y multiusuario.
Es una base de datos muy rápida en la lectura cuando utiliza el motor no transaccional MyISAM, pero puede provocar problemas de integridad en entornos de alta concurrencia en la modificación.
En aplicaciones web hay baja concurrencia en la modificación de datos y en cambio el entorno es intensivo en lectura de datos, lo que hace a MySQL ideal para este tipo de aplicaciones.
CATEDRA PROYECTO FINAL
Diapositiva: 36 de
SISTEMA DE GESTION WEB
Hibernate es una herramienta de Mapeo objeto-relacional para la plataforma Java.
Facilita el mapeo de atributos entre una base de datos relacional y el modelo de objetos de una aplicación, mediante archivos declarativos (XML) que permiten establecer estas relaciones.
Genera las sentencias SQL y libera al desarrollador del manejo manual de los datos, manteniendo la portabilidad entre distintos motores de bases de datos con un ligero incremento en el tiempo de ejecución.
CATEDRA PROYECTO FINAL
Diapositiva: 37 de
SISTEMA DE GESTION WEB
Tomcat es un servidor web con soporte de servlets y JSPs.
Dado que Tomcat fue escrito en Java, funciona en cualquier sistema operativo que disponga de la máquina virtual Java.
Es usado como servidor web autónomo en entornos con alto nivel de tráfico y alta disponibilidad.
Los usuarios disponen de libre acceso a su código fuente y a su forma binaria en los términos establecidos en la Apache Software Licence.
CATEDRA PROYECTO FINAL
Diapositiva: 38 de
SISTEMA DE GESTION WEB
Técnica de desarrollo web para crear aplicaciones interactivas o RIA (Rich Internet Applications).
• Estas aplicaciones se ejecutan en el cliente,mientras se mantiene la comunicación asíncrona con el servidor en segundo plano.
• Permite realizar cambios sobre las páginas sin necesidad de recargarlas, lo que significa aumentar la interactividad, velocidad y usabilidad en las aplicaciones.
CATEDRA PROYECTO FINAL
Diapositiva: 39 de 40
SISTEMA DE GESTION WEB
Framework creado por Google con el fin de ocultar la complejidad de trabajar con tecnología AJAX. •Permite crear y depurar aplicaciones AJAX en lenguaje JAVA. •Cuando una aplicación es desplegada, el compilador GWT traduce el código Java a un archivo Javascript, el cual es interpretado por el navegador. •Es compatible con todos los navegadores. •No necesita instalación de plugins adicionales.
CATEDRA PROYECTO FINAL
Diapositiva: 40 de
SISTEMA DE GESTION WEB
Biblioteca JavaScript para el desarrollo de aplicaciones web interactivas usando tecnologías como AJAX y DHTML.
Contiene numerosas funcionalidades que permiten añadir interactividad a páginas HTML.
Originalmente fue construida como una extensión de la biblioteca YUI, en la actualidad puede usarse como aplicación independiente
Actualmente existe GWT-Ext, librería que resuelve una de las limitaciones más importantes de GWT: austeridad y poca sofisticación de sus componentes visuales básicos