Disertación de Grado – ESIS – 2016 – PUCE SDPalma camacho

Page 1

PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO

Dirección Académica - Escuela de Sistemas

DESARROLLO E IMPLEMENTACIÓN DE UNA APLICACIÓN PARA LA GESTIÓN DE LA INFORMACIÓN DEL CENTRO DE FAENAMIENTO MUNICIPAL DEL CANTÓN PEDRO VICENTE MALDONADO GADMCPVM PARA EL DEPARTAMENTO DE GESTIÓN Y DESARROLLO SUSTENTABLE DURANTE EL PERÍODO 2015-2016 Trabajo de Titulación previo a la obtención del título de Ingenieros de Sistemas y Computación

Línea de Investigación: Estudio, Diseño e Implementación de Software

Autores: JEREMY RENATO CAMACHO ZAPATA ALEX DARÍO PALMA RIVERA

Director: Mg. DIEGO RICARDO SALAZAR ARMIJOS

Santo Domingo – Ecuador Febrero, 2016


PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO

Dirección Académica – Escuela de Sistemas

HOJA DE APROBACIÓN

DESARROLLO E IMPLEMENTACIÓN DE UNA APLICACIÓN PARA LA GESTIÓN DE LA INFORMACIÓN DEL CENTRO DE FAENAMIENTO MUNICIPAL DEL CANTÓN PEDRO VICENTE MALDONADO GADMCPVM PARA EL DEPARTAMENTO DE GESTIÓN Y DESARROLLO SUSTENTABLE DURANTE EL PERÍODO 2015-2016 Línea de Investigación: Estudio, Diseño e Implementación de Software Autores: JEREMY RENATO CAMACHO ZAPATA ALEX DARÍO PALMA RIVERA

Diego Ricardo Salazar Armijos, Mg.

f.

DIRECTOR DEL TRABAJO DE TITULACIÓN

Jon Azcona Esteban, Mg.

f.

CALIFICADOR

Willian Javier Ocampo Pazos, Mg.

f.

CALIFICADOR

Rodolfo Sirilo Córdova Galvez, Mg.

f.

DIRECTOR DE LA ESCUELA DE SISTEMAS

Santo Domingo – Ecuador Febrero, 2016


iii

DECLARACIÓN DE AUTENTICIDAD Y RESPONSABILIDAD

Yo, Alex Darío Palma Rivera portador de la cédula de ciudadanía Nº. 171750833-5 declaro que los resultados obtenidos en la investigación que presento como informe final, previo a la obtención del Grado de Ingeniero en Sistemas y Computación son absolutamente originales, auténticos y personales.

En tal virtud, declaro que el contenido, las conclusiones y los efectos legales y académicos que se desprenden del trabajo propuesto de investigación y luego de la redacción de este documento son y serán de mi sola y exclusiva responsabilidad legal y académica.

Alex Darío Palma Rivera CI 1717508335


iv

DECLARACIÓN DE AUTENTICIDAD Y RESPONSABILIDAD

Yo, Jeremy Renato Camacho Zapata portador de la cédula de ciudadanía Nº 230010362-5 declaro que los resultados obtenidos en la investigación que presento como informe final, previo a la obtención del Grado de Ingeniero en Sistemas y Computación son absolutamente originales, auténticos y personales.

En tal virtud, declaro que el contenido, las conclusiones y los efectos legales y académicos que se desprenden del trabajo propuesto de investigación y luego de la redacción de este documento son y serán de mi sola y exclusiva responsabilidad legal y académica.

Jeremy Renato Camacho Zapata CI 2300103625


v

AGRADECIMIENTO Agradecemos en primera instancia a Dios por brindarnos su fuerza en el día a día para creer en lo que parecía imposible finalizar. Además de protegernos constantemente de los males que habitan en el mundo. A la Pontificia Universidad Católica Sede Santo Domingo por ser nuestro segundo hogar al habernos aceptados como sus estudiantes y formarnos como profesionales competentes para desenvolvernos en cualquier situación que nos encontremos. A nuestros docentes quienes nos brindaron de sus conocimientos impartidos, así también de su amistad y confianza desde los inicios de nuestra formación en la universidad. Y para finalizar damos las gracias a nuestros padres, familiares y seres queridos que nos han proporcionado con su amor, apoyo y comprensión que sirvieron como motivación para seguir adelante y triunfar en las dificultades que se han presentado.

Alex & Jeremy


vi

DEDICATORIA A nuestros padres, quienes han sido la guía y camino para llegar a esta etapa de nuestra carrera, inculcándonos desde temprana edad valores y principios morales, además que con su ejemplo y palabras de ánimo para que no bajásemos los brazos más aun cuando se complicaba todo. Les dedicamos nuestro amor, esfuerzo y sobre todo nuestro respeto. Alex & Jeremy


vii

RESUMEN El presente proyecto de disertación de grado permite gestionar, llevar de una forma organizada y ordenada la información perteneciente al Centro de Faenamiento del Departamento de Gestión y Desarrollo Sustentable (DGDS) del GAD Municipal de Pedro Vicente Maldonado. CACF (Control y Administración de la información del Centro de Faenamiento) se lo ha desarrollado ante el problema que la información en dicho departamento actualmente se lo está realizando de manera manual llevando registros escritos, así mismo en hojas de cálculo con el riesgo de que la información previamente capturada llegasen a ser datos perdidos o incluso podrían llegar a tener un grado de duplicidad. La aplicación informática consta de una interfaz intuitiva y amigable para el usuario, divida en módulos con sus respectivas funcionalidades e igualmente cuentan con sus respectivas validaciones las cuales permiten verificar la documentación a ser registrada de tal manera la aplicación concede la generación de reportes que permite evidenciar el trabajo que se ejecuta en departamento.


viii

ABSTRACT This dissertation project permits to manage in an organized and orderly manner the information pertaining to Centro de Faenamiento del Departamento de Gestiรณn y Desarrollo Sustentable of GAD at the municipality of Pedro Vicente Maldonado. The CACF (Control y Administraciรณn de la informaciรณn del centro de Faenamiento) has the problem about the manner in wich information in the department is being handled. Currently, information is processed by manually writing it on spreadsheets. This method presents the risk losing the information or having inconsistencies in the data. The program application is intuitive and user friendly. It is divided into modules with respective capabilities and respective validations that permits verification of documents registered in such a manner that the program application generates reports that can be used as evidence of the work done in the department.


ix

ÍNDICE CONTENIDOS

1.

INTRODUCCIÓN ....................................................................................................... 1

2.

PLANTEAMIENTO DEL PROBLEMA .................................................................... 3

2.1.

Antecedentes ............................................................................................................... 3

2.2.

Problema de la Investigación ...................................................................................... 5

2.2.1.

Preguntas básicas......................................................................................................... 5

2.3.

Justificación de la Investigación ................................................................................. 6

2.4.

Objetivos de la Investigación ...................................................................................... 7

2.4.1.

Objetivo General ......................................................................................................... 7

2.4.2.

Objetivos específicos................................................................................................... 8

3.

MARCO REFERENCIAL........................................................................................... 9

3.1.

Revisión de la Literatura o Fundamentos Teóricos ................................................... 11

3.1.1.

Informática ................................................................................................................ 11

3.1.2.

Ingeniería de software ............................................................................................... 12

3.1.3.

Base de datos ............................................................................................................. 21

3.1.4.

Ingeniería web ........................................................................................................... 24

3.1.5.

Herramientas para el desarrollo web ......................................................................... 26


x

3.1.6.

Comparación entre herramientas de desarrollo de Software ..................................... 27

3.1.7.

Selección de herramientas de desarrollo ................................................................... 29

3.2.

Investigaciones o experiencias empíricas vinculadas con la investigación .............. 30

4.

METODOLOGÍA DE LA INVESTIGACIÓN ......................................................... 31

4.1.

Diseño/ Tipo de Investigación .................................................................................. 31

4.1.1.

Diseño Experimental ................................................................................................. 31

4.1.2.

Tipos de Investigación .............................................................................................. 32

4.2.

Población / Universo ................................................................................................. 32

4.3.

Muestra ...................................................................................................................... 33

4.4.

Instrumentos de recogida de datos ............................................................................ 33

4.4.1.

Técnicas de Recogida de Datos ................................................................................. 33

4.4.2.

Instrumentos para la recogida de Información .......................................................... 34

4.5.

Técnicas de Análisis de Datos ................................................................................... 35

4.6.

Metodología de desarrollo de Software .................................................................... 35

4.6.1.

Programación Extrema .............................................................................................. 35

5.

RESULTADOS ......................................................................................................... 37

5.1.

Discusión y Análisis de los resultados ...................................................................... 37

5.1.1.

Entrevista realizada al Departamento de Gestión y Desarrollo Sustentable ............. 37


xi

5.1.2.

Encuesta realizada al Departamento de Gestión y Desarrollo Sustentable ............... 39

5.2.

Proceso XP ................................................................................................................ 44

5.2.1.

Etapa 1: Planeación ................................................................................................... 44

5.2.2.

Etapa 2: Diseño ......................................................................................................... 54

5.2.3.

Etapa 3: Codificación ................................................................................................ 59

5.2.4.

Etapa 4: Pruebas ........................................................................................................ 60

5.3.

Conclusiones ............................................................................................................. 63

5.4.

Recomendaciones ...................................................................................................... 64

REFERENCIAS ....................................................................................................................... 65 ANEXOS …………………………………………………………………………………….66


xii

ÍNDICE DE TABLAS Tabla 1. Marco referencial ....................................................................................................... 10 Tabla 2. Comparativa entre metodologías de desarrollo ágiles ............................................... 21 Tabla 3. Comparativa PostgreSql vs MySql vs Oracle ............................................................ 24 Tabla 4. Experiencias empíricas .............................................................................................. 30 Tabla 5. Resultado de la primera pregunta de la encuesta al personal del DGDS ................... 39 Tabla 6. Resultado de la segunda pregunta de la encuesta al personal del DGDS .................. 40 Tabla 7. Resultado de la tercera pregunta de la encuesta al personal del DGDS .................... 41 Tabla 8. Resultado de la cuarta pregunta de la encuesta al personal del DGDS ..................... 42 Tabla 9. Resultado de la quinta pregunta de la encuesta al personal del DGDS ..................... 43 Tabla 10. Cronograma de Actividades..................................................................................... 51


xiii

ÍNDICE DE FIGURAS Figura 1. Documentos de requerimientos ................................................................................ 16 Figura 2. Comparativa de metodologías de desarrollo de software ......................................... 20 Figura 3. Comparativa de metodologías de desarrollo de software ......................................... 21 Figura 4. Componentes de un Sistema PostgreSQL ................................................................ 23 Figura 5. Figura de resultado de la primera pregunta de la encuesta del departamento DGDS. .................................................................................................................................................. 39 Figura 6. Figura de resultado de la segunda pregunta de la encuesta del departamento DGDS. .................................................................................................................................................. 40 Figura 7. Figura de resultado de la tercera pregunta de la encuesta del departamento DGDS. .................................................................................................................................................. 41 Figura 8. Figura de resultado de la cuarta pregunta de la encuesta del departamento DGDS. 42 Figura 9. Figura de resultado de la quinta pregunta de la encuesta del departamento DGDS. 43 Figura 10. Módulos del sistema ............................................................................................... 45 Figura 11. Historia de usuario, parametrización del sistema ................................................... 45 Figura 12. Historia de usuario, ingreso de usuarios ................................................................. 46 Figura 13. Historia de usuario, administración de usuarios ..................................................... 46 Figura 14. Historia de usuario, reporte de usuarios ................................................................. 47 Figura 15. Historia de usuario, registro de especies ................................................................ 47


xiv

Figura 16. Historia de usuario, registro de introductores......................................................... 48 Figura 17. Historia de usuario, registro de tercenista .............................................................. 48 Figura 18. Historia de usuario, registro de vehículos .............................................................. 49 Figura 19. Historia de usuario, reporte de especies ................................................................. 49 Figura 20. Historia de usuario, reporte de introductores y tercenistas..................................... 50 Figura 21. Valoración de historias de usuario ......................................................................... 52 Figura 22. Planificación en tiempo calendario ........................................................................ 52 Figura 23. Esfuerzo de desarrollo del proceso XP ................................................................... 53 Figura 24. Plan de entrega del proyecto................................................................................... 53 Figura 25. Tarjeta CRC, parametrización del sistema ............................................................. 54 Figura 26. Tarjeta CRC, administración de usuarios ............................................................... 55 Figura 27. Tarjeta CRC, administración de faenamiento ........................................................ 56 Figura 28. Diseño físico de la base de datos ............................................................................ 57 Figura 29. Diseño lógico de la base de datos ........................................................................... 58 Figura 30. Prueba de aceptación, parametrización del sistema ............................................... 60 Figura 31. Prueba de aceptación, registro y administración de usuarios ................................. 61 Figura 32. Prueba de aceptación, administración de registros del faenamiento ...................... 62


1

1. INTRODUCCIÓN El avance tecnológico actualmente constituye una herramienta fundamental, permitiendo automatizar las tareas diarias además de ofrecer servicios de una manera eficiente y competitiva a las personas naturales y jurídicas que las emplean. En este contexto, el Gobierno Autónomo Descentralizado Municipal de Pedro Vicente Maldonado considera pertinente implementar una aplicación Web para gestionar la información del Departamento de Gestión y Desarrollo Sustentable DGDS en lo que respecta a su Centro de Faenamiento, permitiendo que los trámites que actualmente se realizan en el mencionado Centro de forma manual, se automaticen y se procesen de una forma ágil para la obtención de información necesaria para su gestión administrativa. El proyecto que se desarrolló maneja de forma óptima la información que ingresa al Centro de Faenamiento, con el fin de llevar un adecuado control de ingreso de información del ganado, rastros y similares que se encuentran circunscritos a la jurisdicción del cantón Pedro Vicente Maldonado. Mediante el sistema informático el Centro de Faenamiento del DGDS se podrá realizar consultas y generar reportes útiles derivados del procesamiento de la información especificada en el párrafo anterior para el referido Departamento, para el GAD Municipal de Pedro Vicente Maldonado y para la comunidad residente de dicho cantón. Para los fines antes descritos se propone en una primera fase dar a conocer los antecedentes del problema de investigación que se desarrollará en el Centro de Faenamiento, por consiguiente se detallará la historia de la municipalidad, el departamento en el cual se va a concentrar la investigación.


2

En una segunda fase se aborda el marco referencial mediante el cual se llevará temas principales, conceptos relacionados con el diseño del software, en el que se incluyen la metodología de desarrollo a utilizarse, arquitectura de la información y definición de las herramientas de desarrollo. En la tercera fase se describe el tipo de investigación a utilizarse, además de variables e indicadores pertenecientes al proyecto, incluyendo la especificación de los métodos y técnicas a emplear para la recolección y análisis de los datos En una cuarta fase se detalla las fuentes de información que se utilizarán para el desarrollo de la disertación de grado.


3

2. PLANTEAMIENTO DEL PROBLEMA 2.1.

Antecedentes

Según información proporcionada por el GAD Municipal del cantón Pedro Vicente Maldonado (2014) se puede mencionar lo siguiente: Pedro Vicente Maldonado está ubicado al noroccidente de la provincia de Pichincha, en primera instancia nace jurídicamente como recinto de la parroquia de San Miguel de los Bancos, posteriormente se firma un decreto en donde la parroquia de Pedro Vicente Maldonado pasa a pertenecer al cantón Quito, estableciendo de esta manera sus límites políticos y administrativos. Actualmente el cantón de Pedro Vicente Maldonado está representado por su alcalde el Ing. Walter Fabrisio Ambuludi Bustamante quien promulga el respeto, lealtad y perseverancia para llevar a cabo todos los procesos que se rigen en su administración. Debido al avance e incorporación de nuevas tecnologías y el prestigio que se ha ganado el Municipio de Pedro Vicente Maldonado, se ha decidido implementar aplicaciones informáticas para ir a la vanguardia del uso de las TIC, además en la actualidad se requiere dejar de usar mecanismos precarios para el registro de información de sus diferentes actividades administrativas Así es el caso de la información generada en el Centro de Faenamiento del Departamento de Gestión y Desarrollo Sustentable del mencionado GAD Municipal que actualmente registra de forma manual la información correspondiente al ganado, rastros y otra información que requiere para su gestión administrativa.


4

Al no contar con un sistema o herramienta informática, la información generada por la referida Dependencia no permite un procesamiento oportuno de la misma, así como también provoca pérdidas, duplicidad de la información y errores para la toma de decisiones del Departamento; asimismo dificulta el seguimiento y entrega oportuna de la información a los usuarios y potenciales usuarios de la misma. Por lo expresado el Centro de Faenamiento estima importante y pertinente contar con una herramienta informática que le permita mejorar su gestión administrativa, a través de un manejo eficiente de la información que genera y administra. Para ello resulta importante modelar, diseñar e implementar un sistema que se adapte a sus condiciones específicas y que a su vez sea de carácter general, considerando que los diferentes GADs Municipales a nivel nacional manejan similares procesos, en lo que respecta a la gestión del ganado, rastros y similares para fines de faenamiento. De esta manera, se considera importante desarrollar un sistema para la gestión del faenamiento y el registro de información relativa al ganado, rastros y similares, en virtud de que el proyecto que se pretende implementar podría ser aplicado a varios GADs Municipales a nivel nacional, lo que implicaría innovación tecnológica, enmarcando el proyecto dentro del objetivo 11 del Plan Nacional del Buen Vivir 2013-2017, que hace referencia al impulso de la tecnología y a la generación de nuevos conocimiento para la sociedad de la información. Con el desarrollo del presente proyecto, se facilitará la gestión administrativa del Centro de Faenamiento del Departamento de Gestión y Desarrollo Sustentable del GAD Municipal de Pedro Vicente Maldonado, en lo referente a los procesos derivados de la información que utiliza para cumplir con sus fines específicos.


5

2.2.

Problema de la Investigación

Actualmente, el manejo de la información del Centro de Faenamiento se realiza de manera manual, siendo tal método un inconveniente al momento de administrar los registros correspondientes del ganado, rastros y demás información que utiliza la referida Unidad para el cumplimiento de sus funciones. El registro manual de la información provoca entre otros aspectos, la duplicidad de la información (duplicidad de esfuerzos), lentitud en el registro de la información lo que resulta muy tedioso para los funcionarios que lo realizan, dificultad en el proceso de la información, búsqueda y obtención de estadísticas. 2.2.1.

Preguntas básicas 

¿De qué modo facilitará la aplicación informática la gestión y el control de la información, en el centro de Faenamiento perteneciente a DGDS en el GADMCPVM?

¿Cuál será el mecanismo para realizar un seguimiento y control de la información en el centro Faenamiento de la municipalidad?

¿Qué metodología de desarrollo de software resulta mejor en el desarrollo de la aplicación informática para el centro de Faenamiento de la municipalidad?

¿Cuáles serán las herramientas más apropiadas para el desarrollo de la solución informática establecida para el Centro de Faenamiento de la municipalidad?

¿La aplicación informática se acomodará y cumplirá con los requerimientos establecidos y las expectativas generadas en el Departamento de Gestión y Desarrollo Sustentable DGDS?


6

2.3.

Justificación de la Investigación

Es de importancia para la gestión del Centro de Faenamiento del GAD Municipal de Pedro Vicente Maldonado, llevar de una forma organizada y ordenada la información del ganado, rastros y similares que les permitan cumplir con sus funciones administrativas, así como también les permitan la toma de decisiones y la evaluación de estadísticas para el control sanitario, inocuidad alimentaria y otros relacionados para fines de mantener adecuadas condiciones para el faenamiento del ganado y especies respectivas. Con el desarrollo del proyecto se organizará la información mediante mecanismos para conseguir integridad, seguridad y procesamiento rápido de la información para consultas y reportes; además se utilizará una aplicación informática con interfaz de fácil acceso y uso de los clientes del sistema, reduciendo los tiempos de procesamiento de la información, contribuyendo de esta forma a la mejora de las actividades y funciones del Centro de Faenamiento del GAD de Pedro Vicente Maldonado. El proyecto se considera factible, debido a que posee el respaldo del GAD Municipal del cantón Pedro Vicente Maldonado, proporcionando la información necesaria para el desarrollo e implementación del proyecto propuesto; así como disponer de la infraestructura tecnológica necesaria para la ejecución del mismo. Con el uso del sistema se propone mejorar servicios y optimizar los inconvenientes encontrados, de tal manera que se reduzcan tiempos en el registro de información para cada proceso requerido por el Centro de Faenamiento, implementando en la aplicación controles de información y redundancia de los datos, haciendo que el sistema genere reportes y estadísticas, proporcionando datos reales y actualizados constantemente a los usuarios del mismo, reduciendo la utilización de recursos facilitando el registro de la información.


7

Se estima que el presente proyecto podría influir en los siguientes aspectos: 

Impacto económico derivado del menor tiempo de trabajo de los funcionarios que se encargan del registro de la información y del uso del papel que implica ocupación de espacio.

Impacto social, en virtud de que el GAD de Pedro Vicente Maldonado a través de su Centro de Faenamiento, prestará un mejor servicio a los pobladores del Catón,

Impacto productivo y de salud, por un mejor y oportuno control del ganado para su Faenamiento.

De conformidad con lo descrito, el presente proyecto se circunscribirá al “Desarrollo e implementación de una aplicación para la gestión de la información del Centro de Faenamiento Municipal del cantón Pedro Vicente Maldonado GADMCPVM para el Departamento de Gestión y Desarrollo Sustentable durante el período 2015-2016”. La creación de una aplicación para el control del centro de faenamiento Municipal del cantón Pedro Vicente Maldonado puede replicarse en otros GAD municipales constituyéndose en una alternativa innovadora alineada con el objetivo 11 del Plan Nacional del Buen Vivir 2013-2017, que hace referencia al impulso de la tecnología y a la generación de nuevos conocimiento para la sociedad de la información.

2.4.

Objetivos de la Investigación

2.4.1.

Objetivo General

Implementar una aplicación para la gestión efectiva de la información, control de los servicios y procesos realizados por el Centro de Faenamiento del Departamento de Gestión y


8

Desarrollo Sustentable (DGDS) del Gobierno Autónomo Descentralizado Municipal del cantón Pedro Vicente Maldonado (GADMPVM). 2.4.2.

Objetivos específicos 

Plantear un modelo de datos en función de los procesos y transacciones que se realizan en el centro de Faenamiento Municipal de Pedro Vicente Maldonado, para fines de registro del ganado.

Establecer las especificaciones y requerimientos (SRS) necesarios para cumplir con las perspectivas generadas de la aplicación informática.

Determinar las herramientas adecuadas para el desarrollo del software para el Centro de Faenamiento.

Establecer la metodología de desarrollo de software, que se adapte a los procesos de información realizados en el Centro de Faenamiento.

Diseñar la aplicación para la gestión efectiva de la información, control de los servicios y procesos realizados.


9

3. MARCO REFERENCIAL El marco referencial abarca los conceptos de relevancia provenientes de investigaciones de diferentes autores, además de aportar y fortalecer el conocimiento a los disertantes, estos temas a tratar son de aspecto relevante tales como: Informática en donde se explica de manera clara y precisa sus derivados como: Sistemas Informáticos, Hardware, Software, Usuarios Además de temas como Ingeniería de Software de donde se desprenden conceptos y modos de programación para poder desarrollar el Software que será implementado el Departamento de Gestión y Desarrollo Sustentable DGDS el municipio de Pedro Vicente Maldonado. Otro apartado es la Base de Datos, su contenido explicara el manejo de la información como se va a administrarla, para tener datos o información de manera más eficiente para el personal del departamento y como se relacionaran los datos almacenados en la base de datos; Ingeniería Web, se manifestará conceptos relacionados al alojamiento de la página web, además de servidor, dominio y entre otros. Herramientas para el desarrollo Web, se presentaran las herramientas que se utilizaran para el desarrollo de la aplicación Web tales como: HTML, PHP, hojas de estilo CSS y Java Script que permiten darle el diseño de interfaz que el administrador del departamento requiera, además de cumplir con los requerimientos que se hayan presentado posteriormente. Para poder describir los conceptos mencionados se utilizaran varios autores de libros, asimismo se pueden utilizar referencias Linkográficas, las fuentes de consulta son de alta confiabilidad por lo que se ha escogido especialistas en dichas materias y que han podido expresar sus ideas de una manera más entendible.


10

La Tabla 1 que se muestra a continuación contiene los elementos requeridos para entender el propósito del presente proyecto. Tabla 1. Marco referencial Marco referencial Tema

Subtema

Referencia

Informática

Sistemas informáticos

(Desongles Corrales & Moya Arribas, 2006)

Hardware

(Desongles Corrales & Moya Arribas, 2006)

Software

(Desongles Corrales & Moya Arribas, 2006)

Usuarios

(Desongles Corrales & Moya Arribas, 2006)

Programación estructurada

(Sommerville, 2005)

Programación Orientada a objetos

(Sommerville, 2005)

Programación extrema

(Sommerville, 2005)

Ciclo de vida del Software

(Somerville, 2011)

Modelo Entidad-Relación

(Catherine, 2009)

Modelo Relacional

(Catherine, 2009)

Sistema Gestor de Bases de Datos (SGBD) World Wide Web (www)

(Catherine, 2009)

Sitios Web

(Escuela Politécnica Nacional, 2011).

Servidor

(Escuela Politécnica Nacional, 2011)

Dominio

(Ramos & Ramos, 2011)

Hosting

(Ramos & Ramos, 2011)

HTML

(Escuela Politécnica Nacional, 2011)

PHP

(Escuela Politécnica Nacional, 2011)

CSS

(Rubiales, 2013)

PostgreSQL

(PostgreSql, 2013)

JavaScript

(Escuela Politécnica Nacional, 2011)

Ingeniería de software

Base de datos

Ingeniería web

Herramientas para el desarrollo web

Fuente: Los autores.

(Ramos & Ramos, 2011)


11

3.1.

Revisión de la Literatura o Fundamentos Teóricos

3.1.1.

Informática

Es la agrupación de conocimientos científicos y también de técnicas que facilitan el tratamiento automático de la información mediante el empleo de ordenadores (Desongles Corrales & Moya Arribas, 2006). De manera general a la informática se la denomina como ciencia que estudia métodos, técnicas, con la finalidad de almacenar, tratar y transmitir la información obtenida (Desongles Corrales & Moya Arribas, 2006). 3.1.1.1.

Sistemas Informáticos

Un sistema informático es la agrupación de elementos que están relacionados entre sí y en el que se realizan operaciones relacionadas con la manipulación de la información (Desongles Corrales & Moya Arribas, 2006). 3.1.1.2.

Hardware

Se define hardware a los componentes físicos es decir los componentes que se pueden tocar. Sirven para ejecutar tareas que se resuelven mediante la utilización de un software, estos pueden ser programas informáticos, algunos elementos o componentes hardware son: tarjeta RAM, placa madre (mainboard), procesador, cooler, disco duro y entre otros. Además los dispositivos de entrada y salida del CPU como son: el monitor, el teclado, el ratón, etc. También se los considera componentes Hardware. (Desongles Corrales & Moya Arribas, 2006). 3.1.1.3.

Software

Es la parte impalpable del ordenador es decir los componentes que no se pueden tocar y se los reconoce como los programas informáticos o sistemas informáticos, el software es un


12

mecanismo lógico y se lo aplica mediante la ejecución de instrucciones que permiten realizar algún requerimiento determinado del sistema. Sin tener software el CPU simplemente sería un conjunto de herramientas físicas innecesarias, las cuales no se entenderían su funcionamiento (Desongles Corrales & Moya Arribas, 2006). 3.1.1.4.

Usuarios

Es una persona que utiliza el ordenador, sistema informático o alguna determinada aplicación con sus respectivas limitaciones, además de buscar información en un espacio web que le permita ingresar a los datos o información que expresa el sistema. No necesariamente un usuario debe ser un individuo, el propio sistema puede tomar el papel de un usuario y realizar procesos. 

Usuario administrador: Es el usuario que conserva todas las libertades del sistema, es el comprometido de perfeccionar y controlar los recursos existentes.

Usuario registrado: Es el usuario que se halla en el sistema y que tiene ciertos permisos determinados que le permiten bordear en el mismo, sin realizar algún cambio.

3.1.2.

Ingeniería de software

A la Ingeniería de software se la denomina como la disciplina en la ingeniería porque abarca todos los aspectos del desarrollo de software partiendo obviamente de las etapas iniciales en la especificación y delimitaciones de un sistema que se pretende desarrollar, hasta su respectivo mantenimiento luego de su concerniente implementación (Sommerville, 2011).


13

3.1.2.1.

Programación estructurada

Es la programación sin sentencias es decir sin líneas de código “go to”, específicamente solo usando los bucles “while” y sentencias de control como “if” además de un diseño descendente. La programación estructurada en sus inicios fue un avance de gran significancia en el desarrollo de la ingeniería del software puesto que fue debido a que fue la senda primaria para la elaboración de una disciplina en el desarrollo del software (Sommerville, 2011). 3.1.2.2.

Paradigma orientado objetos

Se describe un modelo a efectuar el diseño de software manejando un lenguaje de programación orientado a objetos obviamente por ejemplo Java. Un lenguaje orientado a objetos que nos suministra los recursos para definir las clases y un sistema para crear los objetos correspondientes a las clases (Sommerville, 2011). 

Abstraer: Es la capacidad natural que tiene una persona para obtener información de los objetos, lo que le permite distinguir características principales de un objeto que no exista en otro.

Encapsular: Es la acción que permite ocultar la información obtenida a través de la abstracción para que no pueda ser vista mientras se pudiese estar efectuando alguna modificación.

Jerarquizar: Es la capacidad que se tiene para definir el orden de abstracciones realizadas, de las cuales según las establecidas primeramente servirán como base para las siguientes abstracciones, existen dos formas básicas de Jerarquías las cuales son: Jerarquía entre clases e interfaces donde se hace conocido el término de Herencia para definir que los elementos que se heredan son más generales, y el que


14

Hereda es más especializado; y también se tiene la Jerarquía entre objetos en donde se establecen dos tipos de relaciones: relaciones de asociación y relaciones de dependencia. 

Modularidad: Es la capacidad que se tiene para dividir el Software en pequeñas agrupaciones o mejormente llamadas, módulos.

Tipo: Es el nombre que se le da a los objetos que pertenecen o se encuentran en una misma interfaz.

Concurrencia: Es la capacidad que existe para poder ejecutar sentencias en paralelo.

Persistencia: Es la capacidad que permite que los datos existan en tiempo y espacio.

3.1.2.3.

Ciclo de Vida del Software

El proceso de ciclo de vida de software se conoce como un plan que se toma para resolver o realizar el desarrollo de la aplicación, este ciclo nace a partir del modelo en cascada o también se lo puede llamar de esta misma manera, “modelo en cascada”. Se consideran las siguientes fases para el ciclo de vida del Software (Sommerville, 2011). 

Análisis y definición de requerimientos: Se establecen las metas y que es lo que el usuario dueño del sistema necesita para su aplicación.

Diseño del Sistema y del Software: Se asigna los requerimientos permitiendo que se establezca una estructura global del sistema, asimismo contar con los detalles necesarios para hardware y software.


15

Implementación y prueba de unidad: El ciclo de vida del software permite realizarlo por módulos, por lo tanto esta etapa ayuda a comprobar que los módulos que se están realizando cumplan concretamente con el objetivo que se ha determinado para dicho módulo.

Integración y prueba de Sistema: Los módulos que se han estado desarrollando en la parte anterior se unen para formar un sistema completo y se verifica nuevamente el correcto funcionamiento de sus módulos de manera heurística en el sistema.

Operación y Mantenimiento: En esta etapa se pone en práctica el sistema desarrollado, con el fin de obtener la satisfacción del usuario final, además en caso de existir errores se los deberá corregir, asimismo en caso de existir nuevos requerimientos se los deberá implementar.

3.1.2.4.

Especificación de Requerimientos de Software (SRS)

En el desarrollo de un software que es orientado a objetos inicia mediante la concepción de los modelos de requerimientos siendo estos el análisis y diseño. Consecuentemente a su ambiente de paradigma de ingeniería del software OO (Orientado a Objetos), los mencionados modelos empiezan una forma relativamente informal de los requisitos del sistema o en este caso una aplicación y progresan hacia modelos que detallan a una clase y relaciones de los mismos. 

Usuarios de un documento de requerimientos

El SRS (especificación de requerimientos de Software), es un documento trascendental tanto como para el propietario de la aplicación como para el desarrollador, debido a que si se llega a un acuerdo mutuo, este SRS servirá como documento oficial para establecer


16

especificaciones y será firmado por ambas partes como símbolo de concordancia y acuerdo de la elaboración del Software (Sommerville, 2011).

Figura 1. Documentos de requerimientos Fuente: Somemerville, I (2011). Ingeniería de software. México: Pearson Educación

3.1.2.5.

Metodologías Agiles

En la década de 80’s y a principios de los 90, se tenía un enfoque muy difundido de que la forma más apropiada para lograr obtener un excelente software era mediante una minuciosa planeación del proyecto, fortalecimiento de calidad auténtica, el uso de técnicas de análisis y el diseño afirmado por herramientas CASE, así como métodos de desarrollo de software duros y controlados. (Sommerville, 2011) En la década de 1990 el descontento con estos enfoques engorrosos de la ingeniería de software llevó a algunos desarrolladores de software a plantear nuevos “métodos ágiles”, los cuales aprobaron que el equipo de desarrollo se orientara en el software en lugar del diseño y


17

la documentación. Los métodos ágiles se apoyan generalmente en la perspectiva incremental para la descripción, el desarrollo y la entrega del software. (Sommerville, 2011) Estas metodologías agiles, se emplean de manera más eficiente en softwares que son menos complejos, y permiten un acercamiento más continuo con el propietario para posibles modificaciones y que éstas sean atendidas más rápidamente, optimizando tiempo de elaboración del producto. Últimamente estas metodologías están siendo las más utilizadas, y de éstas la más reconocida es probablemente la metodología XP (Programación extrema) 3.1.2.5.1 Extreme Programming (Programación extrema) Es probablemente la técnica rápida y mayormente utilizada. El nombre fue acuñado por Beck (Beck, 2000) por razones puesto que su enfoque fue creado en base a buenas prácticas para el desarrollo de un software como es el desarrollo iterativo además de la colaboración o participación directa del cliente final en los niveles o etapas de desarrollo de un software (Sommerville, 2011). Proceso XP 

Planeación: En esta etapa existe una palabra clave y fundamental la cual es “escuchar”, debido a que el equipo de desarrollo XP analizará todos los requerimientos, además se establecerá la entrega de las historias acordando un costo que podría ser medido en semanas de desarrollo (Pullas, 2010).

Diseño: Esta etapa estimula el concepto de CRC (clase-responsabilidadcolaborador), que hace referencia al uso de unas tarjetas con este nombre y las cuales sirven para identificar y organizar las clases orientadas a objetos, en esta etapa se maneja un lema de “nada más y nada menos”, debido a las posibles


18

modificaciones que se puedan establecer a futuro, asi mismo sus interfaces estarán bajo el modelo MS (mátenlo sencillo) (Pressman, 2010) . 

Codificación: En este proceso se maneja una actividad llamada “programación por parejas”, debido a que se incentiva el desarrollo de dos personas en una misma zona de trabajo, de esta manera se mejorará el entendimiento de las historias, además se realizan pruebas unitarias es decir se ve cada historia como una prueba individual y luego que se la realiza se establece que no se añadirá algo más durante ese proceso.

Pruebas: En el proceso anterior se ha hablado de unas pruebas unitarias, estas pruebas se las puede agrupar para que de este modo se tenga un conjunto de pruebas llamado “grupo de prueba universal”, además que también se efectúan pruebas de integración y validación, estas pruebas se las puede realizar diariamente en caso de ser necesario. (Pressman, 2010).

Figura 2 Proceso XP Fuente: Pressman, R.S., (2010). Ingeniería del Software: Un enfoque práctico. México: Mc Graw Hill.


19

3.1.2.5.2 Scrum Esta metodología incorpora actividades estructurales tales como: requerimientos, análisis, diseño, evolución y entrega, dentro de cada una de estas actividades estructurales las tareas de trabajo ocurren con un patrón del proceso denominado sprint que son ciclos de desarrollo cortos. Durante cada sprint no se pueden introducir cambios permitiendo trabajar en un ambiente de corto plazo pero estable (Pressman, 2010). 3.1.2.6.

Metodologías Tradicionales

La fuerte necesidad de mejorar el proceso y llevar los proyectos a la meta deseada, tuvieron que importarse la concepción y fundamentos de metodologías existentes en otras áreas y adaptarlas al desarrollo de software. Esta nueva etapa de adaptación contenía el desarrollo dividido en etapas de manera secuencial que de algo mejoraba la necesidad latente en el campo del software. Las metodologías tradicionales (formales) se focalizan en documentación, planificación y procesos, entre las principales metodologías tradicionales tenemos los ya tan conocidos RUP (Proceso Unificado de Rational) y MSF (Pressman, 2010). 3.1.2.6.1 Rational Unified Process (RUP) Es un proceso formal: Provee un acercamiento disciplinado para asignar tareas y responsabilidades dentro de una organización de desarrollo. (Pressman, 2010). 3.1.2.6.2 Microsoft Solution Framework (MSF) Es un compendio de las mejores prácticas en cuanto a administración de proyectos se refiere. Más que una metodología rígida de administración de proyectos, MSF es una serie de modelos que puede adaptarse a cualquier proyecto de tecnología de información.


20

3.1.2.6.3 Comparación de Metodologías Agiles vs las Tradicionales Hace varios años atras se implementaban las metodologias tradicionales o conocidas tambien como “metodologías no ágiles”, debido a que su realizacion tenia mucho proceso, y se establecia bastante tiempo en el marco de elaboracion del Software, comenzó a resultar poco factible su utilización, además en sistemas informaticos que no necesariamente serian tan complejos, se tardaria mucho tiempo en desarrollarlo. Por estas razones, empezó a surgir las metodologias de desarrollo de Software ágiles, con el fin de llevar procesos muy eficientes y optimizando recursos y tiempo de realizacion, asimismo contar con la presencia del propietario del software continuamente mientras se desarrolla determinada aplicación.

Figura 2. Comparativa de metodologías de desarrollo de software Fuente: Calderón, A. (2007) Metodologías Ágiles


21

Figura 3. Comparativa de metodologías de desarrollo de software Fuente: Calderón, A. (2007) Metodologías Ágiles

3.1.2.7.

Comparativa entre metodologías de desarrollo ágiles

Tabla 2. Comparativa entre metodologías de desarrollo Comparativa entre metodologías de desarrollo ágiles Extreme Programming Scrum

Tiende a tener menor grado de error, debido a que el usuario siempre tiene participación en la modificación de la aplicación, además el usuario establece las fechas de entrega y reuniones con el equipo desarrollador.

ágiles

Establece que se debe elaborar un diagrama con reuniones diarias de al menos 15 minutos entre el usuario, el analista y el desarrollador del proyecto, de este modo dificulta el periodo de elaboración de la aplicación al equipo desarrollador.

Crystal Methodologies Esta metodología está orientada a proyectos en donde el equipo de desarrollo consta de 3 a 8 miembros, además intenta reducir al máximo el número de prototipos de entrega y documentos de validación de requerimientos, de esta forma el usuario no entenderá claramente las especificaciones y cambios realizados en el proyecto.

Fuente: Los autores.

3.1.3.

Base de datos

Es un repositorio en donde se almacena información completa, de tal modo que sus datos estarán guardados sistemáticamente y con sus respectivas relaciones para su posible utilización posteriormente (MySql Hispano, 2003).


22

3.1.3.1.

Modelo Entidad-Relación

Este estándar entidad-relación fue propuesto en la década de los 70’s, con la finalidad de ayudar la creación del diseño de bases de datos puesto que el diseñador o modelador del mismo pueda definir las propiedades de dicha base de datos en un esquema de empresa. El vocablo empresa se utiliza generalmente en los debates de la creación de una base de datos para dar significancia a la organización para la cual se desarrolla la base de datos. La empresa podría ser un pequeño negocio, una compañía, una universidad o alguna otra organización. 3.1.3.2.

Modelo Relacional

El objetivo principal del modelado lógico es la representación apropiada de los datos, sus relaciones y limitaciones. Para el modelo relacional, según lo mencionado anteriormente debe identificar un conjunto de relaciones. Sin embargo, la tarea en definir las relaciones es complicada, porque existen varias alternativas que el propio diseñador pueda utilizar. 3.1.3.3.

Sistema Gestor de Bases de Datos (SGBD)

Es un sistema de software que permite la definición de bases de datos; así como la elección de las estructuras de datos necesarios para el almacenamiento y búsqueda de los datos. Un SGBD relacional es un modelo de datos que facilita a los usuarios describir los datos que serán acumulados en la base de datos junto con un grupo de operaciones para manejar los datos. 3.1.3.3.1 PostgreSql PostgreSql es un Sistema Gestor de Base de Datos relacional, ésta base de datos se ha ido convirtiendo en uno de los gestores más importantes en la actualidad, además es conocido por operar bajo licencia BSD, es decir es completamente libre.


23

Con sus versiones más recientes se ha hecho una herramienta más fuerte y completa para cualquier requerimiento necesario de éste ámbito, además usa un proceso cliente – servidor y realiza multiprocesos, es decir cuando exista algún error en algún proceso, este error no abarcará otros procesos más. (Martinez, 2013). 

Componentes de un Sistemas PostgreSql

Figura 4. Componentes de un Sistema PostgreSQL Fuente: Martinez, A. (2013), Postgresql

3.1.3.3.2 MySQL El programa MySQL se usa como servidor a través del cual pueden conectarse múltiples usuarios y utilizarlo al mismo tiempo. Una de las características más interesantes de MySQL es que permite recurrir a bases de datos multiusuario a través de la web y en diferentes lenguajes de programación que se adaptan a diferentes necesidades y requerimientos. Es Open Source, el código fuente de MySQL se puede descargar y está accesible a cualquiera, por otra parte, usa la licencia GPL para aplicaciones no comerciales.


24

3.1.3.3.3 Oracle Oracle es básicamente una herramienta cliente/servidor para la gestión de Bases de Datos. Es un producto vendido a nivel mundial, aunque la gran potencia que tiene y su elevado precio hacen que sólo se vea en empresas muy grandes y multinacionales, por norma general. Para desarrollar en Oracle utilizamos PL/SQL, bastante potente para tratar y gestionar la base de datos, también por norma general se suele utilizar SQL al crear un formulario. 3.1.3.3.4 PostgreSql vs MySql vs Oracle Las diferencias establecidas en el cuadro de comparación de motores de base de datos, establece la razón por la cual PostgreSQL ha sido utilizada en el proyecto realizado, aprovechando todos los beneficios que éste aporta. Tabla 3. Comparativa PostgreSql vs MySql vs Oracle Comparativa PostgreSql vs MySql vs Oracle PostgreSQL MySQL

Motor de base de datos libre, se centra en la fiabilidad e integridad de sus datos, altamente estable, además identifica a un usuario único diferenciándolo si está escrito con mayúsculas o minúsculas.

Motor de base de datos libre, sin embargo presenta problemas de estabilidad para el manejo de grandes cantidades de información almacenada. Del mismo modo tiene como inconveniente que no identifica a usuarios distintos el hecho de poner a uno con minúscula y a otro con mayúscula.

Oracle

Motor de base de datos de pago, debido a su costo de utilización se hace complicado su obtención para proyectos de desarrollo e investigación libre.

Fuente: Los autores.

3.1.4.

Ingeniería web

La ingeniería Web es el establecimiento y el uso de conocimiento científico, nociones de gerencia e ingeniería y el enfoque sistemático y disciplinado para la elaboración, entregar y mantener, aplicaciones y sistemas basados en la Web de alta calidad (Escuela Politécnica Nacional, 2011)


25

3.1.4.1.

World Wide Web (www)

Básicamente este servicio lo que permite es, que el usuario pueda acceder a una gran cantidad de información y a diferentes tipos de documentos sin ninguna complicación. Esencialmente esto consiente en tener acceso a internet por medio de una aplicación de Software que en este caso se las conoce como navegadores, como por ejemplo: Chrome, Firefox, Safari (Ramos & Ramos, 2011). 3.1.4.2.

Sitios web

Se puede definir lo que es sitio web partiendo de dos conceptos claves, sitio que hace referencia a un espacio o lugar que puede estar ocupado o llegar a ser ocupado, y web se refiere a internet, que es una conexión de redes locales o mundiales, por ello la definición de sitio web es un lugar o espacio virtual donde se cargan un conjunto de páginas web accesibles desde cualquier lugar (Escuela Politécnica Nacional, 2011). 3.1.4.3.

Servidor

Para que un sitio web pueda ser visitado se requiere que se encuentre alojado en un servidor. Los servidores permiten que los usuarios obtengan información a través de sus ordenadores, es decir el ordenador hace un requerimiento al servidor y el servidor le devuelve la información solicitada, facilita la petición de información de manera remota permitiendo proveer de datos y acceder a redes (Escuela Politécnica Nacional, 2011). 3.1.4.4.

Dominio

Un dominio en términos generales es un nombre que puede ser alfanumérico que generalmente se vincula a una dirección física que generalmente es una computadora o dispositivo electrónico.


26

3.1.4.5.

Hosting

Hosting es un servicio el cual permite relacionar un dominio, es decir almacenar datos de manera remota y poder acceder a ellos de forma permanente, estos datos se los asocia a un host o servidor remoto, de tal modo que los usuarios de internet puedan estar al tanto de sus datos. 3.1.5. 3.1.5.1.

Herramientas para el desarrollo web HTML

El HTML, lenguaje de marcado de hipertexto, acrónimo en inglés, HyperText Markup Language, su código nos facilita el desarrollo y edición de documentos web. Con la ayuda del Internet, html se ha posicionado en el formato con mayor facilidad para la elaboración de páginas web como principal característica su sencillez. Además es multilenguaje, es decir puede ser implementado o interpretado por código de otros lenguajes como por ejemplo JavaScript o PHP que incrementan y optimizan su capacidad original (Escuela Politécnica Nacional, 2011). 3.1.5.2.

PHP

PHP, acrónimo de “PHP: HyperText Processor”, es un lenguaje “Open Source” de alto nivel, enfocado para el desarrollo web, el cual puede ser implementado o adherido en páginas HTML (José Velez, ALberto Peña, Paxti Gortazar, Ángel Sánchez, 2011). PHP puede hacer cualquier cosa que se pueda hacer en script CGI (Common Gateway Interface), así como hacer el procesamiento de información de formularios, crear o generar páginas con capacidad dinámica, remitir y recoger cookies, además de permitir al cliente o usuario solicitar datos de un programa, aplicación o sistema web ejecutado en un servidor web (Escuela Politécnica Nacional, 2011).


27

3.1.5.3.

CSS

Es un lenguaje de estilos que especifica o determina la apariencia de la página web, es decir hace la edición del documento HTML o XML para ordenar los elementos y dar gusto al desarrollador de ver su página y estar acorde con la presentación de la misma, siendo de tal manera amigable e intuitiva para el usuario final (Rubiales, 2013). 3.1.5.4.

JavaScript

Es un lenguaje interpretado del lado del cliente. Fue creado en la empresa Netscape específicamente por Brendan Eich, esta empresa fue la encargada de desarrollar los primeros navegadores de internet para uso comercial. Teniendo en cuenta que no se lo puede usar de manera independiente, JavaScript está orientado a objetos y es un lenguaje muy versátil, además ha proporcionado a los desarrolladores la ventaja o la opción de poder modificar la página web en tiempo real (Escuela Politécnica Nacional, 2011). 3.1.5.5.

jQuery

La herramienta de jQuery es un marco de trabajo o mejormente llamado framework que permite laborar con JavaScript, por esta razón se determina como una biblioteca de Java Script, es muy versátil y posee un número alto de funciones que puede realizar. Además, admite la interacción con los documentos de HTML es decir su administración. (jQuery, 2015). 3.1.6.

Comparación entre herramientas de desarrollo de Software

El objetivo de dar a conocer una comparación entre las distintas herramientas que existen actualmente, es para comprender el motivo por el cual se está empleando determinada herramienta en el proyecto que se está elaborando.


28

JQuery vs AngularJS

jQuery es una librería de JavaScript, creada inicialmente por John Resig, que permite simplificar la manera de interactuar con los documentos HTML, por lo que permite manipular el árbol DOM, manejar eventos de los elementos HTML, desarrollar animaciones y agregar interacción con la técnica AJAX a páginas web realizando así la peticiones de forma asíncrona con el servidor (back-end), por otro lado AngularJS es un framework JavaScript para el desarrollo de aplicaciones web en el lado cliente (front-end), desarrollado por Google, manejando el patrón MVC (Modelo, Vista, Controlador), permitiendo crear al desarrollador sus propios módulos y adecuarlo de su funcionamiento según sea la necesidad.| 

PHP vs ASP.Net

Dos lenguajes de programación altamente fuertes, y de los más reconocidos en lo que es el entorno web, PHP es un entorno ágil y tiene una curva de aprendizaje fácil, además cuenta con la comunidad más grande de desarrolladores, cabe recalcar que un gran beneficio de este lenguaje de programación es que es una herramienta libre, es decir totalmente gratis. Por otra parte ASP.net es un lenguaje de programación que es soportado únicamente por Microsoft es decir, su licencia tendrá un determinado precio, además para su implementación necesita como pre-requisito de alojamiento Windows a diferencia que PHP es multiplataforma. 

Apache vs Node.js

Tanto Apache como Node.js son servidores muy utilizados por los desarrolladores de Software en la actualidad, incluso en un determinado software estos se podrían utilizar de manera conjunta, sin embargo, Apache es un servidor más antiguo y funciona de manera excelente con un número no muy elevado de conexiones, además sirve de modelo para


29

parametrización, por otro lado empezó a surgir Node.Js un muy buen servidor con alto rendimiento, pero que aún los desarrolladores de aplicaciones no tienen total adaptabilidad por lo tanto aún se lo maneja de manera estándar o general, y además cada vez que un usuario adquiere un servicio de alojamiento en la nube, se encuentra con la novedad de que por lo general todos tienen de servidor HTTP a APACHE por defecto. 3.1.7. Selección de herramientas de desarrollo 

PHP

Primeramente y de manera muy consistente cabe recalcar que este lenguaje de programación es una herramienta libre, es decir es totalmente gratis, por lo tanto para la elaboración del actual proyecto es lo más óptimo, de esta forma se evita posibles inconvenientes de obtención de licencia del producto, además a este lenguaje también se lo considera de fácil aprendizaje, esto ha hecho que sea la herramienta elegida por los disertantes de manera muy contundente. 

HTML5

La principal característica que ha hecho que se elija esta herramienta es que es un lenguaje open source, es decir libre de licencia, en esta versión se incluye la manipulación de etiquetas y accesibilidad al DOM (Documento, Object, Model), además de su alta adaptabilidad a los navegadores que se encuentran en auge como por ejemplo Google Chrome e Internet Explorer desde su versión 9. 

CSS3

Esta herramienta se la ha elegido debido a que es el instrumento que permite dar un estilo a lo desarrollado en HTML es decir es un complemento de este lenguaje, permitiendo obtener


30

un entorno amigable y agradable al usuario final, asimismo permite un diseño responsivo y también la optimización de código mediante el ingreso de variables . 

JavaScript

JavaScript es indispensable, debido a que es el lenguaje de programación más conocido y que es interpretado del lado del cliente, además su principal funcionalidad hoy en día es realizar peticiones asíncronas comunicando al cliente con el servidor, esto ha hecho que de manera indiscutible se lo implemente en el proyecto actual.

3.2. Investigaciones

o

experiencias

empíricas

vinculadas

con

la

investigación Conforme se ha ido elaborando el presente proyecto y para fines de investigación del mismo es necesario establecer, relacionar y comparar el vigente proyecto con otros similares con el objetivo de dar credibilidad y detallar algunos beneficios que se han dado en esos proyectos, y que se podrían sacar a relucir en el actual. Tabla 4. Experiencias empíricas Experiencias empíricas Tema “DESARROLLO DE UN SISTEMA INFORMÁTICO PARA LA GESTIÓN Y CONTROL DE LOS SERVICIOS DE TRANSPORTE TERRESTRE BRINDADOS POR LA UNIDAD TÉCNICA Y DE CONTROL DE TRANSPORTE TERRESTRE, TRÁNSITO Y SEGURIDAD VIAL DEL GOBIERNO AUTÓNOMO DESCENTRALIZADO MUNICIPAL DEL CANTÓN PEDRO VICENTE MALDONADO, PERIODO 2014-2015” Fuente: Los autores.

Descripción

Al haberse desarrollado el proyecto descrito y la implementación del mismo se obtuvieron como resultado un eficaz control y gestión de los servicios de transporte, además el personal de trabajo ha obtenido optimización de recursos y procesos. Disertantes: Álvaro Pinango & José Ibarra. Año:2015


31

4. METODOLOGÍA DE LA INVESTIGACIÓN Para la elaboración del proyecto del GAD Municipal de Pedro Vicente Maldonado, se tomará como base principal las necesidades para el procesamiento y gestión de la información de los centros de Faenamiento en el cantón. La importancia de emplear una metodología para el desarrollo de Software es facilitar el análisis e implementación de las especificaciones y requerimientos para cumplir con todas las etapas en la elaboración de la aplicación y lograr el objetivo a cumplirse absolutamente. En el actual proyecto se presentan dos enfoques a tomar en cuenta estos son: cualitativo y cuantitativo; el enfoque cuantitativo ayudará a realizar la recolección de datos mediante el uso de entrevistas, encuestas, cuestionarios, y demás; de esta manera se responderá a las preguntas de investigación planteadas en el plan de disertación de grado teniendo como eje el resultado en valores numéricos. Por otro parte el enfoque cualitativo abastecerá la interpretación o análisis de los datos de los resultados alcanzados en la investigación, con el fin de sacar una conclusión de los testimonios obtenidos.

4.1. 4.1.1.

Diseño/ Tipo de Investigación Diseño Experimental

La investigación experimental se caracteriza porque en ella el investigador procede seriamente sobre el ente de estudio, dado que la meta o fin de estos estudios es precisamente conocer las repercusiones de los hechos producidos por el mismo investigador como sistema, técnica o método para probar sus hipótesis. De acuerdo con los expertos y seguidores del paradigma positivista, la experimentación es el verdadero método o el método por excelencia de la investigación científica; por ello, se puede concluir que la investigación experimental es


32

la verdadera investigación, y la comprensión generado por ésta es el conocimiento verdaderamente válido e indiscutible (Bernal, 2010). Para muchos expertos la investigación experimental es más propia de las ciencias naturales que de las sociales, debido a que se cuestionan las implicaciones que ésta pueda tener en el ser humano en el acto de involucrar y manipular acciones por los investigadores, quienes lograrían reducir al ser humano a un nivel de un objeto manipulable, por tanto muchos de los experimentos de educación se cuestionan porque es usual hallar que en la investigación el ser humano se convierte en objeto manipulable al servicio de la ciencia (Bernal, 2010). 4.1.2. 4.1.2.1.

Tipos de Investigación Descriptiva

La investigación descriptiva es aquella que se enfoca en los datos que se han obtenido de manera estadística, con el fin de medir el impacto que ha tenido la investigación en la vida de las personas considerando el entorno en la que se ha desarrollado la misma. La ejecución de este prototipo de investigación se fundamenta esencialmente en técnicas como la encuesta, la entrevista, la observación y la exploración documental (Bernal, 2010). El proyecto que se implementará en el Departamento de Gestión y Desarrollo Sustentable del GAD Municipal de Pedro Vicente Maldonado, tendrá un análisis técnico y una especificación de requerimientos de Software que constará como revisión documental, por ello es aplicable el tipo de Investigación Descriptiva

4.2.

Población / Universo

Para la presente investigación se tomó como población objeto de estudio a los funcionarios que laboran en el centro de faenamiento del GAD Municipal de Pedro Vicente Maldonado,


33

por cuanto los referidos funcionarios se encargan de la administración de la información del camal.

4.3.

Muestra

La muestra es, en esencia, un subgrupo de la población. Se puede decir que la muestra es un número determinado de personas o usuarios a quienes se realizara la investigación, debido a que de ellos se obtendrán los datos que serán sometidos a estudios para realizar su correspondiente análisis y sacar conclusiones a partir de estos resultados (Spiegel). Para fines del presente estudio no se aplicará una muestra por cuanto a la población a ser estudiada está constituida por ocho funcionarios.

4.4.

Instrumentos de recogida de datos

4.4.1.

Técnicas de Recogida de Datos

Actualmente existen muchas maneras para recoger información, y los diferentes tipos de investigación como la investigación científica o la descriptiva como por ejemplo no están absueltas de estas técnicas, sin embargo la principal tendencia para la obtención de información es el diálogo. Las técnicas de recolección de datos, se emplean de manera sistemática ya que el investigador establecerá sus técnicas correspondientes según el ambiente, personas u objeto de quien se esté realizando la investigación. Encuesta: La encuesta se realiza a través de un cuestionario o banquillo de preguntas que tienen el fin de obtener información con respecto a un tema en concreto, de esta manera se elige el tema específico para establecer las preguntas y sacar potencialmente información al usuario encuestado.


34

Entrevista: Es una de las técnicas más utilizadas actualmente, y cada vez gana mayor credibilidad debido a que se tiene contacto directo y más profundo con las personas, además en la entrevista la persona a más de dar su respuesta a la pregunta correspondiente que se le realiza, da una ayuda al investigador porque argumenta más ampliamente lo que ha contestado. Observación directa: la observación directa está relacionada directamente con el concepto de investigación de campo, debido a que de manera minuciosa el investigador acude al lugar respectivo de su investigación y deberá tomar muestras de sus datos, estas muestras se las puede realizar mediante, fotografías, notas de audio, grabaciones, etc. Análisis de documentos: Es una técnica que se basa en fichas bibliográficas con el fin de analizar detalladamente material impreso. Se utiliza en la producción del marco teórico del estudio. Para una investigación confiable y de calidad, se recomienda emplear simultáneamente dos o más técnicas de recolección de información, con el objetivo de contrastar y complementar los datos (Bernal, 2010). Internet: Indudablemente en la actualidad, el internet se ha convertido en una herramienta y técnica bastante poderosa para lograr obtener información o tratar de recopilar información a través de varias fuentes (Bernal, 2010). 4.4.2.

Instrumentos para la recogida de Información

Ficha de registro: Es un instrumento en el que se reconocen ciertos datos, la ficha suele ser de tamaño pequeño y forma rectangular para que pueda acumularse cómodamente en un archivo. La ficha se empleó como instrumento de la entrevista al encargado del DGDS, para obtener una visión general del proyecto mediante preguntas abiertas.


35

Cuestionario: El cuestionario es un banquillo de preguntas que tienen el fin de obtener información con respecto a un tema en concreto. Actualmente existe un gran número de formatos de cuestionarios cada uno con su estilo respectivo. En el presente proyecto se utilizará como instrumento de recogida de información un set de preguntas, y se empleará en la técnica respectiva de Encuesta, igualmente se manejará el análisis de documentos para realizar entrevistas a los usuarios finales.

4.5.

Técnicas de Análisis de Datos

Las técnicas que se emplearan para el análisis de Datos serán: la tabulación de las encuestas y el análisis de la información obtenida a partir de las entrevistas a los usuarios finales, al mismo tiempo se empleará el documento de especificación de requerimientos de Software (SRS) para procesar la información obtenida. De este modo se podrá interpretar toda la investigación recogida.

4.6.

Metodología de desarrollo de Software

En la ingeniería de software, la metodología de desarrollo de software es un marco de trabajo que se usa para planear, ordenar y vigilar o controlar las etapas del desarrollo en sistemas informáticos. Por esta razón se ha decidido tomar en cuenta una metodología de desarrollo de software adecuada con sus pertenecientes justificaciones. 4.6.1.

Programación Extrema

Los motivos por los cuales se ha decidido utilizar la metodología de desarrollo XP han sido: involucrar al usuario final como parte del equipo, permitiendo tener mucha comunicación y aceptación de los procesos realizados, y a su vez efectuar cambios en caso de ser necesario, además esta metodología permite involucrar a más de una persona en el proceso de desarrollo del Software mejorando el tiempo de entrega del producto final.


36

Algunos de los puntos a resaltar en esta metodología son los siguientes: 

Simplicidad: La primordial meta de un proyecto es alcanzar compensar las necesidades y esperanzas del cliente de una manera sencilla, referente al desarrollo y la codificación.

La Planificación: Es uno de los valores más importantes en esta metodología debido a la realización de Historias de Usuario en donde el desarrollador y el cliente priorizan y deciden cuáles serán las más importantes y se dará su tiempo correspondiente para la posterior elaboración.

Cliente en el equipo: Permite alcanzar una retroalimentación más eficiente del Software y da al desarrollador pautas para realizar la prueba de aceptación.

Programación por parejas: Una de las razones fundamentales para elegir esta metodología, es la programación por parejas, ya que incentiva la comunicación entre desarrolladores y permite la transferencia de conocimiento, además de obtener

beneficios como la reducción de tiempo en desarrollo y la visión

heurística del software para corregir fallos o mitigar errores. 

Diseño simple: El Software que se esté desarrollando debe ser muy claro y sencillo, entendible para el usuario final acorde a lo que se ha establecido en las pruebas de aceptación.


37

5. RESULTADOS 5.1.

Discusión y Análisis de los resultados

5.1.1.

Entrevista realizada al Departamento de Gestión y Desarrollo Sustentable

¿Qué impacto tendría el sistema de aplicación web dentro del GAD Municipal de Pedro Vicente Maldonado? 

Versatilidad de manejar los datos y la facilidad para presentar informes a Agrocalidad, a los tercenistas particulares y a los tercenistas municipales entonces este manejo es práctico y con una interfaz al usuario amigable, sencillo de manejar para los administradores.

¿Cómo le gustaría que sea la interfaz de usuario para la aplicación Web? 

Tiene que ser una interfaz amigable, bastante fácil que contemple todas las opciones para los datos, todos los campos involucrados con el camal: introductores, faenadores, tercenistas.

¿Cuál fue la necesidad de un Sistema Web dentro del GAD Municipal? 

Es para que el público también conocimiento del consumo per cápita de carne dentro de la población de Pedro Vicente Maldonado, para que se conozca que el camal también faena un gran número de reses :mensualmente, diariamente; y también tiene un control adecuado de la carne, se maneja la inocuidad alimentaria.

¿Cuál sería el aporte del sistema al centro de Faenamiento DGDS? 

Versatilidad de manejo de datos, debido a que aún se tiene todo en físico es decir en hojas de papel entonces existe gran cantidad de archivadores y el papel se deteriora, en cambio ya lo que queda en un sistema Web sea en la oficina o en la casa, se puede subir datos, revisar los datos, patologías que


38

estén presentes, introductores y cualquier anomalía que se haya dado dentro del Centro de Faenamiento. 

¿Cuántas personas son las que van a administrar la información? 

Director de Centro de Faenamiento DGDS, Ing. Guillermo Ruiz

Encargado de Control Sanitario y de Productividad, Dr. Víctor Alfonso Solórzano

¿Requieren datos estadísticos? 

Si, por lo general mensualmente se generan datos estadísticos de Faenamiento porcinos y bovinos y también de los introductores que con mayor frecuencia se involucran con el camal.

¿Qué tipo de información se le proporcionara a la ciudadanía? 

El número de animales faenados y las patologías más frecuentes que se presentan en los animales, esto para dar conciencia a los señores introductores y a los señores productores del cuidado adecuado de los animales, previo al Faenamiento y las consideraciones técnicas que necesitarían con esto.

Análisis: Según los datos obtenidos mediante la entrevista, se determinó que la aplicación web será imprescindible para el Departamento de Gestión y Desarrollo Sustentable, debido a que se podrá tener versatilidad de datos, seguridad y disponibilidad, estos datos también serán proyectados a la ciudadanía. Además se requiere presentar informes de los datos almacenados en la aplicación para las autoridades correspondientes relacionadas con DGDS, asimismo se ha establecido que las interfaces de la aplicación tendrán un entorno amigable, sencillo y entendibles al usuario final contemplando todas las opciones o requerimientos que se especifiquen para el manejo de datos.


39

5.1.2.

Encuesta realizada al Departamento de Gestión y Desarrollo Sustentable

1. ¿Qué tan relevante considera Ud. la implementación del proyecto para el centro de Faenamiento? Tabla 5. Resultado de la primera pregunta de la encuesta al personal del DGDS Resultado de la primera pregunta de la encuesta al personal del DGDS ALTERNATIVA FRECUENCIA PORCENTAJE RELEVANTE

0

0%

MUY RELEVANTE

0

0%

IMPRESCINDIBLE Total de la muestra estadística Nota. Fuente: Los autores

8

100%

8

100%

100% 80% 60%

100%

40% 20% 0%

0%

RELEVANTE

0% MUY RELEVANTE IMPRESCINDIBLE

¿Qué tan relevante considera Ud. la implementación del proyecto para el centro de Faenamiento? Figura 5. Figura de resultado de la primera pregunta de la encuesta del departamento DGDS. Fuente: Los autores.

Análisis: Según los datos obtenidos el 100% (8 servidores públicos pertenecientes al DGDS) de la población encuestada considera que es imprescindible la implementación de la aplicación web en el Departamento de Gestión y Desarrollo Sustentable. Según los datos obtenidos se determinó que todos los funcionarios pertenecientes al DGDS requieren de la aplicación de manera imprescindible, para administrar de manera adecuada la información.


40

2. De los aspectos que se indican a continuación, ¿cuáles considera que aportarían como beneficio la implementación del sistema? Tabla 6. Resultado de la segunda pregunta de la encuesta al personal del DGDS

Resultado de la segunda pregunta de la encuesta al personal del DGDS ALTERNATIVA FRECUENCIA PORCENTAJE Mejor atención

2

18,18%

Optimización de tiempo

2

18,18%

Optimización de recursos

7

63,63%

0

0%

11

100%

Otros Total de la muestra estadística Nota. Fuente: Los autores

70,00% 60,00% 50,00% 40,00%

63,63%

30,00% 20,00% 10,00%

18,18%

18,18% 0%

0,00% Mejor atencion Optimizacion de Optimizacion de tiempo recursos

Otros

De los aspectos que se indican a continuación, ¿cuáles considera que aportarían como beneficio la implementación del sistema?

Figura 6. Figura de resultado de la segunda pregunta de la encuesta del departamento DGDS. Fuente: Los autores.

Análisis: Según los datos obtenidos (8 servidores públicos, selección múltiple) se ha determinado que el 63,63% de la población opina que la aplicación aportará en la optimización de recursos, el 18,18% cree que se mejorara la atención y el 18,18% restante considera que se beneficiara en la optimización de tiempo. Con los datos obtenidos se concluye, que de los múltiples beneficios que aporta la aplicación, el más relevante es la optimización de recursos.


41

3. ¿Qué tiempo considera Ud. que se utilizaría para generar reportes del centro de Faenamiento actualmente? Tabla 7. Resultado de la tercera pregunta de la encuesta al personal del DGDS Resultado de la tercera pregunta de la encuesta al personal del DGDS ALTERNATIVA FRECUENCIA PORCENTAJE De 0 min a 15 min

1

12.5%

De 16 min a 30 min

6

75%

De 31 min a 1 hora

1

12.5%

Más de una hora Total de la muestra estadística Nota. Fuente: Los autores

0

0%

8

100%

80,0% 70,0% 60,0% 50,0% 40,0% 30,0% 20,0% 10,0% 0,0%

75%

12,5%

12,5% 0%

De 0 min a 15 min

De 16 min a 30 min

De 31 min a 1 Mas de una hora hora

¿Qué tiempo considerada Ud. que se utilizaría para generar reportes del centro de Faenamiento actualmente?

Figura 7. Figura de resultado de la tercera pregunta de la encuesta del departamento DGDS. Fuente: Los autores.

Análisis: Según los datos obtenidos el 12.5% (1 servidor público) considera que la tardanza para presentar un determinado informe es de 0 a 15 min, el 75% (6 servidores públicos) considera que la tardanza para presentar un informe es de 16 minutos a 30 minutos, y el 12.5% (1 servidor público) restante considera que la tardanza es de 31 min a 1 hora. Con los datos alcanzados determinó que la población tendrá un ahorro de espera, consumiendo menos tiempo para que pueda obtener informe de los datos correspondientes que se necesiten.


42

4. ¿Qué dificultad encuentra actualmente en la forma de registrar la información? Tabla 8. Resultado de la cuarta pregunta de la encuesta al personal del DGDS

Resultado de la cuarta pregunta de la encuesta al personal del DGDS ALTERNATIVA FRECUENCIA PORCENTAJE Perdida de registro

3

25%

Duplicidad de Información

6

50%

Información desactualizada

3

25%

0

0%

10

100%

Otros Total de la muestra estadística Nota. Fuente: Los autores

50% 45% 40% 35% 30% 25% 20% 15% 10% 5% 0%

50% 25%

25% 0%

Perdida de registro

Duplicidad de Informacion

Informacion desactualizada

Otros

¿Qué dificultad encuentra actualmente en la forma de registrar la información?

Figura 8. Figura de resultado de la cuarta pregunta de la encuesta del departamento DGDS. Fuente: Los autores.

Análisis: Según los datos obtenidos (8 servidores públicos, selección múltiple) se ha determinado que el 50% de la población encuentra como problema duplicidad de la información, el 25% soporta perdida de registros y el 25% restante sufre de información desactualizada. Según los datos obtenidos se determinó que existe poca fiabilidad en el manejo de información en el DGDS.


43

5. De implementarse el sistema para el centro de Faenamiento, ¿Cree Ud. Sería necesario una capacitación al personal? Tabla 9. Resultado de la quinta pregunta de la encuesta al personal del DGDS

Resultado de la quinta pregunta de la encuesta al personal del DGDS ALTERNATIVA FRECUENCIA PORCENTAJE Si

8

100%

No

0

0%

8

100%

Total de la muestra estadística Nota. Fuente: Los autores

100% 80% 60%

100%

40% 20% 0% 0% Si

No

De implementarse el sistema para el centro de Faenamiento, ¿Cree Ud. Sería necesario una capacitación al personal? Figura 9. Figura de resultado de la quinta pregunta de la encuesta del departamento DGDS Fuente: Los autores.

Análisis: Según los datos obtenidos el 100% (8 servidores públicos pertenecientes al DGDS) de la población encuestada consideran que es necesaria una capacitación al personal. Con los datos obtenidos se ha podido determinar que todas las personas que van a manejar la aplicación web necesitan de una capacitación para poder usarla.


44

5.2.

Proceso XP

El proceso XP que se detallará es en base a la estructura presentada anteriormente, implementándola en el proyecto de desarrollo que se lleva a cabo para el GAD municipal DGDS. 5.2.1.

Etapa 1: Planeación

5.2.1.1.

Exploración

En esta fase se recoge la información correspondiente para elaborar las historias de usuario, tomando como referencia los requerimientos funcionales del sistema, es decir para elaborar dichas historias de usuario se deberá apoyar en la información del SRS para obtener información más concreta. 5.2.1.2.

Historias de Usuario y Módulos del Sistema

Las historias de usuario son prácticamente representar de forma detallada los requerimientos de usuario de igual forma que se lo hace en el SRS, la especificación de las historias de usuario se las realiza para reducir la dificultad de entendimiento del sistema, de esta manera permite al desarrollador avanzar con las tareas de programación correspondientes, además de especificar los módulos del sistema en donde se describen de manera objetiva los patrones que llevara a cabo la realización del proyecto. 5.2.1.3.

Módulos del Sistema

Para la elaboración de los módulos del sistema, se realiza una descripción de las labores o tareas trascendentales que realiza cada módulo, además en los métodos se especifica las tareas que va a realizar cada uno para tener un detalle completo de las actividades de dichos módulos.


45

N° I

Módulo

Métodos

Administración del sistema

Parametrización del sistema Registro de usuarios

II

Administración de usuarios

Usuario

Reporte de usuarios Registro de ganado bovino y porcino Registro de introductores Registro de tercenista III

Faenamiento Registro de vehículos Reporte de ganado bovino y porcino Reporte de introductores y tercenista

Figura 10. Módulos del sistema Fuente: Los autores.

5.2.1.4.

Especificación de Historias de Usuarios

5.2.1.4.1 Módulo Administración del Sistema Historia de usuario Número: 1

Nombre: Parametrización del Sistema

Usuario: Administrador Modificación de usuario: N/A

Iteración asignada: Primera

Prioridad en negocio: Medio

Puntos estimados: 0,4

Riesgo en desarrollo: Medio

Puntos reales: 0,2

Descripción: La parametrización del sistema permite: - Configuración de reportes - Configuración de la Presentación - Configuración del Web mail Observaciones: - El único con el permiso de acceder a la parametrización del sistema es el administrador.

Figura 11. Historia de usuario, parametrización del sistema Fuente: Los autores.


46

5.2.1.4.2

Módulo Usuario Historia de usuario

Número: 2

Nombre: Registro de Usuario

Usuario: Administrador Modificación de usuario: N/A

Iteración asignada: Segunda

Prioridad en negocio: Medio

Puntos estimados: 0,4

Riesgo en desarrollo: Medio

Puntos reales: 0,4

Descripción: El registro de usuarios permite: - Ingreso de nuevos usuarios al sistema - Control de permisos

Observaciones: - El único con el permiso de acceder al registro de usuarios es el administrador.

Figura 12. Historia de usuario, ingreso de usuarios Fuente: Los autores.

Historia de usuario Número: 3

Nombre: Administración de Usuarios

Usuario: Administrador Modificación de usuario: N/A

Iteración asignada: Segunda

Prioridad en negocio: Medio

Puntos estimados: 0,4

Riesgo en desarrollo: Medio

Puntos reales: 0,4

Descripción: la administración de usuarios permite: - Inhabilitar a un usuario del sistema - Restablecer la contraseña y usuario - Asignar privilegios a otros usuarios

Observaciones: - El perfil administrador será el único que puede ingresar al módulo de usuarios.

Figura 13. Historia de usuario, administración de usuarios Fuente: Los autores.


47

Historia de usuario Número: 4

Nombre: Reporte de Usuario

Usuario: Administrador Modificación de usuario: N/A

Iteración asignada: Segunda

Prioridad en negocio: Medio

Puntos estimados: 0,3

Riesgo en desarrollo: Medio

Puntos reales: 0,2

Descripción: El reporte de usuarios permite: - Filtrar información acerca de los usuarios en tiempo real - Impresión de reporte en línea

Observaciones: - El perfil administrador es el único que puede generar reporte de usuarios.

Figura 14. Historia de usuario, reporte de usuarios Fuente: Los autores.

5.2.1.4.3 Módulo Faenamiento Historia de usuario Número: 5

Nombre: Registro de ganado bovino y porcino

Usuario: Administrador y Servidor Público Modificación de usuario: N/A

Iteración asignada: tercera

Prioridad en negocio: Medio

Puntos estimados: 0,3

Riesgo en desarrollo: Medio

Puntos reales: 0,4

Descripción: El registro de ganado bovino y porcino permite: - Registrar de ganado bovino y porcino - Añadir una nueva categoría de ganado

Observaciones: - El perfil administrador será el único que puede registrar datos, solo en caso de que el administrador asigne privilegios el servidor público también podrá registrar ganado. Figura 15. Historia de usuario, registro de especies Fuente: Los autores.


48

Historia de usuario Número: 6

Nombre: Registro de Introductores

Usuario: Administrador y Servidor Público Modificación de usuario: N/A

Iteración asignada: tercera

Prioridad en negocio: Medio

Puntos estimados: 0,4

Riesgo en desarrollo: Medio

Puntos reales: 0,4

Descripción: El registro de Introductores permite: - Registro de Introductores. - Administración de Introductores

Observaciones: - El perfil administrador será el único que puede registrar datos, solo en caso de que el administrador asigne privilegios el servidor público también podrá registrar introductores.

Figura 16. Historia de usuario, registro de introductores Fuente: Los autores. Historia de usuario Número: 7

Nombre: Registro de Tercenista

Usuario: Administrador y Servidor Público Modificación de usuario: N/A

Iteración asignada: tercera

Prioridad en negocio: Medio

Puntos estimados: 0,6

Riesgo en desarrollo: Medio

Puntos reales: 0,4

Descripción: El registro de tercenista permite: - Registro de tercenistas pertenecientes al camal municipal - Administración de tercenistas

Observaciones: - El perfil administrador será el único que puede registrar datos, solo en caso de que el administrador asigne privilegios el servidor público también podrá registrar tercenistas.

Figura 17. Historia de usuario, registro de tercenista Fuente: Los autores.


49

Historia de usuario Número: 8

Nombre: Registro de Vehículo

Usuario: Administrador y Servidor Público Modificación de usuario: N/A

Iteración asignada: Tercera

Prioridad en negocio: Medio

Puntos estimados: 0,4

Riesgo en desarrollo: Medio

Puntos reales: 0,2

Descripción: El registro de vehículo permite: - Registro de Vehículos - Administración de vehículos

Observaciones: - El perfil administrador será el único que puede registrar datos, solo en caso de que el administrador asigne privilegios el servidor público también podrá registrar vehículos.

Figura 18. Historia de usuario, registro de vehículos Fuente: Los autores.

Historia de usuario Número: 9

Nombre: Reporte de ganado bovino y porcino

Usuario: Administrador y Servidor Público Modificación de usuario: N/A

Iteración asignada: Tercera

Prioridad en negocio: Medio

Puntos estimados: 0,4

Riesgo en desarrollo: Medio

Puntos reales: 0,2

Descripción: El reporte de ganado bovino y porcino : - Filtrar información acerca del ganado en tiempo real - Impresión de reporte en línea

Observaciones: - Todos los usuarios pueden generar reportes.

Figura 19. Historia de usuario, reporte de especies Fuente: Los autores.


50

Historia de usuario Número: 10

Nombre: Reporte de Introductores y tercenistas

Usuario: Administrador y Servidor Público Modificación de usuario: N/A

Iteración asignada: Tercera

Prioridad en negocio: Medio

Puntos estimados: 0,4

Riesgo en desarrollo: Medio

Puntos reales: 0,2

Descripción: El reporte de introductores y tercenistas permite: - Filtrar información acerca de introductores y tercenistas en tiempo real - Impresión de reporte en línea

Observaciones: - Todos los usuarios pueden generar reportes. - El tipo de reporte depende del perfil de usuario

Figura 20. Historia de usuario, reporte de introductores y tercenistas Fuente: Los autores.

5.2.1.5.

Planificación de entrega y valoración de historias de usuario.

Conforme se realizaron las historias de usuario, se estableció las actividades y responsabilidades que existen en cada módulo, de esta manera se establece un cronograma para la elaboración y entrega del primer prototipo del producto. Por otro lado, en la valoración de las historias de usuario se determina un valor que debe estar en un rango determinado, éste valor denota la prioridad que se le asigna a la historia de usuario.


51

Figura 21. Cronograma de Actividades Planificacion de entrega


52

Módulo M. Sistema

M. Usuarios

M. Faenamiento

#

Tiempo estimado

Historia de usuario S

D

H

1

Parametrización del sistema

0,2

1

2

2

Registro de usuarios

0,4

2

4

3

Administración de usuarios

0,4

2

4

4

Reporte de usuarios

0,2

1

2

5

Registro de ganado bovino y porcino

0,4

2

4

6

Registro de Introductores

0,4

2

4

7

Registro de tercenistas

0,4

2

4

8

Registro de Vehículos

0,2

1

2

9

Reporte de ganado bovino y porcino

0,2

1

2

10

Reporte de introductores y tercenistas

0,2

1

2

3

15

30

Tiempo estimado total

Figura 22. Valoración de historias de usuario Fuente: Los autores.

5.2.1.6.

Iteraciones y elaboración del plan de entrega

Las iteraciones hacen énfasis al número de repeticiones y avances en los procesos que se han necesitado realizar previamente a entregar el producto. En la elaboración del plan de entrega se establece un tiempo calendario, en donde se especifica horas, días y semanas. 5.2.1.6.1 Tiempo Calendario Horas calendario

Días calendario

Semanas calendario

2 horas (horas de desarrollo del proyecto)

5 días (días laborables de desarrollo del proyecto)

3 semanas (semanas de desarrollo del proyecto)

Figura 23. Planificación en tiempo calendario Fuente: Los autores.


53

5.2.1.6.2 Esfuerzo de Desarrollo o Personas en el equipo: 2 personas o Por lo tanto: Esfuerzo por semana de desarrollo: 2 personas = 1 semana o Esfuerzo por días de desarrollo: 2 personas = 5 días o Esfuerzo por horas calendario de desarrollo: 2 personas = 2 horas Personas en el equipo

Horas de esfuerzo de desarrollo

Días de esfuerzo de desarrollo

Semanas de esfuerzo de desarrollo

2 personas 2 horas 5 días Figura 24. Esfuerzo de desarrollo del proceso XP

1 semana

Fuente: Los autores.

5.2.1.6.3 Plan de Entrega

Módulo

M. Sistema

M. Usuarios

M. Faenamie nto

#

Tiempo estimado

Historia de usuario

Calendario estimado

Iteración asignada

S

D

H

S

D

H

1 X

2

Entrega asignada 3

1

2

1

Parametrización del sistema

0,2

1

2

0,2

1

2

2

Registro de usuarios

0,4

2

4

0,4

2

4

X

X

3

Administración de usuarios

0,4

2

4

0,4

2

4

X

X

4

Reporte de usuarios

0,2

1

2

0,2

1

2

X

X

5

Registro de ganado bovino y porcino

0,4

2

4

0,4

2

4

X

X

6

Registro de Introductores

0,4

2

4

0,4

2

4

X

X

7

Registro de tercenistas

0,4

2

4

0,4

2

4

X

X

8

Registro de Vehículos

0,2

1

2

0,2

1

2

X

X

9

Reporte de ganado bovino y porcino

0,2

1

2

0,2

1

2

X

X

10

Reporte de introductores y tercenistas

0,2

1

2

0,2

1

2

X

X

Total semanas

Figura 25. Plan de entrega del proyecto Fuente: Los autores.

0,2

X

1

1,8

3


54

5.2.2.

Etapa 2: Diseño

El objetivo principal de esta etapa es obtener como resultado, la base de datos del sistema de manera funcional, triggers, store procedure y el script de la base de datos. Además, para el desarrollo y asignación de responsabilidades necesariamente se ha empleado las tarjetas CRC, las cuales se consideran como una metodología de diseño orientado a objetos. 5.2.2.1.

Tarjetas CRC

El significado CRC es: clases, responsabilidades, colaboradores; tal y como su nombre lo indica el uso de estas tarjetas es para establecer las clases, asignar las responsabilidades y definir los colaboradores. 5.2.2.1.1 Escenario n° 1. Parametrización del sistema Tarjeta CRC Número: 1

Escenario: Parametrización del sistema

Nombre CRC: Sistema Responsabilidades

Colaboradores

Métodos

Mantener el registro de la información del sistema

dgdsQuey

get_data

Visualización de la actual configuración

dgdsQuey

get_data

Actualizar información de contacto

dgdsQuey

post_update

Actualizar información de web-mail

dgdsQuey

post_update

Observaciones:  Toda acción es filtrada mediante el controlador “routeController”.

Figura 26. Tarjeta CRC, parametrización del sistema Fuente: Los autores.


55

5.2.2.1.2 Escenario n° 2. Registro y Administración de Usuarios. Tarjeta CRC Número: 2

Escenario: Registro y Administración de Usuarios

Nombre CRC: Administración de Usuarios Responsabilidades

Colaboradores

Métodos

Ingresar Usuario

dgdsQuery

get_data

Administrar Usuario

dgdsQuery

get_data

Visualización de Usuarios

dgdsQuery

get_data

Restablecimiento de contraseña

dgdsQuery

get_update

Asignación de privilegios

dgdsQuery

Post_update

Observaciones:  Solo puede acceder al servicio el usuario Administrador.

Figura 27. Tarjeta CRC, administración de usuarios Fuente: Los autores.

5.2.2.1.3 Escenario n° 3. Administración de registros del faenamiento El escenario 3 encierra las principales actividades por lo cual se da solución al problema de investigación, ya que con las presentes actividades se elimina el solapamiento de acciones realizadas por parte del personal del GAD Municipal, entre otras se detalla a continuación las actividades primordiales: o Registro de ganado, introductores, tercenistas, vehículos. o Administración de ganado, introductores, tercenistas, vehículos. o Reportes de ganado, introductores, tercenistas, vehículos. Este escenario enfrasca la mayor parte de actividades que se realiza en el centro de faenamiento DGDS.


56

Tarjeta CRC Número: 3

Escenario: Administración de registros del faenamiento

Nombre CRC: Faenamiento Responsabilidades

Colaboradores

Métodos

Registro de ganado bovino y porcino

dgdsQuery

get_data

Administración de ganado bovino y porcino

dgdsQuery

post_update

Registro de introductores

dgdsQuery

get_data

Administración de introductores

dgdsQuery

post_update

Registro de tercenista

dgdsQuery

get_data

Administración de tercenista

dgdsQuery

post_update

Registro de vehículos

dgdsQuery

get_data

Administración de vehículos

dgdsQuery

post_update

dgdsQuery

get_data

dgdsQuery

get_data

Reporte de ganado bovino y porcino Reporte de introductores y tercenista

Observaciones:  Toda acción es filtrada mediante el controlador “routeController”.

Figura 28. Tarjeta CRC, administración de faenamiento Fuente: Los autores.

5.2.2.2.

Diseño de la Base de Datos

El objetivo principal es presentar el diseño lógico y físico de la base de datos que se ha generado con la información obtenida a través de las historias de usuario y módulos del sistema en el DGDS.


5.2.2.3.

Diseño físico de la Base de Datos

Figura 29. Diseño físico de la base de datos Fuente: Los autores


5.2.2.4.

Diseño lógico de la Base de Datos

Figura 30. Diseño lógico de la base de datos Fuente: Los autores


59

5.2.2.5.

Diccionario de Datos

Luego de haber obtenido información mediante un análisis de los requerimientos, se presenta el diccionario de datos con el fin de exhibir la información que contiene el sistema de manera lógica y precisando todos los datos conseguidos (ver anexo 3). 5.2.2.6.

Script de la Base de Datos

Los scripts son un conjunto de instrucciones ejecutadas mediante código que sirven para crear una base de datos y a sus componentes, de este modo se permite visualizarla de manera completa y chequearla en caso de que se encuentre algún error. A continuación el script de las principales entidades del sistema (ver anexo 4). 5.2.3.

Etapa 3: Codificación

Esta etapa realiza cambios de manera simultánea con la etapa de diseño, de tal modo que ambas partes sufren permutaciones continuas a favor del usuario, para que el analista vuelva a interpretar la información y proyecte en código. 5.2.3.1.

Creación de triggers

En este apartado se conoce el desarrollo de los triggers, de tal forma que se especifica en que eventos como: validar datos, realizar consultas o realizar una operación DML, el disparador se activa. Estas tareas se ejecutan de manera automática con el fin de optimizar la aplicación, debido a que permite cierto nivel de independencia del usuario (ver anexo 5).


60

5.2.4.

Etapa 4: Pruebas

5.2.4.1.

Pruebas de Aceptación

Para llegar a este punto se afirma que las historias de usuario han sido finalizadas, de tal modo que se ha proseguido a partir de las mismas, deliberando cada historia del respectivo modulo y verificando cada prueba de aceptación para que el usuario tenga el resultado esperado. 5.2.4.1.1 Módulo n° 1: Parametrización del sistema Prueba de aceptación Caso de prueba: Parametrización del sistema Número de caso de prueba: 1

Número de historia de usuario: 1

Nombre de caso de prueba: Registro correcto de información del sistema Descripción: La información del sistema puede ser cambiado conforme el paso del tiempo. Condiciones de ejecución: La información del sistema puede ser cambiado conforme se cambie información relevante del sistema. Entradas: 1. El administrador ingresa al módulo de administración 2. Ingresa la nueva información 3. El administrador da click en el botón guardar Resultados esperados:  Se actualiza la nueva información

Evaluación:  El registro ya se encuentra actualizado.

Figura 31. Prueba de aceptación, parametrización del sistema Fuente: Los autores


61

5.2.4.1.2 Módulo n° 2: Registro y administración de usuarios Prueba de aceptación Caso de prueba: Registro y administración de usuarios Número de caso de prueba: 2

Número de historia de usuario: 2 - 4

Nombre de caso de prueba: Registro correcto de información de usuarios Descripción: La gestión del sistema constará un menú con la opción “usuarios”, el cual permitirá: ingresar un usuario al sistema, se desplegará el rol que se le determinará, al almacenar el registro, posteriormente el usuario ya logrará ingresar al sistema, de la misma manera puede proceder a editar la información del usuario (restablecimiento de usuario y contraseña). Así mismo se podrá inhabilitar el usuario. Condiciones de ejecución: La información de los usuarios puede ser editada únicamente por el mismo. Entradas: 1. El administrador ingresa al módulo de usuarios 2. Para registrar un nuevo usuario ingresará sus datos y dará click en guardar. 3. Para restablecer su usuario y/o contraseña en el menú de opción estará disponible la opción, el usuario o contraseña que se restablezca será el mismo que al inicio (número de cédula). 4. Para suspender la cuenta de un usuario bastará con dar click en el interruptor de suspender. 5. Los cambios se guardarán con éxito en el sistema. Resultados esperados:  Se actualiza la información correspondiente al registro  El sistema muestra un mensaje de confirmación según sea el caso.

Evaluación:  Los datos se han guardado satisfactoriamente.

Figura 32. Prueba de aceptación, registro y administración de usuarios Fuente: Los autores


62

5.2.4.1.3 Módulo n° 3: Administración de registros del faenamiento Prueba de aceptación Caso de prueba: Registro y administración de introductores, tercenistas y vehículos. Número de caso de prueba: 3

Número de historia de usuario: 5 - 10

Nombre de caso de prueba: Registro correcto de información de introductores, tercenistas y vehículos. Descripción: En este módulo se realiza el ingreso y administración de los datos correspondientes a:  Tercenistas  Vehículos  Dueños de animal  Datos Faenamiento Recalcando que solo el usuario administrador puede editar los registros almacenados, además se generan reportes por parte de cualquier usuario del sistema. Los permisos para el usuario, servidor público, son muy limitados, sin embargo el administrador puede asignar los respectivos privilegios. Condiciones de ejecución: La información del módulo del faenamiento alcanza ser cambiado conforme el paso del tiempo. Entradas: 1. El administrador ingresa al módulo de faenamiento 2. Para ingresar un nuevo animal ingresa los datos y procede a guardar. 3. Para la edición de los datos de un animal seleccione uno de ellas, se desplegará una ventana de dialogo con todos los datos para ser actualizados, los cambia y procede a guardar, o datos que se presenten con color azul significa pueden ser editados sin necesidad de abrir alguna otra ventana. 4. Para ingresar un nuevo tercenista ingresa los datos y procede a guardar 5. Para la edición de los datos de un tercenista seleccione uno de ellos, se desplegará una ventana de dialogo con todos los datos para ser actualizados, los cambia y procede a guardar. 6. Para ingresar un nuevo vehículo ingresa los datos y procede a guardar 7. Para la edición de los datos del vehículo seleccione uno de ellos, se desplegará una ventana de dialogo con todos los datos para ser actualizados, los cambia y procede a guardar. 8. Para ingresar un nuevo dueño de animal ingresa los datos y procede a guardar 9. Para la edición de los datos del dueño del animal seleccione uno de ellos, se desplegará una ventana de dialogo con todos los datos para ser actualizados, los cambia y procede a guardar 10. Para inhabilitar un usuario se da click en el dibujo de “shutdown” de la aplicación y se inhabilita, no se eliminara ningún usuario solo inhabilita. 11. Para generar el informe, seleccionar el tipo de informe con sus características y click en “generar informe”(pdf o excel). Resultados esperados:  Se actualiza la información correspondiente al registro  El sistema muestra un mensaje de confirmación de acuerdo a la opción. Evaluación:  Los datos se han guardado satisfactoriamente.

Figura 33. Prueba de aceptación, administración de registros del faenamiento Fuente: Los autores


63

5.3.

Conclusiones

La aplicación informática gestiona y administra de manera eficaz y eficiente la información a manipularse en el Centro de Faenamiento del departamento DGDS del GADMPVM, evidenciándose estos resultados en la fase de pruebas de la metodología XP. El diseño de la aplicación se ajusta a lo solicitado en el documento SRS (ver anexo 12) que fue establecido por el departamento DGDS del GADMPVM y de esta manera toda la funcionalidad de la aplicación se desarrolló con dichos parámetros especificados. La metodología de desarrollo XP, fue la correcta para la creación de la aplicación informática puesto que proporcionó a los desarrolladores la facilidad en la programación en parejas la que consiste en el que esté al frente de la computadora sea el piloto y el otro sea el copiloto intercambiando opiniones y así finalizar el desarrollo de la aplicación. La metodología de desarrollo XP, también facilito en la presentación de avances de la aplicación informática ya que dicha metodología consiste en probar el código generado hasta un determinado tiempo donde se da un visto bueno si está bien o una advertencia si no sigue las indicaciones del software y de esta manera realizar sus correcciones en estructura como en código. Las herramientas utilizadas fueron las correctas para el desarrollo de la aplicación informática, puesto que PHP se ejecuta en cualquier plataforma utilizando el mismo código fuente además de interactuar con muchos motores de bases de datos en este caso PostgreSQL que se centra en la fiabilidad de sus datos y la integridad de los mismos. La aplicación informática cuenta con interfaces amigables e intuitivas para los usuarios a manejar la aplicación siguiendo un concepto minimalista sin saturar de muchos elementos


64

cada módulo de la aplicación de tal manera que les permita gestionar y administrar con facilidad el software.

5.4.

Recomendaciones

Para realizar un proyecto es recomendable elegir de manera adecuada y minuciosa la metodología a utilizarse comparando sus ventajas y desventajas además de analizar cuál es la que mejor se adapte al proyecto a ser desarrollado, de esta manera se ahorra tiempo y recursos. Se recomienda utilizar herramientas open source para el desarrollo de aplicaciones, por cuanto permitirían a las organizaciones ahorrar recursos económicos por la adquisición de licencias con mayor facilidad. Es recomendable que para futuros proyectos se proponga la integración de los sistemas institucionales con el fin de no duplicar esfuerzos y optimizar los recursos y tiempo. Es necesario realizar una explicación de la metodología a utilizar en un proyecto al usuario u organismo al que se esté desarrollando un proyecto con el objetivo de que el cliente sepa cómo se va a llevar a cabo el proyecto. Es de importancia revisar diferentes fuentes bibliográficas en la ejecución de una disertación de grado para obtener una idea clara de un tema como por ejemplo una metodología de desarrollo de software, ya que cuanto más conocimiento se tenga mejor serán los resultados.


65

REFERENCIAS Bernal, C. A. (2010). Metodología de la Investigación. Colombia: Pearson Educación, S.A. Calderón, A. (2007). Metodologías Ágiles. Trujillo. Desongles Corrales, J., & Moya Arribas, M. (2006). Conceptos básicos de la informática. España: Editoria MAD, S.L. Escuela Politécnica Nacional. (Mayo de 2011). Escuela Politécnica Nacional. Obtenido de http://bibdigital.epn.edu.ec/bitstream/15000/3823/1/CD-3595.pdf José Velez, ALberto Peña, Paxti Gortazar, Ángel Sánchez. (2011). Disear y Programar, todo es empezar. Madrir: DYKYNSON. jQuery. (2015). jQuery. Obtenido de https://jquery.com/ Martinez, R. (2013). PostgreSql. Obtenido de PostgreSql: http://www.postgresql.org.es/sobre_postgresql MySql Hispano. (29 de Mayo de 2003). Normalizacion de Base de Datos. Obtenido de mysql-hispano: www.mysql-hispano.org Pressman, R. (2010). Ingenieria del Software. En R. Pressman, Ingenieria del Software. Mexico: MC GRAW HILL. Pullas, E. (2010). Desarrollo de un Sistema para voto electronico y emision de resultados en procesos electorales. Quito. Ramos, A., & Ramos, J. (2011). Aplicaciones WEB. Madrid: Ediciones Paraninfo, S.A. Senplades. (2013). Plan Nacional para el Buen Vivir 2013-2017. Quito. Sommerville, I. (2011). Ingenieria de Software. En I. Sommerville, Ingenieria de Software (pág. 792). Mexico: PEARSON EDUCACIÓN. Spiegel, M. (s.f.). Teoria Elemental del Muestreo. TEORÍA DE LA DECISIÓN ESTADÍSTICA, ENSAYOS DE HIPÓTEIS Y SIGNIFICACIÓN. En M. Spiegel, Teoria elemental del Muestreo.


ANEXOS


ÍNDICE DE ANEXOS ANEXO 1. ENCUESTA ANEXO 2. ENTREVISTA ANEXO 3. DICCIONARIO DE DATOS ANEXO 4. SCRIPT DE LA BASE DE DATOS ANEXO 5. CREACION DE TRIGGERS ANEXO 6. CAPACITACIÓN DEL PERSONAL EN LA ADMINISTRACIÓN DEL SISTEMA ANEXO 7. CARTA IMPACTO ANEXO 8. ACTA ENTREGA – RECEPCIÓN ANEXO 9. APROBACIÓN DEL DOCUMENTO DE ESPECIFICACIÓN DE REQUERIMIENTOS DEL SISTEMA CACF ANEXO 10. MANUAL DE USUARIO ANEXO 11. INSTALACIÓN DE POSTGRESQL ANEXO 12. ESPECIFICACIÓN DE REQUERIMIENTOS DE SOFTWARE (SRS) CACF


ANEXO 1. ENCUESTA


PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO

Concurrimos estudiantes de la escuela de Sistemas, esta encuesta es de IA3 y está predestinada para estar al tanto de la complacencia del personal del centro de Faenamiento del Departamento de Gestión y Desarrollo Sustentable del GAD Municipal de Pedo Vicente Maldonado. 6. ¿Qué tan relevante considera Ud. la implementación del proyecto para el centro de Faenamiento? a) Relevante b) Muy relevante c) Imprescindible 7. De los aspectos que se indican a continuación, ¿cuáles considera que aportarían como beneficio la implementación del sistema? a) Mejor atención b) Optimización de tiempo c) Optimización de recursos d) Otros (especificar): ………………………………………………………………………………… 8. ¿Qué tiempo considerada Ud. que se utilizaría para generar reportes del centro de Faenamiento actualmente? a) De 0 min a 15 min. b) De 16 min a 30 min. c) De 31 min a 1 hora. d) Más de 1 hora. 9. a) b) c) d)

¿Qué dificultad encuentra actualmente en la forma de registrar la información? Perdida de registro Duplicidad de Información Información desactualizada Otros (especificar): ………………………………………………………………………………….

10. De implementarse el sistema para el centro de Faenamiento, ¿Cree Ud. Sería necesario una capacitación al personal? a) Si b) No Nota: Cabe subrayar que esta encuesta será manejada solamente para resultados académicos.


ANEXO 2. ENTREVISTA


PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO

ENTREVISTA PARA OBTENCIÓN DE INFORMACIÓN DE APLICACIÓN WEB PARA EL DGDS DEL GAD MUNICIPAL DE PEDRO VICENTE MALDONADO

Fecha y hora: Lugar: Nombre del entrevistado:

16/07/2015 11:00 am Municipio de Pedro Vicente Maldonado Víctor Alfonso Solórzano Villacis

Cargo:

Encargado del Control Sanitario y Productividad del DGDS.

Resumen de Entrevista:

Entrevista realizada al Dr. Víctor Alfonso Solórzano Villacís encargado del Control Sanitario y Productividad del DGDS. 

¿Qué impacto tendría el sistema de aplicación web dentro del GAD Municipal de Pedro Vicente Maldonado? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________

¿Cómo le gustaría que sea la interfaz de usuario para la aplicación Web? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________


¿Cuál fue la necesidad de un Sistema Web dentro del GAD Municipal? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________

¿Cuál sería el aporte del sistema al centro de Faenamiento DGDS? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________

¿Cuántas personas son las que van a administrar la información? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________

¿Requieren datos estadísticos? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________

¿Qué tipo de información se le proporcionara a la ciudadanía? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________


ANEXO 3. DICCIONARIO DE DATOS


Diccionario de Datos tb_actividad: tabla actividad Se registra las actividades que realiza el usuario, como por ejemplo: Ingreso de nuevo registro, inicio de sesión, editar registros, ingreso de nuevo usuario, ingreso de perfiles. Name

Data type

Not Null ? Yes

Primar y key?

Default

Comment

activid ad_id equipo fecha

integer

Yes

nextval('tb_actividad_acti vidad_id_seq'::regclass)

Registra actividad

text timestamp without time zone text

No No

No No

statement_timestamp()

Equipo de usuario Fecha de actividad

No

No

current_query()

descripción

text

No

No

evento

text

No

No

ipaddr ess

text

No

No

countr ycode countr yname region name cityna me zipcod e latitud e longitu de timezo ne fk_usu ario_id

text

No

No

text

No

No

text

No

No

text

No

No

text

No

No

Almacena la operación realizada Almacena el evento realizado Almacena la dirección de la pc Registra el código del país Registra el nombre del país Registra el nombre de la región Registra el nombre de la ciudad Código postal

text

No

No

Latitud

text

No

No

Longitud

text

No

No

Zona horaria

integer

No

No

Llave Foránea

descri pcion tabla

inet_client_addr()

tb_animal: tabla animal Se guarda los datos concernientes al animal, por ejemplo: peso, edad, patologías, clasificación, número de arete, número de guía, número de rastro.


Name

Default

Comment

nextval('tb_animal_animal_id _seq'::regclass)

No No

Identification del animal Edad del animal Peso del animal

No

No

Arete del animal

text

No

No

Guía del animal

text

No

No

No

No

animal_patologias

numeric (5,2) text

Rastro del animal Peso del canal

No

No

animal_clasificacion

text

No

No

animal_volumen_ma teria_fecal animal_volumen_sa ngre fk_etapa_id fk_color_id fk_duenio_id

numeric (5,2) numeric (5,2) integer integer integer

No

No

No

No

No No No

No No No

animal_id animal_edad animal_peso animal_numero_are te animal_numero_gui a animal_numero_rast ro animal_peso_canal

Data type integer

Not Null? Yes

Primary key? Yes

smallint numeric (5,2) text

No No

Patologías del animal Clasificación del animal Volumen de materia fecal Volumen de sangre Llave foránea Llave foránea Llave foránea

tb_color: tabla color Guarda el nombre del color del animal Name color_id color_nom bre

Data type integer

Not Null? Yes

Primary key? Yes

text

No

No

Default

Comment

nextval('tb_color_color_id_seq'::r egclass)

Identification de la tabla Color del animal

tb_duenio: tabla dueño Almacena los datos del dueño del animal: el id de referencia a la tabla persona.

Name duenio_id fk_person a_id

Data type integer

Not Null? Yes

Primary key? Yes

integer

No

No

Default

Comment

nextval('tb_duenio_duenio_id_s eq'::regclass)

Identificación del dueño del animal Llave foránea


tb_especie: tabla especie Almacena el nombre de la especie, ejemplo: bovino, porcino

Name especie_id especie_no mbre

Data type integer

Not Null? Yes

Primary key? Yes

text

No

No

Default

Comment

nextval('tb_especie_especie_id_s eq'::regclass)

Identificación de la tabla especie Nombre de la especie

tb_etapa: tabla etapa Almacena el nombre de la etapa del crecimiento del animal, por ejemplo: chancho, chanchilla, vaca, vacona, ternero y su sexo (macho o hembra).

Name etapa_id etapa_no mbre fk_especie _id etapa_sexo

Data type integer

Not Null? Yes

Primary key? Yes

Default

Comment

nextval('tb_etapa_etapa_id_seq' ::regclass)

No

Identificación de la tabla etapa Nombre de la etapa

text

No

integer

No

No

Llave foránea

text

No

No

Llave foránea

tb_faenamiento: tabla faenamiento Almacena la relación entre animal, introductor, vehículo, tercenista y faenamiento

Name faenamiento _id faenamiento _destino faenamiento _fecha fk_animal_i d fk_introduct or_id fk_vehiculo_ id

Data type intege r text

Not Null? Yes

Primary key? Yes

Default

Comment

nextval('tb_faenamiento_faenamie nto_id_seq'::regclass)

No

Identificación de la tabla faenamiento Destino de faenamiento

No

date

No

No

Fecha de faenamiento

intege r intege r intege r

No

No

Llave foránea

No

No

Llave foránea

No

No

Llave foránea


tb_introductor : tabla introductor Almacena la referencia a la tabla persona

Name introduct or_id fk_perso na_id

Data type intege r intege r

Not Null? Yes

Primary key? Yes

No

No

Default

Comment

nextval('tb_introductor_introductor _id_seq'::regclass)

Identificación de la table introductor Llave foránea

tb_perfil: tabla perfil Guarda el perfil del usuario (administrador, servidor público), si se desea se puede crear más usuarios y asignar sus respectivos privilegios.

Name perfil_id perfil_nombre perfil_descripcio n fk_usuario_resp onsable

Data type integer

Not Null? Yes

Primary key? Yes

Default

Comment

nextval('tb_perfil_perfil_id_s eq'::regclass)

No No

Identificación de la tabla perfil Nombre del perfil Descripción del perfil

text text

Yes No

integer

No

No

Llave foránea

tb_permiso: tabla permiso Almacena los permisos del sistema, los que vienen por defecto. Solamente cambian con la regla del negocio.

Name permiso_id permiso_nom bre permiso_desc ripcion

Data type integer

Not Null? Yes

Primary key? Yes

text

Yes

No

text

No

No

Default

Comment

nextval('tb_permiso_permiso_id _seq'::regclass)

Identificación de la tabla permiso Nombre del permiso Descripción del permiso


tb_persona: tabla persona Almacena los datos personales, cedula, nombre, teléfono, e mail, dirección, fecha de nacimiento Name

Data type

persona_id persona_doc _identidad persona_tipo _doc persona_foto persona_apel lidos persona_nom bres persona_fnac imiento persona_sexo persona_dire ccion persona_telef ono persona_corr eo persona_fing reso fk_usuario_r esponsable

Primar y key?

Default

Comment

integer

Not Null ? Yes

Yes

nextval('tb_persona_perso na_id_seq'::regclass)

text

Yes

No

text

Yes

No

Identificación de la tabla persona Identificación de la persona Tipo de identificación

text text

No Yes

No No

'default.png'::text

Foto de persona Apellido de la persona

text

Yes

No

Nombre de la persona

date

No

No

text text

No No

No No

Fecha de nacimiento de la persona Sexo de la persona Dirección de la persona

text

No

No

Teléfono de la persona

text

No

No

Correo de la persona

timestamp without time zone integer

No

No

No

No

statement_timestamp()

Fecha de ingreso al sistema de la persona Llave foránea

tb_reporte: tabla reporte Registra los datos de objetivos y antecedentes que van en los reportes

Name reporte_id reporte_nom bre reporte_antec edentes reporte_objet ivos

Data type intege r text

Not Null? Yes

Primary key? Yes

No

No

text

No

No

text

No

No

Default

Comment

nextval('tb_reporte_reporte_id _seq'::regclass)

Identificación de la table reporte Nombre del reporte Registro de Antecedentes en el reporte Objetivo del reporte


tb_setting: tabla setting Guarda todo lo concerniente al sistema: correo electrónico de la institución, dirección, teléfono, nombre, alcalde, departamento, descripción, ciudad, celular, configuración del web mail. Name setting_id setting_nombre setting_alcalde setting_departam ento setting_director setting_descripci on setting_header setting_img setting_ciudad setting_direccion setting_telefono setting_celular setting_correo_c ontacto setting_sitioweb setting_ip setting_correo_h ost setting_correo_p uerto setting_correo_u suario setting_correo_m ail setting_correo_p ass setting_correo_se guridad

Data type intege r text

Not Null? Yes

Primary key? Yes

Default

Comment

nextval('tb_setting_setting_id_ seq'::regclass)

No No No No No No No

Identificación de la table setting Nombre de la configuración Nombre de alcalde Nombre departamento Nombre director Detalle de descripción Cabecera Imagen Ciudad Teléfono Celular correo Correo de contacto

No

No

text text

No No

No No

text text

No No

No No

text text text text text text text

No No No No No No No

text text text

No No No

No No No

Sitio de servidor Ip de la pc Correo de hosting

text

No

No

Correo por defecto

text

No

No

Correo de usuario

text

No

No

Correo de registro

text

No

No

Correo de acceso

text

No

No

Correo de seguridad


tb_usuario: tabla usuario Guarda el usuario, el id del usuario, contraseña. Name usuario_id usuario_login usuario_pass usuario_estado fk_persona_id fk_perfil_id fk_usuario_resp onsable

Data type intege r text text

Not Null? Yes

Primary key? Yes

Default

Comment

nextval('tb_usuario_usuario_id _seq'::regclass)

Identificación de la tabla usuario Ingreso del usuario Contraseña del usuario Estado del usuario

Yes Yes

No No

boole an intege r intege r intege r

No

No

No

No

Llave foránea

No

No

Llave foránea

No

No

Llave foránea

true

tb_usuario_permiso: tabla de permisos de usuario Almacena los permisos correspondientes a cada usuario

Name fk_usuario_id fk_permiso_id fk_usuario_responsable

Data type integer integer integer

Not Null? No No No

Primary key? No No No

Default

Comment Llave foránea Llave foránea Llave foránea

tb_vehiculo: tabla vehiculo Guarda los datos del vehículo y del propietario: dueño, placa Name vehiculo_id vehiculo_d uenio vehiculo_pl aca

Data type intege r text

Not Null? Yes

Primary key? Yes

Default

Comment

nextval('tb_vehiculo_vehiculo_id_ seq'::regclass)

No

Identificación de la tabla vehículo Dueño de vehículo

Yes

text

Yes

No

Placa de vehículo


ANEXO 4. SCRIPT DE LA BASE DE DATOS


Script de la Base de Datos Parametrización del Sistema Control de información principal, así como de información para el envío de correos electrónicos. -- ---------------------------------------------------------------------- -------------------- PARAMETRIZACIÓN DEL SISTEMA --------------------- --------------------------------------------------------------------CREATE TABLE tb_reporte( reporte_id serial primary key, -- id de registro reporte_nombre text, -- nombre del sistema reporte_antecedentes text, -- nombre de alcalde del cantón reporte_objetivos text -- nombre del departamento ); CREATE TABLE tb_setting( setting_id serial primary key, -- id de registro setting_nombre text, -- nombre del sistema setting_alcalde text, -- nombre de alcalde del cantón setting_departamento text, -- nombre del departamento setting_director text, -- nombre del director del departamento setting_descripcion text, -- descripción del sistema setting_header text, -- siglas del sistema setting_img text, -- nombre de imagen del sistema setting_ciudad text, -- ciudad de sistema setting_direccion text, -- dirección del sistema setting_telefono text, -- teléfono de contacto setting_celular text, -- celular de contacto setting_correo_contacto text, -- correo de contacto setting_sitioweb text, -- sitio web de contacto setting_ip text, -- ip de servidor setting_correo_host text, -- host de servidor, webmail setting_correo_puerto text, -- puerto de conexion, webmail setting_correo_usuario text, -- nombre de usuario de correo, webmail setting_correo_mail text, -- email de webmail setting_correo_pass text, -- contraseña de webmail setting_correo_seguridad text -- parámetro de seguridad - tls, ssl );


Persona Tabla de registros para almacén de información personal y relación con otras entidades, tales como usuarios, introductores, tercenistas, etc. -- ---------------------------------------------------------------------- ------------------------------ PERSONA ------------------------------- ---------------------------------------------------------------------- Creación de la tabla para datos de personas CREATE TABLE tb_persona( persona_id serial primary key, -- id de registro persona_doc_identidad text not null, -- cédula de persona persona_tipo_doc text not null, -- cédula de persona persona_foto text DEFAULT 'default.png'::text, -- imagen de perfil persona_apellidos text not null, -- nombre completo de la persona persona_nombres text not null, -- nombre completo de la persona persona_fnacimiento date, -- fecha de nacimiento persona_sexo text, -- sexo de la persona persona_direccion text, -- dirección de contacto persona_telefono text, -- teléfono de contacto persona_correo text, -- correo de contacto persona_fingreso timestamp without time zone default statement_timestamp() -- fecha de registro );

Usuario Registros de personas con acceso al sistema y módulos específicos. -- ---------------------------------------------------------------------- ------------------------------ USUARIO ------------------------------- ---------------------------------------------------------------------- Permiso de acceso para usuarios CREATE TABLE tb_permiso ( permiso_id serial primary key, -- id de registro permiso_nombre text not null, -- nombre de permiso permiso_descripcion text -- descripción de permiso ); -- Perfil de usuario CREATE TABLE tb_perfil( perfil_id serial primary key, -- id de registro perfil_nombre text not null, -- nombre de perfil perfil_descripcion text -- descripción de perfil ); -- Usuario de persona registrado CREATE TABLE tb_usuario( usuario_id serial primary key, -- id de registro usuario_login text not null, -- login de usuario usuario_pass text not null, -- contraseña de usuario usuario_estado boolean DEFAULT true, -- estado de usuario fk_persona_id integer references tb_persona(persona_id), -- id de persona fk_perfil_id integer references tb_perfil(perfil_id) -- id de perfil ); -- Registro de permisos múltiples CREATE TABLE tb_usuario_permiso ( fk_usuario_id integer references tb_usuario(usuario_id), -- id de


usuario fk_permiso_id integer references tb_permiso(permiso_id) -- id de permiso );


ANEXO 5. CREACION DE TRIGGERS


Creación de los triggers Información General

Trigger #1 -- ------------------------------------------------------------------------------------------------- TRIGGER #: 1 -- NOMBRE: before_insert_tablas -- EVENTO: BEFORE INSERT (ANTES DE INSERTAR) -- DESCRIPCIÓN:Valida que ciertos datos no hayan sido ingresados anteriormente, en el caso de ser registrado -envía un mensaje de alerta como resultado de la transacción y cancela el ingreso del registro create or replace function before_insert_tablas() returns trigger as $before_insert_tablas$ begin IF (TG_TABLE_NAME = 'tb_persona') THEN if((select count(*) from tb_persona where persona_doc_identidad=NEW.persona_doc_identidad)>0) then RAISE EXCEPTION 'La cédula o documento de identificación "<b>%</b>" ya está registrado!', NEW.persona_doc_identidad; end if; ELSIF (TG_TABLE_NAME = 'tb_usuario') THEN if((select count(*) from tb_usuario where usuario_login=NEW.usuario_login)>0) then RAISE EXCEPTION 'El usuario "<b>%</b>" ya está registrado', NEW.usuario_login; end if; ELSIF (TG_TABLE_NAME = 'tb_perfil') THEN if((select count(*) from tb_perfil where perfil_nombre=NEW.perfil_nombre)>0) then RAISE EXCEPTION '<b>"%"</b> ya es un perfil registrado', NEW.perfil_nombre; end if; ELSIF (TG_TABLE_NAME = 'tb_especie') THEN if((select count(*) from tb_especie where lower(especie_nombre)=lower(NEW.especie_nombre))>0) then RAISE EXCEPTION '<b>"%"</b> ya es una especie registrado', NEW.especie_nombre;


end if; ELSIF (TG_TABLE_NAME = 'tb_etapa') THEN if((select count(*) from tb_etapa where lower(etapa_nombre)=lower(NEW.etapa_nombre))>0) then RAISE EXCEPTION '<b>"%"</b> ya es una especie registrado', NEW.etapa_nombre; end if; END IF; RETURN NEW; end; $before_insert_tablas$ language plpgsql;

Invoca al llamado de los Trigger -- --------------INVOCA AL LLAMADO DE LOS TRIGGER ------------------------create trigger before_insert_tablas before insert on tb_etapa for each row execute procedure before_insert_tablas(); create trigger before_insert_tablas before insert on tb_especie for each row execute procedure before_insert_tablas(); create trigger before_insert_tablas before insert on tb_persona for each row execute procedure before_insert_tablas(); create trigger before_insert_tablas before insert on tb_usuario for each row execute procedure before_insert_tablas(); create trigger before_insert_tablas before insert on tb_perfil for each row execute procedure before_insert_tablas();

Trigger #2 -- ------------------------------------------------------------------------------------------------- TRIGGER #: 2 -- NOMBRE: after_insert_tablas -- EVENTO: AFTER INSERT (DESPUÉS DE INSERTAR) -- DESCRIPCIÓN:A modo de auditoria de datos, cada nuevo ingreso de un dato en el sistema se registra en la -tabla tb_registro con una descripción e identificación de la tabla que activó el trigger -Registra los permisos por defecto al usuario de acuerdo al perfil ingresado del usuario -Valida cada tabla que realiza el disparo y hace una tarea por cada una create or replace function after_insert_tablas() returns trigger as $after_insert_tablas$ begin IF (TG_TABLE_NAME = 'tb_usuario') THEN INSERT INTO tb_usuario_permiso values(NEW.usuario_id,1),(NEW.usuario_id,2),(NEW.usuario_id,3),(NEW.usuario_id,4); if(NEW.fk_perfil_id=2) then INSERT INTO tb_usuario_permiso values(NEW.usuario_id,5),(NEW.usuario_id,7); elsif(NEW.fk_perfil_id>2) then INSERT INTO tb_usuario_permiso values(NEW.usuario_id,69);


end if; END IF; INSERT INTO tb_actividad (evento,tabla,fk_usuario_id)values(quote_ident(TG_OP),quote_ident(TG_TABLE_NAME),NE W.fk_usuario_responsable); RETURN NULL; end; $after_insert_tablas$ language plpgsql;

Invoca al llamado de los Trigger -- -------------- INVOCA AL LLAMADO DE LOS TRIGGER ------------------------create trigger after_insert_tablas after insert on tb_perfil for each row execute procedure after_insert_tablas(); create trigger after_insert_tablas after insert on tb_usuario for each row execute procedure after_insert_tablas();

Trigger #3 -- ------------------------------------------------------------------------------------------------- TRIGGER #: 3 -- NOMBRE: before_update_tablas -- EVENTO: BEFORE UPDATE (ANTES DE ACTUALIZAR) -- DESCRIPCIÓN:Valida que ciertos datos no hayan sido ingresados anteriormente, en el caso de ser registrado -envía un mensaje de alerta como resultado de la transacción y cancela la edición del registro create or replace function before_update_tablas() returns trigger as $before_update_tablas$ begin IF (TG_TABLE_NAME = 'tb_persona') THEN -- Cédula de identidad única if(OLD.persona_doc_identidad<>NEW.persona_doc_identidad) THEN if((select count(*) from tb_persona where persona_doc_identidad=NEW.persona_doc_identidad)>0) then RAISE EXCEPTION 'La cédula <b>%</b> ya está registrada!', NEW.persona_doc_identidad; end if; END IF; ELSIF(TG_TABLE_NAME = 'tb_perfil') THEN -- Nombre de perfil único if(OLD.perfil_nombre<>NEW.perfil_nombre) THEN if((select count(*) from tb_perfil where perfil_nombre=NEW.perfil_nombre)>0) then RAISE EXCEPTION '<b>%</b> ya es un perfil registrado', NEW.perfil_nombre; end if; END IF; ELSIF(TG_TABLE_NAME = 'tb_usuario') THEN -- Identificación de usuario (login) único if(OLD.usuario_login<>NEW.usuario_login) THEN if((select count(*) from tb_usuario where usuario_login=NEW.usuario_login)>0) then RAISE EXCEPTION '<b>%</b> ya es un usuario


registrado', NEW.usuario_login; end if; END IF; ELSIF (TG_TABLE_NAME = 'tb_especie') THEN if(OLD.especie_nombre<>NEW.especie_nombre) THEN if((select count(*) from tb_especie where lower(especie_nombre)=lower(NEW.especie_nombre))>0) then RAISE EXCEPTION '<b>"%"</b> ya es una especie registrado', NEW.especie_nombre; end if; end if; ELSIF (TG_TABLE_NAME = 'tb_etapa') THEN if(OLD.etapa_nombre<>NEW.etapa_nombre) THEN if((select count(*) from tb_etapa where lower(etapa_nombre)=lower(NEW.etapa_nombre))>0) then RAISE EXCEPTION '<b>"%"</b> ya es una dato registrado', NEW.etapa_nombre; end if; end if; END IF; return new; end; $before_update_tablas$ language plpgsql;

Invoca al llamado de los Trigger -- -------------- INVOCA AL LLAMADO DE LOS TRIGGER ------------------------create trigger before_update_tablas before update on tb_etapa for each row execute procedure before_update_tablas(); create trigger before_update_tablas before update on tb_especie for each row execute procedure before_update_tablas(); create trigger before_update_tablas before update on tb_persona for each row execute procedure before_update_tablas(); create trigger before_update_tablas before update on tb_perfil for each row execute procedure before_update_tablas(); create trigger before_update_tablas before update on tb_usuario for each row execute procedure before_update_tablas();

Trigger #4 -- ------------------------------------------------------------------------------------------------- TRIGGER #: 4 -- NOMBRE: before_delete_tablas -- EVENTO: BEFORE DELETE (ANTES DE ELIMINAR) -- DESCRIPCIĂ“N:Principalmente se encarga validar que los datos a registrar no hayan sido relacionados o no sean protegisdos por el sistema create or replace function before_delete_tablas() returns trigger as $before_delete_tablas$ begin IF (TG_TABLE_NAME = 'tb_perfil') THEN -- No permite eliminar perfiles del sistema (creados en datos.sql) if(OLD.perfil_id<4) then RAISE EXCEPTION 'No se puede eliminar el perfil <b>"%"</b>. Es un perfil del sistema!', OLD.perfil_nombre; end if; ELSIF (TG_TABLE_NAME = 'tb_duenio') THEN if((select count(*) from tb_animal where fk_duenio_id=OLD.duenio_id)>0) then


RAISE EXCEPTION 'No se puede eliminar referencia a un registro de animal!'; end if; ELSIF (TG_TABLE_NAME = 'tb_color') THEN if((select count(*) from tb_animal where fk_color_id=OLD.color_id)>0) then RAISE EXCEPTION 'No se puede eliminar referencia a un registro de animal!'; end if; ELSIF (TG_TABLE_NAME = 'tb_etapa') THEN if((select count(*) from tb_animal where fk_etapa_id=OLD.etapa_id)>0) then RAISE EXCEPTION 'No se puede eliminar referencia a un registro de animal!'; end if; ELSIF (TG_TABLE_NAME = 'tb_especie') THEN if((select count(*) from tb_etapa where fk_especie_id=OLD.especie_id)>0) then RAISE EXCEPTION 'No se puede eliminar referencia a un registro de etapa!'; end if; END IF; RETURN OLD; end; $before_delete_tablas$ language plpgsql;

el dato, éste hace

el dato, éste hace

el dato, éste hace

el dato, éste hace

Invoca al llamado de los Trigger -- -------------- INVOCA AL LLAMADO DE LOS TRIGGER ------------------------create trigger before_delete_tablas before delete on tb_duenio for each row execute procedure before_delete_tablas(); create trigger before_delete_tablas before delete on tb_color for each row execute procedure before_delete_tablas(); create trigger before_delete_tablas before delete on tb_etapa for each row execute procedure before_delete_tablas(); create trigger before_delete_tablas before delete on tb_especie for each row execute procedure before_delete_tablas(); create trigger before_delete_tablas before delete on tb_perfil for each row execute procedure before_delete_tablas();


ANEXO 6. CAPACITACIÓN DEL PERSONAL EN LA ADMINISTRACIÓN DEL SISTEMA



ANEXO 7. CARTA IMPACTO



ANEXO 8. ACTA ENTREGA – RECEPCIÓN



ANEXO 9. APROBACIÓN DEL DOCUMENTO DE ESPECIFICACIÓN DE REQUERIMIENTOS DEL SISTEMA CACF



ANEXO 10. MANUAL DE USUARIO


PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO Dirección Académica - Escuela de Sistemas

MANUAL DE USUARIO DESARROLLO E IMPLEMENTACIÓN DE UNA APLICACIÓN PARA LA GESTIÓN DE LA INFORMACIÓN DEL CENTRO DE FAENAMIENTO MUNICIPAL DEL CANTÓN PEDRO VICENTE MALDONADO GADMCPVM PARA EL DEPARTAMENTO DE GESTIÓN Y DESARROLLO SUSTENTABLE DURANTE EL PERÍODO 2015-2016

Disertación de Grado previa a la obtención del título de Ingenieros de Sistemas y Computación

Línea de Investigación: Estudio, Diseño e Implementación de Software

Autores: CAMACHO ZAPATA JEREMY RENATO PALMA RIVERA ALEX DARÍO

Director: Mg. SALAZAR ARMIJOS DIEGO RICARDO Santo Domingo – Ecuador Febrero, 2016


ÍNDICE DE CONTENIDOS ÍNDICE DE FIGURAS 1.

INTRODUCCIÓN

2.

FUNCIONES DEL SISTEMA

2.1. Inicio de sesión 2.1.1. Pasos para iniciar sesión en el sistema 2.1.2. Problemas al iniciar sesión 2.2. Página de bienvenida 2.2.1. Menú 2.3. Tareas del administrador 2.3.1. Perfiles de usuario 2.3.2. Administración de usuarios 2.3.3. Permisos de acceso 2.3.4. Administración del sistema 2.4. Tareas de servidor público 2.4.1. Faenamiento 2.4.2. Administración del perfil de usuario


ÍNDICE DE FIGURAS Figura 1. Formulario de Inicio de sesión Figura 2. Página de bienvenida Figura 3. Menú de la aplicación Figura 4. Interfaz de administración de perfiles Figura 5. Botón: Administración de Usuarios Figura 6. Botón: Usuario Figura 7. Datos del perfil Figura 8. Formulario de nuevo perfil de usuario Figura 9. Administración de perfiles Figura 10. Actualización de perfiles Figura 11. Interfaz: Administración de usuarios Figura 12. Botón: Administración de usuarios Figura 13. Interfaz: Nuevo usuario Figura 14. Interfaz: Permisos de acceso Figura 15. Botón: Administración de usuarios Figura 16. Botón: Permisos de acceso Figura 17. Interfaz: Administración del Sistema


Figura 18. Botón: Sistema Figura 19. Formulario: Reportes Figura 20. Formulario: Administración de Información de contacto Figura 21. Formulario: Sistema Figura 22. Interfaz: Faenamiento Figura 23. Botón: Faenamiento Figura 24. Botones: Generación de informe Figura 25. Nuevo registro de faenamiento Figura 26. Ingreso de un dueño de un animal Figura 27. Interfaz: Administrar perfil Figura 28. Botón: Administrar perfil


1. INTRODUCCIÓN El manual de usuario tiene como principal objetivo ser una guía para describir el funcionamiento de la aplicación CACF control y administración de información del centro de Faenamiento perteneciente al Gobierno Autónomo Descentralizado Municipal del Cantón Pedro Vicente Maldonado (GADMCPVM), así como también la descripción de sus componentes.


FUNCIONES DEL SISTEMA Inicio de sesión Para poder ingresar a la aplicación se debe iniciar sesión con la finalidad de manipularla de acuerdo a los perfiles de usuario que cuente cada cuenta registrada en la misma.

Figura 34. Formulario de Inicio de sesión Fuente: Los autores

Pasos para iniciar sesión en el sistema A continuación se describen los apartados que cuentan el inicio de sesión en la aplicación: 1. Usuario: Ingresar el usuario que este sería el número de cedula del personal registrado que a su vez puede ser cambiado en la configuración de perfil. 2. Contraseña: Ingresar la contraseña que corresponde al número de cédula del personal registrado que a su vez puede ser cambiado en la configuración de perfil.


3. Iniciar sesión: Al realizar click en el botón “Iniciar”, se procederá a la validación del usuario y contraseña si en caso de ser correctos dará paso al ingreso a la aplicación, caso contrario se reflejará un mensaje de error informando que los datos son incorrectos. Problemas al iniciar sesión 1. Usuario incorrecto: El usuario por defecto es el número de cédula del personal registrado, que a su vez puede ser cambiado en la configuración de perfil, en caso de haber olvidado el usuario, el usuario administrador tiene la potestad de restaurar tanto el usuario por defecto de un usuario registrado. 2. Contraseña incorrecta: La contraseña por defecto es el número de cédula del personal registrado, que a su vez puede ser cambiado en la configuración de perfil, en caso de haber olvidado la contraseña, el usuario administrador tiene la potestad de restaurar la contraseña por defecto de un usuario registrado.

Página de bienvenida Luego del haber iniciado la sesión se visualizará la página principal de la aplicación, que es la interfaz de bienvenida de la aplicación.

Figura 35. Página de bienvenida Fuente: Los autores


Menú La interfaz le permite al usuario visualizar un menú mediante el cual podrá acceder a los apartados de la aplicación, siendo las siguientes: 1. Al presionar en “CACF” se re direccionará a la página de bienvenida. 2. Se visualizará una gráfica en base al ganado faenado. 3. Se presentan los registros realizados al igual que el ingreso de datos con respecto al faenamiento. 4. Permite la modificación de la información con respecto a la aplicación. 5. Se visualizarán los usuarios registrados en la aplicación además de realizar el ingreso de nuevos usuarios. 6. Se presenta el detalle de la cuenta que se encuentra iniciada la sesión. 7. Permite al usuario cerrar la sesión.

1 Figura 36. Menú de la aplicación Fuente: Los autores

3. 2

3

4

5

1.

1.

1.

1.

1.

1.

1.

1.

1.

1.

1.

1.

.

.

.

.

6 7 .

.

Tareas del administrador Las tareas de administrador corresponden a la administración de los usuarios y de la aplicación. A continuación se describirán estas tareas. Perfiles de usuario Permite crear un nuevo tipo de perfil con su respectiva descripción sobre sus funciones que será designado a un futuro usuario. Además, se puede administrar un perfil existente ya sea para cambiar el nombre del perfil o su descripción.


Figura 37. Interfaz de administración de perfiles Fuente: Los autores

¿Cómo acceder a la administración de perfiles? Para acceder a la administración de perfiles en el menú se debe dar click en el siguiente ícono:

Figura 38. Botón: Administración de Usuarios Fuente: Los autores

Para posteriormente dirigirnos al siguiente al botón usuario:

Figura 39. Botón: Usuario Fuente: Los autores


Presionamos el icono de lápiz que se visualiza en datos del perfil:

Figura 40. Datos del perfil Fuente: Los autores

Ingreso de un perfil 1. Perfil: Ingresar el nombre del perfil 2. Descripción de perfil: Descripción del perfil a crearse 3. Guardar registro: Se verifica si el perfil no haya sido ingresado con anticipación en la aplicación, de ser un nuevo perfil se procederá a guardar el nuevo perfil.

Figura 41. Formulario de nuevo perfil de usuario Fuente: Los autores

Administración de perfiles 

Buscar: Localiza un perfil que se encuentre registrado.

Eliminar: Representado con el icono de tacho de basura, permite eliminar un perfil innecesario o creado accidentalmente.


Figura 42. Administraciรณn de perfiles Fuente: Los autores

o Modificar: Tanto el nombre del perfil como la descripciรณn asignada son editables, para ello solo de debe dar click en el nombre o descripciรณn del perfil a modificar y se desplegara una ventana de dialogo, mediante el cual el icono de visto (โ ) permite guardar los cambios y el icono (x) permite descartar los cambios.

Figura 43. Actualizaciรณn de perfiles Fuente: Los autores

Administraciรณn de usuarios Admite el registro de nuevos usurarios a la aplicaciรณn con su respectivo perfil, ademรกs de la generaciรณn de reportes con respecto a los usuarios registrados y su administraciรณn como la activaciรณn o desactivaciรณn de una cuenta.


Figura 44. Interfaz: Administración de usuarios Fuente: Los autores

¿Cómo acceder a la administración de usuarios? Para acceder a este apartado de la aplicación se procede a click en el siguiente ícono que se encuentra en el menú:

Figura 45. Botón: Administración de usuarios Fuente: Los autores

Ingreso de un usuario Para el registro de un nuevo usuario se visualizaran los campos con la información requerida que son: 

Número de Cédula: Se ingresa el número de cédula del nuevo usuario a ser registrado.

Nombres y Apellidos: Se ingresa nombres y apellidos del nuevo usuario a ser registrado.

Fecha de nacimiento: Fecha en la que nació el nuevo usuario a ser registrado.


Sexo: Seleccionamos el género del nuevo usuario a ser registrado.

Teléfono: Ingresamos el número de contacto del usuario.

Correo: Ingresamos el correo del usuario.

Perfil: Se asigna el tipo de usuario.

Su usuario: Por defecto el usuario será establecido con su número de cédula, que a su vez puede ser cambiado en la configuración de perfil.

Su contraseña: Por defecto la contraseña será establecida con su número de cédula, que a su vez puede ser cambiado en la configuración de perfil.

Guardar registro: Al ser presionado se procede a verificar la información, si no existe ninguna irregularidad el usuario procede a ser guardad, casa contrario se visualizará un mensaje de error.

Figura 46. Interfaz: Nuevo usuario Fuente: Los autores


Permisos de acceso Permite designa a un usuario la accesibilidad a los mรณdulos o apartados que cuenta la aplicaciรณn.

Figura 47. Interfaz: Permisos de acceso Fuente: Los autores


¿Cómo acceder a los permisos de acceso? Para acceder a este apartado de los permisos de acceso se procede a click en el siguiente ícono que se encuentra en el menú:

Figura 48. Botón: Administración de usuarios Fuente: Los autores

Para posteriormente dirigirnos al siguiente al botón que se encuentra señalado:

Figura 49. Botón: Permisos de acceso Fuente: Los autores

Administración del sistema Permite personalizar la información que se visualizará tanto en la bienvenida como en la información que se generará para los diferentes reportes.

Figura 50. Interfaz: Administración del Sistema Fuente: Los autores


¿Cómo acceder al sistema? Para acceder a este apartado de sistema se procede a click en el siguiente ícono que se encuentra en el menú:

Figura 51. Botón: Sistema Fuente: Los autores

Presentación En el apartado de presentación se establecerá el logo del sistema (formato PNG), la imagen de los informes o reportes (se recomienda que el fondo de la imagen coincida con el fondo de los informes que se generarán y en formato JPG) de preferencia la imagen a ser subida no debe sobrepasar los 2MB de tamaño, mientras el ícono de presentación (formato ICO). 1. Seleccionar imagen: Se debe dar click que visualizará una ventana en la que se deberá seleccionar la imagen a subir. 2. Subir imagen: Se debe dar click mediante el cual se procederá a verificar el formato de la imagen y posteriormente se guardará el archivo caso contrario se visualizara un mensaje de error. Reportes El apartado de reportes visualizará una pestaña de información con referente al encabezado de los mismos.


Figura 52. Formulario: Reportes Fuente: Los autores

Información El apartado de reportes visualizará una pestaña de información con referencia a los datos de configuración de contacto de la aplicación.

Figura 53. Formulario: Administración de Información de contacto Fuente: Los autores


Sistema El apartado de sistema permite la configuración del servidor web, para enviar y recibir emails, además de una descripción de la aplicación y el nombre del mismo.

Figura 54. Formulario: Sistema Fuente: Los autores

Tareas de servidor público Las tareas de servidor público comprenden con la generación de informes y registro de ganado faenado. A continuación se detallarán los apartados a realizar. Faenamiento Permite la visualización de los registros realizados en la aplicación con respecto al ganado faenado, además del ingreso de nuevos datos y la generación de informes o reportes. .


Figura 55. Interfaz: Faenamiento Fuente: Los autores

¿Cómo acceder a faenamiento? Para acceder a este apartado de faenamiento se procede a click en el siguiente ícono que se encuentra en el menú:

Figura 56. Botón: Faenamiento Fuente: Los autores

Informe Para realizar la generación de informes estos se los puede obtener en formato Excel o en PDF dependiendo el caso de preferencia

Figura 57. Botones: Generación de informe Fuente: Los autores


Nuevo ingreso de información de faenamiento En este apartado se proceden a realizar los ingresos de los datos del animal tales como la especie, el color, dueño del animal, además se registran los datos del faenamiento como por ejemplo la fecha en que el animal fue faenado y sus patologías encontradas.

Figura 58. Nuevo registro de faenamiento Fuente: Los autores

Nuevo dueño del animal Cada animal cuenta con su dueño y para realizar los registros se debe seleccionar el dueño, en caso de ser uno nuevo se procede a llenar la información pertinente como su cedula, nombres y apellidos.


Figura 59. Ingreso de un dueño de un animal Fuente: Los autores

Administración del perfil de usuario En esté módulo se visualizará la información referente a los datos personales del usuario de la cuenta, con la facultad de ser cambiados dando click sobre la información, además de contar con el cambio de usuario y contraseña de la cuenta del usuario logueado.


Figura 60. Interfaz: Administrar perfil Fuente: Los autores

¿Cómo acceder a la administración del perfil? Para acceder al apartado de administración del perfil se debe dar click en el siguiente icono que se encuentra en el menú de la aplicación.

Figura 61. Botón: Administrar perfil Fuente: Los autores


ANEXO 11. INSTALACIÓN DE POSTGRESQL


1. INSTALACIÓN DE POSTGRESQL v9.3 El motor de bases de datos CACF es PostgreSQL, el cual requiere una instalación del mismo para que la aplicación informática funcione con normalidad. Para evitar inconvenientes con lo que respecta a la instalación del motor de bases de datos por parte del usuario, a continuación detallaremos los pasos a seguir para cumplir exitosamente esta tarea.

1.1. Pasos para la instalación de PostgreSQL 1. De la página oficial podemos descargar el instalador o ejecutar el que se encuentra en el CD de manual de usuario. http://www.postgresql.org/download/windows/

Figura 1. Sitio web perteneciente a PostgreSQL Fuente: Los autores

2. Independientemente del instalaron que se haya elegido ya sea del CD de manual de usuario o de la página oficial de PostgreSQL se procese a ejecutar el instalador. a. En el computador nos deberá visualizar el siguiente instalador a ejecutar:


Figura 2. Instalador PostgreSQL Fuente: Los autores

b. Se recomienda ejecutar como administrador el instalador de PostgreSQL. (en el caso de Windows como sistema operativo)

Figura 3. Ejecución como administrador del instalador PostgreSQL Fuente: Los autores

c. Una vez realizado el paso recomendado se nos presentara una pantalla de vienvenida que es el asistente de instalación. i. Se visualizará un botón “Siguiente >” que al ser ejecutado dará paso a continuar con el asistente de instalación.


Figura 462. Asistente de instalaciรณn Fuente: Los autores

Figura 5. Comenzar con la instalaciรณn (Click siguiente) Fuente: Los autores

ii. Si se cuenta con una version de PostgreSQL instalada se visualizara un mensaje que se presenta en la Figura 6.

Figura 6. Mensaje de versiรณn existente Fuente: Los autores


d. El asistente de instalación requerirá de la confirmación para proseguir con la instalación, para ello se procede a dar click en botón “Siguiente >”

Figura 7. Confirmación para instalar Fuente: Los autores

e. Rápidamente el asistente de instalación empezará a instalar el motor de bases de datos para que la aplicación informática este funcional.

Figura 8. Instalación en proceso Fuente: Los autores

f. Una vez culminado la instalación se presentará la siguiente pantalla que se confirma que la instalación se llevó a cabo con éxito.


Figura 9. Mensaje de instalación exitosa Fuente: Los autores

g. Al dar click en finalizar se lanzará en la pantalla un asistente de configuración de PostgreSQL

Figura 10. Asistente para configurar PostgreSQL Fuente: Los autores

h. En este apartado se debe configurar el puerto que accede a la bases de datos que tiene conexión con la aplicación informática de la presente disertación de grado. i. Se debe seleccionar el puerto de conexión en la lista desplegable y elegir “PostrgreSQL 9.3 (x64) on port 5432”.


Figura 11. Configuración del puerto de PostgreSQL Fuente: Los autores

j. Se da click en siguiente “Next >” (Siguiente en español) una vez seleccionado el puerto a utilizar.

Figura 12. Continuar con la configuración Fuente: Los autores

k. A continuación se visualizará los complementos con la cual trabaja PostgreSQL que se pueden instalar.


Figura 13. Complementos existentes para PostgreSQL Fuente: Los autores

l. Seleccionamos el complemento web “Apache” como se muestra en la figura anterior para que su instalación La cual se encuentra en: “Web Development” > “Apache/PHP v2.4…” y dar click en siguiente “Next >”.

Figura 14. Selección de complemento "Apache/PHP v2.4" Fuente: Los autores

m. Ya seleccionado el complemento se procede a dar click en “Next >”


Figura 15. Configuración de ubicación del servidor "Apache" Fuente: Los autores

Seleccionamos la ruta donde se instalarán los archivos de configuración del servidor y click en “Next >”

Figura 16. Descarga del complemento "Servidor Apache" Fuente: Los autores

n. El

asistente de instalación solicitará la asignación del puerto de

configuración (puerto defecto se configura con “8080”) para acceder al servidor web y el nombre de dominio (nombre por defecto “localhost”). o. Finalizada la instalación obtendremos estos archivos en el menú.


Figura 17. Archivo instalado – pgAdmin III Fuente: Los autores

Figura 19. Archivo instalado - Apache monitor Fuente: Los autores


2. CONFIGURACIÓN DE LA BASE DE DATOS PARA ACCEDER AL SISTEMA En el CD de instalación se encuentra la configuración de la base de datos llamado “dgds.backup” los pasos para cargar la configuración se explicarán a continuación.

. Figura 20. Carpeta de instalación Fuente: Los autores

2.1. Pasos para carga la base de datos 1. Abrir “pgAdmin III”, que se lo instaló anteriormente. Figura 21.

Figura 21. pgAdmin III Fuente: Los autores


Figura 22. pgAdmin III Fuente: Los autores

2. Ingresar con el usuario que se genera por defecto en pgAdmin. a. Usuario: root b. Contraseña: root c. Utilizando la consola de comandos perteneciente a pgAdminIII (ver Figura), se debe abrir el archivo “database.sql” que se encuentra en la capeta de instalación (ver Figura 20), pgAdminIII procederá a crear la base de datos y componentes, antes de crear las tablas de registros. Los componentes a ser creados mediante el script “database.sql” son: i. Usuario de acceso a la base de datos: “role_dgds_admin” ii. TableSpace que tomara lugar para el almacenamiento de la base de datos: “tablespace_dgds” iii. Base de datos: “db_dgds”


Figura 23. Consola de PostgreSQL Fuente: Los autores

Figura. Creación de la base de datos Fuente: Los autores

3. Con lo que respecta a la estructura de la base de datos se procede a realizar la restauración de la misma mediante las siguientes indicaciones. a. Seleccionamos la base de datos que creamos en los pasos anteriores, en este caso con el nombre “db_dgds. b. Dar Click derecho > Restore, para realizar la restauración. c. Seleccionar el archivo “dgds_backup” que se encuentra en la carpeta de instalación. d. Se debe seleccionar el usuario (role_dgds_admin) que gestionará la base de datos creada anteriormente.


e. Click en “restore” y se procederá a realizar la restauración, una vez terminado este proceso se visualizara un mensaje de confirmación de restauración.

Figura. Acceder al menú de restauración de base de datos, restaurar Fuente: Los autores

Figura. Ventana para la selección de usuario que gestionará la aplicación Fuente: Los autores


Figura. Ventana que permite la selección del archivo para la restauración de la base de datos Fuente: Los autores

Figura. Visualización de la restauración de la base de datos Fuente: Los autores

4. Para finalizar se procede a realizar la carga de los datos y con el respectivo primer usurario mediante estos dos apartados a ser cargados la aplicación informática comenzará con su funcionamiento. a. Abrir la consola de comandos.


b. Seleccionar el archivo “datos.sql”, que contienen los datos y el primer usuario con el que se accederá a la aplicación informática.

Figura. Cargar de datos del primer usuario e información de la aplicación informática Fuente: Los autores


ANEXO 12. ESPECIFICACIÓN DE REQUERIMIENTOS DE SOFTWARE (SRS) CACF


PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO Dirección Académica - Escuela de Sistemas

SRS DESARROLLO E IMPLEMENTACIÓN DE UNA APLICACIÓN PARA LA GESTIÓN DE LA INFORMACIÓN DEL CENTRO DE FAENAMIENTO MUNICIPAL DEL CANTÓN PEDRO VICENTE MALDONADO GADMCPVM PARA EL DEPARTAMENTO DE GESTIÓN Y DESARROLLO SUSTENTABLE DURANTE EL PERÍODO 2015-2016

Disertación de Grado previa a la obtención del título de Ingenieros de Sistemas y Computación

Línea de Investigación: Estudio, Diseño e Implementación de Software

Autores: CAMACHO ZAPATA JEREMY RENATO PALMA RIVERA ALEX DARÍO

Director: Mg. SALAZAR ARMIJOS DIEGO RICARDO Santo Domingo – Ecuador Febrero, 2016


Contenido

1.

INTROUCCION

1.1.

Alcance del Producto

1.2.

Personal involucrado

1.3.

Definiciones, acrónimos y abreviaturas

1.4.

Referencias

1.5.

Resumen ejecutivo

2.

DESCRICIÓN GENERAL

2.1.

Perspectiva del producto

2.2.

Funcionalidad del software

2.2.1.

Administración del sistema

2.2.2.

Actividades del Administrador

2.2.3.

Actividades del servidor público

2.3.

Características de los usuarios

2.4.

Restricciones

2.5.

Suposiciones y dependencias

3. 3.1.

REQUERIMIENTOS ESPECÍFICOS Requerimientos funcionales


3.2.

Requerimientos no funcionales

3.3.

Requisitos comunes de las interfaces

3.3.1.

Interfaces de usuario

3.3.2.

Interfaz de hardware

3.3.3.

Interfaz de software

3.3.4.

Interfaz de comunicación

3.4.

Requerimientos del rendimiento

3.5.

Restricciones de diseño

3.5.1.

Estándares a seguir

3.5.2.

Limitaciones de hardware

3.5.3.

Limitaciones de software

3.6.

Atributos

3.7.

Requisitos funcionales

3.7.1.

Requisito funcional 1

3.7.2.

Requisito funcional 2

3.7.3.

Requisito funcional 3

3.7.4.

Requisito funcional 4

3.7.5.

Requisito funcional 5


3.7.6.

Requisito funcional 6

3.7.7.

Requisito funcional 7

3.7.8.

Requisito funcional 8

3.7.9.

Requisito funcional 9


1. INTROUCCION En el desarrollo de un software que es orientado a objetos inicia mediante la concepción de los modelos de requerimientos siendo estos el análisis y diseño. Consecuentemente a su ambiente de paradigma de ingeniería del software OO (Orientado a Objetos), los mencionados modelos empiezan una forma relativamente informal de los requisitos del sistema o en este caso una aplicación y progresan hacia modelos que detallan a una clase, relaciones de los mismos y diseño propiamente el diseño de objetos. En cada etapa, los modelos pueden evaluarse con la intención de descubrir errores y propagarse a la siguiente iteración para posteriormente acercarse a una solución (Pressman, 2010). El desarrollador que es realizado conjuntamente con el cliente tiene la obligación de la captura de los requisitos correspondientes para el desarrollo del sistema. Si el cliente modifica un sistema indeterminado es decir confuso, a nivel de funcionalidad y comportamiento o funcionalidad en el sistema, el desarrollador toma el papel de interrogador, para especificar los requerimientos. Una especificación de requerimientos de software (ERS o SRS) es un escrito que se concibe al puntualizarse una descripción detallada de las características operacionales del software, se especifica la interfaz del software además de establecer las restricciones que debe cumplir el software a desarrollarse, antes de que el proyecto comience (Pressman, 2010).


1.1.

Alcance del Producto

El problema que se proyecta a ser resuelto mediante el desarrollo de la aplicación CACF es el control y administración de la información del centro de faenamiento perteneciente al Departamento de Gestión y Desarrollo Sustentable. (DGDS), puesto que actualmente se lo está realizando de manera manual llevando registros escritos, así mismo en hojas de cálculo con el riesgo de que la información previamente capturada llegasen a ser datos perdidos o incluso podrían llegar a tener un grado de duplicidad, siendo el problema enunciado anteriormente primordial llevarlo a una solución, además que a través de la entrevista que se efectuó al personal competente se determina que el actualmente método de administración de la información del departamento previamente mencionado es que se vuelve tedioso.

1.2.

Personal involucrado

Nombre

Camacho Zapata Jeremy Renato

Rol

Analista, programador ,documentador, diseñador

Categoría Profesional

Disertante – PUCESD

Responsabilidad

Realiza el análisis de requerimientos, diseñar interfaces de usuario, análisis de información, evidenciar manuales de instalación, programación de CACF

Información de contacto

jereca8@hotmail.com - jereca8@gmail.com

Nombre

Palma Rivera Alex Darío

Rol

Analista, programador ,documentador, diseñador

Categoría Profesional

Disertante - PUCESD

Responsabilidad

Realiza el análisis de requerimientos, diseñar interfaces de usuario, análisis de información, evidenciar manuales de instalación, programación de CACF

Información de contacto

adpalmar@pucesd.edu.ec


Nombre

Salazar Armijos Diego Ricardo

Rol

Consultor externo

Categoría Profesional

Tutor - PUCESD

Responsabilidad

Análisis de CACF

Información de contacto

drsalazara@pucesd.edu.ec

1.3.

Definiciones, acrónimos y abreviaturas NOMBRE

DESCRIPCIÓN

CACF

Nombre del sistema: “Control y Administración del Centro de Faenamiento”

Usuario

Nick o nombre del usuario

Contraseña

Clave del usuario

Bases de datos

Banco de información que contienen datos de diferente temática que comparten una relación

Administrador

Usuario que cuenta con todos los permisos de un sistema o aplicación

Servidor publico

Trabajador de un departamento que cuenta con permisos específicos en un sistema o aplicación.

GADMCPVM

Gobierno Autónomo Descentralizado Municipal del Cantón Pedro Vicente Maldonado.

DGDS

Departamento de Gestión y Desarrollo Sustentable.

SRS

Especificaciones de requerimientos de software, es un escrito en el que se explica el funcionamiento del software

PUCESD

Pontificia Universidad Católica del Ecuador Sede Santo Domingo

IEEE

Instituto de Ingeniería Eléctrica y Electrónica, asociación mundial de ingenieros dedicada a la estandarización y el desarrollo en áreas técnicas


1.4.

Referencias

Para el tratamiento del SRS el grupo de desarrollo se ha fundamentado en los modelos de los siguientes autores:

1.5.

Ingeniería del software, Un enfoque práctico. Roger Pressman (2010)

Análisis Estructurado Moderno. Edward Yourdon (2011)

Estándar del IEEE 830-1998.

Resumen ejecutivo

CACF es una aplicación informática encaminado a departamentos no automatizadas por alguna aplicación informática, con el propósito de automatizar los ingresos o estudio estadístico de la situación presente del centro de faenamiento. El vigente proyecto está elaborado plenamente por los disertantes asignados al proyecto, con la experiencia necesaria en el campo de la codificación, desarrollo de software. Con la finalidad del cumplimiento a la hora de la entrega del producto que es la aplicación, además de contar con asesoría del tutor en referencia de la actual disertación así mismo de los conocimientos impartidos por la PUCESD.


2. DESCRICIÓN GENERAL 2.1.

Perspectiva del producto

Con CACF se pretende agilizar el proceso que se lleva a cabo para el control de registros, de igual manera la administración misma de la información correspondiente al centro de faenamiento, optimizando tiempo y recursos, llevando un control eficiente de la información para que sea de gran ayuda en la toma de decisiones con respecto al departamento responsable, además generando información que pueden llegar a ser divulgados de manera pública. El presente proyecto consta de un servicio dirigido para los administradores y servidores públicos del departamento responsable, además de contar con un adecuado control de la información o registros almacenados en la base de datos de la aplicación, que posteriormente estos serán permitidos a su acceso mediante una interfaz gráfica amigable e intuitiva para el usuario permitiendo de esta manera que el usuario se acople con facilidad a los módulos o apartados funcionales de la aplicación.

2.2.

Funcionalidad del software

2.2.1.

Administración del sistema 

Parametrización de la aplicación CACF o Información del departamento de su implementación

2.2.2.

Actividades del Administrador 

Módulo de perfiles o Ingresar el perfil o Modificar el perfil o Eliminar el perfil


Modelo de usuarios o Ingresar usuario o Modificar usuario o Restablecimiento de usuario o Restablecimiento de contraseña o Deshabilitar cuenta de usuario o Reporte de los usuarios

Módulo de permisos o Asignar permisos a los usuarios o Denegar permisos a usuarios

Módulo de registro o Ingresar registro o Modificar registro o Reporte de registros

Módulo de producto (animal faenado) o Ingresar producto o Modificar producto o Reporte del producto

2.2.3.

Actividades del servidor público 

Módulo de registro o Reporte de registros

Módulo de producto (animal faenado) o Reporte del producto


2.3.

Características de los usuarios

Tipo de usuario

Administrador

Formación

Ninguna de las anteriores

Actividades

Administración de la información, realiza las operaciones del sistema y usuarios

Tipo de usuario

Servidor público

Formación

Ninguna de las anteriores

Actividades

Realiza todos los reportes para el departamento DGDS del GADMPVM

2.4.

Restricciones

La copia parcial o total de nuestro producto para que sean utilizados por otros departamentos, sucursales u otras empresas deben ser respetados por los derechos de autor establecidos en el contrato.

Dentro del software se harán ciertas restricciones habilitando ciertos botones para los usuarios como por ejemplo un servidor público, es decir una cajera no podrá acceder a todas las funciones del software como el administrador si podrá hacerlo.

2.5. 

Suposiciones y dependencias Los equipos deberán contar con los requisitos que se indicarán posteriormente para que la aplicación se ejecute y obtenga un correcto funcionamiento del mismo.


3. REQUERIMIENTOS ESPECÍFICOS 3.1.

Requerimientos funcionales

Identificación de requerimiento

RF01

Nombre de requerimiento

Administración de la aplicación

Características

La aplicación contará con un control para acceder a la información y para su administración o gestión, la que reflejará la administración de información del centro de faenamiento.

Descripción de requerimiento

El sistema devolverá una interfaz para la actualización de información, la cual incluye información del centro de faenamiento, información de la aplicación, etc.

Prioridad del requerimiento

Media

Identificación de requerimiento

RF02

Nombre de requerimiento

Verificación de usuario

Características

Cada usuario tendrá que identificarse para acceder a la aplicación

Descripción de requerimiento

La aplicación retornará una interfaz de acuerdo al perfil que tendrá el usuario

Prioridad del requerimiento

Alta

Identificación de requerimiento

RF03

Nombre de requerimiento

Registro de usuario

Características

Los usuarios deben ser registrados para que accedan a la aplicación

Descripción de requerimiento

Prioridad del requerimiento

La aplicación permitirá al usuario (administrador) registrar a otros usuarios (administradores, servidores públicos). El usuario poseerá los datos importantes como Nombre, Cédula de ciudadanía, entre otros. Cuando el usuario ya se encuentre registrado, este podrá ingresar con su número de cédula como usuario y también como contraseña, en el que posteriormente tendrá la libertad de cambiarlos. Media


Identificación de requerimiento

RF04

Nombre de requerimiento

Administración de los usuarios

Características

Renovar la información de usuario (usuario y contraseña) o deshabilitar usuario

Descripción de requerimiento

La aplicación cederá al administrador gestionar la información de los usuarios, permitiendo recuperar la contraseña o identificación de usuario en caso de que se haya olvidado el usuario sus datos Al realice este proceso seguidamente el usuario o contraseña volverá a su estado inicial (número de cedula)

Prioridad del requerimiento

Medio

Identificación de requerimiento

RF05

Nombre de requerimiento

Informe de usuarios

Características

Generar un informe de los usuarios (administrador, servidor público)

Descripción de requerimiento

La aplicación permite al administrador generar un reporte de usuarios

Prioridad del requerimiento

Medio

Identificación de requerimiento

RF06

Nombre de requerimiento

Registro de la información (animal – introductor – faenamiento vehículo)

Características

Se registrar un nuevo camal, un introductor y los resultados en el proceso de faenamiento.

Descripción de requerimiento

El administrador o servidor público que cuente con el permiso pueden ingresar un camal un introductor y el proceso de faenamiento, preliminarmente se llevan a cabo las validaciones (arete, ci, numero de guía del vehículo), una vez terminada la validación la aplicación dará paso a que el registro se guarde

Prioridad del requerimiento

Alto


Identificación de requerimiento

RF07

Nombre de requerimiento

Administración de la información (animal – introductor faenamiento)

Características

Se administra la información ya sea del camal, un introductor y los resultados en el proceso de faenamiento.

Descripción de requerimiento

El administrador o servidor público que cuente con el permiso pueden ingresar un camal un introductor y el proceso de faenamiento, preliminarmente se llevan a cabo las validaciones (arete, ci, numero de guía del vehículo), una vez terminada la validación la aplicación dará paso a que el registro se guarde

Prioridad del requerimiento

Alto

Identificación de requerimiento

RF08

Nombre de requerimiento

Consultas de información

Características

Se procede a realizar la búsqueda de un camal, un introductor o los resultados en el proceso de faenamiento.

Descripción de requerimiento

El administrador o servidor público pueden visualizar la información previamente almacenada con la finalidad de llevar un control de información respectivamente por cada funcionario.

Prioridad del requerimiento

Alto

Identificación de requerimiento

RF09

Nombre de requerimiento

Reportes información

Características

Se realiza los reportes ya sea del camal, introductor o los resultados en el proceso de faenamiento.

Descripción de requerimiento

El administrador o servidor público que cuente con el permiso pueden realizar los reportes con la información previamente almacenada.

Prioridad del requerimiento

Alto

3.2.

Requerimientos no funcionales

Identificación de requerimiento

RNF01

Nombre de requerimiento

Interfaz de la aplicación

Características

La aplicación contara con una interfaz amigable e intuitiva el cual facilitará al usuario desplazarse por el mismo.

Descripción de requerimiento

La aplicación será intuitiva hacia el usuario final

Prioridad del requerimiento

Alta


Identificación de requerimiento

RNF02

Nombre de requerimiento

Mantenimiento

Características

La aplicación contará con sus respectivos manuales de usuarios, así también los de instalación para que el usuario sepa desenvolverse.

Descripción de requerimiento

La aplicación tendrá la documentación que necesiten los usuarios

Prioridad del requerimiento

Media

Identificación de requerimiento

RNF03

Nombre de requerimiento

Diseño de las interfaces de la aplicación

Características

La aplicación contará con la información o el contenido de acuerdo al tipo de usuario que pertenezca así también como sus respectivos permisos.

Descripción de requerimiento

Las interfaces tendrán un estándar con respecto al diseño, es decir un modelo en general para cada interface

Prioridad del requerimiento

Media

Identificación de requerimiento

RNF04

Nombre de requerimiento

Interfaz de usuario

Características

El acceso a la aplicación se rige en el tipo de usuario y previamente a los permisos que dicho usuario tendría sobre la aplicación respectivamente.

Descripción de requerimiento

Un usuario tendrá acceso a las funcionalidades de la aplicación previamente establecidas.

Prioridad del requerimiento

Media


3.3.

Requisitos comunes de las interfaces

3.3.1.

Interfaces de usuario

Hace referencia a un conjunto de formularios que se encuentran en páginas o ventanas diseñadas dentro de la aplicación en las cuales servirán para ingresar y obviamente administrar la información que se encuentra almacenada dentro del mismo. 3.3.2.

Interfaz de hardware

Los requerimientos que se necesitarán para que el presente proyecto funcione con normalidad deben contar con las siguientes especificaciones físicas: 

Procesador de 1.66 GHz o superior.

Memoria RAM de 512mb o superior.

Adaptadores de red puerto RJ-45 o wifi.

Teclado

Mouse o Touchpad

Monitor

3.3.3.

Interfaz de software

El computador debe disponer de las siguientes especificaciones software: 

Sistema Operativo (Windows, Distribución Linux, etc).

Navegador (Chrome, Opera, etc).

Visualizador de documentos en formato “pdf”.


3.3.4.

Interfaz de comunicación

La comunicación de fundamenta en una arquitectura cliente-servidor, quiere decir que los equipos contactan a un servidor al cual se enviaran solicitudes y el mismo retornará una respuesta.

3.4.

Requerimientos del rendimiento

La aplicación CACF cuenta con un estimado de “2 SEGUNDOS” con respecto a la velocidad de respuesta independientemente de los equipos y su respectivo rendimiento empleado, manipulación de la base de datos y la red en la que se encuentra montado el presente proyecto.

3.5.

Restricciones de diseño

3.5.1.

Estándares a seguir

3.5.2.

Estándar del IEEE 830-1998.

Análisis Estructurado Moderno de Edward Yourdon.

Modelo Entidad/Relación (Bases de datos)

Metodología XP Limitaciones de hardware

El presente proyecto tiene como característica principal el ser una aplicación web el cual implica un uso menor de los recursos al ordenador, facilitando a la institución seguir utilizando los equipos de trabajo en el departamento respectivo.


3.5.3.

Limitaciones de software

Al ser una aplicación web, es decir multiplataforma el sistema operativo es indistinto al que estén utilizando en el departamento a implementarse en cambio el único usuario que tendrá el control de todos los módulos de la aplicación son los registrados como administradores.

3.6.

Atributos 

Disponibilidad: La aplicación es independiente al sistema operativo que esté implementado es decir el proyecto es multiplataforma.

Accesibilidad: La aplicación presenta un entorno independiente para su manejo, puesto que cuenta con el uso de sesiones.

Seguridad: No cualquier usuario podrá acceder a toda la funcionalidad del mismo, porque cada usuario registrado cuenta con su respectivo perfil y permisos que le permitirán navegar por las diferentes interfaces.

3.7.

Requisitos funcionales

3.7.1.

Requisito funcional 1 

Administración de la aplicación: La aplicación a implementar contará un nivel de acceso a su información almacenada en la bases de datos, además devolverá la información para poder ser gestionada.


3.7.2.

Requisito funcional 2 

Verificación de usuario: Cada usuario que desee ingresar a la aplicación tendrá su usuario y contraseña el cual dependiendo del perfil en que se encuentre, retornando una interfaz de acuerdo al perfil que tendrá el usuario registrado.

3.7.3.

Requisito funcional 3 

Registro de usuario: Para que un usuario pueda acceder a la aplicación previamente debe ser ingresado en caso de que no lo esté, la aplicación permitirá al usuario (administrador) registrar a otros usuarios (administradores, servidores públicos).

3.7.4.

Requisito funcional 4 

Administración de los usuarios: El usuario administrador es quien podrá renovar la información de usuario (usuario y contraseña) o deshabilitar usuario, gestionar la información de los usuarios.

3.7.5.

Requisito funcional 5 

Informe de usuarios: La aplicación permitirá al administrador crear informes de los usuarios registrados ya sean administradores como servidores públicos con la finalidad de gestionar la información que cada uno maneje con respecto a lo que se encuentre ingresado


3.7.6.

Requisito funcional 6 

Registro de la información (animal, introductor, faenamiento, vehículo, entre otros): Es la funcionalidad en general de la aplicación, en el cual se ingresarán la mayoría parámetros de la base de datos como el animal a ser faenado tanto como las personas involucrada, siempre y cuando el usuario tenga el permiso correspondiente

3.7.7.

Requisito funcional 7 

Administración de la información (animal, introductor, faenamiento, vehículo, entre otros): De los registros almacenado si el usuario cometió algún error de tipeo ya sea en el ingreso de una persona o en la identificación del animal, el usuario podrá modificar la información para que de esta manera puedan tener datos más detallados y controlados.

3.7.8.

Requisito funcional 8 

Consultas de información: Tanto administrador como el servidor público podrá realizar consultas ya sea del animal, persona (introductor, dueño del animal, tercenista), vehículos involucrados, entre otros. Para llevar un control de la información ingresada por los funcionarios.

3.7.9.

Requisito funcional 9 

Reportes información: El administrador o servidor público que cuente con el permiso para este apartado pueden realizar los reportes con la información previamente almacenada, de tal manera que los reportes que serán generados sirvan para el estudio estadístico del centro de faenamiento, así también como datos que serán de divulgación para el Cantón Pedro Vicente Maldonado.


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.