SlideShare uma empresa Scribd logo
1 de 27
Baixar para ler offline
Kura-kura
Grupo 2 Lorena Bes
Christian Martinez
Marc Mauri
Mayte Pavón
Antonio Suárez
Visión
RUP
I E C T C T
4/3/201313/2/2013
Cambios - Planificación Original
26/10/2012 9/1/2013
Cambios - Nueva Planificación
I E C T
9/1/2013 4/3/201326/10/2012 13/2/2013
Se han incluido reviews a la planificación de cada iteración.
Herramientas de gestión
Riesgos - Infraestructura Cliente
● Hay muchos proveedores de RFID pasivos.
● Hay muchos fabricantes que ofrecen
dispositivos parecidos. Sólo habría que
plantear pequeñas modificaciones.
● Se pueden encontrar dispositivos Android
baratos para hacer de centralita.
Riesgos - Infraestructura Servidor
● El entorno de despliegue del prototipo será
el PaaS Openshift de RedHat.
● El despliegue se realizará en infraestructura
propia del cliente adaptadas al nivel de
seguridad alto de LOPD.
● Existe la alternativa de desplegar en
CDmon.
Organización, consistencia, visión global, intuitividad y
prevención de errores y familiaridad
Storyboards
Storyboards
Casos de uso
De especificación a análisis
Caso de uso: Añadir nuevo cuidador
Actor primario: Administrador, Responsable.
Precondición: El usuario se ha logueado en el sistema.
Disparador: El Responsable y/o el Residente desean
añadir un nuevo cuidador a un servicio.
Escenario principal de éxito:
1. El usuario introduce los datos del cuidador.
[→ #004 NuevoCuidador]
1. El sistema valida los datos.
2. El sistema asocia al nuevo cuidador al servicio.
3. El sistema muestra al administrador un mensaje
indicando cambios realizados.
Extensiones:
2a. Los datos no son válidos.
2a1. El sistema muestra un mensaje al
administrador indicando cuáles son los
datos que no son válidos.
2a2. El sistema vuelve al paso 1.
...
Boundary-Control-Entity
Pattern
Boundary-Control-Entity Pattern
VOPC
Sequence Diagram
Domain Model
Diseño
Subsistema de Gestión
Cambiabilidad Mantenibilidad
Subsistema de Notificación
Fiabilidad
Alto rendimiento
Disponibilidad
Notificar Alerta
Notificar Avisos Informativos
Iniciar Llamada a Cuidador
Gestionar Servicios
Gestionar Cuidadores
Gestionar Residentes
Gestionar Alertas
Sistema de Gestión
● MVC Pull-Based
○ Vistas conscientes
○ Reusabilidad
● HTML, JavaScript y widgets KendoUI
○ Alta compatibilidad
○ Conocimientos adquiridos y facilidad de aprendizaje
○ Ajustado a nuestras necesidades
Sistema de Gestión
Presentación
● Front Controller + Action Controller
○ Recepción, filtrado y procesamiento de peticiones
■ Bajo acoplamiento clientes-servicio
○ Delegación por acciones
■ Alta cohesión
● Server Session State
○ Identificación de usuario
○ Seguridad
● Data Transfer Object (DTO)
○ Desacoplamiento entre capas
○ JSON
Sistema de Gestión
Servicios
● Domain Model + Data mapper
○ Independencia entre lógica y base de datos.
○ Persistencia automática
○ Doctrine
● Use Case Controller
○ Lógica por caso de uso
○ Estado
○ Bajo acoplamiento
● Otros patrones:
○ Abstract Factory
○ Template
○ Expert
○ Singleton
Sistema de Gestión
Dominio y Datos
Sistema de Notificación
● Test unitarios
○ Buen funcionamiento de las clases
○ PHPUnit
● Tests de integridad y persistencia de BD
○ Consistencia tipo-dato
○ DB Sanity
Tests
Tests
● Test de rendimiento
○ Subsistema crítico
○ Herramientas de lenguaje
● Test de control de acceso
○ Seguridad en los contenidos
○ SeleniumHQ
Tests
● Test de usabilidad e interfaz
○ Test de humo
○ Persona-sistema
● Fácil uso y ayuda para el usuario
Modelo de datos
Base de datos relacional (PostgreSQL)
● Balance entre criterios
○ Eliminar la mayor cantidad de nulls posibles
■ Simplicidad, rendimiento
■ Concrete Table Inheritance, Association Table Mapping
○ Minimizar el espacio ocupado
■ Escalabilidad
■ Single Table Inheritance
Modelo de datos
○ Normalización
■ Cambiabilidad
■ Identity Field, Foreign Key Mapper, Class Table
Inheritance
○ Rendimiento
■ Conflicto con otros requisitos no funcionales
■ Uso de índices en atributos clave
■ Distribución de la base de datos en modelo de
despliegue
■ Generar consulta para el sistema de
notificaciones.
Modelo de despliegue
Método de despliegue
Seguridad
● Firewall, DMZ
● Backup de datos en distinta localización
Disponibilidad
● Reduplicación de servidores
Rendimiento
● Distribución de bases de datos
Gracias por su
atención

Mais conteúdo relacionado

Semelhante a Proyecto Kura Kura - Presentación técnica

Migración a Software Libre
Migración a Software LibreMigración a Software Libre
Migración a Software LibreEnrique Zanardi
 
Seguridad y computación en la nube
Seguridad y computación en la nubeSeguridad y computación en la nube
Seguridad y computación en la nubeCarlos Rubén Jacobs
 
Demostración: ¿Cómo acelera la plataforma Denodo su tiempo para obtener infor...
Demostración: ¿Cómo acelera la plataforma Denodo su tiempo para obtener infor...Demostración: ¿Cómo acelera la plataforma Denodo su tiempo para obtener infor...
Demostración: ¿Cómo acelera la plataforma Denodo su tiempo para obtener infor...Denodo
 
Presentacion tryton campus party
Presentacion tryton campus partyPresentacion tryton campus party
Presentacion tryton campus partycampus party
 
Curso: Redes y comunicaciones II: 03 Seguridad y criptografía
Curso: Redes y comunicaciones II: 03 Seguridad y criptografíaCurso: Redes y comunicaciones II: 03 Seguridad y criptografía
Curso: Redes y comunicaciones II: 03 Seguridad y criptografíaJack Daniel Cáceres Meza
 
Argentesting 2017_KeyNote_Federico Toledo - Keynote Cierre
Argentesting 2017_KeyNote_Federico Toledo - Keynote CierreArgentesting 2017_KeyNote_Federico Toledo - Keynote Cierre
Argentesting 2017_KeyNote_Federico Toledo - Keynote CierreArgentesting
 
vOpenUy: Construye tu aplicación Multi-Tenant
vOpenUy: Construye tu aplicación Multi-TenantvOpenUy: Construye tu aplicación Multi-Tenant
vOpenUy: Construye tu aplicación Multi-Tenantfernando sonego
 

Semelhante a Proyecto Kura Kura - Presentación técnica (20)

Requisitos no Funcionales
Requisitos no FuncionalesRequisitos no Funcionales
Requisitos no Funcionales
 
Migración a Software Libre
Migración a Software LibreMigración a Software Libre
Migración a Software Libre
 
Presentación 1 AESS.pptx
Presentación 1 AESS.pptxPresentación 1 AESS.pptx
Presentación 1 AESS.pptx
 
Seguridad y computación en la nube
Seguridad y computación en la nubeSeguridad y computación en la nube
Seguridad y computación en la nube
 
Seguridad y computación en la nube
Seguridad y computación en la nubeSeguridad y computación en la nube
Seguridad y computación en la nube
 
El arte de la ciencia de datos
El arte de la ciencia de datosEl arte de la ciencia de datos
El arte de la ciencia de datos
 
Alternativas de hosting para WordPress
Alternativas de hosting para WordPressAlternativas de hosting para WordPress
Alternativas de hosting para WordPress
 
Demostración: ¿Cómo acelera la plataforma Denodo su tiempo para obtener infor...
Demostración: ¿Cómo acelera la plataforma Denodo su tiempo para obtener infor...Demostración: ¿Cómo acelera la plataforma Denodo su tiempo para obtener infor...
Demostración: ¿Cómo acelera la plataforma Denodo su tiempo para obtener infor...
 
sistemas operativos
sistemas operativossistemas operativos
sistemas operativos
 
Presentacion tryton campus party
Presentacion tryton campus partyPresentacion tryton campus party
Presentacion tryton campus party
 
Pract campo
Pract campoPract campo
Pract campo
 
Smbd (2)
Smbd (2)Smbd (2)
Smbd (2)
 
Smbd (2)
Smbd (2)Smbd (2)
Smbd (2)
 
Smb Dfin
Smb DfinSmb Dfin
Smb Dfin
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Curso: Redes y comunicaciones II: 03 Seguridad y criptografía
Curso: Redes y comunicaciones II: 03 Seguridad y criptografíaCurso: Redes y comunicaciones II: 03 Seguridad y criptografía
Curso: Redes y comunicaciones II: 03 Seguridad y criptografía
 
Argentesting 2017_KeyNote_Federico Toledo - Keynote Cierre
Argentesting 2017_KeyNote_Federico Toledo - Keynote CierreArgentesting 2017_KeyNote_Federico Toledo - Keynote Cierre
Argentesting 2017_KeyNote_Federico Toledo - Keynote Cierre
 
Cloud computing y seguridad
Cloud computing y seguridadCloud computing y seguridad
Cloud computing y seguridad
 
Demo 2012
Demo 2012Demo 2012
Demo 2012
 
vOpenUy: Construye tu aplicación Multi-Tenant
vOpenUy: Construye tu aplicación Multi-TenantvOpenUy: Construye tu aplicación Multi-Tenant
vOpenUy: Construye tu aplicación Multi-Tenant
 

Mais de Marc Mauri Alloza (9)

What DB?
What DB?What DB?
What DB?
 
Programari Lliure a la UPC
Programari Lliure a la UPCProgramari Lliure a la UPC
Programari Lliure a la UPC
 
Enginyeria de Requisits
Enginyeria de RequisitsEnginyeria de Requisits
Enginyeria de Requisits
 
Rational Unified Process
Rational Unified ProcessRational Unified Process
Rational Unified Process
 
Proyecto Kura-Kura
Proyecto Kura-KuraProyecto Kura-Kura
Proyecto Kura-Kura
 
CakePHP
CakePHPCakePHP
CakePHP
 
Projecte Insecticida
Projecte InsecticidaProjecte Insecticida
Projecte Insecticida
 
Linked Data
Linked DataLinked Data
Linked Data
 
Guifi.net al C. E. Montseny
Guifi.net al C. E. MontsenyGuifi.net al C. E. Montseny
Guifi.net al C. E. Montseny
 

Proyecto Kura Kura - Presentación técnica

  • 1. Kura-kura Grupo 2 Lorena Bes Christian Martinez Marc Mauri Mayte Pavón Antonio Suárez
  • 3. I E C T C T 4/3/201313/2/2013 Cambios - Planificación Original 26/10/2012 9/1/2013
  • 4. Cambios - Nueva Planificación I E C T 9/1/2013 4/3/201326/10/2012 13/2/2013 Se han incluido reviews a la planificación de cada iteración.
  • 6. Riesgos - Infraestructura Cliente ● Hay muchos proveedores de RFID pasivos. ● Hay muchos fabricantes que ofrecen dispositivos parecidos. Sólo habría que plantear pequeñas modificaciones. ● Se pueden encontrar dispositivos Android baratos para hacer de centralita.
  • 7. Riesgos - Infraestructura Servidor ● El entorno de despliegue del prototipo será el PaaS Openshift de RedHat. ● El despliegue se realizará en infraestructura propia del cliente adaptadas al nivel de seguridad alto de LOPD. ● Existe la alternativa de desplegar en CDmon.
  • 8. Organización, consistencia, visión global, intuitividad y prevención de errores y familiaridad Storyboards
  • 11. De especificación a análisis Caso de uso: Añadir nuevo cuidador Actor primario: Administrador, Responsable. Precondición: El usuario se ha logueado en el sistema. Disparador: El Responsable y/o el Residente desean añadir un nuevo cuidador a un servicio. Escenario principal de éxito: 1. El usuario introduce los datos del cuidador. [→ #004 NuevoCuidador] 1. El sistema valida los datos. 2. El sistema asocia al nuevo cuidador al servicio. 3. El sistema muestra al administrador un mensaje indicando cambios realizados. Extensiones: 2a. Los datos no son válidos. 2a1. El sistema muestra un mensaje al administrador indicando cuáles son los datos que no son válidos. 2a2. El sistema vuelve al paso 1. ... Boundary-Control-Entity Pattern
  • 14. Diseño Subsistema de Gestión Cambiabilidad Mantenibilidad Subsistema de Notificación Fiabilidad Alto rendimiento Disponibilidad Notificar Alerta Notificar Avisos Informativos Iniciar Llamada a Cuidador Gestionar Servicios Gestionar Cuidadores Gestionar Residentes Gestionar Alertas
  • 16. ● MVC Pull-Based ○ Vistas conscientes ○ Reusabilidad ● HTML, JavaScript y widgets KendoUI ○ Alta compatibilidad ○ Conocimientos adquiridos y facilidad de aprendizaje ○ Ajustado a nuestras necesidades Sistema de Gestión Presentación
  • 17. ● Front Controller + Action Controller ○ Recepción, filtrado y procesamiento de peticiones ■ Bajo acoplamiento clientes-servicio ○ Delegación por acciones ■ Alta cohesión ● Server Session State ○ Identificación de usuario ○ Seguridad ● Data Transfer Object (DTO) ○ Desacoplamiento entre capas ○ JSON Sistema de Gestión Servicios
  • 18. ● Domain Model + Data mapper ○ Independencia entre lógica y base de datos. ○ Persistencia automática ○ Doctrine ● Use Case Controller ○ Lógica por caso de uso ○ Estado ○ Bajo acoplamiento ● Otros patrones: ○ Abstract Factory ○ Template ○ Expert ○ Singleton Sistema de Gestión Dominio y Datos
  • 20. ● Test unitarios ○ Buen funcionamiento de las clases ○ PHPUnit ● Tests de integridad y persistencia de BD ○ Consistencia tipo-dato ○ DB Sanity Tests
  • 21. Tests ● Test de rendimiento ○ Subsistema crítico ○ Herramientas de lenguaje ● Test de control de acceso ○ Seguridad en los contenidos ○ SeleniumHQ
  • 22. Tests ● Test de usabilidad e interfaz ○ Test de humo ○ Persona-sistema ● Fácil uso y ayuda para el usuario
  • 23. Modelo de datos Base de datos relacional (PostgreSQL) ● Balance entre criterios ○ Eliminar la mayor cantidad de nulls posibles ■ Simplicidad, rendimiento ■ Concrete Table Inheritance, Association Table Mapping ○ Minimizar el espacio ocupado ■ Escalabilidad ■ Single Table Inheritance
  • 24. Modelo de datos ○ Normalización ■ Cambiabilidad ■ Identity Field, Foreign Key Mapper, Class Table Inheritance ○ Rendimiento ■ Conflicto con otros requisitos no funcionales ■ Uso de índices en atributos clave ■ Distribución de la base de datos en modelo de despliegue ■ Generar consulta para el sistema de notificaciones.
  • 26. Método de despliegue Seguridad ● Firewall, DMZ ● Backup de datos en distinta localización Disponibilidad ● Reduplicación de servidores Rendimiento ● Distribución de bases de datos