4. Ingeniería de Servicios
(Service Engineering)
Proceso de desarrollo de servicios que puedan
ser reutilizables.
Se desean servicios que puedan ser usados en
diferentes sistemas, robustos, confiables y
documentados.
1.1
4
5. Etapas de la ingeniería de
servicios
Identificación de los servicios candidatos.
Diseño del servicio.
Implementación y despliegue (deployment) del
servicio.
1.2.1
5
6. Etapas de la ingeniería de
servicios
1.2.2
6
Sommervile, Ian. (2011). Software Engineering. 9th Edition. Pearson.
7. Identificación de servicios
candidatos
Deben soportar los procesos del negocio.
3 tipos de servicios:
▪ De utilidad (Utility Services).
▪ Del negocio (Business Services).
▪ De Coordinación (Coordination Services).
1.3.1
7
8. Servicios orientados a tareas
y a entidades
¿A qué está asociado el servicio?
A alguna actividad o a una entidad del negocio
1)Utilidades
2)Del negocio
3)Coordinación
Orientados a tareas
Orientados a
entidades
1.3.2
8
10. Identificación de Servicios
¿El servicio está asociado a una sola entidad
lógica usada en diferentes procesos?
¿La tarea es llevada a cabo por diferentes
personas?
¿El Servicio es independiente?
1.3.4
12
11. Identificación de Servicios
¿El servicio mantiene un estado?
¿El servicio puede ser usado por clientes fuera
de la organización?
¿Es probable que diferentes usuarios tengan
requerimientos diferentes?
1.3.5
13
12. Ejemplo de identificación de
servicios
Una companía vende equipamiento para
computadoras a otras companías proveedoras.
Se desea producir un catálogo que permita a los
clientes seleccionar el equipamiento que
necesitan.
1.3.6
14
13. Catálogo de servicios
Las companías tienen su propio presupuestos y
procedimientos de aprobación de pedidos
Los catálogos son creados por los proveedores
para mostrar que productos ofrecen
1.3.7
15
14. Requerimientos del servicio
Se debe crear una versión del catálogo para
cada cliente.
El catálogo debe poder descargarse.
Se pueden comparar los productos entre sí.
1.3.8
16
15. Requerimientos del servicio
Se deben proveer facilidades de búsqueda y
navegación.
Debe proveerse una función que permita
predecir la fecha de entrega.
Se deben soportar reservas de productos de 48
horas.
1.3.9
17
16. Catálogo: requerimientos no
funcionales
El acceso debe estar restringido a los empleados
de organizaciones acreditadas
Los precios y configuraciones ofrecidas por cada
organización deben ser confidenciales
1.3.10
18
17. Catálogo: requerimientos no
funcionales
El catálogo siempre debe estar disponible desde
las 7am hasta las 11am
El catálogo debe poder procesar más de 10
solicitudes por segundo
1.3.11
19
19. Diseño de las interfaces del
servicio
Pensar en operaciones asociadas al servicio y
mensajes intercambiados.
Minimizar número de mensajes intercambiados
para una solicitud.
Incluir información sobre estado del servicio en
mensajes.
1.4.1
21
20. Etapas del diseño de
interfaces
Diseño de interfaz lógica: definir nombres de
operaciones y parámetros asociados.
Diseño de mensajes: definir la estructura y
organización de los mensajes de entrada y
salida.
Descripción WSDL.
1.4.2
22
21. Etapas del diseño de
interfaces1.4.3
23
Sommervile, Ian. (2011). Software Engineering. 9th Edition. Pearson.
22. Definición UML de los
mensajes
1.4.4
24
Sommervile, Ian. (2011). Software Engineering. 9th Edition. Pearson.
23. Implementación y despliegue
de servicios
Java y C# incluyen muchas librerías al respecto.
Los servicios deben ser probados.
El despliegue (deployment) implica publicar
el servicio e instalarlo en un server web.
1.5.1
25
24. Descripción de los servicios
Información sobre el negocio, detalles de
contacto, etc.
Descripción informal de funcionalidades
provistas.
1.5.2
26
25. Descripción de los servicios
Descripción detallada de interfaces y su
semántica.
Subscripciones que permitan al usuario
registrarse para obtener información.
1.5.3
27
26. Sistemas heredados y
servicios
Proveer acceso a la funcionalidad embebida en
sistemas heredados.
Los sistemas heredados suelen ofrecer extensa
funcionalidad y pueden reducir costos de
implementación.
1.6.1
28