2. Marco teórico
2.2. Bases teóricas
2.2.7. Procesamiento de información
La actividad de procesamiento de información es llevada a cabo por los usuarios en la cual estos hacen uso de diferentes mecanismos, unos más ortodoxos que otros, pero siempre se lo ha realizado, de igual manera existen opciones que hacen que esta tarea sea sencilla y eficiente. Mediante la incorporación de sistemas de información es posible llevar a cabo esta tarea la cual en muchas ocasiones es rutinaria causando molestias para los encargados de elaborarla (Terrientes, et al., 2016). Sin lugar a duda adquirir y contar con sistemas informáticos hace esta actividad que sea mucho más eficiente y sencilla, en la cual se pueda obtener los resultados fácilmente minimizando el tiempo de espera.
La obtención de reportes en cualquier empresa, es una actividad de gran ayuda para que la parte administrativa conozca en qué estado se encuentra la entidad, es por eso que obtenerlo es fácil siempre y cuando se cuente con los medios necesarios para que eficiente. La automatización de las actividades genera un cambio dentro de las organizaciones, cabe destacar que estos cambios son positivos, siendo importante la obtención de la información en tiempos de espera mínimos (Ayala & Gonzales, 2019). En muchas ocasiones las empresas tienen miedo al cambio piensan que adquirir este tipo de herramientas tecnológicas
generan gastos, cuando no es así, más bien es una inversión, ya que esta trae consigo muchas ventajas al tratamiento de los datos.
Cuando una persona quiere conocer la información que está relacionada con la empresa, es de suma importancia que todos estos datos se encuentren ingresados de manera precisa, siendo una opción contar con una aplicación web para realice esta actividad. Dentro de la era tecnológica en la cual se encuentra el mundo, las empresas optan por incorporar a sus mecanismos, funciones las mismas que puedan hacer que se almacene de una manera eficiente la información y esta se encuentre siempre segura (Jeldres, 2017). Es posible manipular la información siempre y cuando esta siempre esté presente cuando el usuario la llame, siendo esta una actividad prioritaria de los sistemas de información.
2.2.8. Aplicación web
Si bien los sistemas de información desde sus inicios han contribuido a la gestión de la información en la empresa, las necesidades han cambiado y por ende las tecnologías han debido adaptarse, pasando de los antiguos sistemas de escritorios a las conocidas aplicaciones web.
El SIG está a nivel de gestión y está relacionado con las funciones de seguimiento, control, toma de decisiones y gestión de recursos (Proaño, Orellana, & Martillo, 2018). Existen diversas herramientas que facilitan y ayudan al desarrollo e implementación de aplicativos webs paras las empresas las cuales se encuentran alojadas en la web.
Son programas de software diseñados para ser accedidos desde un navegador web, sin la necesidad de distribuir, instalar o actualizar software adicional en los usuarios, su principal característica es el acceso inmediato desde cualquier lugar, y están basadas en tecnologías web por lo que no necesitan ser descargadas o configuradas (Nolivos, Coronel, Salvador, & Campaña, 2016, p. 2)
Este tipo de aplicaciones se han vuelto muy populares en los últimos años, de tal manera que cada vez son más las empresas que las requieren por sus beneficios. “Busca facilitar las tareas permitiendo a los usuarios acceder a la información de modo interactivo, gracias a que las páginas responden a cada una de las inquietudes y solicitudes que se le siguiera” (Burgos, 2015). Para el vivero morán es importante contar con una aplicación web ya que permitirá controlar los procesos de manera efectiva desde cualquier lugar.
2.2.9. Lenguaje de programación
El lenguaje empodera a los programadores especifique a la computadora qué tipo de datos funcionarán y qué medidas deben tomarse en qué circunstancias en diversas situaciones, use un idioma que sea relativamente cercano al idioma lenguaje humano (Roman, 2019).
Uno de los elementos clave en la introducción a la programación es el idioma elegido. Existe otros elementos: currículo, pedagogía y herramientas utilizadas en el proceso enseñanza + aprendizaje (Garcia, 2017).
Python es un lenguaje dinámico e interpretado y al igual que PostgreSQL se presenta bajo una licencia de código abierto. “Es un lenguaje de programación poderoso y fácil de aprender, cuenta con estructuras de datos eficientes y de alto nivel con un enfoque simple pero efectivo en relación a la programación orientada a objetos” (Van Rosssum, 2017). Su sintaxis es sencilla y cuenta con un alto tipiado, que junto con su naturaleza interpretada lo vuelven ideal para el desarrollo rápido de todo tipo de aplicaciones.
2.2.10. Servidor web
Un servidor web es un componente de software que permite a un ordenador actuar como un servidor de aplicaciones, realizando diferentes conexiones para
generar respuestas. Un servidor web es un software instalado en una computadora para que esté permanentemente activo, esperando solicitudes de usuarios externos (Fernández, 2020).
Es necesario contar con un servidor si se requiere responder a las peticiones de un equipo que se encuentra conectado a una red, brindando información en un formato entendible para los usuarios.
Ortiz (2015) define “Que un servidor web es el conjunto de un sistema y equipo informático específicamente diseñado para aceptar peticiones HTTP del navegador web, en este caso el cliente y servir las páginas web que tiene alojadas” (p. 8)
La arquitectura de un servidor web se divide en capas, son las responsables de implementar la funcionalidad de un servidor web, en el mercado existen muchos, para la propuesta actual se opta por Apache.
Al conectarse a un servidor, los usuarios pueden acceder a programas, archivos y otra información del servidor, por lo tanto, es vital gestionar de forma adecuada cómo, cuándo y quién puede acceder a dichos contenidos mediante técnica de gestión de permisos (Urbano, 2018, p. 9).
2.2.11. Python
Este lenguaje de programación es considerado de alto nivel, ya que es interpretado y no necesita ser compilado. “Muestra un código simple sencillo y claro el tipiado dinámico el gestor de memoria, la gran cantidad de librerías disponibles y la potencia del lenguaje” (Martillo & Zambrano, 2015). Cuenta con una gran facilidad de aprendizaje, lo que lo ha vuelto muy popular entre los desarrolladores. Al ser un lenguaje interpretado su ejecución es mucho más dinámica y rápida, ya que evita el empleo de compiladores. “Al decir que es un lenguaje tipado, se hace referencia a que no o se necesita declarar variables que se utilizarán esto se o hace gracias al tipiado dinámico que permite la declaración de las mismas en pleno desarrollo” (García, 2016). Otra de sus grandes funcionalidades, es que
utiliza un compendio de librerías con funciones útiles para una programación eficiente.
Hay muchos tipos de lenguajes, como el lenguaje de máquina (bajo nivel), el lenguaje ensamblador y el lenguaje de alto nivel (como Python), que permiten el uso de instrucciones para escribir código, y la computadora puede ejecutar estas instrucciones después de la traducción (Hernandez I. , 2020).
2.2.12. Django
Desarrollado por programadores experimentados, Django se ocupa de parte importante de las complicaciones del desarrollo web, por lo cual puedes concentrarte en redactar tu aplicación sin necesidad de reinventar la rueda (MDN contributors, 2020).
Django es un framework web de elevado grado que posibilita el desarrollo veloz de sitios web seguros y mantenibles, siendo un así el más selecto para el proyecto de la Hacienda Santa Luz.
“Una gran ventaja de Django es que dispone de diversos módulos externos, permitiendo realizar tareas complejas con muy poco esfuerzo” (Chazallet, 2016).
2.2.13. Javascript
JavaScript es un lenguaje de programación basada en prototipos, multiparadigma, de un solo hilo, dinámico, con soporte para programación dirigida a objetos, imperativa y declarativa (por ejemplo, programación funcional) (MDN contributors, 2020). JavaScript se ha vuelto el lenguaje más utilizado junto a HTML y CSS sirven de ayuda para la creación de sitios web (Luna F. , 2019). Para lo cual es visible que si una empresa quiere mantenerse en el mercado competitivo es importante que esta cuente con los mecanismos necesarios para brindar una mejor atención.
2.2.14. XAMPP
Es un paquete de herramientas que hace las funcionalidades de servidor multiplataforma para el alojamiento, administración y construcción de páginas web con bases de datos (Castillo, 2018).
XAMPP es un servidor independiente multiplataforma, de programa sin dependencia, que radica principalmente en la base de datos MySQL (Rincón & Morales, 2018).
2.2.15. Postgres SQL
“PostgreSQL puede ser usado, modificado o distribuido para uso privado, comercial o Académico” (Dominguez, 2020). Partiendo de lo que este autor sostiene sobre Postgre Sql se ha visto como ventajas para el proyecto el poder usar, modificar la información dentro de la base de datos.
Los administradores de bases de datos de hoy así que aprovecha al máximo la capacidad física y software del servidor, para no reducir su rendimiento, incluso si la cantidad de datos que procesan y la concurrencia de la base de datos aumentan exponencialmente, es fundamental optimizarlos (Vazquez, Betancourt, & Domínguez, 2018). Se utiliza PostgreSQL para este proyecto por todas las funcionalidades que presenta sin dejar de lado que es una herramienta que se distribuye bajo licencia libre.
2.3. Marco legal
Se usará programas de licencia libre para el desarrollo del sistema web, se tomará en consideración lo mencionado por la ley, la cual establece que se denomina software libre y el uso que se debe dar a los mismos. En el plan nacional del buen vivir en su objetivo 11 hace referencia a lo siguiente:
Asegurar la soberanía y eficiencia de los sectores estratégicos para la trasformación industrial y tecnológica. (Presidencia de la República del Ecuador, 2009, p. 2)
Al momento de diseñar el sistema web, será factible la utilización de programas o softwares de uso libre, para que, de esta forma el sector estratégico pueda ser beneficiado a nivel no sólo industrial si no también tecnológico.
De igual manera se menciona la ley de propiedad intelectual, según lo que menciona el Artículo 1:
El Estado reconoce, regula y garantiza la propiedad intelectual adquirida de conformidad con la ley, las Decisiones de la Comisión de la Comunidad Andina y los convenios internacionales vigentes en el Ecuador.
La propiedad intelectual comprende: Los derechos de autor y derechos conexos, La propiedad industrial, Las invenciones, Los dibujos y modelos industriales, La información no divulgada y los secretos comerciales e industriales, Las marcas de fábrica, de comercio, de servicios y los lemas comerciales, Los nombres comerciales. (República del Ecuador, 2019, p. 4)
Es el estado el que garantizará de forma integral la soberanía y la propiedad intelectual de cada empresa, cuidando así desde el nombre de la misma, hasta el eslogan y la estructura, y todo esto basándose legalmente en leyes nacionales e internacionales.
La ley del uso del software libre es aquella que promueve el uso de los programas sin uso de licencia, además que usar códigos libres en el cual el programador pueda modificar o copiar de manera libre, actualmente en el Ecuador muchas personas desconocen sobre el uso de esta ley la misma que promueva el uso del software libre siendo que está aún se encuentra en un proceso de socialización para regular el uso en los sistemas de información.
También se menciona lo establecido en el código orgánico integral penal, ya que es necesario especificar las regulaciones y sanciones de la apropiación ilícita y plagio, en este reglamento se detalla lo siguiente:
Art. 190.- Apropiación fraudulenta por medios electrónicos.- La persona que utilice fraudulentamente un sistema informático o redes electrónicas y de telecomunicaciones para facilitar la apropiación de un bien ajeno o que procure la transferencia no consentida de bienes, valores o derechos en perjuicio de esta o de una tercera, en beneficio suyo o de otra persona alterando, manipulando o modificando el funcionamiento de redes electrónicas, programas, sistemas informáticos, telemáticos y equipos terminales de telecomunicaciones, será sancionada con pena privativa de libertad de uno a tres años. La misma sanción se impondrá si la infracción se comete con inutilización de sistemas de alarma o guarda, descubrimiento o descifrado de claves secretas o encriptadas, utilización de tarjetas magnéticas o perforadas, utilización de controles o instrumentos de apertura a distancia, o violación de seguridades electrónicas, informáticas u otras semejantes. ( Derecho Ecuador, 2018)
Si hubiera algún tipo de apropiación ilegal de bienes de otras personas o empresas, utilizando recursos tecnológicos de forma incorrecta o se cometiera un perjuicio a los sistemas internos para generar beneficios propios, serán sancionados con pena privativa de libertad que iría desde 1 a 3 años. Esta ley es la que permite la regularización de todos los derechos que hay en los autores dentro del Ecuador, en donde también se mencionan la protección existente sobre el uso del software libre, al ser resultados de las creaciones por parte de los programadores.
Mas se toma en consideración el artículo 1, el mismo que hace referencia en esta ley sobre la garantía en la propiedad intelectual la cual se adquiere y es comprendida por los derechos de los autores, como se tiene el caso del desarrollo de un aplicativo en entorno web para el desarrollo de las diferentes actividades dentro del establecimiento.
La ley de la protección de la propiedad se la puede encontrar en varios ámbitos y áreas como se tiene en la música, las marcas las patentes y demás creaciones, siendo esta la que tiene un gran significado ser el propietario de la creación, en el ámbito del diseño de programas informáticos, esta provee los derechos de autoría y que nadie pueda copiar o modificar sin la autorización del dueño.
3. Materiales y métodos 3.1. Enfoque de la investigación
3.1.1. Tipo de investigación
El siguiente proyecto se desarrolló por medio de una investigación aplicada, para lo cual se aplicó técnicas de investigación para la recolección de información y poder así definir los requerimientos para el desarrollo del sistema. Tomando en consideración la situación actual del establecimiento se determinó la problemática que enfrenta y se pretendía resolver con la implementación del sistema web.
3.1.2. Diseño de investigación
Las técnicas aplicadas para la recolección de información e identificación de los requerimientos del sistema web fueron entrevista compuesta de preguntas abiertas, encuesta las cuales están compuesta por la escala de Likert y a la vez la observación de las actividades y procedimientos que se realizan dentro de la Hacienda Santa Luz.
3.1.3. Metodología
La metodología aplicada para desarrollar el sistema web para la Hacienda Santa Luz fue la metodología Ágil XQ, esto se debe a que está compuesta por cuatro fases:
Entender lo que el cliente necesita > Fase de Exploración Estimar el esfuerzo > Fase de Planificación
Crear la solución > Fase de Iteraciones
Entregar el producto final al cliente > Fase de puesta en producción
Exploración y Planificación Para determinar las características y requerimientos del software a implementar, se estudian las necesidades del usuario final, en esta etapa la observación directa, entrevistas y encuestas son las
herramientas básicas. Simultáneamente los accesorios de desarrollo se familiarizan con los instrumentos, tecnologías y prácticas que se usarán en el plan. Se prueba la tecnología y se exploran las modalidades de la arquitectura del sistema creando un primer modelo.
Diseño de la iteración: En la primera iteración se puede intentar implantar una arquitectura del sistema que logre ser usada a lo largo de lo demás del plan. Los recursos que se van a tomarse presente a lo largo de la preparación del Proyecto de la Iteración son: historias de cliente no abordadas, rapidez del plan, pruebas de aceptación no superadas en la iteración anterior y labores no terminadas en la iteración anterior.
Producción y desarrollo: En este periodo es necesario de pruebas extras y revisiones de rendimiento previo a que el sistema sea trasladado al ámbito del comprador. Paralelamente, se tienen que tomar elecciones sobre la integración de novedosas propiedades a la versión presente, gracias a cambios a lo largo de esta etapa.
Es viable que se rebaje la era que toma cada iteración, de 3 a una semana. Las ideas que han sido expuestas y los requerimientos son documentados para su posterior implementación.
Mantenimiento: A medida que la primera versión está en producción, el plan XP debería conservar el sistema funcionando paralelamente que lleva a cabo novedosas iteraciones. Para hacer esto es preciso de labores de soporte para el comprador. Así, la rapidez de desarrollo puede descargar luego de la puesta del sistema en producción. La etapa de mantenimiento puede solicitar nuevo personal dentro del equipo y cambios en su composición.
Entrega: Es una vez que el comprador no posee más historias para ser incluidas en el sistema. Esto necesita que se cubran las necesidades del comprador en otros puntos como rendimiento y fiabilidad del sistema. Se crea la documentación final del sistema y no se hacen más cambios en la arquitectura. El deceso del plan además pasa una vez que el sistema no crea las ventajas esperadas por el comprador o una vez que no hay presupuesto para mantenerlo.
3.1.4. Recolección de Datos
3.1.4.1. Recursos Humanos
Estudiante que realiza la propuesta: Buestan Rosa y Remache Génesis Docente Tutor del proyecto: Ing. William Bazán
Administrador y clientes
3.1.4.2. Recursos bibliográficos
Libros digitales Materiales y equipos Hojas, Lápices y Carpetas
3.1.4.3. Recursos tecnológicos
Laptop
Base de datos PostgreSQL Instalador de Python
3.1.5. Presupuesto
Tabla 1. Presupuesto del Proyecto
Actividades Valores Internet (8 meses)
Desarrollo del sistema
Servicio de Hosting y Dominio Impresiones $160.00 $800.00 $150.00 $50.00 TOTAL $1160.00 Valores aproximados para llevar a cabo el proyecto.