ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

TEMA DE Webservices net


Enviado por   •  27 de Noviembre de 2017  •  Apuntes  •  1.505 Palabras (7 Páginas)  •  1.999 Visitas

Página 1 de 7

[pic 2][pic 3]

[pic 4]

[pic 5]

[pic 6]


[pic 7][pic 8][pic 9]

ÍNDICE

  1. OBJETIVO Y ALCANCE
  2. DEFINICIONES
  3. POLÍTICAS DE OPERACIÓN
  4. RESPONSABILIDADES
  5. DIAGRAMA DEL PROCESO
  6. INDICADORES
  7. REGISTRO

OBJETIVO Y ALCANCE

OBJETIVO

Implementar el presente proceso, el cual tienen como objetivo general el establecimiento de una estructura adecuada para que la información fluya correctamente.

El Objetivo específico, en virtud de las características que tienen las actividades que se desarrollan en cada una de las Áreas es el siguiente:

  • Establecer la correcta operación de los procesos, con la virtud de promover la claridad de las funciones y responsabilidades de cada uno y evitar duplicidad o confusión.

Las modificaciones que lleguen a ser requeridas para el contenido del presente documento por motivos de simplificación, facilitación, actualización, reestructuración, mejora continua u otros, deben ser notificadas antes de ponerse en operación a la Dirección General para su integración, revisión y autorización correspondiente.

ALCANCE

Los controles descritos en el presente manual son aplicables a:

  • Introducción al proceso ETL de psycowin a pyxoom
  • Facilitar la localización de los procesos del código
  • Establecer una referencia individualmente de cada uno de sus procesos
  • Ayudar entender la estructura de la información del sistema origen y destino


DEFINICIONES

[pic 10]

  1. La solución PyxoomETL se compone de 3 librerías y un cliente WPF
  •  BE.PyxoomETL se encuentran las entidades que se utilizan dentro de todo el proceso de la aplicación
  • BL.PyxoomETL en este se encuentran todo los procesos que realizan algún calculo, lógica, regla y transformación de datos relacionado a su proceso especifico
  • DAL.PyxoomETL en esta librería podremos asignar todo lo correspondiente a acceso a datos, desde obtención e inserción, actualización, carga etc.
  • PyxoomETL se encuentra el cliente WPF (Windows Presentation Foundation) que utiliza BE.PyxoomETL y BL.PyxoomETL para ordenar en el flujo como se va a estar procesando la información

[pic 11]

A grandes rasgos el flujo de este proceso es el siguiente:

  1. Obtener los catálogos de psycowin
  2. Obtener los perfiles
  3. Mapear los perfiles y catálogos
  4. Crear el evento donde se insertarán todas las personas
  5. Insertar los perfiles en Pyxoom
  6. Insertar las competencias(dependiendo si aplica)
  7. Obtener los candidatos y sus capturas de psycowin
  8. Agrupar los procesos de cada candidato
  9. Insertar la información agrupada de las personas (Persona, Persona_Proceso, Examen_Persona, Persona_Proceso_Examen, construir la estructura de la información para insertar Respuesta_Examen_Persona de forma masiva a través de un proceso bulk)

DAL.PyxoomETL

[pic 12]

En esta librería se encuentran todas las entidades, en esta imagen la clase Querys que es la más relevante ya que puede requerirse modificar dependiendo el cliente, además tiene una clase hermana que se llama PyxoomQuery , en la clase Querys se encuentran únicamente consultas ya que es de Psycowin lo único que realizamos obtener información, en la clase PyxoomQuery tenemos la obtención de información de Pyxoom para obtener catalogos o información relevante para el proceso y asi como los insert y update que se requieren para el proceso.

DAL.PyxoomETL

[pic 13]

En esta sección en resumen se explicará el propósito de cada clase así como los métodos que contiene

  1. PerfilesDal
  • ObtenerPerfiles() método que obtiene la información de los perfiles de Psycowin en este se obtiene adicionalmente las competencias asignadas a ese perfil
  • ProcessLifo() devuelve una clase con la estructura de la configuración de psicometría para esta prueba
  • Splits() devuelve una lista de string indicándole en cuantos caracteres quieres cada elemento
  • GetUserForInsert() Obtiene un usuario de Pyxoom para registrar la información en base de datos.
  • InsertarPerfil() inserta el perfil en Pyxoom
  • InsertarPuesto() inserta puesto en Pyxoom
  • InsertarHistoriaPuesto() registra el historial del puesto
  • InsertarCuestionario() inserta el detalle_cuestionario en Pyxoom
  • InsertarPsicometrica() inserta en detalle_psicometria en Pyxoom
  • InsertarPuestoEmpresa() insertar la relación de puesto con la empresa en Pyxoom
  • GetBoolValueFromChar() convierte un valor que se obtiene de las columnas de psycowin y lo convierte a bool

[pic 14]

  1. EventoDal.
  • AltaEvento()  Se registra el evento en pyxoom
  • ObtenerCiudades() Obtiene las ciudades de psycowin y mapea el id de Pyxoom que coincida
  • ObtenerTitulos() Obtiene los títulos de psycowin y mapea el id de Pyxoom que coincida
  • ObtenerEscuelas() Obtiene las escuelas de psycowin y mapea el id de Pyxoom que coincida
  • GetPyxoomCity() Regresa el id de la ciudad que coincida con el nombre recibido
  • GetPyxoomState() Regresa el id del estado que coincida con el nombre recibido
  • GetPyxoomCareer() Regresa el id de la carrera que coincida con el nombre recibido
  • TestConnection() Valida la conexión de la conexión origen y destino

  1. CompetenciasDal
  • GetCompetences() Obtiene las competencias de psycowin de cada puesto
  • InsertarCompetencias() Inserta en detalle_competencias las competencias de cada perfil
  • GetBoolalueFromChars devuelve un boolean basado en el carácter que recibe
  1. PersonasDal
  • ObtenerPersonas() Obtiene las personas y sus capturas de psycowin
  • En esta clase es el único método que se utiliza ya que se agrupo por procesos y eso se encuentra en la clase PersonasProcesoDAL
  1. PersonasProcesoDAL
  • AltaPersona() Registra la persona en Pyxoom devuelve id_persona
  • AltaPersonaProceso() registra el persona_proceso de un candidato
  • AltaHistoriaPersonaProceso() registra el historial en historia_persona_proceso
  • AltaExamenPersona() registra el examen_persona del persona_proceso
  • AltaPersonaProcesoExamen() registra la información en persona_proceso_Examen
  • AltaRespuestaExamenPersona() inserta las respuestas de las capturas de todos los candidatos a través de bulkinsert
  1. PreguntasRespuestas
  • ObtenerPreguntasPrueba() Obtiene las preguntas de todas las pruebas de pyxoom
  • ObtenerRespuestasPrueba() obtiene las respuestas de todas las pruebas de pyxoom

BL.PyxoomETL

  1. Generics
  • Splits() devuelve una lista de string a partir de un texto indicándole la candidad de caracteres
  • TestConnection() realiza una prueba de conectividad entre la base de datos origen y destino.
  • ToDataTable() convierte a datatable un objeto de tipo lista
  • AsDataTable convierte a tabla un objeto de tipo Ienumerable
  • DataTables() convierte a tabla la clase respuestaexamenpersona para el proceso de bulk insert
  • GenericCompetenceMapper() mapeo de competencias de psycowin a Pyxoom (genéricas)
  • CentralRomanaCompetence() mapeo especial de competencias de psycowin de central romana a Pyxoom
  • PmxFicha() método especial que convierte una cadena a un número solicitado por cliente

  1. Perfiles
  • ObtenerPuestos() obtiene los puestos de psycowin y manda llamar el método InsertarPuestos
  • InsertarPuestos() tiene la lógica del proceso de insertar puestos, perfiles,  detalle_cuestionarios, detalle_psicometria, detalle_competencias
  • InsertarCuestionarioCleaver() inserta el cuestionario y psicometría para la prueba cleaver
  • InsertarCuestionarioLifo() insertar configuración de psicometría de lifo
  • InsertarcuestionarioBarsit() insertar psicometría de la prueba barsit
  • InsertarCuestionarioBeta() insertar psicometría de la prueba beta
  • InsertarCuestionarioGordon() insertar psicometría de la prueba gordon
  • InsertarCuestionarioTerman() insertar psicometría de la prueba gordon
  • CalculateLifo() proceso para transformar la psicometría de Lifo en lo esperado por Pyxoom

  1. Personas
  • CrearEventoPersonas() genera el evento en Pyxoom y devuelve el identificador del evento creado
  • ObtenerCatalogos() obtiene los catalogos de ciudad, escuelas y títulos de psycowin y también de Pyxoom para el mapeo.
  • ObtenerPersonas() obtiene las personas de psycowin y relaciona los identificadores de los catalogos obtenidos
  • InsertarPersonaProcesoExamen() inserta en persona_proceso_examen
  • InsertarExamenRespuestaPosNeg respuestas de tipo positivo y negativo
  • InsertarExamenRespuestaRespNumeroLifo() genera la estructura requerida de Pyxoom para las respuestas de lifo
  • InsertarExamenRespuestaRespNumeroPSW() genera la estructura requerida de Pyxoom para las respuestas de la prueba valores psw
  • InsertarExamenRespuestaRespNumeroAllport() genera la estructura requerida de Pyxoom para las respuestas de la prueba valores Allport
  • InsertarExamenRespuestaAlphaPPV() genera la estructura requerida de Pyxoom para las respuestas de la prueba PPV
  • InsertarExamenRespuestaBarsit() genera la estructura requerida de Pyxoom para las respuestas de la prueba barsit
  • InsertarExamenRespuestaCPI() genera la estructura requerida de Pyxoom para las respuestas de la prueba CPI corto
  • IsertarExamenRespuestaBeta() genera la estructura requerida de Pyxoom para las respuestas de la prueba Beta
  • InsertarExamenRespuestaTerman() genera la estructura requerida de Pyxoom para las respuestas de la prueba Terman
  1. PreguntasBL. En esta clase se encuentran los procesos de transformación de las capturas a la estructura requerida en pyxoom
  • EnlistarCapturaPositivoNegativo() estructurar la captura de positivos y negativos
  • EnlistarCapturaPositivoNegativoGordon() estructurar la captura de positivos y negativos de la prueba gordon
  • ObtenerPreguntasConRespuestas() obtiene las preguntas de Pyxoom y todas las respuestas de todas las pruebas. También mapea las respuestas de cada prueba asociada
  • ObtenerRespuestas() Proceso utilizado para obtener todas las respuestas de las pruebas de Pyxoom
  • EnlistarCapturaRespNumeroLifo() estructurar la captura de lifo
  • EnlistarCapturaRespNumeroPsw() estructurar la captura de la prueba valores psw
  • EnlistarCapturaRespNumeroAllport() estructurar la capturar de la prueba allport
  • EnlistarCapturaPPV() estructurar la captura de la prueba ppv
  • EnlistarCapturaBarsit() estructurar la captura de la prueba barsit
  • EnlistarCapturaCPI() estructurar la captura de la prueba cpi corto
  • EnlistarCapturaBeta() estructurar la captura de la prueba beta
  • EnlistarCapturaTerman() estructurar la captura de la prueba terman
  1. ProcesosPersona
  • AgruparProcesos() proceso que agrupa los procesos de cada candidato basándose en un capo para agrupar y genera una nueva estructura para generar las personas y sus procesos en Pyxoom
  • InsertarPersona() genera la infromacion de la persona en Pyxoom
  • InsertarExamenPersona() genera la estructura final agrupada de los procesos junto con los ids de exámenes, relaciones de persona_proceso de cada examen/candidato
  1. BulkProcess
  • BulkInsert(List) crea una tabla a partir de una lista y manda ejecutar el proceso de bulk
  • BulkInsertar(DataTable) recibe una tabla y manda ejecutar el proceso de carga a través de bulk

POLITICAS DE OPERACIÓN


RESPONSABILIDADES

  1. Mantener el código, legible y simple lo más posible
  2. Seguir el patrón de desarrollo aplicado para separar en capas la lógica, acceso a datos y cliente.
  3. Si se detecta algún proceso que pudiera hacerse genérico existe una clase para los métodos genéricos.
  4. Eliminar el código que no se esté utilizando por lo menos tenerlo comentarizado.

DIAGRAMA DE PROCESO

[pic 15]


[pic 16][pic 17][pic 18][pic 19][pic 20][pic 21][pic 22][pic 23]

DIAGRAMA DE PROCESO


ÍNDICADORES

Responsable

Indicador

Meta

Fórmula

Frecuencia

Fuente de Datos

Clasificación de Indicadores

REGISTROS

Registro

Responsable (s)

Orden

Reporta a

ANEXOS

  1. Guía

...

Descargar como (para miembros actualizados)  txt (12 Kb)   pdf (760.9 Kb)   docx (353.1 Kb)  
Leer 6 páginas más »
Disponible sólo en Clubensayos.com