Upload
cmargay
View
318
Download
0
Embed Size (px)
Citation preview
Moskitt aplicado al proyecto Espigón
¿Qué es ESPIGÓN?
• ESPIGÓN: Empleo de un Sistema Portuario Integral de Gestión On-Line
• Sistema de gestión portuaria dirigido a entes gestores de puertos, como Comunidades Autónomas, Autoridades Portuarias, puertos privados o clubes náuticos.
ListadosListados
Data EntryData Entry
FormulariosFormularios
GISGIS
Bussines IntelligenceBussines Intelligence
Evolución
Portos de Galicia• Inicio 2004• Puesta en Producción 2006
Port de les Illes Balears• Inicio 2006• Puesta en Producción 2008
Ports de la Generalitat Valenciana• Inicio 2008• Puesta en Producción 2010
Características
Técnicas
•Aplicación web J2EE•100% Software libre•Licencia GNU/GPL•BBDD
PostgreSQL/PostGis•Mozilla/Firefox•BI Cubos OLAP Mondrian•Informes OpenOffice•Mtmto. de cartografía
con gvSIG
Características Técnicas
•Framework de trabajo javaEE de Prodevelop
•Modelo MVC•Modular, escalable•Componentizado
para fomentar la reutilización
Arquitectura proJaf
Herramientas
comunes
Menús de acceso dinámicos en función de
cada rol de usuario
Barras de Herramientas
comunes a cualquier área del
sistema
Filtros de Información Personalizados por usuario
Configuración de la información Mostrada al
Usuario
Búsquedas rápidas y Complejas
Facilidades de gestión de la información del sistema
Menús Dinámicos
Barras de Herramientas Comunes
Configuración Personalizada de la Información
Mensajes entre usuarios
Alarmas de aviso sobre la información
Combinación de Documentos (OpenOffice)
Documentos Anexados
Utilidades de Apoyo a la gestión
SubsistemasServicios y Operaciones Portuarias
Dominio Público
Sanciones
Inspección y Vigilancia
Contabilidad Presupuestaria
Núcleo Central de Facturación / Liquidación
Estadísticas -Business Intelligence
Sistema de Información Geográfica (SIG)
Servicios Portuarios
• Escalas de Buques• Mercancías y Pasajeros• Pesca• Embarcaciones Deportivas• Grúas• Suministros de agua y luz• Ocupaciones: Locales y Edificios• Servicios Diversos
GESTION DE SERVICIOS Y OPERACIONES PORTUARIAS
G2 ESCALAS Y ATRAQUES
G3 MERCANCÍAS Y PASAJEROS
G4 PESCA E1 GRÚAS
E2 SUPERFICIES Y LOCALES
Dominio Público
• Concesiones• Autorizaciones• Revisión automática o manual de Cánones• Workflow de Tramitación Expedientes• Fianzas• Obras• Hipotecas• Contadores de suministro
Ejemplo: Expediente de Concesión / Autorización - Tramitaciones Expedientes
Puertos Deportivos
• Definición de Instalaciones: Instalación , Pantalán, Amarres
• Expedientes de Plazas Base• Expedientes de Transeúntes• Gestión de Clubes Náuticos y Marinas• Convocatorias de Plazas• Solicitudes de Plaza (Lista de Espera)• Autorizaciones de Embarcaciones
Pesqueras
Ejemplo: Autorización Embarcación Deportiva
Ejemplo: Configuración Instalación Deportiva
•Gestión de Expedientes de Sanción
•Partes de Inspección y Vigilancia
•Facturación de Servicios y Expedientes
•Espigón GIS•Espigón Móvil Droid•Contabilidad Presupuestaria
Otros módulos
Ejemplo: Boletín de Sanción
Ejemplos de Partes de Revisión Infraestructuras y Limpieza
Cubo
agr
egad
o de
M
erca
ncía
s /
Pasa
jero
s po
r Ej
erci
cio
Ejemplo: Estadística Business Intelligence
ESPIGÓN-GIS: Módulo SIG integrado• Visor espacial web• Puertos Deportivos y Dominio Público• Integrado con
ESPIGÓN-DROID• Introducción de partes de Inspección
desde un dispositivo móvil Android
Espigón antes de
Moskitt
Herramientas de modelado dispares
•Rational Rose Enterprise Edition
•Rational Software Architect•Poseidon UML•DBDesigner•Etc….
Rational Rose
• Ejemplo Modelo de Datos
Rational SW Architect
• Ejemplo Diagrama de Clases
Conclusiones• Diferentes herramientas para
diferentes artefactos de SW• Falta de uniformidad entre
analistas• Mayor curva de aprendizaje para
analistas y desarrolladores• Mayor distancia entre lo
especificado por analistas y lo asumido por programadores
Uso de Moskitt en el
proceso de desarrollo
Artefactos del proceso de desarrollo
Diagrama de Contexto del
Sistema
Descomposición de tareas (WBS)
Diagrama de Casos de Uso
Especificación de Casos de Uso
Moskitt UML UseCase
• Ejemplo: Diagrama de Contexto de Espigón Valencia
Moskitt WBS Diagram
• Ejemplo: WBS Espigón 1er Nivel
Moskitt UML UseCase
• Ejemplo: Fragmento Diagrama de Casos de Uso
Especificación de Casos de Uso
Definición del CU
Diagramas de Estados
Diagramas de secuencia
Diagramas de Flujo de Actividad
Diagrama de Clases
Modelo de datos
Modelo de Navegación
Modelo de Interfaces
Moskitt UML StateMachine
• Ejemplo: Diagrama de Estados Escala / Atraque
Moskitt UML Sequence
• Ejemplo: Secuencia Liquidaciones Domiciliadas
Moskitt UML Activity
• Ejemplo: Flujo Actividad Creación Liquidaciones
Moskitt UML ClassDiagram
• Ej: Diagrama de Clases de Negocio Expedientes Concesión
Diagrama de modelo de datosMoskitt UML ClassDiagram
• Ejemplo: Modelo Navegación Gestión Liquidaciones
Modelo de datos
•Definición del modelo•Sincronización con base de
datos física•Validaciones del modelo•Generación de DDL
Diagrama de modelo de datosMoskitt SqlModel Diagram
• Ejemplo: Modelo de datos Inspecciones Espigón-Droid
Conclusiones• Única herramienta para los diferentes
artefactos SW• Uniformidad entre analistas• Reducción curva de aprendizaje para
analistas y desarrolladores• Menos distancia entre lo especificado
por analistas y lo asumido por programadores
• Eliminación coste de licencias
Espigón & Moskitt
Acciones futuras
Arquitectura MVC•Vista: JSP +
Javascript + CSS•Controlador:
STRUTS•Modelo: POJOS +
JDBC
Espigón•Gestión y Explotación masiva de
información (BackOffice)•Diseño dirigido por BBDD•Patrones de formularios de
mantenimiento similares•Código fuente de mantenimiento
similar
Automatización de tareas
Automatización• A partir de un diagrama E/R de un CU,
automatizar con MOSKITT la generación de las diferentes capas de la arquitectura:
• JSP (listado y mantenimiento)• Action de Struts• Factoría de negocio• POJO (Clase de negocio)• Capa DAO (Acceso a datos)
Automatización de tareas• Fase 1: Mantenimiento Simple
Automatización de tareas
• Campos obligatorios• Tipo de datos de cada campo• Tamaño máximo de cada campo• Forma de generar la clave primaria (secuencial,
secuencial filtrado por campo…)• Interfaz asociada a maestros. Indicar si las
claves ajenas se muestran con una lupa o con un desplegable
• Máscara de formato de cada campo. Por ejemplo => Campos fecha que puedan ser dd/mm/aaaa o bien dd/mm/aaaa hh:mm
• Rangos de valores. Por ejemplo=> No poder dar de alta una escala con año inferior a 2006
Fase 1: Mantenimiento Simple
Automatización de tareas
• Fase 2: Mantenimiento Complejo
Automatización de tareas
• Validaciones cruzadas. Por ejemplo=> Que el campo 1 no pueda tomar determinados valores si el campo 2 toma un valor determinado
• Ocultar/desactivar campos. Por ejemplo=> Que el campo 1 se oculte o se desactive si el campo 2 toma un valor determinado
• Estructuras maestro/detalle
Fase 2: Mantenimiento Complejo
Automatización de tareas
• Fase 3: Workflows
Automatización de tareas
• Poder generar código, no sólo a partir de diagrama E/R
• Indicar reglas de negocio complejas
• Generar interfaz y capas arquitectura asociadas
Fase 3: Workflows
Automatización de tareas
• Incorporar nuevas tecnologías J2EE ( Hibernate, Spring…)
• Publicación de lógica como servicio web
• ………………..
Fase N
Espigón
Moskit
tRecorriendo juntos el camino
[email protected]@prodevelop.es
www.prodevelop.es
[email protected]@prodevelop.es
www.prodevelop.es
Gracias por su atención