Documentos de Académico
Documentos de Profesional
Documentos de Cultura
HERRAMIENTA DE AUTO
DIAGNOSTICO DE SALUD
Tabla de contenido
1. Introducción ................................................................................................................................. 3
3. Metodología ................................................................................................................................. 7
3.1. Cronograma.......................................................................................................................... 8
3.2. Diseño................................................................................................................................. 10
6. Alcance ....................................................................................................................................... 14
7. Aplicación ................................................................................................................................... 15
8. Recomendaciones ...................................................................................................................... 19
9. Conclusiones .............................................................................................................................. 20
Tabla de Ilustraciones
1. Introducción
Diseñar una propuesta de arquitectura de software para crear una herramienta tecnológica que le
permita a la compañía realizar seguimiento al estado de salud de sus colaboradores, con el objetivo
de que se integre en un ambiente SOA. La aplicación estará dirigida a los empleados de la compañía.
Ya que la empresa cuenta con arquitectura SOA, podemos solucionar el envío de correos repetitivos
lo cual presenta mayor carga de trabajo y desinformación por parte de los jefes, conectándonos a
un servicio que será creado y publicado para el consumo de los empleados vía web.
Porque utilizar SOA, las arquitecturas SOA resuelven la necesidad de las empresas por obtener los
datos de objetos de negocio, bajo una presentación consolidada con un enfoque también de
negocio; independiente del modelo de datos donde se encuentre la información.
Evitamos que la información de objetos de negocio se encuentra dispersa en varios sistemas, por
ejemplo, los datos de un cliente pueden estar dispersos en varios sistemas, con puntos de vista
diferentes, y diferentes tipos de datos; sin embargo, sus consumidores la requieren unificada,
mediante una sola vista
Somos una empresa tecnológica, la cual brinda conectividad para las alcaldía y centros educativos,
cada uno con una zona wifi-implementada, donde el compromiso es brindar nuevas herramientas
tecnológicas para la educación.
La empresa cuenta con más de dos mil (2000) empleados, donde nace la necesidad de monitorear
el estado de saludo de las personas trabajadoras y desarrollar protocolos de actuación para los casos
de sospecha de un posible contagio.
3. Metodología
Con los compañeros de estudio adoptamos la metodología SCRUM, dado que somos diez (10)
personas y entre todos podemos contribuir delegando tareas a los miembros de nuestro equipo,
realizando una estimación y planeación del proyecto basado en las necesidades del cliente.
Una de las tareas será designar nuestro equipo de desarrollo, el Product Owner quien nos ayudará
en la búsqueda de soluciones dentro de todo el proceso. Realizaremos Sprint, que son interacciones
de 1 a 4 semanas dependiendo la complejidad y se proponen reuniones diarias (Daily SCRUM), no
mayor a 15 minutos donde el equipo expone lo que hizo, lo que va a realizar y cuales impedimentos
ha tenido.
8
3.1. CRONOGRAMA
Con el fin de realizar una estimación en el cronograma crearemos unas historias de usuario con el
fin de generar nuestro Sprint Burn-Down Chart.
Las creamos basados en como <Usuario> Quiero <algún objetivo> para qué <motivo>
• Como empleado quiero un botón que me traiga los datos de empleado para no diligenciar
más información.
• Como jefe quiero un reporte de los empleados para conocer quien este sospechoso de
contagio.
• Como usuario deseo una interfaz para gestionar el ingreso y registro de información.
• Como administrador deseo exportar la información en un archivo plano
• Como usuario deseo que me diga cuales campos son obligatorios para que no se envié sin
diligenciar.
La grafica Figura 4 nos presenta de color naranja la línea ideal los datos fueron tomados el día 5 es
decir que el desarrollo real con respecto a lo esperado va por buen camino, reflejando que nuestro
grupo de trabajo está comprometido con la realización de las actividades propuestas. Introduce aquí
los datos de referencia de tu proyecto. Es importante mantener la información actualizada, como
los campos de fecha de comienzo, la longitud de sprint (introduce el número bruto de días), días de
vacaciones del período de sprint, el tamaño de tu equipo, ocupación máxima deseada de tu equipo
y la jornada de trabajo diaria. Es importante conocer que cuando estamos por debajo de la línea
ideal nuestra meta va por mejor camino.
9
3.2. DISEÑO
Para el diseño de la aplicación utilizaremos patrones de diseño, como nuestra idea es tener un
formulario, es conveniente utilizar el patrón Singleton es creacional y nos permite asegurarnos de
que una clase tenga una única instancia, es decir tener un punto de acceso global a dicha instancia.
(Refactoring.Guru, 2021)
La Figura 7, muestra como tenemos un punto de acceso global a dicha instancia. La clase Singleton
la podemos declarar de manera privada con el fin de declarar de manera privada sin ser accesible
de ganando el control de la clase el método estático obtener Instancia que devuelve la misma
instancia de su propia clase. El constructor del Singleton debe ocultarse del código cliente.
(Refactoring.Guru, 2021)
11
Nos proponen utilizar la Arquitectura orientada a objetos (SOA), para nuestra herramienta nos será
muy útil ya que debemos interactuar con una aplicación de terceros es la base de y SOA es un
concepto de arquitectura software que permite construir sistemas altamente escalables, basado en
la invocación de funciones sin estado llamadas servicios. La forma más habitual de conseguir esto es
mediante el uso de Web Services. Debido a este reducido nivel de acoplamiento es más plausible
añadir nuevos servicios al sistema. (Fontenla, 2009)
Dentro de nuestra aplicación brindaremos un servicio, que se pueden llamar utilizando protocolos
de red estándar, como SOAP (protocolo simple de acceso a objetos) /HTTP o JSON/HTTP, para enviar
solicitudes para leer o cambiar datos. Los servicios se publican de tal forma que permite a los
desarrolladores encontrarlos rápidamente y reutilizarlos para ensamblar nuevas aplicaciones.
La exposición de estas funciones a través de la SOA elimina la necesidad de recrear la integración
profunda cada vez. (IBM, 2021)
Las conexiones se realizan mediante petición - respuesta, igual que el modelo cliente-servidor,
siendo este la base de un SOA. Ahora bien, definimos el servicio a utilizar en nuestro caso escogimos
el servicio web REST, ya que incluyen la asignación que ejecutará el servicio web REST y la definición
del mensaje de respuesta que devolverá el servicio web. Los recursos también incluyen un ID de
recurso, que es un campo de clave en los datos de salida. Puede crear un recurso a partir de un
objeto de datos o bien definir manualmente un recurso.
Mensaje de solicitud
12
Los servicios web pueden ejecutar el método HTTP GET. El mensaje de solicitud consiste en una
cadena con el nombre del servicio web, el nombre y la ubicación de red del recurso que deberá
ejecutar la tarea y los parámetros de filtrado de la salida.
Asignación de recursos
Una asignación de recursos predeterminada contiene una transformación de lectura y otra de salida
con los mismos puertos.
Mensaje de respuesta
Archivo JSON o XML que contiene los datos que se devolverán al cliente de servicio web. El mensaje
de respuesta puede contener una jerarquía de elementos y datos de ocurrencia múltiple.
(informatica, 2018)
5. Planeación actividades
Para el planteamiento de las actividades con nuestro grupo se realizó consulta sobre los campos y
el diseño el formulario para captar la información del autodiagnóstico por parte de los
colaboradores en la Compañía:
REGISTRAR CUESTIONARIO y CENSO COVID-19
• No documento:
• Apellidos y nombres:
• Departamento:
• Área:
• Email:
• Celular:
DECLARACIÓN DE SALUD
CENSO
• ¿Vive con personas que presten servicios de salud?:
• Profesión:
• Contacto con:
• ¿Vive con adultos mayores de 65 años, o personas con enfermedades preexistentes?:
• Observación:
SINTOMAS ACTUALES
• Fiebre: SI/NO Observación:
• Dificulta respiratoria: SI/NO Observación:
• Vomito: SI/NO Observación:
• Congestión nasal: SI/NO Observación:
• Malestar general: SI/NO Observación:
• Tos: SI/NO Observación:
• Dolor de garganta: SI/NO Observación:
14
CONTACTO ESTRECHO
En los últimos 14 días ha tenido contacto con alguna persona con síntomas o que haya sido declarada
enferma o sospechosa para COVID-19, en las siguientes condiciones: SI/NO
6. Alcance
El proyecto culmina con el diseño e implementación bajo los lineamientos de una Arquitectura
Orientada a Servicios (SOA), facilitando la información en tiempo real, del personal que está
ejecutando sus actividades de manera presencial o virtual y manifieste síntomas como fiebre de 38°
o más o malestar general o tos persistente en su puesto de trabajo; podamos identificarlo para
protegerlo y proteger al resto de empleados, informando a su jefe inmediato o responsable del área
que se deberá ejecutar el protocolo establecido para la atención del empleado.
15
7. Aplicación
Nuestra aplicación es una API REST ya que nos permite escalar mejor sin tener que preocuparnos de
temas como el almacenamiento de variables de sesión e incluso, podemos utilizar distintas
tecnologías para servir determinadas partes o recursos de una misma API.
8. Recomendaciones
Nuestro grupo recomienda el uso de un cifrado SSL (Secure Sockets Layer), para nuestra API RESTful,
dado que se puede acceder a la web de su API desde cualquier lugar con acceso a Internet.
Asimismo, el uso de métodos de autentificación API REST como los son, Autentificación básica
Autentificación basada en token, Autentificación basada en clave API, OAuth 2.0 (Autorización
abierta)
Utilizaremos en este caso un sistema API debe generar una clave (key) y un secret key para cada
cliente que requiera acceso a tus servicios. Cada vez que una aplicación necesite consumir los datos
de tu API, deberás enviar tanto la key como la secret key. (Itdo, 2021)
20
9. Conclusiones
El documento nos refleja que nuestros usuarios finales no podrán ver el tipo de arquitectura
utilizado, es importante comprender cómo actúa SOA a través de componentes débilmente
acoplados y cómo estas son las bases de toda la arquitectura, intercambiando datos en el proceso
para entrega de un servicio.
La arquitectura de software propuesto facilita a los usuarios realizar el debido reporte de
autodiagnóstico durante la emergencia sanitaria actual.
21
10. Referencias
11. Anexos
11.1. GLOSARIO
Criterios de aceptación: Son un conjunto preciso y bien definido de condiciones que un producto
que se va a adquirir o construir debe satisfacer en el momento de su entrega, para que sea aceptado
por una entidad.
Dominio: Los dominios son las dimensiones desde las cuales se debe abordar la gestión estratégica.
Agrupan y organizan los objetivos, áreas y temáticas relativas.
Servidor: Cuando una página web es visitada, los datos se envían desde alguna computadora a
algún lugar a tu computadora a través del internet. Esa otra computadora es un servidor,
configurada especialmente para entregar información a otras computadoras que la soliciten.
(Platzi, 2021)
Scrum: Es un marco de trabajo ligero que ayuda a las personas, equipos y organizaciones a generar
valor mediante soluciones adaptativas a problemas complejos.
Sprint (Evento): Es un período de tiempo fijo en el cual se realiza el trabajo y que contiene los
otros eventos de Scrum
SOAP (Simple Object Access Protocol): este protocolo complejo define una gramática XML con
el formato de los documentos que se deben intercambiar entre quien realiza la solicitud (cliente) y
quien la responde (servicio) por lo general se utiliza en los servicios web.