Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SMBI 21-22 00 Especificación
SMBI 21-22 00 Especificación
Especificación
Servicios Multimedia
Basados
en Internet
http://sm.ingenieriamultimedia.org/doku.php
Calendario Hito 0
L M X J V S D
Iteración 1 13 14 15 16 17 18 19 SEP
20 21 22 23 24 25 26
27 28 29 30 1 2 3
Iteración 2 4 5 6 7 8 9 10 OCT
11 12 13 14 15 16 17
Hito 0
• SMBI01: Diseño integral de la arquitectura
técnica: especificación de los elementos del
backend, tecnologías y relaciones entre ellos
• SMBI02: Especificación de elementos y
tecnologías de seguridad y autenticación
• SMBI03: Especificación API Rest y del
modelo de datos
Entregable SMBI01
El elemento principal de este entregable será el diseño del sistema donde
debe reflejarse los elementos del backend y las relacione entre ellos.
Además, debe describirse qué realizará cada elemento y para qué se
relacionará con los demás y los requerimientos que espera de ellos.
Diseño integral de la arquitectura técnica: especificación de los elementos del
backend, tecnologías y relaciones entre ellos
• Elementos
• Tecnologías
• Relaciones entre ellos
• Seguridad
Entregable SMBI01
Entregable SMBI02
Especificación de elementos y seguridad
l
SSL/TLS
l
Autenticación (oauth,ldap,...) Tipo: certificados,
usr/contraseña, ambas,...
l
Tokens
l
Disponibilidad
l
Sistemas de copia de seguridad (y plan)
l
...
Entregable SMBI03
Este entregable estará compuesto por los ítems que describan qué API vamos a ofrecer,
de consumo propio o para ofrecer a terceros y que funcionalidad cubren.
Por otra parte debemos indicar qué tipo o tipos de base de datos proporcionarán
persistencia a nuestro proyecto y qué tipo (o tipos) de tecnología de base de datos se ha
elegido y por qué.
En el caso de varias, indicar de qué que tipo de información se almacenará en cada uno.
Entregable SMBI03
Modelo de datos
l
Almacenar datos (persistencia)
l
Alternativas: Sql vs noSQL
l
SQL:
l
Esquemas: lo primero: tablas y campos. Cambios
pueden ser dolorosos
l
Claves, índices
l
Relaciones, integridad, transacciones
l
Triggers y procedimientos
l
CRUD: SQL language
Universidad de Alicante Grado en Ingeniería Multimedia SMBI
Especificación
Entregable SMBI03
noSQL:
l
Añades cualquier cosa cuando quieras
l
No normalizado, ni relaciona almacenes
l
NO JOIN
l
No Integridad
l
No transacciones, modificación de un simple
entrada atómica (actualizar 3 valores de una
entrada→ 1 operación, 3 entradas → 3
operaciones)
l
CRUD: JSON
Universidad de Alicante Grado en Ingeniería Multimedia SMBI
Especificación
Entregable SMBI03
Rendimiento:
l
NoSQL suelen ser más rápidas que SQL
l
NoSQL recupera toda información de un item en
una consulta (sin JOIN ni complejas SQLs)
l
Aunque: “A well-designed SQL database will
almost certainly perform better than a badly
designed NoSQL equivalent and vice versa.”
Entregable SMBI03
Escalado (distribuir datos entre múltiples servidores:
l
SQL: Clustering
l
No SQL: en el modelo de datos
SQL para:
l
Integridad es fundamental
l
Datos relacionados
NoSQL para:
l
Datos no relacionados, indeterminados
l
Velocidad y escalabilidad es muy importante
Entregable SMBI03
Especificación API Rest
Uso de HTTP → recursos
Petición/respuesta
Sin estado (stateless)
Métodos seguros e idempotentes
Seguridad: no produce efectos secundarios
(modificación del servidor o interacción de este
con 3º)
Idempotente: ejecución repetida produce el
mismo resultado
Universidad de Alicante Grado en Ingeniería Multimedia SMBI
Especificación
Hito 1
Arquitectura tecnológica, despliegue de infraestructuras, el esqueleto
completo de la API y la implementación de la seguridad (BD, back-end, API
y front-end)
• SMBI04: Configuración e instalación de los
elementos de backend y su seguridad
• SMBI05: API RestFULL (incluida la documentación)
• SMBI06:Despliegue de la infraestructura en
producción
Hito 1
• SMBI07: Documentos de pruebas de carga,
rendimiento y seguridad
• SMBI08: Validación del funcionamiento del
backend del proyecto
• SMBI09: Informes presenciales de
seguimiento (a partir de la iteración 2)
Iteración 3 18 19 20 21 22 23 24
25 26 27 28 29 30 31
Iteración 4 1 2 3 4 5 6 7 NOV
8 9 10 11 12 13 14
Iteración 5 15 16 17 18 19 20 21
22 23 24 25 26 27 28
DIC
Iteración 6 29 30 1 2 3 4 5
6 7 8 9 10 11 12 DIC
Iteración 7 13 14 15 16 17 18 19
20 21 22 23
4º Grado en Ingeniería Multimedia 24 25 26 19
Especificación
Servicios Multimedia
Basados
en Internet
http://sm.ingenieriamultimedia.org/doku.php