i
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERIA EN SISTEMAS COMPUTACIONALES
“PROTOTIPO DE SISTEMA INFORMÁTICO DE GESTIÓN DE PACIENTES, CONTROL DE LA ALIMENTACIÓN Y NUTRICIÓN Y
ELABORACIÓN DE DIETAS PERSONALIZADAS”
PROYECTO DE TITULACIÓN
Previa a la obtención del Título de:
INGENIERO EN SISTEMAS COMPUTACIONALES
AUTOR: MARLON JAVIER ESPINOZA MORAN
TUTORA: ING. TANIA YAGUANA HERRERA
GUAYAQUIL – ECUADOR 2016
i
REPOSITORIO NACIONAL EN CIENCIAS Y TECNOLOGIA
FICHA DE REGISTRO DE TESIS TITULO: “PROTOTIPO DE SISTEMA INFORMÁTICO DE GESTIÓN DE PACIENTES, CONTROL DE LA
ALIMENTACIÓN Y NUTRICIÓN Y ELABORACIÓN DE DIETAS PERSONALIZADAS”
REVISORES:
INSTITUCIÒN: Universidad de Guayaquil FACULTAD: Ciencias Matemáticas y Físicas
CARRERA: Ingeniería en Sistemas Computacionales
FECHA DE PUBLICACION:11/12/2015
Nª DE PAGS:
AREA TEMATICA: Desarrollo de software y Base de Datos
PALABRAS CLAVES: Sistema informático, gestión, control, Alimentación, nutrición
RESUMEN: El presente trabajo consiste en implementar un Sistema Informático bajo la dirección de un nutricionista dietista, herramienta automatizada dirigida al profesional sanitario de esta área de la salud que le ayudara a gestionar a sus pacientes adultos con eficiencia; llevar un historial clínico del paciente, comprendido por sus datos personales, antecedentes patológicos personales y familiares y sus hábitos alimenticios; evaluar su estado nutricional, realizar su respectivo diagnóstico ;elaborar el plan de dietas mensual de forma digitalizada y contar con información respecto a la evolución de sus pacientes a lo largo de sus visitas médicas.
Nª DE REGISTRO(en base de datos): Nª DE CLASIFICACION:
Nª DIRECCION URL:
ADJUNTO PDF: SI NO
CONTACTO CON AUTOR: Marlon Espinoza Moran
Teléfono:
0982439738
Email: [email protected]
CONTACTO DE LA INSTITUCION: Nombre:
Teléfono:
ii
APROBACIÓN DEL TUTOR
En mi calidad de Tutor del trabajo de titulación, “PROTOTIPO DE SISTEMA
INFORMATICO DE GESTIÓN DE PACIENTES, CONTROL DE LA
ALIMENTACIÓN Y NUTRICIÓN Y ELABORACIÓN DE DIETAS
PERSONALIZADAS” elaborado por el Sr. ESPINOZA MORAN MARLON
JAVIER, alumno no Titulado de la Carrera de Ingeniería en Sistemas
Computacionales, Facultad de Ciencias Matemáticas y Físicas de la
Universidad de Guayaquil, previo a la obtención del Título de Ingeniero en
Sistemas, me permito declarar que luego de haber orientado, estudiado y
revisado, la Apruebo en todas sus partes.
Atentamente
________________________________
Ing. Tania Yaguana Herrera
TUTORA
iii
DEDICATORIA
A Dios por brindarme la fortaleza
para superar todos los obstáculos
y alcanzar mi meta.
A mis padres Maritza y Rosendo
por brindarme siempre su apoyo
incondicional, a mis familiares y a
todas las personas que durante
este camino me han ayudado a
realizarme profesionalmente.
iv
TRIBUNAL PROYECTO DE TITULACIÓN
Ing. Eduardo Santos Baquerizo, MSc.
DECANO DE LA FACULTAD
CIENCIAS MATEMATICAS Y
FISICAS
Ing. Inelda Martillo Alcívar, MGs.
DIRECTORA CISC
Ing. Tania Yaguana Herrera Ing. Rosa Molina Izurieta
DIRECTOR DEL PROYECTO DE VOCAL PRINCIPAL
TITULACION
Ing. Marcia Burgos Mosquera Abg. Juan Chávez Atocha
VOCAL PRINCIPAL SECRETARIO DE LA CARRERA
vi
DECLARACIÓN EXPRESA
“La responsabilidad del contenido de este Proyecto de Titulación, me corresponden exclusivamente; y el patrimonio intelectual de la misma a la UNIVERSIDAD DE GUAYAQUIL”
MARLON JAVIER ESPINOZA MORAN
vii
.
UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERIA EN SISTEMAS
COMPUTACIONALES
“PROTOTIPO DE SISTEMA INFORMÁTICO DE GESTIÓN DE PACIENTES, CONTROL DE LA ALIMENTACIÓN Y
NUTRICIÓN Y ELABORACIÓN DE DIETAS PERSONALIZADAS”
Proyecto de Titulación que se presenta como requisito para optar por el
título de INGENIERO EN SISTEMAS COMPUTACIONALES
Autora: MARLON JAVIER ESPINOZA MORAN
C.I. 0921921037
Tutora: Ing. Tania Yaguana Herrera
Guayaquil, Marzo del 2016
viii
CERTIFICADO DE ACEPTACIÓN DEL TUTOR
En mi calidad de Tutor del proyecto de titulación, nombrado por el Consejo Directivo de la Facultad de Ciencias Matemáticas y Físicas de la Universidad de Guayaquil.
CERTIFICO:
Que he analizado el Proyecto de Titulación presentado por el estudiante MARLON JAVIER ESPINOZA MORAN como requisito previo para optar por el título de Ingeniero en Sistemas Computacionales cuyo problema es:
PROTOTIPO DE SISTEMA INFORMÁTICO DE GESTIÓN DE
PACIENTES, CONTROL DE LA ALIMENTACIÓN Y NUTRICIÓN Y
ELABORACIÓN DE DIETAS PERSONALIZADAS
Considero aprobado el trabajo en su totalidad.
Presentado por:
Espinoza Moran Marlon Javier Cédula de ciudadanía N° 0921921037
Tutora: Ing. Tania Yaguana Herrera
Guayaquil, Marzo del 2016
ix
UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERIA EN SISTEMAS COMPUTACIONALES
Autorización para Publicación de Proyecto de Titulación en Formato Digital
1. Identificación del Proyecto de Titulación
Nombre Alumno: Marlon Javier Espinoza Moran
Dirección: Cantón Lomas de Sargentillo
Teléfono: 042-799-129 E-mail: [email protected]
Facultad: Ciencias Matemáticas y Físicas
Carrera: Ingeniería en Sistemas Computacionales
Proyecto de titulación al que opta: Ingeniero en Sistemas Computacionales
Profesor tutor: Ing. Tania Yaguana Herrera
Título del Proyecto de titulación: “PROTOTIPO DE SISTEMA INFORMÁTICO DE GESTIÓN DE PACIENTES, CONTROL DE LA ALIMENTACIÓN Y NUTRICIÓN Y ELABORACIÓN DE DIETAS PERSONALIZADAS”
Tema del Proyecto de Titulación: Sistema informático, gestión, control, Alimentación, nutrición
2. Autorización de Publicación de Versión Electrónica del Proyecto de Titulación A través de este medio autorizo a la Biblioteca de la Universidad de Guayaquil y a la Facultad de Ciencias Matemáticas y Físicas a publicar la versión electrónica de este Proyecto de titulación. Publicación electrónica:
Inmediata Después de 1 año
x
Firma Alumno:
3. Forma de envío: El texto del proyecto de titulación debe ser enviado en formato Word, como archivo .Doc. O .RTF y .Puf para PC. Las imágenes que la acompañen pueden ser: .gif, .jpg o .TIFF.
DVDROM CDROM
xi
ÍNDICE GENERAL
CARTA DE ACEPTACIÓN DEL TUTOR II
DEDICATORIA III
AGRADECIMIENTO IV
ÍNDICE GENERAL IX
ÍNDICE DE CUADROS X
ÍNDICE DE GRÁFICOS XI
RESUMEN vi
(ABSTRACT) vii INTRODUCCIÓN
CAPITULO I – EL PROBLEMA 1
Ubicación del problema en un contexto 2
Situación conflicto 3
Causa del problema, consecuencia 3
Delimitación del problema 4
Formulación del Problema 4
Evaluación del problema 5 Objetivo General Objetivo Específico 6
Alcance del Problema 7-8
Justificación e Importancia 9
CAPITULO II- MARCO TEÓRICO 10
Antecedentes del Estudio 10-12
Fundamentación Teórica 13
Fundamentación Legal 29
Hipótesis Preguntas a Contestarse 32
Variables de la Investigación 33
Definiciones Conceptuales 34
CAPÍTULO III – PROPUESTA TECNOLÓGICA 44
Análisis de Factibilidad 44
Factibilidad Operacional 45
Factibilidad Técnica 45-47
Factibilidad Económica 48 CAPÍTULO IV – CRITERIOS DE ACEPTACION DEL PRODUCTO O SERVICIO 58
Criterios de Aceptación 58
Informe de Aseguramiento de Calidad del Software 60
Plan de Calidad 61
xii
Estándar de Codificación 62
Pruebas Funcionales 63
Reporte de Problemas 64-65
Niveles de Criticidad del Sistema 65
Aceptación del Producto 66 Matriz de Resultados de Criterios de Aceptación del Producto o Servicio 67
Requerimientos Mínimos para Aceptación del Producto 68
Conclusiones 69-70
Recomendaciones 71
BIBILOGRAFIA 72-73
ANEXOS 74-75
CRONOGRAMA 76-79
xiii
ABREVIATURAS
UG Universidad de Guayaquil FTP Archivos de Transferencia Html Lenguaje de Marca de salida de Hyper Texto Http Protocolo de transferencia de Hyper Texto Ing. Ingeniero CC.MM.FF Facultad de Ciencias Matemáticas y Físicas Msc. Master URL Localizador de Fuente Uniforme www world wide web (red mundial) Ing Ingeniero TICs Tecnologías de la Información y Comunicación. SDLC Ciclo de Vida de Desarrollo de Sistemas BDD Base de Datos
xiv
SIMBOLOGÍA
s Desviación estándar e Error E Espacio muestral E(Y) Esperanza matemática de la v.a. y s Estimador de la desviación estándar e Exponencial
xv
ÍNDICE DE CUADROS
Pág.
CUADRO 1
Causas y Consecuencias del Problema…………………………………… 3
CUADRO 2 Delimitación del Problema……………………………………….………. 4 CUADRO 3 Tipos de Software y Disponibilidad en el mercado…………………….. 46 CUADRO 4 Costos Fijos del Proyecto…………………………..…………………….. 49 CUADRO 5 Costos Anuales del Proyecto…………………………………..…..……... 50 CUADRO 6 Matriz de Resultados de Validación de la Propuesta …………….…… 57
CUADRO 7 Criterios de Aceptación……………………………………………..…… 58-59
CUADRO 8 Plan de Calidad…………………………..………………………………. 61-62 CUADRO 9 Prueba de Caja Negra…………………………..…….……………………. 63 CUADRO 10 Formato de Reporte de Problemas………………….………………….… 65 CUADRO 11 Nivel de Criticidad del Sistema……………………….…………………..… 66 CUADRO 12 Matriz de Resultados de Criterios de Aceptación del Producto o Servicio….… 67
CUADRO 13 Requerimientos Mínimos para Aceptación del Producto……..………..… 68
xvi
ÍNDICE DE GRÁFICOS
Pág.
GRÁFICO 1 Etapas del SDLC…………………………………….…………………………. 15 GRÁFICO 2 Arquitectura de Aplicaciones de 3 Niveles………………………………….. 19
GRÁFICO 3 Aplicaciones Web…………………………..………………………………….. 21
GRÁFICO 4 Página Web Primera Generación…………………..………………………… 23 GRÁFICO 5 Página Web Segunda Generación …………………………..………………. 24 GRÁFICO 6 Página Web Segunda Generación …………………………..………………. 26 GRÁFICO 7 Página Web Segunda Generación …………………………..………………. 27 GRÁFICO 8 Página Web Segunda Generación …………………………..……………… . 28 GRAFICO 9 Manejo de Peticiones web Mediante Servlets………………………………. 35
GRAFICO 10 Etapas de la Metodología del Proyecto…………………………………….. 52 GRAFICO 11 Pruebas de Carga realizadas con JMeter………………………………….. 64 GRÁFICO 12 Cronograma Sección 1 ………………...……………………..……………….. 77
xvii
GRAFICO 13 Cronograma Sección 2 ……………………….………………………………… 77
GRAFICO 14 Cronograma Sección 3………………………………………………………… 78 GRAFICO 15 Cronograma Sección 4………………………………………………………. 78 GRAFICO 16 Cronograma Sección 5………………………………………………………. 79
xviii
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÀTICAS Y FÌSICAS
CARRERA DE INGENIERIA EN SISTEMAS COMPUTACIONALES
PROTOTIPO DE SISTEMA INFORMÁTICO DE GESTIÓN DE PACIENTES,
CONTROL DE LA ALIMENTACIÓN Y NUTRICIÓN Y ELABORACIÓN DE
DIETAS PERSONALIZADAS
Resumen
El presente trabajo consiste en implementar un Sistema Informático bajo la dirección de un nutricionista dietista, herramienta automatizada dirigida al profesional sanitario de esta área de la salud que le ayudara a gestionar a sus pacientes adultos; llevar un historial clínico del paciente, comprendido por sus datos personales, antecedentes patológicos personales y familiares y sus hábitos alimenticios; evaluar su estado nutricional, realizar su respectivo diagnóstico ;elaborar el plan de dietas mensual de forma digitalizada y contar con información respecto a la evolución de sus pacientes a lo largo de sus visitas médicas. El objetivo primordial de este proyecto es dotar a los Centros de Salud especializados en el área nutricional de un software que les permita realizar el control alimenticio y nutricional de los pacientes brindándoles un servicio eficaz, eficiente y de calidad. Gracias a estos procesos automatizados se podrá reducir los tiempos de atención a los pacientes mejorando notablemente el servicio del Centro de Salud, se conseguirá liberar la carga operativa de los médicos nutricionista y del personal de admisión de los Institutos de Salud debido a que se optimizara gran parte de sus procesos operativos y manuales. La investigación realizada para este proyecto ha tomado muestras de Instituciones de Salud Público y Privada, correspondientes a la ciudad de Guayaquil; a su personal administrativo y especialistas en esta área de la salud, y pacientes de dichos Centros de Salud.
Autor: Marlon Espinoza Moran
Tutora: Ing. Tania Yaguana Herrera
1
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMATICAS Y FISICAS
CARRERA DE INGENIERIA EN SISTEMAS COMPUTACIONALES
PROTOTIPO DE SISTEMA INFORMÁTICO DE GESTIÓN DE PACIENTES,
CONTROL DE LA ALIMENTACIÓN Y NUTRICIÓN Y ELABORACIÓN DE
DIETAS PERSONALIZADAS
Abstract
This work is to implement a computer system under the direction of a dietitian nutritionist, automated tool addressed to health professionals in this area of health that will help you manage your adult patients; keep patient records, comprised of their personal data, and personal and family medical history and eating habits; assess their nutritional status, perform their respective diagnosis, develop monthly plan diets digitized form and have information regarding the evolution of their patients during their medical visits. The primary objective of this project is to provide specialized health centers in nutrition software that enables them to carry the food and nutritional management of patients by providing an effective, efficient and quality service. Thanks to these automated processes may reduce the time of patient care dramatically improving service Health Center, you will get free the operational burden of the nutritionist and personal admission Institutes of Health doctors because they optimize large part of its operational and manual processes. The research for this project has sampled institutions corresponding to Guayaquil Public and Private Health; its administrative staff and specialists in this area of health, and patients of these health centers
Autor: Marlon Espinoza Moran
Tutora: Ing. Tania Yaguana Herrera
1
INTRODUCCIÓN
En la actualidad, el papel de la alimentación y la nutrición en la población cada día están alcanzando la importancia que siempre se ha merecido, existe un interés creciente por conocer las bases de una alimentación sana y equilibrada. Los Centros de Salud Públicos y Privados a través de sus profesionales médicos del área nutricional son los encargados de evaluar y asesorar nutricionalmente a la población que presenta alguna patología en concreto.
A diario en estos Centros Nutricionales acuden muchas personas de distintas edades que se han visto en la necesidad de visitar al especialista medico debido a síntomas presentados que han afectado su estado de salud, cabe recalcar que la alimentación comienza desde la concepción ya que el feto comienza a nutrirse de los alimentos que ingiere la madre por eso es necesario contar con información oportuna brindada por el nutricionista que pueda recomendar un correcto aporte de nutrientes que ayuden a las personas a evitar enfermedades metabólicas.
Se necesita de un riguroso cuidado de la alimentación de los niños que se encuentra en su etapa de crecimiento, de esto dependerá un correcto desarrollo físico y mental de ellos, ayudándoles a conseguir un buen coeficiente intelectual y un buen crecimiento, evitando en un futuro que dichos niños no padezcan de enfermedades por alimentación, que lo único que significara para el país una población menos productiva y con enfermedad.
Por eso es necesario, el uso de tecnologías de información que ayuden al especialista sanitario brindar un servicio de atención con mayor agilidad y de calidad a sus pacientes, que puedan contar con un herramienta que les ayude a generar los procesos en su mayoría de manera automatizada disminuyendo su carga laboral, que les facilite la gestión de sus pacientes y una ágil personalización de recomendaciones y dietas de manera digitalizada dirigida a sus pacientes, contar con una base de datos en la que se tenga datos de sus pacientes que permitan realizar su intervención con mayor eficiencia.
2
CAPÍTULO I
EL PROBLEMA
PLANTEAMIENTO DEL PROBLEMA
Ubicación del Problema en un Contexto
En la actualidad, gran parte de los especialistas nutricionales y dietistas
que cuenta con su propio consultorio médico encargados de brindar
asesoría nutricional a sus pacientes realizan sus procesos de forma
manual, los datos de sus pacientes los llevan en fichas médicas a papel e
ingresados luego en hojas de cálculos de Excel, la evaluación y
diagnóstico del estado nutricional y la creación de dietas personalizadas a
cada paciente la realizan de manera mecánica o manual.
También considerando a profesionales nutricionistas que forman parte de
Centros de Salud Públicos dependen de un sistema central de admisión el
cual les brinda información de los pacientes registrados, muchos de estos
lugares no cuentan con un sistema especializado en nutrición que permita
administrar la información nutricional de los pacientes internados
dificultando la distribución de los alimentos a dichos pacientes , poder
llevar un registro automatizado de los planes alimenticios de cada
paciente, generando demora en el proceso y dificultando la presentación
de información nutricional de manera ágil y oportuna a la Institución.
3
Situación Conflicto Nudos Críticos
Los profesionales sanitarios que disponen de su propio consultorio médico o
trabajan para instituciones (tales como hospitales, clínicas, centros de nutrición
públicos o privados) que brindan sus servicios de nutrición a la población
muchos de ellos no cuentan con un sistema informático dificultándosele la
gestión de sus pacientes, el registro de sus de sus antecedentes médicos,
hábitos alimenticios, evaluación del estado nutricional y elaboración de
diagnósticos dados a cada paciente, además de no tener un módulo
automatizado de búsqueda de alimentos y suplementos nutricionales con
información de sus propiedades nutricionales que facilite y agilite la
elaboración de dietas personalizada.
Causas y Consecuencias del Problema
Las principales causas y consecuencias son:
Cuadro 1:
Causas y Consecuencias del Problema
Causas Consecuencias
Procesos manuales para la creación de fichas medicas de pacientes e historial médico.
Pérdida de costos y tiempo por parte de los profesionales nutricionistas y de los pacientes.
Realización de encuesta nutricional de los pacientes, hábitos alimenticios, factores antropométricos, cálculo de peso según IMC realizados de forma análoga y a papel.
Demora en el proceso para la valoración y creación de planes alimenticios de los pacientes.
4
Falta de estándares y normas para la valoración, creación y personalización de planes de dietas profesionales.
Proceso ineficiente de creación, valoración y elaboración de plan alimenticio personalizado a sus pacientes.
Elaborado: Marlon Espinoza M. Fuente: Marlon Espinoza M.
Delimitación del Problema
Cuadro No.2
Campo Tecnología
Área: Salud Aspecto: Proceso Automatizado
Nutricional Tema: Prototipo de Sistema de
Gestión de Pacientes, Control de la Alimentación y Nutrición y Elaboración de Dietas Personalizadas
Elaborado: Marlon Espinoza M.
Fuente: Marlon Espinoza M.
Formulación del Problema
¿La elaboración de procesos automatizados para el sistema de gestión
de la información nutricional agilitarán el diagnóstico e intervención
oportuna de los problemas de salud pública en el ámbito de la nutrición y
alimentación?
5
Evaluación del Problema
Delimitado: Este proyecto se limitará al desarrollo de las siguientes opciones
dentro del sistema de Nutrición, detallados a continuación:
Registro de datos personales del paciente y búsqueda de los pacientes
registrados en el sistema.
Realización de la evaluación nutricional de forma subjetiva a los
pacientes que me permitirá de forma general conocer su estado
nutricional.
Llevar el registro de antecedentes médicos personales y familiares.
Registro de hábitos alimenticios y actividades realizadas por el paciente.
Visualización y consulta de la Tabla de Composición de alimentos y
suplementos nutricionales con su valor nutricional.
Registro de Análisis Químicos realizados por laboratorios médicos con su
respectiva valoración.
Creación, valoración y personalización de dietas de manera mensual.
Generación de Reporte en PDF de Ficha Medica, diagnóstico y
recomendaciones alimenticias prescritas para el paciente.
Evidente: Cada día de manera creciente la población le está dando la
importancia que merece el conocer los fundamentos de una alimentación
balanceada que ayude a prevenir enfermedades que afecten la salud de la
población.
Relevante: Es fundamental el desarrollo de un sistema de nutrición que sea
confiable, eficiente, mantenible, escalable, automatizado y de fácil utilización
para que el especialista medico pueda brindar sus servicios de asesoría
nutricional a la población de una manera más ágil y oportuna.
6
Factible: Gracias al correcto análisis del problema planteado se puede visualizar
una solución clara, con la implementación de un sistemas adecuados de
nutrición y desarrollado a la medida permitirá mejorar significativamente la
gestión de sus pacientes y de la información proporcionada al especialista,
permitiéndoles brindar un servicio con mayor calidad a la población.
Objetivos
Objetivo General
Implementar un sistema de control alimenticio y nutricional mediante una
aplicación web para automatizar los procesos de gestión de los
pacientes, se faciliten la agilización y elaboración de dietas
personalizadas que controle todos los procesos inherentes del sistema y
brinde información oportuna del estado nutricional de las personas.
Objetivos Específicos
Identificar y presentar información general de los pacientes,
antecedentes patológicos propios y de los familiares médico,
preferencias alimenticias.
Presentar información de análisis clínico realizado en los laboratorios.
Establecer una tabla de composición de alimentos con el detalle de su
aporte nutricional.
Determinar el estado nutricional del Paciente de acuerdo a la
Evaluación Nutricional realizada a los Pacientes,
Elaboración de plan de dieta personalizado de forma mensual.
7
Presentar un informe en Pdf donde se registre información de la
institución, ficha del paciente y descripción de las indicaciones
realizadas por el especialista médico.
Alcances del Problema
Diseñar y desarrollar una herramienta que permitirá mayor agilidad en el
proceso de gestión de pacientes adultos.
Diseñar un módulo que permita al Profesional Nutricionista realizar la
evaluación nutricional subjetiva que les permita determinar de manera
general el estado actual del paciente.
Implementar un módulo que permita registrar las preferencias y hábitos
alimenticios de los pacientes.
Diseñar un módulo donde permita visualizar y realizar búsqueda de la
lista de alimentos y suplementos nutricionales con su composición
nutricional.
Presentación de un módulo para crear, valorar y personalizar dietas
fundamentada bajo los conocimientos de un profesional de este ramo de
la salud.
Permitir a los Operadores del Sistema poder visualizar e imprimir reportes
en PDF que muestre Información General del Paciente, del Estado Actual
del Paciente, del Diagnóstico y las Recomendación o Plan de Dieta a
seguir por el Paciente.
8
Para la implementación de estos módulos se utilizara el IDE de Desarrollo
Netbeans ya que este es un software open source y nos ofrece la posibilidad de
utilizar complementos como Java 7 con el uso del Framework Eclipse Link para
crear aplicaciones robustas y con mayor seguridad.
Para realiza un mejor diseño visual de las interfaces de usuario se agregara el
IDE de Netbeans los componentes HMTL 5, JavaScript, Primefaces.
Para la administración e integridad de la información se utilizara el manejador de
Base de Datos MySQL que es un software de código abierto.
El sistema Web contara con 2 Roles de Usuario: Administrador y Operario del
Sistema que podrán realizar las siguientes funciones:
El Usuario Administrador:
Sera el Usuario encargado de realizar el ingreso o Registro de Usuarios
al Sistema.
Búsqueda, Modificación y Eliminación de Usuarios Existentes.
Visualizar los Pacientes registrados al Sistema.
Podrá Visualizar lista de Alimentos con su composición nutricional.
Ingresar y Modificar Información de Alimentos en la Tabla de
Composición de Alimentos.
El Usuario Operador:
Podrá realizar el Ingreso de Pacientes del Sistema.
Consultar Información del Paciente.
Registrar Antecedentes de Pacientes, de Familiares y Registro de
Enfermedades.
Ingresar y Modificar Información de Hábitos Alimenticios de los
Pacientes.
Realizar la Evaluación Subjetiva a los Pacientes para determinar el
estado Actual del Paciente.
Obtener el estado Actual Nutricional del Paciente.
9
Elaborar un Plan de Dietas Mensual de Acuerdo al Diagnóstico del
Paciente.
Ingreso de Resultados de Examen Químico del Paciente y el Laboratorio
donde se los realizo.
Visualizar Reportes en Pdf de Información del Paciente, Estado Actual y
Recomendaciones (Plan de Dietas) elaborada por el Nutricionista.
Justificación e Importancia
En la actualidad el papel de la alimentación y la nutrición cada vez va
adquiriendo la importancia que siempre se ha merecido, que los esfuerzos
realizados por los especialistas nutricionales han sido mayores para poder
brindar sus servicios de manera óptima a la población.
De acuerdo a la investigación de campo se ha constatado que el personal
del área de nutrición en la mayoría de los Centros Privados y Públicos de
Salud no cuenta con procesos automatizados que les permita a los
profesionales nutricionistas poder brindar a sus pacientes una óptima
intervención y desarrollo de la evaluación del paciente, poder brindarles
un servicio de calidad. En la actualidad el proceso es poco eficiente al no
contar con toda la información a la mano que le permita realizar un
diagnóstico con mayor agilidad y poderles emitir las respectivas
recomendaciones de manera oportuna.
Con el desarrollo de esta herramienta nutricional y elaboración de dietas
personalizas se automatizaran gran parte de los procesos involucrados en
esta área de la salud, se podrán reducir los tiempos de atención a los
pacientes, liberar carga operativa de los especialistas clínicos que brindan
sus servicios a institutos de salud.
10
CAPÍTULO II
MARCO TEÓRICO
Antecedentes del Estudio
En la era de la globalización, el uso de las Tecnologías de Información y
la Comunicación (TICs) y los cambios producidos por la emergencia de la
Internet han causado gran impacto mayormente en las áreas de la salud y
la educación, el uso de estos medios tecnológicos disponibles en la
actualidad ha permitido desarrollar nuevas prácticas que han ayudado a
mejorar las condiciones de vida y la salud de la población.
La mayoría de estos cambios suponen grandes ventajas en los procesos
de atención de salud, sus componentes y actores, algunos de los
componentes de acción son los siguientes:
a).- La eSalud, componente emergente en donde intercede la informática
médica , salud privada y pública en referencia a los servicios de salud y el
mejoramiento de la información entregada a través del Internet y tecnologías
relacionadas.
b).- Fernández (2014) definió a la salud 2.0 como:
Una forma integral de asistencia médica y sanitaria centrada en el
ciudadano o en el individuo; en la que los actores involucrados
(pacientes, profesionales, administradores, proveedores) participan
de forma activa empleando las redes sociales y las herramienta de
la web 2.0, para mejorar la calidad de vida de las
comunidades.(p.25)
11
El Uso de las Tics puede mejorar también las prácticas sanitarias y el
servicio de salud a nivel gerencial, en las siguientes áreas:
a) la investigación aplicada, incluyendo la recolección decisiones basadas
en evidencia,
b) evaluación y control, con el fin de contribuir al mejoramiento continuo
de la calidad de los servicios y
c) comunicación, promoviendo el intercambio de opiniones y
conocimientos tanto nivel de una población como a nivel individual.
En los últimos años se ha masificado el uso del Internet, y de la Web, el
correo electrónico, los chats, la teleconferencia, redes sociales, blogs,
comunicaciones virtuales, cada día existen más personas interesadas en
informarse de los acontecimientos que ocurren en nuestro entorno.
Según la Red Salud Andalucía (2012) menciona:
Existe un número creciente de usuarios de redes sociales que
realizan búsqueda de temas relacionados a la salud con un
porcentaje del 12,8%, existiendo un 36,6% de credibilidad de parte
de los usuarios sobre este medio. En Internet la información
buscada con mayor demanda es sobre las enfermedades (40%);
nutrición, alimentación y estilos de vidas saludables con un 16,8%
y medicamentos con un 16%.)
El uso de las TICs, hoy en día se establecen como una herramienta de
uso esencial en el campo de la salud y la nutrición estableciendo el
desarrollo de las mismas, sobretodo en el campo investigativo ayudando
a establecer un sistema de gestión y desarrollo de la capacitación de
profesionales con mayor preparación con el uso de estos recursos
indispensables y además que los ayuda a mantenerse actualizados
12
dentro de sus especialidades, dando como resultado primordial mejorar la
calidad y el costo de los servicios sanitarios dirigidos a sus pacientes.
Las TICs entonces se convierten en un suministro de recomendaciones
basadas en investigaciones cuyo propósito es brindar información de
apoyo de cómo llegar una vida sana y la habilidad de modificar los
factores sociales, culturales, psicológicos para mejorar la calidad de vida,
además de que ayuda mucho a la difusión de la educación nutricional, en
donde se pueden utilizar los distintos medios como la televisión, el
internet, los videojuegos aparte de entretener se puede convertir como
instrumento de información y formación ya que este provee un entorno
que podría favorecer el aprendizaje.
En la sociedad existe la necesidad cada día en mayor escala de
mantenerse informado de los aspectos necesarios para tener una
alimentación balanceada, del aporte nutricional de cada alimento y que
tipo de alimento necesitamos consumir para mantenernos en buena
condición de salud.
Las TICs han revolucionado el enfoque actual que se tenía sobre la
innovación tecnológica, brindando más posibilidades de conocimientos,
realización de más investigaciones, y un mejor alcance por decirlo así en
cuanto se han convertido en las nuevas ventanas de la salud y por ende
su vínculo con la nutrición.
13
Fundamentación Teórica
Nutrición
La Organización Mundial de la Salud (OMS) menciona textualmente: “La
nutrición es la ingesta de alimentos en relación con las necesidades
dietéticas del organismo. Una buena nutrición (una dieta suficiente y
equilibrada combinada con el ejercicio físico regular) es un elemento
fundamental de la buena salud.
Una mala nutrición puede reducir la inmunidad, aumentar la vulnerabilidad
a las enfermedades, alterar el desarrollo físico y mental, y reducir la
productividad.”
Valoración Nutricional
Es el proceso que evalúa el crecimiento y el desarrollo adecuado -
somático, social y psicológico, evitando los estados carenciales. Las
necesidades varían en función de la etapa del desarrollo, metabolismo y
diferencias genéticas de cada individuo.
A continuación, se describen los siguientes pasos metodológicos:
1) Historia Clínica y encuesta dietética.
2) Estudio de la Composición Corporal.
Graso:
Proteico: muscular y visceral
Vitamínico y Mineral
14
3) Estudios Funcionales
Fuerza Muscular
Inmunidad
Función Digestiva
Sistema
Este término es de uso universal. Estamos hablando de sistema bancario,
sistema informático, sistema operativo, sistema solar, etc., como vemos
se le da diferentes usos a la palabra sistema, aunque de alguna manera,
nos está dando a entender que un sistema en si es la suma de sus
componentes.
En este capítulo se explicara acerca del sistema que incluye el uso de
computadoras y que nos ha ayudado en muchas actividades, como
comunicarnos, realizar cálculos, navegar en la web, etc. Una definición útil
acerca de sistema es: “Un sistema es una colección de componentes
interrelacionados que trabajan conjuntamente para cumplir algún
objetivo”(Ian Somerville, 2005,pag. 20).
En la historia de los sistemas se han encontrado diversas aplicaciones en
distintas áreas como medicina, educativa, contabilidad, finanzas,
comunicaciones, seguridad, entre otros. Actualmente se cuenta con
muchos sistemas listos para su uso gratuitos o software que tienen su
costo por instalarlos o por su uso, software utilizado en la actualidad por
empresas públicas y privadas que ayudan a mejorar y optimizar sus
procesos.
15
Depende el uso que se requiere del sistema, se determinara si se
necesita un sistema desarrollado a la medida, este se necesitaría en el
caso de una empresa que requiere de un sistema totalmente dedicado a
sus operaciones, entonces para su realización se necesita identificar sus
requerimientos y actividades que impulsan el desarrollo del negocio, la
tecnología a usar y los servicios que ofrece.
Ciclo de Vida de Desarrollo de Sistemas (SDLC).-
Grafico 1
Etapas del SDLC
Elaboración: Marlon Espinoza M.
Fuente: Universidad de Granada, Departamento de Ciencias de la
Computación
En este grafico se muestra las etapas o ciclo de vida que se deben
cumplir para la construcción e implementación con éxito de un sistema
informático. Nos brinda una perspectiva, una filosofía que permiten al
desarrollador, planear, analizar, evaluar el diseño del sistema y las
distintas etapas que se deben seguir para obtener un producto software
de calidad.
Estas etapas del SDLC son las siguientes:
16
Planeación.- Este es el proceso inicial del ciclo de vida del sistema
consiste primordialmente en:
Realizar un estudio de viabilidad
Análisis de riesgo.
Planificación temporal
Asignación de recursos
Estudiar y evaluar alternativas referentes a la problemática actual.
En el estudio de viabilidad además se puede tratar además:
Se define las necesidades de Hardware y Software con los que se
va a trabajar en el sistema, tipo de dispositivos, sistemas
operativos, mono o multiusuario, base de datos, lenguajes de
programación.
Estimación de costes del sistema, si el costo justifica el impacto del
problema.
Costo de Operación del Sistema.- Recursos Administrativos,
Técnico, humano y Financieros que se necesiten.
Análisis.- En esta etapa de realiza un estudio con mayor profundidad de
lo planificado anteriormente, se la considera como la clarificación de las
necesidades que tienen los usuarios finales acerca del sistema, en esta
etapa se licitan los requerimientos funcionales y no funcionales que tiene
los usuarios. Esta etapa se la considera como una auditoria completa a
las necesidades de los usuarios, en donde se determinan las áreas
funcionales del sistema, las oportunidades, problemas reales y
potenciales que se pueden presentar.
17
Diseño.- En esta etapa se determina como funcionara el sistema de
forma general sin entrar a detalle. Se realiza el diseño con toda la
información levantada en la fase anterior, se realiza el diseño de base de
datos convirtiendo los requerimientos en entidades; el diseño de la
aplicación que consiste en realizar el diseño de las interfaces; formatos,
informes de entrada y salida de datos.
En esta etapa se realiza la codificación del sistema y las pruebas
correspondiente verificando que el software realice correctamente las
tareas especificadas en los requerimientos.
Implementación.- En esta fase se realiza la creación e integración de
todos los recursos necesarios y predefinidos para que el sistema
funcione, se realiza la respectiva instalación de hardware, software y el
sistema.
Mantenimiento.- En esta etapa los usuarios que han utilizado el sistema,
comienzan a detectar nuevos errores o empezar a surgir nuevos
requerimientos de acuerdo a las funcionalidades o manipulación del
usuario, que se necesita darles soporte con el fin de mejorar el software, a
dichos cambios se los conoce como mantenimiento. Existen 3 tipos de
mantenimientos, estos son:
Correctivo: Mantenimiento realizado en respuesta a errores de
aplicación.
Adaptivo: Mantenimiento realizado por cambios en la lógica de
negocio.
Perfectivo: Mantenimiento realiza para mejorar el sistema.
18
Cabe recalcar que en la fase de Diseño para la construcción de un
software se requiere conocer las especificaciones técnicas con las que se
creara el sistema, conocer en que lenguaje de programación se
desarrollara y bajo que estructura o arquitectura será desarrollado.
Arquitectura de Aplicaciones
Cuando hablamos de arquitectura se hace referencia a dos aspectos: la
lógica que trata de la carga y estructura del procesamiento de datos y a la
física, donde interviene el hardware y su configuración.
En la arquitectura física, se encuentran los sistemas centralizados, los
mismos se caracterizaron por terminales, con la mínima capacidad de
procesamiento, que accedían a consumir los servicios de un gran
ordenador central con grandes prestaciones y capacidad de
procesamiento (servidor). Esta arquitectura demostró poca flexibilidad y
una alta dependencia a los sistemas de comunicación.
En el mismo tipo de arquitectura, se encuentran los sistemas distribuidos,
estos sistemas son conformados por varios servidores, los cuales ofrecen
prestaciones diferentes, almacenamiento de datos, almacenamiento de
aplicaciones, gestión y control de la red que mediante su integración,
redes y comunicaciones, componen el sistema en su totalidad.
Esta arquitectura muestra más flexibilidad y menor tiempo de respuesta a
las necesidades de información pero, son más complejos a la hora de
gestionar, su eficiencia depende también mucho del grado de integración
y del hardware que se posea.
19
Con respecto a la arquitectura lógica y de procesamiento existen dos tipos
de sistemas: los de arquitectura de dos capas y los de tres capas. La
capa se refiere a la distribución de las funciones básicas de las
aplicaciones:
Gestión de datos
Lógica de proceso
Presentación al usuario
Cuando estas funciones básicas se ejecuten en un solo computador
podemos decir que la arquitectura de la aplicación es de una capa,
cuando dos de las funciones básicas o parte de ellas se ejecutan por dos
equipos distintos, estamos hablando de una aplicación de dos capas.
En el transcurso del desarrollo y descubrimiento de nuevas formas y
arquitecturas, se optó por los sistemas cliente/servidor, son los que, en
su arquitectura, posee uno o varios servidores que ejecutan las órdenes
de los equipos clientes o estaciones de trabajo, teniendo en el equipo
cliente las fuentes de la aplicación.
Grafico No. 2
Arquitectura de Aplicaciones de 3 Niveles
Elaboración: Marlon Espinoza M.
Fuente: Universidad de Granada, Departamento de Ciencias de la Computación
20
Aplicación Web
Gracias al Internet, las aplicaciones Web han tenido un gran auge, ya que
se ha podido compartir servicios en la nube que nos ha permitido la
migración, comunicación, alta disponibilidad de recursos y
comercialización con gran rapidez, directas y a un bajo costo que no se
consigue con aplicaciones cliente-servidor.
A continuación, se detallan las ventajas que nos brindan el uso de
aplicaciones web:
No se necesita instalar software especial en los clientes, solo se
necesita de disponer de un navegador web.
Bajo coste al momento de actualizar los equipos con una nueva
versión, las actualizaciones se la realizan en el servidor y
automáticamente la visualizan los usuarios.
Acceso a la última versión, se evita que un equipo tenga una
versión diferente y desactualizada, el tener distintas versiones de la
aplicación puede llegar a ocasionar inconsistencia de datos o
pérdida de alguna funcionalidad.
La información se encuentra centralizada, tanto la lógica del
negocio como los datos, facilitando el acceso al sistema.
Es más fácil poder establecer políticas de copias de seguridad
centralizadas, la empresa se ve menos vulnerable ante cualquier
catástrofe que suceda debido a que los datos se encuentran en un lugar
diferente de los puestos de trabajo.
21
Movilidad, cualquier usuario dentro de un red de la empresa o a
través de un servidor web de Internet, usando un portátil o pc con
conexión a Internet podría acceder a la aplicación.
Reducción de costos en los puestos de clientes, debido a que las
paginas se ofrecen desde el servidor web (en donde se ejecuta la
mayoría de procesos y de la lógica de negocio), el equipo de
trabajo queda relegado solo en visualizar los resultados y
formularios evitando la adquisición de hardware potentes en los
puestos de trabajo.
Con la evolución del Internet, los sistemas han avanzado y con ello sus
aplicaciones, con esto se han conseguido sistemas altamente distribuidos.
Uno de las características esenciales de los sistemas web es que
permiten a múltiples usuarios el acceso de forma concurrente y conectada
simultáneamente.
Debemos que recalcar que no todo está en la web, hay sistemas que
necesitan ejecutarse estrictamente desde su propio equipo con el fin de
aprovechar el poder de su alcance, siguen siendo utilizadas por Sistemas
CAD, Utilitarios de Oficina, CAM, aplicaciones gráficas, juegos o el mismo
Sistema Operativo. Pero la función de estos servicios de computadores,
las aplicaciones de escritorio y la extensión de las facultades de
comunicación gracias a la web que mediante el Internet, que es una
óptima plataforma que sirve de infraestructura de usuarios, ya sea
empresarial, institucional o persona.
22
Grafico No. 3
Aplicaciones Web
Elaborado: Marlon Espinoza M.
Fuente: TechNet Microsoft
Evolución de las Aplicaciones Web
Las aplicaciones Web a través de los tiempos han ido evolucionado hacia
un ambiente inter-organizacional donde surgen nuevos requisitos que
corresponden emprender un proceso de desarrollo de aplicaciones.
“Actualmente las cinco generaciones conviven, aunque ya casi nadie crea
sitios web que se clasifiquen en las dos primeras generaciones”(Luján
Mora, 2002, pág. 25)
23
Primera Generación
La Primera generación o Generación de Contenido Estático abarca el nacimiento
de la Web en el año de 1992, esta primera generación se vio limitada por
muchos factores tecnológicos: como fueron ancho de banda limitado (módems
de 2.4 Kbps), navegadores poco desarrollados, monitores monocromos, etc.
Entre las principales características de estas páginas, tenemos:
Paginas solo cargadas en texto, con pocos recursos multimedia.
Navegación poco estructurada, con falta de coherencia.
La información no es organizada en varias páginas, se muestra a lo
largo toda la información, que parece que nunca se acabaran.
Visualización de páginas correctamente cargadas, pero son
aburridas y pocos legibles.
Pocas empresas poseen sitios web, al principio solo se
presentaban contenidos web educativos o científico.
Grafico No. 4
Página Web Primera Generación
Elaboración: Marlon Espinoza M.
Fuente: Sergio Lujan Mora
24
Segunda Generación
La Segunda Generación o Generación de Contenido Dinámico se
extiende desde 1995, se diferencia con la generación anterior porque esta
incorpora elementos gráficos de forma masiva en la web.
Entre sus principales características, tenemos:
En sus páginas web se apoyan del uso de otras tecnologías para la
generación de contenido dinámico como (CGIs, JSP, PHP, ASP,
ASP.NET), entre otros.
Permite una mayor interacción con el usuario en donde ya no solo
se muestra página de solo lectura, está ya permite realizar
preguntas y el sistema presenta respuestas de acuerdo a criterios
ingresados en los formularios.
Se da mayor vistosidad a las páginas, se emplea imágenes con
excesivos colores, pero el sistema tiende a cargarlas con lentitud.
Grafico No. 5
Página Web Segunda Generación
Elaboración: Marlon Espinoza M.
Fuente: Sergio Lujan Mora
25
Tercera Generación
Esta generación aparece a mediados de 1996. Las paginas
pertenecientes a esta generación soy muy comunes en la actualidad.
Entre las principales características, tenemos:
Mejora en el tiempo de carga de la página, los creadores se
centran más en el contenido y no en la presentación, se minimizan
el tiempo de carga gracias al uso de Cascada Style Sheets (CSS) y
optimización de Código Html.
No solo hay una mejor comunicación entre aplicación-usuario-
aplicación, además ayuda a que se pueden comunicar entre
usuarios donde el usuario participa en la creación de contenidos en
la web. Ideas como los blogs, los wikis han cambiado la forma con
la que el usuario interactuaba sobre la red.
En esta generación ya existe una planificación: los diseñadores
invierten en analizar los distintos caminos que posiblemente tome
un usuario al visitar la página web, y en función de ellos crean el
sitio web.
Mejor presentación del sitio web, existe un control en que las
ventanas quepan en el área de la ventana, se simplifica la forma de
navegación.
26
Grafico No. 6
Página Web Tercera Generación
Elaboración: Marlon Espinoza M.
Fuente: Sergio Lujan Mora
Cuarta Generación
La cuarta generación se comienza a desarrollar a fondo en 1999 y usada también en la actualidad.
Entre sus principales características tenemos:
Se vuelven a emplear en exceso los recursos.
Las páginas se muestran con exceso de información.
HTML evoluciona, se usó con mayor énfasis tecnologías como
CSS y aparecen nuevas tecnologías (Dinamic Html).
Aparecen nuevas tecnologías como Macromedia Flash.
Equipo interdisciplinar (informático, experto en contenidos,
diseñador gráfico) realizan el diseño de las aplicaciones web
Existe un mayor aumento de banda permitiendo streaming de video
y audio en tiempo real.
El objetivo principal de crear un sitio web es crear una experiencia
completa desde que el visitante ingresa a la primera página hasta
que abandona el sitio.
27
Grafico No. 7
Página Web Cuarta Generación
Elaboración: Marlon Espinoza M.
Fuente: Sergio Lujan Mora
Quinta Generación
Esta generación es considera como la generación de Sitios web de Paginas de Televisión TV IP, se presentó durante los periodos comprendidos entre 2005 y 2008.
28
Grafico No. 8
Página Web Quinta Generación
Elaboración: Marlon Espinoza M.
Fuente: Sergio Lujan Mora
En la actualidad, la web vive un proceso en que los usuarios crean
contenidos, interactúan con grandes aplicaciones para hacer crecer a
grandes sitios conocidos como Facebook, Twitter, Flickr, entre otros.
Sitios que necesitan de sus usuarios para crear sus propias páginas
webs, dichos sitios forman parte de la web 2.0.
29
Fundamentación Legal
La Constitución de la República del Ecuador manifiesta:
Art.32.- “La salud es un derecho que garantiza el Estado, cuya
realización se vincula al ejercicio de otros derechos, entre ellos el derecho
al agua, la alimentación, la educación, la cultura física, el trabajo, la
seguridad social, los ambientes sanos y otros que sustentan el buen
vivir”.
Art. 281, numerales 7 y 1.- señalan que, “la soberanía alimentaria
constituye un objetivo estratégico y una obligación del Estado para
garantizar que las personas, comunidades, pueblos y nacionalidades
alcancen la autosuficiencia de alimentos sanos, y culturalmente
apropiados en forma permanente”. Y que para ello será responsabilidad
del Estado: 7. Precautelar que los animales destinados a la alimentación
humana estén sanos y sean criados en un entorno saludable, 10.
Fortalecer el desarrollo de organizaciones y redes de productores y de
consumidores, así como las de comercialización y distribución de
alimentos que promuevan la equidad entre espacios rurales y urbanos,
13. Prevenir y proteger a la población del consumo de alimentos
contaminados o que pongan en riesgo su salud o que la ciencia tenga
incertidumbre sobre sus efectos.
30
LEY ORGÁNICA DE LA SALUD
Art. 4.- La autoridad sanitaria nacional es el Ministerio de Salud Pública,
entidad a la que corresponde el ejercicio de las funciones de rectoría en
salud; así como la responsabilidad de la aplicación, control y vigilancia del
cumplimiento de esta Ley; y, las normas que dicte para su plena vigencia
serán obligatorias.
Ley de Propiedad Intelectual
Sección IV
Disposiciones Especiales sobre ciertas obras
Parágrafo Primero
De los Programas de Ordenador
Art. 28.- Los programas de ordenador se consideran obras literarias y se
protegen como tales. Dicha protección se otorga independientemente de
que hayan sido incorporados en un ordenador y cualquiera sea la forma
en que estén expresados, ya sea en forma legible por el hombre (código
fuente) o en forma legible por máquina (código objeto), ya sean
programas operativos y programas aplicativos, incluyendo diagramas de
flujo, planos, manuales de uso, y en general, aquellos elementos que
conformen la estructura, secuencia y organización del programa
Art. 29.- Es titular de un programa de ordenador, el productor, esto es la
persona natural o jurídica que toma la iniciativa y responsabilidad de la
realización de la obra. Se considerará titular, salvo prueba en contrario, a
la persona cuyo nombre conste en la obra o sus copias de la forma usual.
31
Dicho titular está además legitimado para ejercer en nombre propio los
derechos morales sobre la obra, incluyendo la facultad para decidir sobre
su divulgación.
El productor tendrá el derecho exclusivo de realizar, autorizar o prohibir la
realización de modificaciones o versiones sucesivas del programa, y de
programas derivados del mismo.
Las disposiciones del presente artículo podrán ser modificadas mediante
acuerdo entre los autores y el productor.
Según la Constitución de la República del Ecuador
Capítulo Sexto
Derechos de libertad
Art. 66.- Se reconoce y garantizará a las personas:
En especial el numeral 19 que indica:
El derecho a la protección de datos de carácter personal, que incluye el
acceso y la decisión sobre información y datos de este carácter, así como
su correspondiente protección. La recolección, archivo, procesamiento,
distribución o difusión de estos datos de información requerirán la
autorización del titular y el mandato de la ley”.
32
Sección octava
Ciencia, tecnología, innovación y saberes ancestrales
Art. 385.- El sistema nacional de ciencia, tecnología, innovación y
saberes ancestrales, en el marco del respeto al ambiente, la naturaleza, la
vida, las culturas y la soberanía, tendrá como finalidad:
1. Generar, adaptar y difundir conocimientos científicos y tecnológicos.
2. Recuperar, fortalecer y potenciar los saberes ancestrales.
3. Desarrollar tecnologías e innovaciones que impulsen la producción
nacional, eleven la eficiencia y productividad, mejoren la calidad de vida y
contribuyan a la realización del buen vivir.
Hipótesis Preguntas a Contestarse
Con este proyecto se pretende que los profesionales especialistas en esta
área de la Salud obtengan información fidedigna de los elementos que
constituyen dicho sistema, con la entrega de esta solución informática los
especialistas tendrán disponible de una herramienta que les permita
consultar información de acuerdo a los requerimientos que se soliciten.
Este proyecto se considera factible y mejorara notablemente la
organización al momento de asesorar nutricionalmente al paciente, tener
información real de los grupos de alimentos y a cada uno de los alimentos
que se consumen en la actualidad, de la historia clínica de cada paciente,
del registro de sus hábitos alimenticios, además permitirá la generación
de reportes que le permita plasmar sus recomendaciones y la elaboración
de planes alimenticios personalizados.
33
Variables de la Investigación
Variables Independientes
Sistema Informático para la Gestión de Pacientes, Control de la
Alimentación y Nutrición y Elaboración de Dietas Personalizadas.
Se implementara un Sistema que facilite la administración de los
pacientes, que ayude al especialista medico a elaborar y asesorar
nutricionalmente a la población y a la elaboración de planes alimenticios a
sus pacientes.
Variables Dependientes
Software Open Source.-
Se utilizara herramientas open source para la implementación del
Sistema de Gestión de Pacientes, Control de la Alimentación y Nutrición y
Elaboración de Dietas Personalizadas.
34
Definiciones Conceptuales
Antropometría.- Es una técnica más utilizada en la Evaluación nutricional.
Estudio de las proporciones y las medidas del cuerpo humano.
Analítico.- Detalle de exámenes de laboratorio realizados en base a una
muestra que pueden ser de sangre, orina, heces, de saliva.
Evaluación Subjetiva.- Es una técnica utilizada para evaluar el estado
nutricional y examinación física de manera rápida y confiable a los
pacientes.
Esta evaluación no se basa en datos bioquímicos ni antropométricos.
Ingesta.- Es la acción de introducir alimento, bebida u otra cosa en la
boca para digerirlo.
Índice de Masa Corporal (IMC).- Es el índice de peso de una persona en
relación a su estatura. Este es un método muy práctico utilizado para
determinar el grado de riesgos asociado con la obesidad.
Análisis Bioquímico.- Es un análisis químico realizado a la sangre
utilizados para ayudar al diagnóstico de enfermedades o como control de
salud. Este es el análisis más frecuentemente utilizado.
Análisis de Orina.- Es una medición por métodos físicos o químicos para
medir diferentes parámetros químicos y microscópicos para diagnosticar
la presencia de infecciones urinarias.
Java.- Java es un lenguaje de programación de alto nivel en la que se
puede realizar aplicaciones cliente/servidor y web.
Java en sus inicios como lenguaje de programación fue con applets (los applets
son programas incorporados en las páginas web, ejecutados desde el lado del
35
cliente), El desarrollo de aplicaciones se fue extendiendo cada día más,
gracias a las ventajas y beneficios que mostraba Java.
Java se introdujo en las plataformas web con los Servlets, que fueron
usados para crear contenido web.
Aunque Java era un lenguaje que ayudaba al desarrollo de aplicaciones
web, se fue evidenciando que los desarrolladores de aplicaciones JAVA
no producían sistemas con interfaces atractivas al usuario, para el
desarrollo de aplicaciones web, disponían de especialistas en HTML y UI,
quienes elaboraban y pasaban el código cuidadosamente a los
desarrolladores para integrar el código Java con lo desarrollado en HTML
y UI.
Gracias al uso de plantillas se pudo colaborar con la separación del
contenido dinámico de la UI, gracias a esto se llevó a cabo el desarrollo
de más tecnologías que impulsaron la creación de framework más
avanzados y personalizados.
Grafico No. 9
Manejo de Peticiones web Mediante Servlets
Elaborado: Marlon Espinoza M.
Fuente: https://docs.oracle.com/cd/E19575-01/819-3669/bnadp/index.html
36
En este grafico podemos visualizar la interacción de la aplicación web en
el momento que un cliente realiza una petición:
Paso 1.- El cliente web (Desde el Navegador) genera una petición HTTP (Http
Request) que es enviada al servidor web.
Paso 2.- El servidor web que en esta caso trabaja con Servlets de Java y
páginas Java Faces convierte dicha petición en un objeto (HttpServletRequest).
Paso 3,4 y 5.-Con este objeto creado HttpServletRequest se realiza las
interacciones necesarias con los componentes web y lo componentes JavaBean,
además de interactuar con la base de Datos para generar el contenido dinámico.
Paso 6.- Con dicho contenido dinámico se crea un objeto HttpServletResponse,
el mismo que luego se lo convierte a objeto HttpResponse con la que el cliente
podrá visualizar la respuesta en el navegador.
Servlet.- Es una tecnología que nos permite crear aplicaciones web
dinámicas, es decir permite la interacción del usuario con la aplicación
como hacer consultas insertar, eliminar datos, etc.
Son módulos escritos en Java que permiten realizar peticiones al servidor
mediante el protocolo HTTP. Los Servlets reciben peticiones desde un
navegador web, las procesan y devuelven una respuesta al navegador.
Framework.- Es la integración de componentes que facilitan el desarrollo
de aplicaciones como bibliotecas, plantillas, soporte al programa y más.
Open Source.- En el ámbito informático se traduce como Código Abierto o
Fuente Abierta, son programas informáticos que permiten el acceso a su
código de programación.
37
JDBC: Java Database Connectivity es un API que permite la interacción y
manipulación de tablas y datos de la base de datos desde el entorno Java.
Requiere de sus configuraciones específicas, librerías (Java Sql), JAR,
para su ejecución, además de un conector, este conector o driver varía de
acuerdo a la base de datos instalados.
Jar: Java Archives, son archivos empaquetados que portan el estándar y
las funcionalidades disponibles para las aplicaciones Java. Estos pueden
ser predefinidos por el lenguaje de programación o bien el programador
puede crear sus propios JAR, en los que se puede incluir: clases Java,
interfaces, archivos de datos, audio, imagen, etc.
Patrón: En una arquitectura orientada a objetos bien estructurada está
llena de patrones. La calidad de un sistema orientado a objetos se mide
por la atención que los diseñadores han prestado a las colaboraciones
entre sus objetos. Los patrones conducen a arquitecturas más pequeñas,
más simples y más comprensibles".
Patrón MVC (Modelo-Vista-Controlador): Es un patrón de arquitectura
de las aplicaciones software. Permite dividir las capas o funciones básicas
de una aplicación web, sus datos, la interfaz gráfica de usuario (GUI), la
lógica de negocio y de control de las aplicaciones informáticas en tres
elementos fundamentales: Modelo, Vista y Controlador. (Prestashop 5
estrellas).
Modelo.- Es la capa donde se fija la forma de operar la información
almacenada en la BD mediante la lógica del negocio establecida.
Vista: Es la capa donde se presenta el diseño de las aplicaciones
web, comúnmente se refiere a la interfaz gráfica adecuada dirigida
al usuario final.
38
Controlador: Es el conector principal entre la vista y el modelo, es
la capa que dirige todas las acciones y funcionalidades de las
aplicaciones. Esta capa normalmente responde a todas las
peticiones realizadas por el usuario mediante el uso de la Vista y
de la misma forma, las respuesta a dichas peticiones se devuelven
a la Vista.
Java Bean: Son un modelo de componentes creado por Sun
Microsystems para la construcción de aplicaciones en java. Son usados
para encapsular varios objetos en un único objeto con la finalidad de usar
un solo objeto en lugar de varios. En Persistencias debe implementarse la
interfaz Serializable.
Serializable es una interfaz que permite la serialización de objetos con la
finalidad de convertir un objeto en una secuencia de bytes, ese objeto se
pueda enviar a través de la red, guardarlo en un fichero y reconstruirlo
nuevamente al otro lado de la red.
Para acceder a las propiedades del JavaBean, se deben implementar los
métodos:
Get: permite obtener el valor de la propiedad.
Set: permite cambiar el valor de la propiedad.
Pojo: (Plain Old Java Object), este término no hace más que referencias
a las clases Java simples, que no dependen de ningún framework. Son
parecidas a los JavaBean en cuanto a su estructura, atributos, métodos,
eventos, declaración de gets y sets, con la única diferencia que las clases
POJO no extienden ni implementan de otras clases diferentes.
39
Html: siglas de HiperText Markup Language,(Lenguaje de marcados de
hipertexto), hace referencia al lenguaje de marcado para la elaboración de
páginas web. Es un estándar que sirve de referencia para la construcción
de páginas web en sus diferentes versiones, define una estructura básica
y un código en HTML para la definición de contenidos en páginas web,
como, texto, videos, imágenes y otros.
XHtml: siglas Extensible HiperText Markup Language, es básicamente
HTML expresado como XML, dicho lenguaje es soportado por la mayoría
de los navegadores, tecnologías y dispositivos.
Xml: sus siglas en ingles Extensible Markup Language (“Lenguaje de
marcas extensibles”) se usa como estándar para el intercambio de
información en diversas aplicaciones como base de datos, hojas de
cálculo, editores de texto y en múltiples plataformas, sistemas operativos,
integración de sistemas, servidores web, servidores webs entre otros.
Jsf: Java Server Faces es una tecnología y framework para aplicaciones
basadas en Java web que nos ayuda a hacer más fácil el desarrollo de
interfaces de usuarios en aplicaciones de Java EE, hace uso de la
Tecnología Java Server Pages (JSP) para realizar el despliegue de las
paginas, pero también se puede integrar con otras tecnologías como XUL
(Lenguaje basado en XML para la interfaz de usuario).
Primefaces: Es una librería de componentes para JSF de código abierto
que cuenta con un conjunto de componentes enriquecidos que facilitan la
creación de páginas web, incluye una variedad de componentes gráficos
como grillas, paneles, diálogos, botones, efectos, temas, junto a eventos
AJAX que nos aportan escalabilidad, sofisticación y flexibilidad en
nuestras aplicaciones.
40
MySql: Antes de tratar el tema de Mysql debemos de recatar por qué la
importancia de almacenamiento de datos.
Si bien una base de datos está compuesta por listas y tablas, similares a
las que se hacen en Excel, el Por qué no usar Excel para crear base de
datos, radica en que Excel no cuenta con la capacidad de relacionar los
datos almacenados en ella, he ahí la importancia del uso de un gestor de
Base de Datos como Mysql que cuentan con la capacidad de relacionar
nuestra base de datos que nos ayudara entender como los elementos
registrados se conectan los unos con los otros, a mantener la integridad
de los datos así como su seguridad, otras ventajas que tiene es la
redundancia de datos y también la velocidad al momento de procesar y
facilidad de implementación en diferentes lenguajes de programación.
Mysql es uno de los gestores de base de datos muy potente y popular hoy
en día por debajo de Sql Server y Oracle, utilizada en sitios pequeños y
principiantes, así como también es usada por industrias, gobiernos para
almacenar la información de sus usuarios.
Se usara Mysql como nuestro manejador de base de datos, ya que sus
versiones de productos son open source y nos brinda estabilidad y
seguridad a la hora de desarrollar nuestra aplicación.
MySQL es un sistema de administración de bases de datos para bases de
datos relacionales. Así, MySQL no es más que una aplicación que permite
gestionar archivos llamados de bases de datos.
Existen muchos tipos de bases de datos, desde un simple archivo hasta
sistemas relacionales orientados a objetos. MySQL, como base de datos
relacional, utiliza múltiples tablas para almacenar y organizar la
41
información. MySQL fue escrito en C y C++ y destaca por su gran
adaptación a diferentes entornos de desarrollo, permitiendo su
interactuación con los lenguajes de programación más utilizados como PHP,
Perl y Java y su integración en distintos sistemas operativos.
También es muy destacable, la condición de open source de MySQL, que
hace que su utilización sea gratuita e incluso se pueda modificar con total
libertad, pudiendo descargar su código fuente. Esto ha favorecido muy
positivamente en su desarrollo y continuas actualizaciones, para hacer de
MySQL una de las herramientas más utilizadas por los programadores
orientados a Internet.
Persistencia.- La persistencia o el almacenamiento permanente, es una
de las necesidades básicas que tienen hoy en la actualidad los sistemas
de información de cualquier tipo. La forma de acceder a las base de datos
ha ido cambiando, antes se realizaban consultas directas a la base de
datos, después se propuso trabajar con objetos, pero había un
inconveniente que las bases de datos tradicionales no admitían esta
opción.
Debido a esta situación, aparecieron los motores de persistencia, cuya
función principal es ser una especie de traductor entre los dos formatos
de datos: de registros a objetos y viceversa. Persistir objetos Java en una
base de datos relacional implica en serializar un objeto Java en una base
de Datos de estructura tabular, lo esencial de realizar el mapeo de objetos
ayuda a optimizar la velocidad y la eficiencia de la base de Datos.
La persistencia debe tener 4 estados diferentes, los cuales son:
Transient.- Un objeto recién creado que no ha sido vinculado por
el gestor de persistencia.
42
Persistent.- Este objeto es enlazado con la sesión, por lo tanto
todos los objetos son persistentes.
Detached.- Este objeto permanece en memoria después de que se
haya terminado la sesión, existente en Java y la BDD.
Removed.- Se marca este objeto para eliminarlo de la BDD: existe
en Java y se borrara en la BDD al terminar la Sesión.
Entidad.- Es un objeto de dominio de persistencia, normalmente suele
representa una tabla en el modelo de datos relacional y cada instancia de
esta corresponde a un registro de esa tabla.
El estado de persistencia de una entidad es representada a través de
campos persistentes o de propiedades persistentes, dichos campos
utilizan anotaciones para el mapeo de estos objetos en el modelo de
BDD. Dichos estados pueden ser accesibles a través de variables de
instancia de la entidad o a través de las propiedades de estilo JavaBean.
Oracle Eclipse Link.- Es un framework ORM (Mapeo de Objeto
Relacional) utilizado en ambientes Java, liderado por Oracle, bajo la
administración de la Fundación Eclipse. Proporciona un marco extensible
que permite a los desarrolladores de Java interactuar con servicios,
incluyendo base de datos, web services, mapeo de objetos XML (OXM) y
los Sistemas Empresariales de Información (EIS).Eclipse Link apoya una
serie de norma de persistencias, como:
Java Persistence Api (JPA)
Java Architecture for XML Binding (JAXB)
Java Connector Architecture (JCA)
Service Data Objects (SDO).
43
Jpa.- Es un framework del lenguaje de programación Java que
proporciona un modelo de persistencia POJO para el mapeo objeto-
relacional (es decir la relación entre entidades java y entidades de base
de datos), maneja base de datos relacionales, es utilizada en aplicaciones
web como también en aplicaciones cliente.
JPA resulta de la combinación de conceptos y de ideas de los principales
Framework de persistencia como Hibérnate, TopLink, Java Data Objects
(JDO).
Ejb.- Enterprise Java Bean son una de las API que forman parte del
estándar de construcción de aplicaciones empresariales J2EE de Oracle
Corporation.
Ayuda al programador concentrarse en la lógica de negocios y no en la
persistencia, seguridades, transacciones, accesos, etc., a diferencia de
los Java Bean estos no trabajan en ambientes distribuidos porque los
Java Bean no soportan invocación remota.
44
CAPITULO III
PROPUESTA TECNOLOGICA
Para la búsqueda, análisis y elaboración de la presente propuesta se
utilizó la modalidad de investigación de campo.
A través de esta investigación de se pudo analizar, indagar , comparar y
obtener conclusiones de las diferentes perspectivas que poseen los
diferentes involucrados en esta problemática, como son los profesionales
de esta área de la salud (Nutrición y Dietética), pacientes, Autoridades de
la Salud y la sociedad en general.
Luego de haber realizado el estudio y una vez obtenido los resultados se
analizaran la realidad actual presentada al problema planteado, nos
permita entregar un proceso automatizado y entrega de información digital
a todos los interesados en esta rama de la Salud.
Análisis de Factibilidad
Esta solución entregada ayudara a los profesionales de la salud
especializados en la nutrición y dietética una herramienta de apoyo que le
permitirá brindar un servicio con mayor agilidad a sus pacientes, entrega
de información digitalizada del estado nutricional de los pacientes y las
recomendaciones alimenticias que proponga el especialista.
45
Factibilidad Operacional
Para determinar si el sistema Web Nutricional propuesto tiene viabilidad
operativa, se deben considerar algunos aspectos como:
Al analizar la problemática planteada, se llega a la conclusión que el
portal web es funcional para llevar un proceso automatizado en el área
nutricional de los Centros de Salud; modernizando los servicios prestados
a los usuarios utilizando tecnología más moderna y adecuada.
Se deberán aplicar las debidas actualizaciones, modernización e
implantación de mejoras que se le puedan realizar al aplicativo web.
Se puede determinar que es factible operativamente, porque todo en
general muestra disponibilidad completa para la ejecución del proyecto.
Factibilidad Técnica
En este apartado se analizara lo que se requiere en cuanto a hardware y
software para el desarrollo del portal web.
Para determinar si la solución es factible técnicamente se debe analizar:
Tecnología y Solución propuesta
Disposición de la Tecnología
Conocimientos técnicos
a) Tecnología y Solución propuesta.-
Para el desarrollo del portal con éxito se requiere:
Software:
Las tecnologías de software necesarias para el desarrollo del aplicativo
web, se dividen en las siguientes áreas:
46
Sistema Operativo
Desarrollo
Base de Datos
Para cada área presentada se presenta alternativas disponibles en el mercado
actual. A continuación de detalla en la siguiente tabla sobre cada disponibilidad y
tipo de software:
Cuadro No.3
Tipos de Software y Disponibilidad en el mercado
Área Alternativas Disponibilidad
Sistema Operativo Windows 7 Software Comercial
Windows 8 Software Comercial
Desarrollo Netbeans Software Libre
JDK 1.7 en adelante
(Java Developer Kit)
Software Libre
HTML Software Libre
Base de Datos MySQL Server Software Libre
Elaboración: Marlon Espinoza M.
Fuente: Marlon Espinoza M.
Cualquiera de las alternativas presentadas puede ser apropiada para el
desarrollo del sistema.
Hardware:
El Hardware requerido para la implementación del proyecto se detalla a
continuación:
47
Se necesita una computadora para el uso del Portal Web.
Sistema Operativo: Windows 7 en adelante
Procesador: Intel 2 Ghz. en Adelante
Memoria Ram: Mínimo 1 GB
Además se necesita una impresora, para la impresión de reportes.
a) Disponibilidad de la Tecnología.-
En este apartado se analizó la tecnología, hardware y software requeridos
para el desarrollo e implementación del portal web.
Anteriormente se presentaron las alternativas de software tanto de tipo
comercial (Windows 7) y de software libre (Netbeans, Java JDK,
Glassfish, MySQL), elementos utilizados en el portal; en tanto ha
hardware se necesita de accesorio una impresora.
b) Conocimientos Técnicos.-
Además de contar con la tecnología necesaria se necesita que el usuario
del portal cuente con el conocimiento técnico para la operatividad del
sistema.
En el caso del software, los desarrolladores del proyecto cuentan con el
conocimiento de las alternativas de recursos software propuesto, no se
necesita contar con conocimientos profundos de estas tecnologías.
En el caso del hardware se necesita del uso de computadoras personales
y los desarrolladores cuentan con la experiencia de su correcto uso.
48
El administrador u operario del sistema cuenta con el conocimiento
técnico, además de cierta experiencia del uso del hardware y software.
Realizado el análisis de estos puntos podemos concluir que el proyecto es
factible técnicamente.
Factibilidad Económica
Se puede decir que el proyecto es factible económicamente, ya que se
cuenta con la mayoría de las herramientas necesarias, conocimiento y
disponibilidad para llevar a cabo el proyecto, su coste es mínimo debido a
que las herramientas de desarrollo son de distribución libre.
A continuación se detalla las herramientas de uso comercial:
Costos de Licencia de Software
Windows 7 Professional
Es la versión de mayor uso del sistema operativo de Microsoft Corporation
Precio: $60 - $100.
Costos de Dominio
El costo de dominio anualmente es de $15 con las
extensiones (.org, .com y .net).
Determinación de Coste del Proyecto.
Es importante especificar los gastos incurridos para la realización del
sistema, detallando los costos en términos anuales.
Además se establece que el administrador del portal será un profesional
del Centro Nutricional, agregando que no se incluye licenciamiento de
todo el software, esto debido a que la mayoría es open source, se
presenta alternativa al software comercial:
49
Software Comercial Alternativa Open Source
Windows 7 CentOS
Ubuntu
Costos Fijos
Estos costos fijos del proyecto se determinan en base a la realidad, y de
acuerdo a esto se comenzara determinando el costo de pagos
anualmente.
Costo de Administración del Portal.-
Salario de Administrador Web = 0.00, ya que es encargado un profesional
de la salud.
Servidor Web.-
Precio Anual de alojar el sistema en la web es de $70.
Cuadro No. 4
Costos Fijos del Proyecto
Costo de Diseño, Desarrollo e implementación del Sistema
Alojamiento en la Web $ 70,00
Derecho de Dominio $ 15,00
Diseño, Desarrollo e Implementación del Sistema $ 0,00
Recursos Humanos $ 800,00
Servicio de Internet $ 360,00
Total de Costos Fijos $ 1245,00
Elaborado: Marlon Espinoza M.
50
Costos Variables
No existe mucho costo variable, debido a que no se cuenta con un
servidor web propio sino se contrata un servidor web en la nube, por lo
tanto no se tendrá demasiado consumo eléctrico.
Gastos Mensuales
Según la Empresa Eléctrica de Ecuador (EEE) el costo por un KW/H
equivale a $ 0.08.
Una computadora de escritorio, en una hora consume 0,15 KW/H, o sea
en 8 horas sería 0,90 KW/H. en un mes de 30 días 27 KW/.
Consumo de energía eléctrica $ 2.16
Anualmente serán (2.16)* (12) = $ 25,92, Por lo tanto:
Cuadro No. 5
Costos Anuales del Proyecto
Costos Anuales del Proyecto
Costo fijo $ 445.00
Costo variable $ 25.92
Costo total anual $ 470.92
Elaborado: Marlon Espinoza M.
De acuerdo a la solución propuesta, se puede concluir que la factibilidad
económica para el desarrollo del proyecto es la adecuada, tanto para la
disponibilidad de software como de hardware.
51
Factibilidad Legal
Se recomienda adquirir las licencias para el software necesario para
implementar de manera autentica con la finalidad de no tener
inconvenientes en el futuro.
La Ley Orgánica de Protección de Datos (LOPD), es la ley encargada de
garantizar y proteger en cuanto a datos personales, las libertades públicas
y los derechos fundamentales de las personas físicas, y en especial, de
su honor, intimidad, privación personal y familiar.
La creación de la LOPD tiene como objetivo principal regular el
tratamiento de datos y ficheros independientemente del soporte con el
que hayan sido tratados, los derechos ciudadanos entre ellos y las
obligaciones de los crean o traten.
Etapas de la metodología del proyecto
Se utilizó la Metodología de Proyecto PMI para el desarrollo del proyecto,
esta guía define las actividades en 5 Procesos:
52
Grafico No. 10
Etapas de la Metodología del Proyecto
Elaborado: Marlon Espinoza M.
Fuente: http://www.pmi.org/
Inicio.-
En esta etapa se desarrollaron las siguientes actividades:
Se planifico las encuestas a realizar al personal administrativo,
médicos y pacientes del área de nutrición.
Se elaboró el formulario de preguntas.
Se realizó las respectivas encuestas para determinar el proceso
actual de atención a los pacientes.
Se recopilo los datos y se comenzó a tabular para obtener la
información.
53
Planificación.-
Definición de Objetivos Generales y Específicos.
Definición de Arquitectura de Software y de Base de Datos a
utilizar.
Se utilizó el Patrón MVC (Modelo-Vista-Cliente) y se utilizó el
Manejador de Base de Datos MySql
Elección del Ide de Desarrollo para la programación de la
Aplicación.
Para el desarrollo del Sistema se utilizó Netbeans que es un IDE
Open Source.
Realizar Diseño y Diagrama de Modelo Entidad-Relación de Base
de Datos.
Escoger Programa para Administrar y Darle Mantenimiento a la
Base de Datos.
Se utilizó el Programa HeidiSQL para administrar la Base de Datos.
Diseño de Casos de Uso.
Elección de Framework y de ORM que ayude a agilitar el proceso
de desarrollo, darle una mejor visualización a la Interfaz de la
Aplicación.
Se determinó utilizar JPA (Java Persistence Api) que es un
estándar de Java Enterprise que nos permite portabilidad a través
de servidores de aplicaciones e interdependencia a la base de
datos.
54
Ejecución.-
Implementar Patrones de Desarrollo.
El sistema cuenta con el patrón Facade (Fachada) que provee una
interfaz unificada simple de donde se puede acceder a una interfaz
o grupos de subsistemas, que proporciona Eclipse Link.
Implementación de Entidades de la Base de Datos con sus
relaciones diseñadas con anterioridad.
Implementación de Clases del Modelo.
Implementar los Módulos del Sistema y sus Interfaces de Usuario.
Integración de los Módulos
Creación de Instaladores del Sistema Nutricional.
Creación de Manual Operativo del Usuario.
Presentación de un Prototipo de Sistema.
Supervisión y Control.-
Realizar las pruebas pertinentes y validaciones del sistema antes
de su puesta a producción.
Pruebas de Validaciones de Datos.
Pruebas de Administración y Conexión a la Base de Datos.
Pruebas de Navegación en la Web del Sistema.
Pruebas de Generación de Reporte y validación de la información
presentada.
Cierre.-
Si las pruebas y validaciones se cumplieron con éxito se procede a
la entrega de la Aplicación Final.
55
Entregables del Proyecto
Dado a que la finalidad de este proyecto es la entrega de un sistema
informático debemos definir que es un Entregable. Los Entregables se
lo definirán como “Productos que en cierto estado se intercambia entre
el cliente y el desarrollador del sistema a lo largo de la ejecución del
Proyecto”.
La realización de este Proyecto culmina con la entrega de la siguiente
información:
Código Fuente.
Código Ejecutable
Requerimientos Hardware y Software para la Instalación del
Sistema.
Manual de Instalación.
Manual de Operación del Usuario.
CRITERIOS DE VALIDACIÓN DE LA PROPUESTA
Para la validación de esta Propuesta se utilizó el criterio y estrategia de
Juicio de Expertos, en la cual las personas interesadas del proyecto
validaran la propuesta:
Se tomaron en cuenta los siguientes criterios para la validación de la
propuesta:
1.- Leer detenidamente la propuesta.
2.-Emitir su criterio sobre, Ejemplo: Funcionalidad, objetivos, pertinencia,
sugerencias metodológicas para el desarrollo del Sistema de Gestión de
56
Pacientes, Control de la Alimentación y Nutrición, Elaboración de Dietas
Personalizadas.
3.- Utilice las siguientes Categorías:
MA = Muy de Acuerdo. No hay nada que mejorar.
DA = De Acuerdo
MDA = Medianamente de Acuerdo (Está bien pero hay que mejorar.)
ED = En desacuerdo hay aspectos rescatables, no cumple con lo
esperado en general
57
Cuadro No. 6
Matriz de Resultados de Validación de la Propuesta
Valoración de Aspectos
Muy de
Acuerdo
(MA)
De
Acuerdo
(DA)
Medianamente
de Acuerdo
(MDA)
En
Desacuerdo
(ED)
Observaciones # de
Interesados
1.- La propuesta es una buena
alternativa y funcional.
20 6 4 0 30
2.- El contenido es pertinente
para mejorar la problemática.
22 4 3 1 30
3.- Existe coherencia en su
estructuración.
18 10 2 0 30
TOTAL 30
Elaborado: Marlon Espinoza Moran
Fuente: Marlon Espinoza Moran
58
CAPÍTULO IV
CRITERIOS DE ACEPTACIÓN DEL PRODUCTO O SERVICIO
Cuadro No. 7
Criterios de Aceptación
Tipo de Requisito Descripción del Requisito Criterios de Aceptación
Establecidos por el
Usuario Administrador
del Sistema
1.- Registro, Búsqueda y Modificación y
Eliminación de Usuarios del Sistema.
2.- Visualización de Pacientes Registrados
en el Sistema.
3.- Ingreso, Búsqueda, Actualización y
Eliminación de Alimentos en la Tabla de
Composición de Alimentos.
1.1. Solo el usuario Administrador podrá realizar la creación de Usuarios
Operativos del Sistema.
2.1 Podrá Visualizar de Mane general todos los Pacientes
Registrados.
3.1. Solo el Usuario Administrador podrá realizar el Ingreso,
Actualización y Eliminación de Alimentos
59
Establecidos por el
Usuario Operativo del
Sistema.
1.- Ingreso y Consulta de Pacientes del
Sistema.
2.- Registro de Antecedentes Personales,
Familiares y de Enfermedades.
3.- Ingreso y Modificación de Hábitos
Alimenticios.
4.- Realización de Evaluación Subjetiva a los
Pacientes.
5.- Registro de Exámenes realizados en el
Laboratorio.
6.- Elaboración de Plan de Dietas
Personalizados.
7.- Visualización de Reporte en PDF del
Diagnostico Medico.
1.2. Solo se podrá consultar e ingresar Información de pacientes que
estén en estado activos
2.1. Se podrá Ingresar Antecedentes establecidos
predeterminadamente y otros en el caso de que no exista en el
detalle.
3.1. Solo el Usuario Operario podrá ingresar hábitos alimenticios del
paciente.
4.1 Formato presentado será evaluado y autorizado
previamente por un nutricionista y realizado solo si se tiene
antecedentes y hábitos alimenticios ingresados.
5.1. Los exámenes serán realizados en laboratorios de referencia.
6.1. Los Planes de Dietas serán realizados de acuerdo al
Método de Intercambio, realizados una vez que se
Realizo la evaluación subjetiva al paciente.
7.1. Se podrá visualizar el Reporte una vez ingresado información del
Pacientes, los antecedentes, hábitos alimenticos, evaluación
subjetiva y elaborado el diagnóstico por el medico nutricionista.
Elaborado: Marlon Espinoza Moran
60
Informe de Aseguramiento de la Calidad del Software En este informe se definen todas las actividades a realizar para asegurar
la calidad a lo largo del ciclo de vida del Sistema Nutricional, con el
objetivo de verificar que todo el software y la documentación entregada
cumplan con los requerimientos establecidos por el usuario.
Para entender el Aseguramiento de la calidad del Software primero hay
que definir qué significa este término, “El cumplimiento de los
Requerimientos Funcionales y de performance explícitamente, de los
estándares de desarrollo explícitamente documentados y de las
características implícitas esperadas del desarrollo del software
profesional”(Roger Pressman,1993), otra definición indica que “El grado
con el cual un sistema, componente o proceso cumple con los
requerimientos, necesidades y expectativas del usuario”(IEEE).
Aseguramiento de la Calidad es la definición de procesos y estándares
que nos deben conducir a la obtención de productos software de calidad.
Plan de Calidad
Este plan debe incluir la definición de los siguientes requisitos de calidad:
61
Cuadro No. 8
Plan de Calidad
Requisitos de Calidad Métrica Método
Control de Acceso al Sistema Debe llevarse un detalle de acceso
al sistema (quien, cuando, desde,
donde)
Sistema de Autenticación
con tokens o contraseñas
encriptadas.
Roles de Usuario
Precisión de los cálculos
realizados en el sistema.
Exactitud con la que el sistema
realiza los cálculos
Definir indicadores de
longitud de datos para
probar precisión de
cálculo.
Capacidad de comunicación:
Facilidad del Uso del Sistema.
Facilidad de aprendizaje de uso.
Mensajes de Error e Informativos
Consistencia de la Interfaz.
Manuales Bien Estructurados.
Medición del Esfuerzo
necesario para aprender,
operar el sistema.
Tolerancia a Errores: El
sistema debe mostrar
tolerancia a fallos, el grado de
anomalía debe ser poco.
Tiempo trascurrido entre fallas.
Tiempo Esperado hasta siguiente
Falla.
Tiempo Requerido para Reparar
TMEF = TMDF+TMDR
(TMDF (tiempo medio de
fallo) y TMDR (tiempo
medio de reparación)).
Eficacia de Ejecución:
Rendimiento en tiempo de
ejecución del sistema.
Velocidad de Procesamiento.
Tiempo de Respuesta.
Consumo de Recursos
Eficiencia de Almacenamiento
Medición del rendimiento
en tiempo de ejecución
del sistema.
62
Independencia del Hardware:
El software debe operar en
cualquier hardware.
El software debe ser compatible en
cualquier hardware instalado que
cumpla con los requerimientos
establecidos.
Esfuerzo necesario para
trasladar el sistema de
un entorno de sistema
hardware/software a otro.
Integridad de los Datos: Grado
de Control de Acceso al
Software por parte de
personas no autorizadas.
El sistema debe controlar el acceso
a Datos a personas no registradas
en el sistema y realizar auditorías.
Operabilidad: Facilidad de
manejo del sistema.
Esfuerzo realizado por el usuario
en el manejo del sistema.
Seguridad: Disponibilidad de
Mecanismos de Control y
protección del Programa y los
Datos.
Políticas de Acceso.
Seguridad grado
cumplimiento Owasp top
10.
Elaboración: Marlon Espinoza M.
Fuente: Gestión de Calidad en Proyectos de Software-Webinar
Estándar de Codificación:
La codificación del Sistema Nutricional debe tener un estándar de
codificación en el que se deben de cumplir ciertas normas:
Cada clase de Java debe de llevar lo siguiente al principio:
Nombre del Programa:
Objetivo.
Nombres del Autor.
Fecha de Creación.
Historial de Actualizaciones.
Versión.
Fecha de Cambio.
63
Objetivo de Cambio.
Pruebas Funcionales
Pruebas de Caja Negra
Cuadro No. 9
Prueba de Caja Negra
Parámetro
a Evaluar Condición de Entrada Valores Validos
Valores
Inválidos
Edad Rango de Valores (0 a
100)
Valores >= 0 y
Valores <= 100
Valores < 0 y
Valores > 100
Cedula Rango de Valores (10) Valores = 10 Valores < 10 o
Valores > 10
Email Rango de Valores
([Aa-Zz 0-9 @.])
([Aa-Zz 0-9 @ .
com])
Valores
([Aa-Zz 0-9])
Elaborado: Marlon Espinoza M.
Fuente: Marlon Espinoza M.
Pruebas de Carga y de Rendimiento
Para realizar las pruebas de Carga al Sistema hemos utilizado el Framework
JMeter, que es una herramienta de código abierto escrita en Java que
64
sirve para hacer pruebas de carga y de rendimiento a aplicaciones Web.
Grafico No. 11
Pruebas de Carga realizadas con JMeter
Elaborado: Marlon Espinoza M.
Fuente: JMeter Apache Jakarta Project extraído
Total de Peticiones: 30
Tiempo de Respuesta Máximo: 10 milisegundos máximo
Margen de Error: 0%
Uso de Recursos: 9 kb/sec.
Reporte de Problemas
A continuación se muestra un formato que se puede usar para reportar los
problemas encontrados:
65
Cuadro No. 10
Formato de Reporte de Problemas
Reporte de Problemas Página:
# de Reporte:
Lugar:
Fecha:
Hora:
a) Identificación del Problema:
__________________________________________________________
__________________________________________________________
b) Descripción:
__________________________________________________________
__________________________________________________________
c) El evento ejecutado cuando se presentó el problema es:
__________________________________________________________
__________________________________________________________
d) Posibles orígenes del problema:
__________________________________________________________
__________________________________________________________
Responsable:
Nombre: Firma
Elaborado: Marlon Espinoza M.
Niveles de Criticidad del Sistema
Durante el Desarrollo del Sistema en sus distintas etapas del ciclo de vida
del software se clasifico el nivel de criticidad de las actividades en base al
Estándar IEEE Sdt 1012-1998, el cual en la siguiente tabla muestra los
niveles de criticidad:
66
Cuadro No. 11
Nivel de Criticidad del Sistema
Criticidad Descripción Nivel
Alta La función seleccionada afecta al desempeño
de un sistema crítico.
4
Mayor La función seleccionada afecta el desempeño
de un sistema importante.
3
Moderada La función seleccionada afecta el desempeño
del sistema, pero se pueden implementar
estrategias de solución para compensar la
caída del desempeño,
2
Baja La función seleccionada tiene notables efectos
en el desempeño del sistema, pero solo crea
malestar en el usuario si esta función no se ha
desarrollado de acuerdo a sus requisitos.
1
Elaborado: Marlon Espinoza M.
Fuente: Vianca Rosa Vega Cepeda
Aceptación del Producto.-
En base a los Criterios de Aceptación del Producto, las métricas para
medir la calidad del Producto y la Determinación de los Niveles de
Criticidad del Sistema de procedió a realizar la encuesta de aceptación
del producto por parte del usuario, en la cual se detalla los resultados
obtenidos.
67
Cuadro No. 12
Matriz de Resultados de Criterios de Aceptación del Producto o Servicio
Escala de
Valoración y
Aspectos
Nivel de
Criticidad
Muy
Adecuada
(5)
Adecuada
(4)
Median.
Adecuada
(3)
Poco
Adecuada
(2)
Nada
Adecuada
(1)
# de
Usuarios
Encuestados
Control de
Acceso al
Sistema
4 25 3 2 0 0 30
Precisión de los
cálculos
realizados en el
sistema.
4 20 5 3 2 0 30
Facilidad del
Uso del Sistema. 3 15 5 4 3 3 30
Tolerancia a
Errores 4 18 6 5 1 0 30
Rendimiento de
la Aplicación 3 16 8 4 2 0 30
Interoperabilidad
del Sistema 2 25 3 2 0 0 30
Integridad de los
Datos 4 23 6 1 0 0 30
Seguridad y
Mecanismos de
Control
3 20 5 4 1 0 30
TOTAL 3,38 19,25 5,13 3,13 1,13 0,38 30
Elaborado: Marlon Espinoza M.
68
Analizando los Resultados de la Matriz de Aceptación del Producto o
Servicio, podemos visualizar que el valor de Promedio Total se encuentra
en el Criterio Muy Adecuado, estos nos indica que los Parámetros de
calidad evaluados en el Sistema Nutricional se han cumplido con éxito.
Para concretar la aceptación de parte del usuario del producto final, se
deben haber cumplido mínimo los siguientes aspectos:
Cuadro No. 13
Requerimientos Mínimos para Aceptación del Producto
Rol de Persona que Autoriza
Nombre quien cumple el Rol
Pruebas mínimas que se deben
realizar
Pruebas Funcionales
Pruebas de Usabilidad
Pruebas de Plataforma
Reporte de Respaldos A Seguir Informe de Validación
Informe de Verificación
Informe de Aceptación
Actividades a realizar en caso
de no aceptación
Actividad: Responsable:
Elaborado: Marlon Espinoza M.
Fuente: Marlon Espinoza M.
69
CONCLUSIONES
En la actualidad, es de vital importancia que los Centros De Salud,
Hospitales, Clínicas, Consultorios Médicos que cuentan con profesionales
nutricionales y dietistas encargados de brindar asesoría nutricional a la
población se apoyen en el uso de herramientas tecnológicas para la
realización de sus labores que ayuden a la agilización de sus procesos y
mejoren la calidad de atención a sus pacientes.
Los profesionales sanitarios necesitan de estas herramientas tecnológicas
desarrolladas de acuerdo a sus necesidades para realizar una mejor
gestión de sus pacientes, que les permita contar con información histórica
de sus antecedentes personales y familiares, tener información de sus
preferencias alimenticias, así como también les facilite la creación y
valoración de dietas personalizadas y poder entregarles dichos planes
alimenticios de forma digitalizada.
La gestión de los pacientes de los médicos nutricionista no debe ser
compleja, cuando se cuenta con una plataforma tecnológica con
información actualizada y precisa de cada uno de sus pacientes que
maneja, además de permitir a las Instituciones y profesionales de esta
área de la salud optimizar recursos y disminuir costos inapropiados que
pueden ser destinados a otras actividades.
Dicha solución tecnológica, presenta facilidad de uso desarrollada en
ambiente open source y otras características que permiten la expansión
de sus funcionalidades, que pueda ser integrable a otras tecnologías,
procesos funcionales y mantenimientos a bajo costos.
70
Desarrollado el Sistema Informático de Gestión de Pacientes, Control de
la Alimentación y Nutrición y Elaboración de Dietas Personalizadas nos
deja las siguientes conclusiones:
Se obtuvo una herramienta de fácil uso en donde se registre información
del historial clínico del paciente: Datos Personales, Antecedentes de
Enfermedades Propios y de Familiares, Hábitos y Encuestas Dietistas
que nos permita realizar la evaluación nutricional al Paciente.
Se registre y presente información de los Exámenes Clínicos realizados
en los laboratorios (Bioquímico, Hematológico, Hormonal y de Orina) en
donde se realice el análisis de resultados de cada paciente de acuerdo a
indicadores de valores mínimos y máximos establecidos.
Se generó una Tabla de Composición de Alimentos con el detalle de sus
valores nutricionales en donde se puede realizar la búsqueda de sus
elementos.
Se realizó formato de Evaluación Nutricional Subjetiva en donde de
manera general me permite conocer el Estado de Nutricional Actual del
Paciente,
Se elaboró plan alimenticio personalizado para cada paciente de manera
mensual de acuerdo a diagnóstico realizado por el medico nutricionista.
Se presentó informe en PDF de Diagnostico generado por el especialista
medico en donde se registros datos del paciente con su respectiva
evaluación nutricional y con su plan alimenticio a seguir.
71
RECOMENDACIONES
El sistema está fundamentado de acuerdo a un manual básico para la
evaluación nutricional de pacientes adultos bajo la dirección de un
especialista nutricional, el cual puede ser ajustado y expandido en base a
nuevas necesidades requeridas por el profesional médico.
Se recomienda crear un ambiente de prueba del sistema por parte de sus
usuarios en donde se validen las funcionalidades del sistema para
obtener resultados y conclusiones de manera óptima
Es necesaria la revisión de los manuales técnicos y funcionales para la
correcta comprensión y uso del sistema informático.
Es necesario que se desarrollen todos los procesos solicitados por el
sistema para obtener los resultados esperados y se logre tomar
decisiones acertadas.
Al sistema se le podrían agregar nuevas funcionalidades como un menú
de comidas en donde se detallen la elaboración de distintos tipos de
comidas, el periodo en las que se debe ingerir y el aporte nutricional que
contiene cada preparación.
También se podría agregar una pantalla de Ingreso de motivaciones o
recomendaciones en donde su realización dependerá del profesional
nutricionista, del paciente y de acuerdo a la patología que tenga con la
finalidad de estimular al paciente a que cumpla con las recomendaciones
indicadas para que pueda mejorar su estado de salud.
72
BIBLIOGRAFÍA
Publicaciones Constitución de la República del Ecuador (20 de Octubre del 2008) Extraído en 2015 Ley Orgánica de Salud - Registro Oficial No. -457 (30 de Octubre del 2008) Extraído en 2015 Ley de Propiedad Intelectual- Registro Oficial No. -320 (2011) Extraído en 2015 Direcciones Web Salud y Nutrición extraído en el 2015, http://www.salud.gob.ec/encuesta-nacional-de-salud-y-nutricion-ensanut/ Valoración Nutricional extraído en el 2015,
http://www.eccpn.aibarra.org/temario/seccion6/capitulo100/capitulo100.htm
Investigación virtual en salud
http://www.scielo.org.ar/scielo.php?pid=S185182652011000300004&script=sci_a
rttext Metodología PMBOK (PMI) extraído en el 2015, de http://www.12manage.com/methods_pmi_pmbok_es.html Java Persistence API extraído en 2015, de http://www.oracle.com/technetwork/java/javaee/tech/persistence-jsp-140049.html Metodología para el Aseguramiento de la Calidad en la Adquisición del Software (proceso y producto) y servicios correlacionados extraído en el 2015, http://oa.upm.es/14955/1/VIANCA_ROSA_VEGA_ZEPEDA.pdf Departamento de Ciencias de la Computación e I.A. Universidad de Granada extraído en 2015, http://elvex.ugr.es/idbis/db/docs/design/1-process.pdf TechNet Microsoft Extraído en 2015, de https://technet.microsoft.com/es-es/library/dn383650.aspx Criterios de Aceptación del Producto extraído en el 2015, de http://agral.uas.edu.mx/documentos/certificacion/3_RCAP_DAG_SAG_01.pdf
73
Validación por Juicio de Expertos
http://es.slideshare.net/MoisesLogroo/matriz-de-validacin-de-la-
propuesta?related=2
Modelo de Criterios de Aceptación extraído en el 2015, http://agral.uas.edu.mx/documentos/certificacion/3_RCAP_DAG_SAG_01.pdf Aseguramiento de la Calidad del Software extraído en el 2015, http://www.inf.utfsm.cl/~visconti/inf321/documentos/quizz3.pdf
JMeter Apache Jakarta Project extraído en 2015, de http://jakarta.apache.org/jmeter/ Pruebas de Software extraído en 2015, de https://jacace.wordpress.com/2010/04/22/ejemplo-de-pruebas-de-software-parte-1/ Eclipse Link (s.f.) extraído en 2015, de http://www.eclipse.org/eclipselink/documentation/2.5/concepts/general001.htm#CHDIJJGA
Libros Ian Sommerville (2005). Ingeniera del Software 7ma. Edición
De Rodríguez Veintimilla Dolores, Maldonado Villavicencio Marisol, Herrera Moran Sandra. (2011). Manual Básico para Evaluación Nutricional 2011
74
ANEXOS
Encuestas
ENCUESTAS REALIZADAS A PADRES DE FAMILIAS, ADOLESCENTES
¿Considera usted que es necesario acudir a un Centro Hospitalario especializado en el área nutricional?
Totalmente de acuerdo De acuerdo En Desacuerdo Totalmente en desacuerdo
¿Considera usted que en la actualidad las personas están llevando una alimentación equilibrada y saludable?
Totalmente de acuerdo De acuerdo En Desacuerdo Totalmente en desacuerdo
¿Seleccione las causas por las que ud. necesitaría optar por un servicio médico nutricional, elija los que considera necesarios? MARQUE LAS OPCIONES QUE CONSIDERE NECESARIAS Laboratorio Clínico Control Periódico de dietas Atención de malnutrición por exceso Atención de malnutrición por déficit Atención de malnutrición asociada con enfermedades Atención nutricional a embarazadas Atención nutricional a recién nacidos o niños de bajo peso ¿Con que frecuencia acuden las personas a un centro de salud nutricional o realiza un control periódico de sus dietas?
Anualmente Semestralmente Mensualmente Semanalmente Diariamente No ha acudido
75
¿Considera usted que los Centros Públicos Hospitalarios que conoce brindan un óptimo control en el área nutricional a los pacientes?
Muy de acuerdo De acuerdo Indiferente En desacuerdo
¿Indique en Porcentaje, es eficiente y oportuna la intervención del profesional nutricionista y su asesoramiento le ha ayudado a mejorar su salud?
100 % Entre 51 % y 99% Entre 26% y 50% Entre 1 % y 25%
ENCUESTAS REALIZADAS A PERSONAL MEDICO DEL AREA NUTRICIONAL
¿Cuáles considera ud. Son los mayores trastornos alimenticios de la población? Rechazo por la comida Prefieren golosinas y/o alimentos poco nutritivos Come raciones muy pequeñas Come a cada instante Come en exceso Ninguno de los anteriores Otros.- Indique.-
¿Debido a que patologías, considera ud. Que la población en su mayoría acude a un centro de su salud nutricional?
Anemia Bajo de Peso Algún grado de Sobrepeso Ninguna de las Anteriores Otros: Indique.-
¿Indique de qué edades las personas con mayor frecuencia acuden al Centro de Salud Nutricional?
Entre 1 y 10 años Entre 11 y 24 años Entre 25 y 40 años Mayores de 40 años
76
¿Indique cual considera ud. El proceso que devenga mayor tiempo en la entrevista con su pacientes? Ingreso de Datos del Paciente Ingreso de Historial Médico del Paciente Evaluación Subjetiva del Paciente Análisis e Ingreso de Exámenes del Laboratorio Clínico Elaboración de Diagnóstico y Plan de Dietas Otros. Indique.- ¿Indique en Porcentaje, considera ud. se sitúa la demanda de centros nutricionales por parte de la población del país?
100 % Entre 51 % y 99% Entre 26% y 50% Entre 1 % y 25%
¿Considera ud. Que la atención brindada por los Centros Médicos Nutricionista es eficiente y oportuna?
Totalmente de acuerdo De acuerdo En Desacuerdo Totalmente en desacuerdo
¿Cree ud. como profesional de la Salud que el uso de un Sistema Informático en esta área le ayudara a brindar un mejor servicio a sus pacientes y con mayor agilidad del proceso?
Totalmente de acuerdo De acuerdo En Desacuerdo Totalmente en desacuerdo
77
CRONOGRAMA
Grafico No. 12
Cronograma Sección 1
Elaborado: Marlon Espinoza M.
Fuente: Marlon Espinoza M.
Grafico No. 13
Cronograma Sección 2
Elaborado: Marlon Espinoza M.
Fuente: Marlon Espinoza M.
78
Grafico No. 14
Cronograma Sección 3
Elaborado: Marlon Espinoza M.
Fuente: Marlon Espinoza M.
Grafico No. 15
Cronograma Sección 4
Elaborado: Marlon Espinoza M.
Fuente: Marlon Espinoza M.
79
Grafico No. 16
Cronograma Sección 5
Elaborado: Marlon Espinoza M.
Fuente: Marlon Espinoza M.
Manual del Usuario Versión 1.0
Prototipo de Sistema Informático de Gestión de
Pacientes, Control de la Alimentación y
Nutrición y Elaboración de Dietas
Personalizadas.
Carrera de Ingeniería en Sistemas Computacionales
Facultad de Ciencias Matemáticas y Físicas
Universidad de Guayaquil
Contenido MANUAL DE USUARIO ................................................................................................................... 3
Introducción .............................................................................................................................. 3
Pantalla de Login.- ..................................................................................................................... 3
Pantalla de Inicio del Sistema .................................................................................................... 4
MENU FICHA MEDICA ............................................................................................................... 5
Sub Menú Ingreso de Pacientes ................................................................................................ 5
Sub Menú de Ver Pacientes. ..................................................................................................... 6
Sub Menú Seleccionar Paciente ................................................................................................ 8
Sub Menú Composición Corporal.............................................................................................. 8
MENU HISTORIA CLINICA .......................................................................................................... 9
Sub Menú Datos Generales ....................................................................................................... 9
Sub Menu Evaluacion Subjetiva .............................................................................................. 10
MENU COMPOSICION DE ALIMENTOS .................................................................................... 11
Sub Menú de Composición de Alimentos ............................................................................... 11
MENU ANALITICO DE PACIENTE .............................................................................................. 13
Sub Menú de Composición de Alimentos ............................................................................... 13
Manual Técnico ....................................................................................................................... 15
Estructura del proyecto ........................................................................................................... 21
Carpeta Web Pages ................................................................................................................. 23
Carpeta operario ............................................................................................................. 23
Carpeta administrador .................................................................................................... 25
Carpeta Resources ........................................................................................................... 25
Paquete com.controller .................................................................................................. 25
Paquete com.model ........................................................................................................ 29
Paquete com.ejb ............................................................................................................. 31
3
MANUAL DE USUARIO
Introducción
El Sistema de Gestión de Pacientes, Control de la Alimentación, Nutrición y
Elaboración de Dietas Personalizadas brinda una herramienta web a las personas
especializadas de brindar asesoría en el área nutricional a sus pacientes, dicho
sistema está conformado de los siguientes Módulos:
Pantalla de Login.-
Para poder ingresar al Sistema se debe contar con un Usuario y Contraseña, en el
caso de que no se encuentre registrado el Usuario Administrador del Sistema es el
encargado de crearle el Usuario para el ingreso.
Si no se tiene un Usuario el Administrador tiene que ingresar al Sistema, y crearle
dicho usuario para registrarlo al Sistema.
4
Pantalla de Inicio del Sistema
Una vez ingresado al sistema podemos identificar los diferentes módulos del sistema
que se han habilitado de acuerdo al perfil ingresado.
Pantalla de inicio del usuario de Perfil Operativo (Usuario encargado de realizar las
distintas transaccionalidades de las distintas Interfaces.).
5
MENU FICHA MEDICA
Sub Menú Ingreso de Pacientes
Para el ingreso de pacientes al Sistema nos dirigimos a la opción Ficha Medica-
>Ingreso de Pacientes, en la cual se muestra un formulario de registro de datos
generales del paciente.
En el momento que se haya ingresado toda la información requerida para Ingresar el
Paciente al Sistema, le damos clic en el botón Ingresar , si se ha ingresado los datos
correctamente nos aparecerá un Mensaje de que el paciente se ha ingresado con
éxito
6
Si no se ha ingresado en el Formulario toda la Información que se ha etiquetado como
obligatoria, no permitirá registrar al paciente y se mostrara un mensaje de error de
validación indicando los valores faltantes de cada campo.
Sub Menú de Ver Pacientes.
Para visualizar si el paciente efectivamente se ha realizado con éxito procedemos ir a
la opción Ficha Medica->Ver Pacientes podemos visualizar todos los pacientes
ingresados al Sistema.
7
Tambien podemos realizar la busqueda de un paciente en especifico, ingresando un
Numero de Cedula del Paciente y damos clic en el botón Buscar, y nos mostrara
información de dicho usuario buscado.
Para generar Reporte de los Pacientes Ingresados en el sistema damos clic sobre el
botón reporte y nos mostrará un Archivo en PDF generado el cual lo podemos imprimir
o guardar si lo deseamos.
8
Sub Menú Seleccionar Paciente
Para Trabajar con un paciente en las demás opciones del sistema mediante el Menú
Ficha Medica ->Seleccionar Paciente se puede habilitar un paciente
transaccionalmente, también podemos inhabilitarlo cuando se quiera trabajar con otro
paciente o darlo de alta cuando el paciente ya no visite al médico nutricionista.
Sub Menú Composición Corporal
Luego de haber Habilitado un paciente podemos trabajar con las demás opciones, en
este submenú muestra un formulario para determinar la Composición Corporal del
Paciente.
9
Podemos visualizar el paciente con el que se está trabajando, realizamos el ingreso
del peso actual y la talla y automáticamente dando clic sobre el botón mostrado en la
imagen nos determina el estado nutricional en el que se encuentra el paciente.
MENU HISTORIA CLINICA
Sub Menú Datos Generales
En este submenú, podemos registrar los antecedentes tanto personales como de
familiares, además de preferencias alimentarias del paciente, si tiene alguna patología
10
o alteración, nos permite la opción de poder agregar más de un elemento de patología.
Para agregar uno o más elementos tenemos que seleccionar en la casilla y al final
damos clic en el botón grabar.
Sub Menu Evaluacion Subjetiva
En esta opcion podemos realizar la encuesta de evaluacion de forma general el estado
nutricional del paciente, ingresamos en el menu Historia Clinica->Evaluación Subjetiva para la
visualizacion del formulario
11
Luego de haber ingresado toda la información requerida del formulario le damos clic
en el botón Ingresar y se los datos se han ingresado correctamente aparecerá un
mensaje indicando que se registró la evaluación con éxito.
MENU COMPOSICION DE ALIMENTOS
Sub Menú de Composición de Alimentos
En este submenú se tiene el detalle de la Tabla de Composición de Alimentos Ecuatorianos, el
cual se puede filtrar por el elemento ingresando datos donde indica la fecha o podemos
ordenar la información de manera descendente o ascendente dando clic sobre las flechitas
señaladas con el circulo.
12
En base a esta tabla de Alimentos podemos confeccionar planes de dietas personalizados para
cada paciente en base a los requerimientos energéticos obtenidos anteriormente en la
evaluación nutricional, seleccionando cada alimento que necesitemos para nuestra dieta.
Si queremos ir agregando alimentos para armar el plan de dieta, seleccionamos el alimento
luego damos clic en el Botón Add y automáticamente se me crea un registro con los valores
seleccionados, como muestra en el siguiente gráfico.
Si luego se quiere editar el registro ingresado, solo se debe modificar la cantidad de Gramos
del Alimento y automáticamente me actualiza los valores de dicho registro de acuerdo a la
nueva cantidad ingresada.
13
Como podemos visualizar los demas valores han sido afectados de acuerdo al nuevo valor
ingresado, y asi podremos seguir creando nuevos registros hasta cumplir con los
requerimientos energeticos del paciente.
MENU ANALITICO DE PACIENTE
Sub Menú de Composición de Alimentos
En esta opción del submenú se realiza el ingreso de Examen Clínico de los pacientes, en donde
se muestra los cuatro tipos de exámenes realizados por los Laboratorios:
Analisis Bioquímico
Analisis Hematológico.
Analisis Hormonal
Analisis de Urina
14
Para ingresar los Valores de cada tipo de Analisis damos clic sobre el lápiz e
ingresamos la cantidad que nos resultó del examen físico, automáticamente se nos
abre la celda del campo valor y procedemos a modificarlo.
Luego de haber ingresado el valor procedemos a grabar dicho cambio dando clic
nuevamente en el lápiz de edición, y así sucesivamente procedemos a modificar
los valores de cada tipo de análisis realizado.
15
Manual Técnico
Versión 1.0
Prototipo de Sistema Informático de Gestión de
Pacientes, Control de la Alimentación y
Nutrición y Elaboración de Dietas
Personalizadas.
Carrera de Ingeniería en Sistemas Computacionales
Facultad de Ciencias Matemáticas y Físicas
Universidad de Guayaquil
16
MANUAL TECNICO
Diccionario de datos del Prototipo de Sistema Gestión de Pacientes, Control de la
Alimentación y Nutrición y Elaboración de Dietas Personalizadas.
Tabla: PERSONA
Tabla donde se registran datos generales de las Personas que se registraran para que accedan
al Sistema.
Campo Tipo de dato Longitud Descripción
codigo INT 11 Código Auto Numérico de Persona
nombres VARCHAR 30 Nombres de la Persona
apellidos VARCHAR 30 Apellidos
sexo ENUM ‘M’,’F’ Sexo
fechaNacimiento DATETIME
Fecha de Nacimiento
Tabla: PERFIL
Tabla donde se registran los distintos perfiles a los que puede ser establecido un usuario.
Campo Tipo de dato Longitud Descripción
Perfil_Cod INT 11 Código del Perfil
Descripcion VARCHAR 50 Descripción del Perfil
Estado ENUM ‘A’,’I’ Estado del Registro (Act./Inact.)
Tabla: USUARIO
Tabla donde se registran los usuarios para el ingreso a la aplicación.
Campo Tipo de dato Longitud Descripción
codigo INT 11 Código de la Persona (PK)
usuario VARCHAR 20 Nombre del Usuario
clave VARCHAR 40 Clave del Usuario
perfilCod INT 11 Código del Perfil (FK)
estado TINYINT 1 Estado del Usuario (Act./Inact.)
17
Tabla: MENU
Tabla en la cual encontramos el menú que será mostrado en la aplicación.
Campo Tipo de dato Longitud Descripción
codigo INT 11 Clave Primaria
nombre VARCHAR 50 Nombre del Menú
url VARCHAR 100 Link del Menú
tipo ENUM ‘S’,’I’ Indicador tipo de Menu (Principal (S)/Submenú (I))
codigo_submenu INT 11 Código si es SubMenu
estado BIT 1 Estado del Menu (Act./Inactivo)
Tabla: PERFILES_MENU
Tabla que relaciona al Menú que va hacer presentado de acuerdo al Perfil que tiene cada
usuario.
Campo Tipo de dato Longitud Descripción
CodPerfilMenu INT 11 Clave Primaria
PerfilCod INT 11 FK Clave Foránea (perfil)
MenuCod INT 11 FK Clave Foránea (menú)
Estado ENUM ‘A’,’I’ Estado del Perfil
Tabla: PACIENTE
Tabla en la cual se registra los datos personales de cada Paciente ingresado al
Sistema.
Campo Tipo de dato Longitud Descripción
Paciente_Cod INT 10 Clave Primaria
Paciente_Ced VARCHAR 10 Numero de Cedula
Paciente_Nom VARCHAR 30 Nombres del Paciente
Paciente_Ape VARCHAR 30 Apellidos del Paciente
Paciente_Sex ENUM ‘M’,’F’ Sexo del Paciente
Paciente_FchNac DATE
Fecha de Nacimiento
Paciente_Dir VARCHAR 200 Direccion del Paciente
Ciudad_Id INT 4 Ciudad donde Vive
Paciente_Email VARCHAR 100 Email
Paciente_Tlf INT 10 Teléfono del Paciente
Paciente_Ocup VARCHAR 30 Ocupación del Paciente
Paciente_EstCiv ENUM ‘S’,’C’,’V’,’D’ Estado Civil
Paciente_Estado ENUM ‘I’,’A’,’H’ Estado Transaccional del Paciente
Paciente_Sts ENUM ‘A’,’I’ Estado del Registro (Act./Inactivo)
18
Tabla: PROVINCIA
Tabla que registra todas las Provincias del País para registrar cada Paciente.
Campo Tipo de dato Longitud Descripción
Provincia_Cod INT 4 Clave Primaria
Provincia_Nom VARCHAR 30 Nombre de la Provincia
Provincia_Sts ENUM ‘A’,’I’ Estado del Registro (Act./Inact.)
Tabla: CIUDAD
Tabla que registra todas las Ciudades del País para relacionarlas con cada Paciente
Campo Tipo de dato Longitud Descripción
Ciudad_Cod INT 4 Clave Primaria
Provincia_Id INT 4 FK Clave Foránea (provincia)
Ciudad_Nom VARCHAR 30 Nombre de la Ciudad
Ciudad_Sts ENUM ‘A’,’I’ Estado del Registro (Act./Inact.)
Tabla: COMPCORP
Tabla que registra la Composición Corporal de cada Paciente.
Campo Tipo de dato Longitud Descripción
compcorp_Cod INT 10 Clave Primaria
paciente_Cod INT 10 FK Clave Foránea (paciente)
pesoActual FLOAT 5,2 Peso Actual del Paciente
Talla FLOAT 5,2 Talla del Paciente
Edad INT 3 Edad del Paciente
IMC FLOAT 5,2 Índice de Masa Corporal
pesoIdeal FLOAT 5,2 Peso Ideal del Paciente
PesoAjustado FLOAT 5,2 Peso Ajustado del Paciente
compcorp_Estado CHAR 20 Estado Nutricional del Paciente
compcorp_Sts ENUM ‘A’,’I’ Estado del Registro (Act./Inact.)
Tabla: EVAL_SUBJ
Tabla que registra la Evaluacion Subjetiva del Paciente para determinar si se encuentra
desnutrido.
Campo Tipo de dato Longitud Descripción
eval_subj_Id INT 6 Clave Primaria
Paciente_Cod INT 10 FK Clave Foránea (paciente)
peso_kg INT 3 Valor de Pérdida de Peso en Kg
peso_pct FLOAT 5,2 % de la Perdida del Peso
19
cambioPeso ENUM 'A','S','P' Cambio de Peso
Ingestión ENUM 'S','C' Ingestión del Paciente
tipo_dieta_ID INT 4 FK Clave Foránea (tipo de dieta)
sist_gastr ENUM 'N','Na','V','D','A' Sistema Gastroenterológico
cap_Func ENUM 'S','C' Capacidad Funcional
tipo_capac_Id INT 4 FK Clave Foránea (tipo_Capac)
diagnostico VARCHAR 200 Diagnóstico del Paciente
req_metab ENUM 'CE','SE','EL','EM','EI' Requerimientos Metabólicos
Resultado ENUM 'BN','MD','GD' Resultado de Evaluación
eval_subjSts ENUM 'A','I' Estado del Registro
Tabla: TIPO_DIETA
Tabla que registra los distintos Tipos de Dietas.
Campo Tipo de dato Longitud Descripción
tipo_dietaId INT 4 Clave Primaria
tipo_dietaNom VARCHAR 50 Nombre de la Dieta
tipo_dietaSts FLOAT ‘A’,’I’ Estado del Registro
Tabla: TIPO_CAPAC
Tabla que registra los Tipos de Capacidad del Paciente.
Campo Tipo de dato Longitud Descripción
tipo_capacID INT 4 Clave Primaria
tipo_capacNom VARCHAR 50 Nombre del Tipo de Capacidad
tipo_capacSts FLOAT ‘A’,’I’ Estado del Registro
Tabla: ALIMENTO
Tabla que registra los distintos Alimentos extraídos de la Tabla de Composición de Alimentos
Ecuatorianos.
Campo Tipo de dato Longitud Descripción
alimento_cod INT 6 Clave Primaria
alimento_tipo INT 4 FK Clave Foránea (tipo de Alimento)
alimento_nom CHAR 40 Nombre del Alimento
humedad FLOAT Valor de Humedad
calorias FLOAT Valor de Caloria del Alimento
proteina FLOAT Valor de la Proteina
extracto FLOAT Valor de Grasa del Alimento
carboTotales FLOAT Valor de Carbonato Totales
20
CarboFibra FLOAT Valor de Carbonato Fibra
ceniza FLOAT Valor de Ceniza
calcio FLOAT Valor de Calcio del Alimento
fosforo FLOAT Valor del Fosforo
hierro FLOAT Valor del Hierro
caroteno FLOAT Valor de la Vitamina A
tiamina FLOAT Valor de la Vitamina B1
riboflavina FLOAT Valor de la Vitamina B2
niacina FLOAT Valor de la Vitamina B3
ac_ascorb FLOAT Valor de la Vitamina C
Tabla: TIPO_ALIMENTO
Tabla que registra los distintos tipos o grupos de Alimentos a los que pertenece cada
alimento.
Campo Tipo de dato Longitud Descripción
tipo_cod INT 4 Clave Primaria
tipo_alim_desc VARCHAR 60 Nombre del Tipo de Alimento
tipo_alim_sts ENUM 'A','I' Estado del Registro
Tabla: ANALITICO
Tabla que registra los parámetros necesarios considerados en la realización de Exámenes de
Laboratorio.
Campo Tipo de dato Longitud Descripción
Analiti_Cod INT 4 Clave Primaria
TipoAnali_Cod INT 4 FK Clave Foránea (Tipo de Examen de Laboratorio)
Analiti_Param VARCHAR 20 Nombre del Parámetro de Analisis
Analiti_VMin FLOAT Valor Mínimo
Analiti_VMax FLOAT Valor Máximo
Analiti_Med VARCHAR 50 Medida
Analiti_Valor FLOAT Valor de Ingreso en Examen
Analiti_Sts ENUM 'A','I' Estado del Registro
Tabla: TIPO_ANALISIS
Tabla que registra los distintos tipos de Exámenes de Laboratorio.
Campo Tipo de dato Longitud Descripción
TipoAnali_Cod INT 4 Clave Primaria
TipoAnali_Nom VARCHAR 20 Nombre del Tipo de Análisis
21
TipoAnali_Sts ENUM 'A','I' Estado del Registro
Tabla: ANALITPACTE
Tabla que registra los Analisis Clínico realizados a los Pacientes.
Campo Tipo de dato Longitud Descripción
AnalitPacte_Cod INT 6 Clave Primaria
Paciente_Cod INT 10 FK Clave Foránea (paciente)
Analiti_Cod INT 4 FK Clave Foránea (analítico)
AnalitPacte_Valor FLOAT
Valor de Analisis del Paciente
AnalitPacte_Observ VARCHAR 20 Observación del Analisis
AnalitPacte_Sts ENUM 'A','I' Estado del Registro
Estructura del proyecto
La realización del proyecto se basó en el patrón de arquitectura MVC (Modelo Vista
Controlador):
En la capa de la Vista se realizan las interacciones realizadas para generar las
Interfaces mostradas al Usuario.
En la Capa del Modelo se plantea las entidades de la base de datos y la lógica
de negocio.
En la Capa de Controladores es donde se realiza la interacción de la vista con
el modelo.
Para el diseño de las Interfaces se escogió el framework de Primefaces para darle un
mayor enriquecimiento a los Componentes.
Para el despliegue del Sistema se utilizó el servidor de Glassfish en su versión 4.1.
brindada al momento de instalar el IDE de desarrollo para lo cual se escogió Netbeans
en su versión 8.0.2, en cual se creó la siguiente estructura detallada en la imagen.
22
Dentro de la Carpeta Web Pages se creó la carpeta Protegido en donde encontramos
todas las páginas que son mostradas al usuario para la interacción con la aplicación.
En la carpeta Source Packages se encuentran las Clases Java en las cuales se
establece la funcionalidad que va a tener la aplicación.
Los paquetes correspondientes al módulo de Acceso a la aplicación son:
En el Paquete com.controller se encuentran las Clases Java encargas de recibir las
peticiones de las distintas páginas web y en donde se interactúan con los EJB y se
define la lógica del negocio para darle una respuestas a las peticiones.
En el Paquete com.model encontraremos las definiciones de las entidades las cuales
representan a cada una de las tablas de la base de datos.
23
En el Paquete com.ejb se definen los Enterprise de Java Bean que son interfaces de
programación (API) en donde se embeben la transaccionalidad, persistencia,
seguridades, etc.
En el Paquete com.reportes se encuentran las Clases Java para llamar a los
reportes compilados con IReport para mostrarlos en las interfaces gráficas.
En el Paquete com.view se encuentran las Clases Java que definen los distintos
componentes por lo que están compuestos las Interfaces gráficas.
Carpeta Web Pages
Archivo index.html
Contiene la Pagina de Inicial de Login del Usuario de la Aplicación.
Archivo principal.xhmtl
Contiene código html en donde se define la pantalla Principal mostrada al Usuario
logueado, en donde se presenta su menú de Opciones de acuerdo a cada perfil.
Carpeta operario
Archivo nuevopaciente.xhtml
Contiene código html y Primefaces en donde se presenta formulario principal
de registro de los pacientes.
Archivo paciente.xhtml
Contiene código html y componentes Primefaces en donde se puede buscar los
pacientes ingresados al Sistema ingresando el Numero de Cedula.
24
Archivo selec_pacte.xhtml
Contiene código html y componentes de Primefaces en esta opción se permite
actualizar el estado de transaccionalidad del Paciente para trabajar en las demás
opciones del sistema.
Archivo comp_corporal.xhtml
Contiene código html y componentes de Primefaces en donde se muestra formulario
para registrar Composición Corporal del Paciente y permite determinar su Estado
Nutricional.
Archivo hist_clinica.xhtml
Contiene código html y componentes de Primefaces en donde se muestra formulario
para realizar la evaluación subjetiva del Paciente y poder determinar si dicho paciente
padece desnutrición
Archivo dat_histClin.xhtml
Contiene código html y componentes de Primefaces en donde se muestra formulario
para registrar Antecedentes Patológicos Propios y de Familiares del Paciente.
Archivo busc_alim.xhtml
Contiene código html y componentes de Primefaces en donde se muestra la tabla de
Composición de Alimentos y permite ir seleccionando los componentes necesarios
para elaborar un plan de dieta personalizado que cumplan con los requerimientos
energéticos del paciente.
Archivo analisis_lab.xhtml
Contiene código html y componentes de Primefaces se muestra los distintos tipos de
exámenes clínicos realizados a los pacientes y permite registrar los valores de
exámenes de cada paciente.
Archivo permisos.xhtml
Contiene código html en donde se re direcciona a esta página cuando se quiere
acceder a un recurso protegido del sistema.
25
Carpeta administrador
Archivo usuario.xhtml
Contiene código html y componentes de Primefaces en donde se muestra
formulario de registros de usuarios realizado por el usuario Administrador del
Sistema.
Carpeta Resources
En esta carpeta se encuentran los Hojas de Estilos CSS y JavaScript para darle
mejor vistosidad a los componentes de las Interfaces Graficas y ciertas
configuraciones de los componentes.
Paquete com.controller
Clase que sirve de intermediarios entre las páginas web y las Clases de Session Bean
en donde se realiza una especificación detallada de cómo los servidores de
aplicaciones proveen objetos desde el lado del servidor para enviar una respuesta al
usuario.
AnalitPacteController.java
BuscarController.java
EvalSubjController.java
IndexController.java
MenuController.java
MenuController.java
PacienteController.java
PlantillaController.java
TipoAnalisisController.java
UsuarioController.java
26
Ejemplo: UsuarioController.java
package com.controller;
import com.ejb.PerfilFacadeLocal;
import com.ejb.UsuarioFacadeLocal;
import com.model.Perfil;
import com.model.Persona;
import com.model.Usuario;
import java.io.Serializable;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.faces.view.ViewScoped;
import javax.inject.Named;
@Named
@ViewScoped
public class UsuarioController implements Serializable
{
@EJB
private UsuarioFacadeLocal usuarioEJB;
private Usuario usuario;
private Persona persona;
@EJB
private PerfilFacadeLocal perfilEJB;
private List<Perfil> listaPerfil;
@PostConstruct
public void init()
27
{
listaPerfil = perfilEJB.findAll();
usuario = new Usuario();
persona = new Persona();
}
public Usuario getUsuario()
{
return usuario;
}
public void setUsuario(Usuario usuario)
{
this.usuario = usuario;
}
public Persona getPersona()
{
return persona;
}
public void setPersona(Persona persona)
{
this.persona = persona;
}
public List<Perfil> getListaPerfil()
{
return listaPerfil;
}
public void setListaPerfil(List<Perfil> listaPerfil)
{
this.listaPerfil = listaPerfil;
}
28
public void registrar()
{
Usuario us = (Usuario)FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("usuario");
try{
this.usuario.setCodigo(persona);
this.usuario.setPerfilcod(us.getPerfilcod());
usuarioEJB.create(usuario);
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,"Aviso","Se registro con exito"));
}catch(Exception e){
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL,"Aviso","Error"));
}
}
}
public List<Menu_Perfil> LMenuPerfil(Integer idperfil) throws Exception
{
List<Menu_Perfil> lista = new ArrayList<Menu_Perfil>();
ResultSet rset = com.Query("select a.descripcion, a.id_menus, COALESCE(b.perfiles_id_perfiles, 0) as perfiles_id_perfiles, COALESCE(b.estado,'I') as estado, b.id_menus_perfiles\n"
+ " from menus a\n"
+ " left outer join menus_perfiles b\n"
+ " on b.menus_id_menus = a.id_menus\n"
+ " and b.perfiles_id_perfiles = " + idperfil);
while (rset.next()) {
Menu_Perfil per = new Menu_Perfil();
per.setId_menus_perfiles(rset.getInt("id_menus_perfiles"));
per.setDescripcion(rset.getString("descripcion"));
per.setEstado(rset.getString("estado"));
per.setMenus_id_menus(rset.getInt("id_menus"));
29
per.setPerfiles_id_perfiles(rset.getInt("perfiles_id_perfiles"));
lista.add(per);
}
return lista;
}
}
Paquete com.model
Clases java que representan a las entidades de la base de datos y permite encapsular
el objeto. Las clases del módulo de acceso al sistema son:
Alimento.java
Analitico.java
Analitpacte.java
Ciudad.java
CompCorp.java
Dieta.java
DietasPacte.java
Eval_Subj.java
GrupoAlimento.java
Menu.java
Paciente.java
Perfil.java
PerfilesMenu.java
Persona.java
Provincia.java
TipoAnalisis.java
TipoCapacidad.java
TipoDieta.java
Usuario.java
30
Ejemplo: Perfil.java
package com.model;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name = "perfil")
public class Perfil implements Serializable
{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int perfil_cod;
@Column(name = "Descripcion")
private String descripcion;
@Column(name = "Estado")
private String estado;
public int getPerfil_cod()
{
return perfil_cod;
}
31
public void setPerfil_cod(int perfil_cod)
{
this.perfil_cod = perfil_cod;
}
public String getDescripcion()
{
return descripcion;
}
public void setDescripcion(String descripcion)
{
this.descripcion = descripcion;
}
public String getEstado()
{
return estado;
}
public void setEstado(String estado)
{
this.estado = estado;
}
}
Paquete com.ejb
Clases Java en donde se definen los Patrones de Diseño de Tipo Facade en donde
se definen métodos simplificados requeridos por el cliente y los controller son los
encargados de llamar a los métodos de clases del sistema existente.
AbstractFacade.java
AlimentoFacade.java
AlimentoFacadeLocal.java
32
AnaliticoFacade.java
AnaliticoFacadeLocal.java
AnalitpacteFacade.java
AnalitpacteFacadeLocal.java
CiudadFacade.java
CiudadFacadeLocal.java
CompCorpFacadeLocal.java
Eval_SubjFacade.java
Eval_SubjFacadeLocal.java
MenuFacade.java
MenuFacadeLocal.java
Ejemplo MenuFacadeLocal.java
package com.ejb;
import com.model.Menu;
import java.util.List;
import javax.ejb.Local;
@Local
public interface MenuFacadeLocal
{
void create(Menu menu);
void edit(Menu menu);
void remove(Menu menu);
Menu find(Object id);
List<Menu> findAll();
List<Menu> findRange(int[] range);
List<Menu> MenuPerfiles(String usuario);
int count();
}
33
Ejemplo MenuFacade.java
package com.ejb;
import com.model.Menu;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
@Stateless
public class MenuFacade extends AbstractFacade<Menu> implements MenuFacadeLocal
{
@PersistenceContext(unitName = "NutriPU")
private EntityManager em;
@Override
protected EntityManager getEntityManager()
{
return em;
}
public MenuFacade()
{
super(Menu.class);
}
@Override
public List<Menu> MenuPerfiles(String usuario)
{
List<Menu> lista;
try{
34
String jpql = "SELECT m FROM Menu m,PerfilesMenu pm ,Usuario u where m.codigo =
pm.menucod.codigo and pm.perfilcod = u.perfilcod and u.usuario = ?1";
Query query = em.createQuery(jpql);
query.setParameter(1,usuario);
lista = query.getResultList();
}catch(Exception e)
{
throw e;
}
return lista;
}
}