Capítulo III: Diseño orientado a servicios:
3.3 Diseño de servicios de negocio centrados en entidades
El diseño de los servicios de este tipo debe revisar los servicios existentes para garantizar que no existan funcionalidades solapadas, definiendo para cada uno un esquema formal de los tipos de datos que se van a intercambiar, proponer una interfaz siempre cumpliendo con los principios de la orientación a servicios. Adicionalmente se adicionan operaciones nuevas a los servicios existentes en caso de ser necesario. En nuestro caso contamos con los siguientes servicios de negocio centrados en entidades Fig.3.6
Servicio Acta:
El servicio Acta Fig.3.7 esta pertenece al subproceso de inspección del lugar del hecho, donde se realizan las operaciones de Archivar Acta, registrar la recepción de lo ocupado y generar una copia de al acta conformada, ahora veremos como es que se realiza el diseño de este servicio y como queda conformada la definición abstracta y la definición concreta del mismo.
Fig.3.7 Servicio Acta
Definición Abstracta:
Tipos de datos:
Los tipos de datos se definen en un XSD asociado a la descripción del servicio.
Archivar Acta: Esta operación se encarga de guardar el acta de ocupación en el cuerpo de las actuaciones y en el legajo es por ello que decidimos crear el tipo de dato complejo ActaRequestmessage que tiene 2 parámetros, el Id del acta y la Descripción del acta. (Fig3.8).
De esta forma queda el código en el WSDL:
Recepción Ocupado: Esta operación se encarga de dejar plasmado en algún lugar, en este caso una base de datos la información referente a los objetos que se ocupen, es por ello que decidimos crear el tipo de dato RequestOcupacion donde cada ocupación tiene un Id y una lista de elementos ocupados con su nombre y descripción, Fig.3.9.
De esta forma queda el código del esquema en el WSDL:
Generar Copia: A diferencia de las operaciones mencionadas anteriormente el patrón de intercambio de mensajes a utilizar es Request-Response, donde al servicio se le pide una información y este devuelve el resultado de la misma al cliente. Para ello necesitan dos tipos de datos, uno que encapsule los parámetros de entrada y otra para los de salida. Esta operación devuelve una copia de el acta de ocupación pero para ello tenemos que hacer una solicitud de dicha acta la cual se identifica por un Id. Quedando de la siguiente forma:
Para la solicitud del acta creamos un tipo de dato con el Id del acta que queremos obtener y para la repuesta un tipo de datos que contenga el Id del acta y la información correspondiente Fig.3.10.
De esta forma queda el código del esquema en el WSDL:
PortType o Interfaz del servicio:
Definición Concreta
Binding:
Después de explicar las partes que componen la interface de la descripción de un servicio podemos ver en la Fig.3.11 como se ve de forma general esta definición.
Fig.3.11 WSDL del servicio Acta
Servicio Documentación:
Este servicio será el encargado de guardar la documentación del peritaje y de las declaraciones ya que esta información puede ser usada posteriormente por otros servicios de consulta, como podemos apreciar en la Fig3.12 el mismo consta de dos operaciones que se encargarían de realizar el almacenamiento de estos datos, ahora veremos como es que se realiza el diseño de este servicio y como queda conformada la definición abstracta y la definición concreta del mismo.
Definición Abstracta:
Tipos de datos:
Guardar Declaraciones: Esta operación se encargara de guardar la información referente a las declaraciones es por ello que decidimos crear un tipo de dato complejo llamado DeclaracionesRequest que contenga los elementos Id y la información de la declaración Fig3.13.
Fig3.13 Tipo de dato utilizados por la operación Guardar Declaraciones
De esta forma queda el código del esquema en el WSDL:
Guardar Peritaje: Esta operación se encargara de guardar la información referente al peritaje es por ello que decidimos crear el tipo de dato complejo PeritajeRequest que contenga el Id y la información de dicho peritaje Fig3.14.
De esta forma queda el código del esquema en el WSDL:
Mensajes:
Definición Concreta:
Binding:
Servicio:
Después de ver las partes que componen la interface de la descripción del servicio Documentación podemos ver en la Fig.3.15 como se ve de forma general esta definición.
Fig.3.15 WSDL del servicio Documentación
Servicio Medida:
Este servicio es el encargado de manejar los aspectos relacionados con la notificación que se debe hacer a Identificación y Registro después de poner el acusado en libertad, el control de las presentaciones del acusado en la estación así como el manejo de la medida aplicada la cual primero se registra y después que se cumpla se deja sin efecto Fig.3.16.
Fig3.16 Servicio Media
Definición Abstracta:
Tipos de datos:
Informar a Notificación: Esta operación es la encargada de hacer una llamada al servicio Notificación, encargado de mandar una notificación al departamento de Identificación y registro de que el individuo ya fue puesto en libertad.
De esta forma queda el código del esquema en el WSDL:
Registrar Incidencias: Esta operación se encarga de registrar y llevar un control de las presentaciones del acusado en la estación, es por ello que surge la necesidad de crear el tipo de dato complejo Incidencia el cual se compone de los elementos, Id e información de las incidencias.
Fig.3.18 Tipo de dato utilizado por la operación Incidencia
Registrar Medida: Esta operación es la encargada de registrar en una base de datos la medida que se aplica para la cual creamos el tipo de dato complejo RegistrarMedida compuesto por los elementos Id e Información de la media.
Fig.3.19 Tipo de dato utilizado por la operación Registrar medida
De esta forma queda el código del esquema en el WSDL:
Dejar sin efecto la medida: Esta operación se encarga de dejar sin efecto una medida después de su cumplimiento y es por ello que creamos el tipo de dato complejo llamado LiberarMedida que contiene el Id de la medida que queremos dejar sin efecto .Fig3.20
De esta forma queda el código del esquema en el WSDL
PortType o Interfaz del servicio:
Definición concreta:
Binding:
Después de explicar las partes que componen la interface de la descripción de un servicio podemos ver en la Fig.3.21 como se ve de forma general esta definición.
Fig3.21 WSDL del servicio Media
Servicio Interrogatorio:
Este servicio es el encargado de guardar la información que se obtiene después de realizar un interrogatorio.
Fig3.22 Servicio Interrogatorio
Definición Abstracta
Tipos de datos
Guardar Declaraciones del acusado: Esta operación se encarga de guardar las declaraciones del acusado es por ello que decidimos crear el tipo de dato complejo DecAcusadoReuqest compuesto por 2 elementos el Id de la declaración y la Información de la misma Fig.3.23.
Fig.3.23 Tipo de dato utilizado por la operación Guardar Declaraciones del acusado
De esta forma queda el código del esquema en el WSDL:
Guardar Peritaje Psíquico: Esta operación se realiza en caso de que sea necesario realizar un peritaje psíquico, donde creamos un tipo de dato complejo llamado PeritajePsiquicoRequest con los elementos Id e Información del peritaje Fig3.24.
Fig3.24 Tipo de dato utilizado por la operación Guardar Peritaje Psíquico
Mensajes
PortType o Interfaz del servicio:
Definición Concreta
Binding
Después de explicar las partes que componen la interface de la descripción de un servicio podemos ver en la Fig.3.25 como se ve de forma general esta definición.
Fig3.25 WSDL del servicio Interrogatorio
Servicio Antecedentes:
Este servicio es el encargado de hacer una llamada al servicio verificación, para así poder obtener información sobre los antecedentes penales de una persona Fig3.26.
Fig3.26 Servicio Antecedentes
Definición Abstracta
Tipos de datos
Verificar Antecedentes: Esta operación es la encargada de hacer una llamada al servicio Verificación donde se decide crear una tipo de dato complejo llamado Antecedentes_Request que contenga el Id de los antecedentes que queremos verificar y un tipo de dato complejo llamado Antecedentes_Response que nos devuelva el Id y la información relacionada con los antecedentes Fig.3.27.
Fig3.27 Tipo de dato utilizado por la operación Antecedentes
De esta forma queda el código del esquema en el WSDL:
Mensajes
Definición Concreta
Binding
Servicio
Después de explicar las partes que componen la interface de la descripción de un servicio podemos ver en la Fig.3.28 como se ve de forma general esta definición.
Fig3.28 WSDL del servicio Antecedentes