UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES
FACULTAD DE SISTEMAS MERCANTILES
CARRERA DE SISTEMAS
PROYECTO DE EXAMEN COMPLEXIVO PREVIO AL TITULO DE INGENIERA EN SISTEMAS E INFORMÁTICA
TEMA: “APLICACIÓN INFORMÁTICA (ERP), PARA MEJORAR LA GESTIÓN DE VENTAS DE LA EMPRESA “MASTER SOLUCIONES”.
AUTOR:
TLGA. ROCÍO MARIBEL VILLOTA AGUAVIL. ASESOR:
ING. FREDDY BAÑO NARANJO
AMBATO – ECUADOR
CERTIFICACIÓN DEL ASESOR
En calidad de asesor del presente trabajo de investigación, certifico que el proyecto cuyo título es “APLICACIÓN INFORMÁTICA (ERP), PARA MEJORAR LA GESTIÓN DE VENTAS DE LA EMPRESA “MASTER SOLUCIONES”, elaborado por Tlga. Rocío Maribel Villota Aguavil, cumple con los requisitos metodológicos y científicos que la Universidad Regional Autónoma de Los Andes UNIANDES exige, por lo tanto autorizo su presentación para los trámites pertinentes.
Atentamente,
CERTIFICACIÓN DE AUTORÍA
El presente trabajo de investigación es realizado íntegramente en base a los conocimientos adquiridos durante la trayectoria de la carrera de Ingeniería en Sistemas en la Universidad Regional Autónoma de los Andes “UNIANDES”, y, completamente con investigaciones realizadas durante la elaboración de la misma.
Por lo que el contenido del presente proyecto es inédito y de absoluta responsabilidad del autor, facultando a la Institución “UNIANDES”, hacer uso del presente para fines académicos.
Atentamente,
Tlga. Rocío Villota Aguavil. C.I. 1717957490
DEDICATORIA
A:
Mis hijos Daniel e Ismael, que a su tierna edad son un motor importante en el logro de mis metas.
A mis padres Lucila e Ismael por su confianza y apoyo incondicional, aún más allá de lo posible.
A mis hermanas y hermanos, por su todo su cariño y comprensión que me brindan en todo momento.
A mi esposo, por ser ejemplo de perseverancia y por su valor mostrado para salir adelante.
A mis amigos y compañeros, fuente constante de motivación.
A mis maestros, y en especial al Ing. Fredy Baño, por su entrega e interés demostrado durante la guía de este proyecto.
ÍNDICE GENERAL Contenido
CERTIFICACIÓN DEL ASESOR ...
CERTIFICACIÓN DE AUTORÍA ...
DEDICATORIA ...
ÍNDICE GENERAL ...
ÍNDICE DE FIGURAS ...
ÍNDICE DE TABLAS ...
RESUMEN EJECUTIVO ...
EXECUTIVE SUMMARY ...
1 INTRODUCCIÓN ... 1
1.1 ANTECEDENTES DE LA INVESTIGACIÓN ... 1
1.2 PLANTEAMIENTO DEL PROBLEMA ... 3
1.3 FORMULACIÓN DEL PROBLEMA... 4
1.4 DELIMITACIÓN DEL PROBLEMA ... 4
1.5 OBJETO DE INVESTIGACIÓN Y CAMPO DE ACCIÓN ... 4
1.5.2 Campo de Acción: ... 4
1.6 IDENTIFICACIÓN DE LA LÍNEA DE INVESTIGACIÓN ... 4
1.7 OBJETIVOS ... 5
1.7.1 Objetivo General ... 5
1.7.2 Objetivos Específicos ... 5
1.8 IDEA A DEFENDER ... 5
1.9 JUSTIFICACIÓN ... 5
1.10 BREVE EXPLICACIÓN DE LA METODOLOGÍA INVESTIGATIVA A EMPLEAR ... 6
1.10.1 Cualitativa ... 6
1.10.2 Cuantitativa ... 6
1.10.3 Investigación Aplicada ... 7
1.10.4 Investigación De Campo ... 7
1.10.5 Investigación Descriptiva ... 7
1.10.6 Investigación Bibliográfica ... 7
1.10.7 Los métodos aplicados: ... 8
1.10.7.2 Inductivo deductivo ... 8
1.10.8.1 Observación ... 8
1.10.8.2 Encuesta ... 8
1.11 RESUMEN DE LA ESTRUCTURA DEL PROYECTO ... 8
1.12 ELEMENTOS DE NOVEDAD, APORTE TEÓRICO Y SIGNIFICACIÓN PRÁCTICA ... 9
1.12.1 Elemento de Novedad. ... 9
1.12.2 Aporte Teórico ... 10
1.12.3 Significación Práctica ... 10
2 MARCO TEÓRICO ... 11
2.1 APLICACIÓN INFORMÁTICA ... 11
2.1.1 Definiciones ... 11
2.1.2 Aplicación Informática ... 11
2.1.3 Aplicación de software ... 11
2.1.4 Un sistema informático ... 12
2.1.5 Sistema de información ... 12
2.1.6 Origen ... 12
2.1.7 Clasificación ... 13
2.1.7.2 Nivel De Conocimiento ... 14
2.1.7.3 Nivel Administrativo ... 14
2.1.7.4 Nivel Estratégico ... 15
2.1.7.5 Sistemas Expertos (SE) ... 15
2.1.7.6 Sistemas De Planificación De Recursos (ERP) ... 16
2.2 ARQUITECTURA DE UN SISTEMA ... 21
2.2.1 Arquitectura Cliente-Servidor ... 21
2.2.1.1 Aplicaciones mono-capa ... 22
2.2.1.2 Modelo En Dos Capas (Two-Tier Model) ... 22
2.2.1.3 Modelo en Tres Capas (Three-Tier Model) ... 23
2.2.1.4 Arquitectura de N Tier ... 25
2.2.2 Modelos De La Arquitectura De Software ... 27
2.2.2.1 Modelos estructurales ... 27
2.2.2.2 Modelos dinámicos ... 27
2.2.2.3 Modelos de proceso ... 28
2.2.3 Desarrollo De Software ... 28
2.2.4 Metodologías Para El Desarrollo De Software ... 32
2.2.4.1 Metodologías Estructuradas ... 33
2.2.4.2 Metodologías Orientadas A Objetos ... 33
2.2.4.3 Metodologías Tradicionales ... 34
2.2.4.4 Metodologías Ágiles ... 34
2.2.4.5 Metodología XP ... 35
2.2.4.6 Metodología SCRUM ... 36
2.2.4.7 Metodología RUP... 37
2.2.5 Herramientas De Desarrollo ... 38
2.2.5.1 Sistema gestor de base de datos ... 38
2.2.5.2 Lenguaje de programación ... 38
2.2.5.3 Modelador de la base de datos ... 39
2.3 PROCESO ADMINISTRATIVO ... 39
2.3.1 Fases del proceso administrativo ... 39
2.3.1.1 Etapas del proceso Administrativo... 39
2.4 GESTIÓN ... 41
2.4.1.1 Gestión de negocios ... 41
2.4.1.2 Reglas de negocio ... 42
2.4.1.3 Gestión de ventas ... 43
2.4.1.4 Ventas: ... 44
2.4.1.5 Etapas de la venta ... 44
2.4.1.6 Propósito de un negocio ... 44
2.4.1.7 Herramientas de Gestión ... 44
2.4.1.8 Introducción a la Contabilidad ... 45
2.5 CONCLUSIONES PARCIALES DEL CAPITULO ... 46
3 MARCO PROPOSITIVO ... 47
3.1 TEMA ... 47
3.2 OBJETIVOS ... 47
3.2.1 General ... 47
3.2.2 Específicos ... 47
3.3 DESARROLLO DE LA PROPUESTA ... 47
3.3.1 Metodología de Desarrollo. ... 47
3.4 ANÁLISIS DE REQUISITOS ... 49
3.4.1 Introducción ... 49
3.4.2 Propósito ... 49
3.4.3 Alcance ... 50
3.4.4 Personal involucrado ... 50
3.4.5 Definiciones, acrónimos y abreviaturas ... 50
3.4.6 Referencias ... 51
3.4.7 Resumen ... 51
3.4.8 Descripción general ... 51
3.4.8.1 Perspectiva del producto: ... 51
3.4.8.2 Funcionalidad del producto ... 52
3.4.8.3 Diagramas De Secuencia ... 53
3.4.8.4 Características de los usuarios ... 55
3.4.8.5 Restricciones ... 55
3.4.8.6 Suposiciones y dependencias ... 55
3.4.8.7 Evolución previsible del sistema ... 56
3.4.8.9 Requisitos comunes de los interfaces ... 65
3.4.8.10 Requisitos funcionales ... 66
3.4.8.11 Requisitos no funcionales ... 72
3.5 DISEÑO ... 74
3.5.1 Modelo Lógico ... 74
3.5.2 Modelo Físico... 75
3.5.3 Modelo Entidad Relación ... 76
3.5.4 Diccionario De Datos ... 77
3.5.5 Diseño De Interfaces ... 81
3.5.5.1 Espacio en blanco: ... 81
3.5.5.2 Organización de elementos: ... 81
3.5.5.3 Estética visual: ... 81
3.5.6 Diseño De Formularios ... 82
3.6 CODIFICACIÓN ... 87
3.6.1 Codificación De Módulos ... 87
3.7 PRUEBAS ... 93
3.7.2 Pruebas Con Datos Reales ... 96
CONCLUSIONES ... 98
RECOMENDACIONES ... 99
BIBLIOGRAFÍA ... 1-1 ÍNDICE DE FIGURAS Figura 1. Aplicación de una sola capa ... 22
Figura 2. Arquitectura Cliente/Servidor clásica ... 23
Figura 3. Arquitectura Cliente/Servidor en tres capas. ... 24
Figura 4. Arquitectura en tres capas. ... 25
Figura 5. Arquitectura en N capas ... 26
Figura 6. Modelo en cascada. ... 48
Figura 7. Funcionalidad Factura. ... 52
Figura 8. Funcionalidad Compras. ... 52
Figura 9. Funcionalidad Cuentas por cobrar. ... 53
Figura 10. Secuencia Facturación. ... 53
Figura 11. Secuencia Compras. ... 54
Figura 12. Secuencia Cuentas por Cobrar. ... 54
Figura 13. Diseño del programa ... 84
ÍNDICE DE TABLAS
Tabla 1. Personal involucrado. ... 50
Tabla 2. Acrónimos y abreviaturas. ... 50
Tabla 3. Referencias. ... 51
Tabla 4. Administrador. ... 55
Tabla 5. Vendedor. ... 55
Tabla 6. Contador. ... 55
Tabla 7. Referencia Funcional 01. ... 56
Tabla 8. Referencia Funcional 02. ... 56
Tabla 9. Referencia Funcional 03. ... 57
Tabla 10. Referencia Funcional 04. ... 57
Tabla 11. Referencia Funcional 05. ... 58
Tabla 12. Referencia Funcional 06. ... 58
Tabla 13. Referencia Funcional 07. ... 59
Tabla 14. Referencia Funcional 08. ... 59
Tabla 15. Referencia Funcional 09. ... 60
Tabla 16. Referencia Funcional 10. ... 60
Tabla 17. Referencia Funcional 11. ... 61
Tabla 18. Referencia Funcional 12. ... 61
Tabla 19. Referencia Funcional 13. ... 62
Tabla 20. Referencia Funcional 14. ... 62
Tabla 21. Referencia Funcional 15. ... 63
Tabla 23. Referencia Funcional 17. ... 64
Tabla 24. Referencia Funcional 18. ... 64
Tabla 25. Referencia Funcional 19 ... 65
Tabla 26. Referencia Funcional 20. ... 65
Tabla 27. Diccionario de datos. ... 77
Tabla 28. Formulario facturación. ... 93
Tabla 29. Formulario acceso. ... 94
Tabla 30. Formulario cliente. ... 94
Tabla 31. Formulario proveedores. ... 94
Tabla 32. Formulario Inventario. ... 95
Tabla 33. Formulario Vendedores. ... 95
Tabla 34. Formulario facturación PDR. ... 96
Tabla 35. Formulario acceso PDR. ... 96
Tabla 36. Formulario clientes. ... 97
Tabla 37. Formulario proveedores. ... 97
Tabla 38. Formulario Inventario. ... 97
RESUMEN EJECUTIVO
El presente proyecto de fin de carrera previo a la obtención del título de ingeniera en sistemas e informática, está estructurada en tres capítulos los cuales pueden ser descritos de la siguiente forma:
Su desarrollo se enmarca en la necesidad de solventar ciertas falencias en el área de Gestión de ventas de la empresa “MASTER SOLUCIONES”, detectando su problemática y realizando el respectivo análisis, para generar la propuesta de una aplicación informática que permitirá el mejoramiento de la Gestión de Ventas.
Cada capítulo al finalizar resume las respectivas conclusiones que permitirán una mejor comprensión de lo analizado y planteado.
En el Capítulo I, Se describe las falencias que tiene el área de Gestión de ventas de la empresa y la posible solución, comenzando por el planteamiento de un objetivo general y varios específicos.
En el Capítulo II, Se fundamenta algunos temas necesarios para la elaboración de la propuesta, inicialmente mostrando algunos antecedentes al proyecto para después enfocar en temas relacionados con la elaboración de aplicaciones informáticas, enfocados a la gestión de ventas, analizando las posibles aplicaciones que nos ofrece en el marco de la tecnología y herramientas que facilitan el alcance del objetivo propuesto.
EXECUTIVE SUMMARY
This draft order before obtaining the degree in systems engineering and computer science career is divided into three chapters which can be described as follows:
Its development is part of the need to overcome certain shortcomings in the area of sales management of the company "MASTER SOLUTIONS", identifying their problems and performing the respective analysis, the proposal to create a software application that will allow improving the management Sales.
At the end of each chapter summarizes the respective conclusions which will allow a better understanding of the analyzed and proposed.
In Chapter I, the shortcomings that have area sales management of the company and the possible solution, starting with the approach of a general objective and describes several specific.
In Chapter II, some issues needed to prepare the proposal is based, initially showing some background to the project and then focus on issues related to the development of applications, focusing on sales management, analyzing the possible applications offered by within the framework of the technology and tools that facilitate the scope of the proposed objective.
1 CAPITULO I
1 INTRODUCCIÓN
1.1 ANTECEDENTES DE LA INVESTIGACIÓN
El avance de la tecnología, a partir de los primeros años del siglo XX ha sido sorprendente, el descubrimiento de los nuevos dispositivos electrónicos, los grandes avances de la programación y el acelerado desarrollo de nuevas aplicaciones informáticas, todo este avance ha cambiado la forma de vivir y de relacionarse que tenemos los seres humanos de esta época.
Veremos el uso que se acreditan a los Sistemas de Información SI, que según la organización Internacional de Normalización (ISO): Un sistema informático es el sistema compuesto de equipos y personal que realiza funciones de entrada, proceso, almacenamiento, salida y control con el fin de llevar a cabo una secuencia de operaciones con datos.
A si también se encontró que un SI es un conjunto de elementos, hardware, software y personal que hacen posible el tratamiento automático de la información. (JOYANES AGUILAR, 2012)
Como también se afirma que un SI: es un conjunto de partes que funcionan relacionándose entre sí para conseguir un Objetivo preciso. (GALLEGO JOSE CARLOS, 2010)
2
Por su parte, en el espacio técnico y científico, la tecnología es utilizada para pronosticar el cambio climático, controlar el tránsito, las comunicaciones, los satélites, los vuelos aéreos, el pago automático de peajes y muchas otras actividades. En la esfera de la medicina, a las máquinas se las utiliza tanto para el control médico de los enfermos como para la investigación de nuevas fórmulas curativas.
Un Sistema de información puede delimitar técnicamente como un conjunto de componentes interrelacionados que permiten capturar, procesar, almacenar y distribuir la información para apoyar la toma de decisiones, la coordinación y el control, pueden también ayudar a los administradores y al personal a analizar problemas, visualizar cuestiones complejas y crear nuevos productos. Pueden contener datos acerca de personas, lugares y cosas importantes dentro de la institución y el entorno que lo rodea.
Existen diferentes tipos de sistemas que están enrolados en el control de la empresa, los sistemas a nivel operativo apoyan a los gerentes en las diferentes actividades que realizan la empresa como ventas, ingresos, nóminas y el flujo de materiales en la empresa. La principal función de este tipo de sistemas es de controlar el diferente flujo de las transacciones a través de la organización, por ejemplo saber los movimientos de los inventarios, pagos, gastos, en general para poder mantener la información a la mano, actualizada y precisa.
En el País existe un importante grupo de comercializadores de Bienes y servicios tecnológicos, quienes han buscado la forma de mejorar la calidad del servicio, tanto para el cliente como para sus normales procesos de comercialización, apoyándose de la Tecnología actual que ofrece variados beneficios enfocados a mejorar las Falencias existentes para el normal desarrollo de las actividades.
3
El tema a desarrollares contiene las características necesarias y específicas para las funciones de la empresa; por lo tanto el presente trabajo se caracteriza de ser única y original de mi autoría.
1.2 PLANTEAMIENTO DEL PROBLEMA
En el afán de implementar los mencionados beneficios antes referidos el Representante Legal de la Empresa MASTER SOLUCIONES, de esta ciudad de Santo Domingo, autoriza se realice un estudio a los procesos que se realizan en su empresa. La misma que se dedica a la compra y venta de Bienes y servicios tecnológicos, teniendo proveedores de las diferentes ciudades del País; y cubriendo una gran mayoría de las necesidades de la población de la provincia y sus alrededores, con crecimiento considerable, generando la necesidad implementar herramientas que faciliten el desarrollo de la actividad de la empresa.
Estudio que evidenció: que existen falencias en más de uno de los procesos, como los que se mencionan a continuación.
Deficiencia en el manejo de las facturas, demora en la búsqueda de facturas ya sea por fechas o cliente, provocando largos periodo de espera,
Carencia de información de las ventas realizadas, ya sean estas semanales o mensuales. Esto nos permite conocer resultados reales del movimiento de ventas en diferentes periodos,
Lentitud en la búsqueda de productos, lo mismo que genera demora en el tiempo de facturación o realizar proformas,
Falta de un control optimo del inventario, teniendo como resultado un inventario no real,
4
Debido a que existen falencias en los procesos comerciales de la empresa e inadecuado manejo de los datos y toda la documentación, misma que se almacena manualmente, nace la importancia de adaptar mencionados procesos a un sistema informático.
1.3 FORMULACIÓN DEL PROBLEMA
¿Cómo mejorar la ineficiente gestión de ventas en la empresa “Master Soluciones”, de Santo Domingo?
1.4 DELIMITACIÓN DEL PROBLEMA
El trabajo de investigación será realizado en la empresa “MASTER SOLUCIONES”, la misma que será parte indispensable en nuestro objeto de estudio y está ubicada en la Provincia de Santo Domingo de los Tsáchilas, Cantón Santo Domingo, en la Calle Ibarra y Pasaje Ecuador.
1.5 OBJETO DE INVESTIGACIÓN Y CAMPO DE ACCIÓN
1.5.1 Objeto de Investigación:
Sistema de información
1.5.2 Campo de Acción:
Aplicaciones Informáticas orientadas a la Gestión de Ventas
1.6 IDENTIFICACIÓN DE LA LÍNEA DE INVESTIGACIÓN
5 1.7 OBJETIVOS
1.7.1 Objetivo General
Desarrollar una Aplicación Informática con cual se pueda mejorar la gestión de ventas en la empresa “MASTER SOLUCIONES”.
1.7.2 Objetivos Específicos
Fundamentar Científicamente las bases teóricas de Aplicaciones Informáticas, sus herramientas de desarrollo y el tratamiento de la información.
Realizar una investigación de campo que permita conocer la problemática del área de gestión de ventas de la empresa “MASTER SOLUCIONES”
Diseñar una aplicación informática que permita mejorar la gestión de ventas en la empresa “MASTER SOLUCIONES”, de Santo Domingo.
Validar la propuesta.
1.8 IDEA A DEFENDER
Aplicación Informática ERP para la gestión de ventas en la empresa “MASTER SOLUCIONES”, el mismo que mejorará la gestión de ventas, generando ahorro de tiempo y datos confiables del todo el proceso que involucra la Gestión de ventas, tanto en el manejo de inventarios como el historial de Clientes y rotación de productos con sus respectivos reportes de respaldo.
1.9 JUSTIFICACIÓN
Los procesos de automatización en la actualidad han tenido una gran aceptación; ya que son factores que permiten mejorar resultados con el apoyo de la tecnología de información, que permitan realizar labores un poco complejas para el hombre de una manera más rápida y eficaz, que son de gran beneficio para distintos sectores, económicos, sociales y culturales de nuestra sociedad.
6
los clientes estarían al día con totales de carteras, tendrá un impacto positivo en la organización, la cual proporcionará información confiable, agilizando y facilitando el trabajo en los procesos de comercialización; para alcanzar el presente objetivo se tiene el consentimiento del representante de la empresa.
Una vez terminado el sistema informático se busca elevar la calidad de servicio hacia los clientes externos e internos, debido a que contaran con un sistema informático que satisface las necesidades empresariales.
1.10BREVE EXPLICACIÓN DE LA METODOLOGÍA INVESTIGATIVA A EMPLEAR
1.10.1 Cualitativa
La modalidad de investigación cualitativa es cualquier tipo de investigación que produce hallazgos a los que no se llegan por medio de procedimientos estadísticos u otros medios de cuantificación. (STRAUSS & CORBIN, 2002; GAST & LUCA TENA, 2005)
Además los métodos cualitativos se pueden usar para obtener detalles complejos de algunos fenómenos, tales como sentimientos procesos de pensamiento y emociones difíciles de extraer o aprender por métodos de investigación más convencionales.
1.10.2 Cuantitativa
La modalidad de investigación cuantitativa es de una naturaleza objetiva y de medición numérica de los fenómenos que ocurren en el medio. Se utiliza para las investigaciones de encuesta, tabulación de datos, análisis de cifras y aplicación de pruebas estadísticas. (EYSSAUTIER DE LA MORA, 2006)
7
información cuantificable para tomar decisiones en cuanto a al diseño de la solución informática.
Entre los tipos de investigación que se utilizara:
1.10.3 Investigación Aplicada
La investigación aplicada tiende a modificar una realidad presente con alguna finalidad práctica. Se caracteriza por su interés en la aplicación, utilización y consecuencias prácticas de los conocimientos. (LEIVA, 1988)
1.10.4 Investigación De Campo
Es el proceso que utilizando el método científico, permite obtener nuevos conocimientos en el campo de la realidad social, o bien estudiar una situación para diagnosticar necesidades y problemas a efectos de aplicar los conocimientos con fines prácticos. Esta investigación, se realiza en el propio sitio donde se encuentra el objeto de estudio. Ello permite el conocimiento más a fondo del investigador, puede manejar los datos con más seguridad. (ZORRILLA, TORRES, & CERVO, 1997)
1.10.5 Investigación Descriptiva
Es la que estudia, analiza o describe la realidad presente, actual. (LEIVA, 1988)
1.10.6 Investigación Bibliográfica
8 1.10.7 Los métodos aplicados:
1.10.7.1 Analítico sintético
Estudia los hechos, partiendo de la descomposición del objeto de estudio en cada una de sus partes para estudiarlas en forma individual.
1.10.7.2 Inductivo deductivo
Modo de razonar de una parte a un todo, creando como resultado una solución válida para todos los procesos.
1.10.8 Técnicas y herramientas 1.10.8.1 Observación
Permite obtener información directa y confiable, siempre y cuando se haga mediante un procedimiento muy sistematizado y muy controlado. (BERNAL, 2010)
1.10.8.2 Encuesta
Es una técnica que consiste en obtener información acerca de una parte de la población o muestra, mediante el uso del cuestionario. (MUNCH, 2009)
Permite interactuar con una parte del objeto para la obtención de ciertos datos.
1.11 RESUMEN DE LA ESTRUCTURA DEL PROYECTO
9
En los capítulos se fundamenta algunos temas necesarios para la elaboración de la propuesta, inicialmente se muestra algunos antecedentes al proyecto para después enfocar en temas relacionados con la elaboración de sistemas, también en él se procede a desarrollar la propuesta de la implementación de una Aplicación Informática ERP, para mejorar el proceso de ventas en la empresa.
En el capítulo uno se recopila aspectos importantes de la investigación como los antecedentes del presente trabajo, el planteamiento del problema enfocado a las falencias existentes, como también se especifica los objetivos que se desean alcanzar con la implementación de la presente propuesta; además se habla de las metodología y las herramientas que se dispone, para el empleo en el desarrollo de la presente propuesta.
Del capítulo dos se rescata el marco teórico aborda toda la información de base, que nos facilitaran en el momento de definir la propuesta.
Y Finalmente el capítulo tres, en el cual se plasma el desarrollo de la propuesta la misma que abordamos temas del desarrollo en todas sus etapas, describiendo paso a paso de manera que se logre proyectar el alcance del Sistema o aplicación informática, también se realiza las conclusiones y las recomendaciones.
1.12 ELEMENTOS DE NOVEDAD, APORTE TEÓRICO Y SIGNIFICACIÓN PRÁCTICA
1.12.1 Elemento de Novedad.
10 1.12.2 Aporte Teórico
En el presente trabajo investigativo abordaremos temas relacionados con la Aplicación informática su definición, origen y clasificación, de los mismos que exploraremos sus características, aplicaciones ventajas y desventajas de su uso.
Se estudia la Arquitectura, Modelo y Metodologías de desarrollo de software con la finalidad de poder encaminar el desarrollo de la presente propuesta.
Y se destaca el uso de Herramientas de desarrollo, la misma que aplicarán en el desarrollo de la propuesta, además topamos Temas cono el proceso Administrativo y la importancia de la Gestión como base de la actividad comercial de las empresas dedicadas a la Gestión de ventas y comercialización.
1.12.3 Significación Práctica
Consiste en la implementación de una aplicación informática ERP, que permite eliminar las falencias existente en el área de Gestión de Ventas y de esta forma mejorar el proceso y la obtención de resultados altamente confiables.
Se tendrá a disposición un Sistema informático que automatizará el proceso de ventas de la empresa Master Soluciones, facilitando procesos como: Facturación, elaboración de proformas, Gestión de cuentas por cobrar y pagar, así como generar reportes de Saldos de Mercadería y la toma de inventarios.
Todo esto encaminará a mejorar las falencias detectadas en el proceso de ventas de la mencionada empresa.
11 CAPITULO II
2 MARCO TEÓRICO
2.1 APLICACIÓN INFORMÁTICA
2.1.1 Definiciones
Aplicación equivale a Programa Informático que permite a un usuario utilizar una computadora con un fin específico. Las aplicaciones son parte del software de una computadora, y suelen ejecutarse sobre el sistema operativo. (GARCIA, 2010).
2.1.2 Aplicación Informática
Es un programa compilado (aunque a veces interpretado), escrito en cualquier lenguaje de programación. Las aplicaciones pueden tener distintas licencias de distribución como ser freeware, shareware, trialware, etc. Las aplicaciones tienen algún tipo de interfaz, que puede ser una interfaz de texto o una interfaz gráfica (o ambas). (GARCIA, 2010)
También hay que destacar que la distinción entre aplicaciones y sistemas operativos muchas veces no es clara. De hecho, en algunos sistemas integrados no existe una clara distinción para el usuario entre el sistema y sus aplicaciones.
Una aplicación que posee múltiples programas se considera un paquete. Son ejemplos de aplicaciones Internet Explorer, Outlook, Word, Excel, WinAmp, etc.
2.1.3 Aplicación de software
12 2.1.4 Un sistema informático
Es un conjunto de partes que funcionan relacionándose entre sí con un objetivo preciso. Sus partes son: hardware, software y las personas que lo usan. (MORALES, 2010)
Un Sistema Informático puede formar parte de un sistema de información; en este último la información, uso y acceso a la misma, no necesariamente está informatizada.
2.1.5 Sistema de información
Es un conjunto de elementos relacionados entre sí, que se encarga de procesar manual y/o automáticamente datos, en función de determinados objetivos. (AMAYA, 2009)
Debido a que dentro del estudio es más común encontrar el Termino Sistema de información, nos centraremos en el estudio del mismo.
2.1.6 Origen
La historia del tratamiento de la información es prácticamente tan antigua como el hombre, dado que éste siempre ha buscado medios para conseguir realizar cálculos que le facilitasen su vida ordinaria. El primer instrumento de cálculo conocido es el ábaco. Su creación se atribuye a las primeras civilizaciones chinas, aunque las primeras fuentes documentadas sobre la utilización de ábacos datan del año 2600 a. C. en Mesopotamia.
Primera etapa: Se pretende desarrollar únicamente procedimientos de tipo manual, para organizar mejor los documentos o papeles que genera el proceso de administración empresarial.
13
Tercera etapa: Años 60-70. Aparece una nueva área funcional, los departamentos de informática o de Sistemas de Información, cuya misión es tratar de resolver los problemas derivados de la gestión de la información. Constituye la aparición de los Sistemas de Información para la Dirección (MIS).
Cuarta etapa: Comienzo de la búsqueda de información y en los sistemas de gestión de la misma, el medio para conocer más sobre el entorno. Es una fase que corresponde al uso de los sistemas integrados, así como una aplicación paulatina de los nuevos instrumentos de soporte para la decisión (DSS).
Quinta etapa: Es la fase final o actual en la que se pretende integrar la información con la estrategia corporativa, usando las nuevas tecnologías de información para concebir nuevas formas de diseño, fabricación y venta de productos.
La cuestión ahora es ahora tratar de ganar ventaja competitiva mediante un uso adecuado de las técnicas de la información.
2.1.7 Clasificación
Existen varios tipos de Sistemas de Información, desde el punto de vista administrativo éstos se pueden clasificar en los siguientes:
2.1.7.1Nivel Operativo
Se utilizan para realizar un seguimiento de las actividades y operaciones básicas de una organización.
Sistema De Procesamiento De Transacciones (TPS)
14
Recolectan, almacenan, modifican y recuperan la información generada por las transacciones producidas en una organización. Si durante una transacción se produce un error, el TPS debe ser capaz de deshacer las operaciones realizadas hasta ese momento. Es muy útil para el procesamiento de transacciones on-line.
2.1.7.2Nivel De Conocimiento
Se utilizan para el mejoramiento de la calidad de los servicios de la organización y aporte de nuevos conocimientos, además de incrementar la productividad de los usuarios del sistema.
Sistemas de trabajo de Conocimiento (KWS)
Brinda a poyo a profesionales como científicos, ingenieros y médicos, ayudándolos a crear conocimiento y a integrarlos a si organización o sociedad. (KENDALL, 2011)
En si ayudan a la creación e integración de nuevo conocimiento en la organización. Están diseñados para aumentar la productividad de los trabajadores.
Sistemas de Automatización de Oficina (OAS)
Aplicaciones que brindan apoyo a las personas que trabajan con datos no para crear conocimiento si no para analizar la información y transformar los datos o manipularlos de cierta forma antes de compartirlos o diseminarlos de manera normal a través de la organización. (KENDALL, 2011)
2.1.7.3Nivel Administrativo
15 Sistemas de Información Gerencial (MIS)
Son el resultado de interacción colaborativa entre personas, tecnologías y procedimientos. Apoyan a nivel administrativo entregando información útil para el planteamiento, control y toma de decisiones. (KENDALL, 2011)
Sistemas de Apoyo a la Toma de Decisiones (DSS)
Herramienta para realizar el análisis de las diferentes variables de un negocio con la finalidad de apoyar el proceso de toma de decisiones. (KENDALL, 2011)
2.1.7.4Nivel Estratégico
Están basados en los resultados estratégicos a largo plazo de la compañía, son útiles para poder hacer frente a los impactos producidos por cambios en los negocios.
Sistemas de Soporte Gerencial (SSG)
Trabajan con información interna y externa a la organización y están diseñados para abordar la toma de decisiones que requieren juicio, evaluación y comprensión. (KENDALL, 2011)
2.1.7.5Sistemas Expertos (SE)
16
2.1.7.6Sistemas De Planificación De Recursos (ERP)
Definición de ERP
Los sistemas ERP típicamente manejan la producción, logística, distribución, inventario, envíos, facturas y contabilidad de la compañía de forma modular.
Sin embargo, la planificación de recursos empresariales o el software ERP pueden intervenir en el control de muchas actividades de negocios como ventas, entregas, pagos, producción, administración de inventarios, calidad de administración y la administración de recursos humanos.
Las aplicaciones ERP son sistemas de gestión global para la empresa. Se caracterizan por estar compuestos por diferentes módulos. Estas partes son de diferente uso, por ejemplo: producción, ventas, compras, logística, contabilidad (de varios tipos), gestión de proyectos, GIS, inventarios y control de almacenes, pedidos, nóminas, etc.
Lo contrario sería como considerar un simple programa de facturación como un ERP por el simple hecho de que una empresa integre únicamente esa parte. Una solución ERP, se define como un grupo de módulos conectados a una única base de datos.
El ERP es un paquete de software que permite administrar todos los procesos operativos de una empresa, integrando varias funciones de gestión en un único sistema; en otras palabras, representa la “columna vertebral” de una empresa.
El ERP se define según dos principios básicos:
Aplicaciones informáticas como módulos independientes, pero perfectamente compatibles en una única base de datos común.
17 Alcance de un ERP
Un paquete de software de gestión integrada permite construir un sistema de información homogéneo sobre una base única. De este modo cubre un amplio ámbito de gestión:
Gestión de compras
Gestión de ventas
Gestión contable: contabilidad de clientes, de proveedores, activos, personal.
Control de gestión
Gestión de la producción (planificación, etc.)
Gestión de stocks (logística)
Las características que distinguen a un ERP de cualquier otro software empresarial son que deben ser modulares y configurables:
Modulares: Los ERP entienden que una empresa es un conjunto de departamentos que se encuentran interrelacionados por la información que comparten y que se genera a partir de sus procesos. Una ventaja de los ERP, tanto económica como técnica, es que la funcionalidad se encuentra dividida en módulos, los cuales pueden instalarse de acuerdo con los requerimientos del cliente. Ejemplo: ventas, materiales, finanzas, control de almacén, recursos humanos, etc.
Configurables: Los ERP pueden ser configurados mediante desarrollos en el código del software. Por ejemplo, para controlar inventarios, es posible que una empresa necesite manejar la partición de lotes pero otra empresa no. Los ERP más avanzados suelen incorporar herramientas de programación de cuarta generación para el desarrollo rápido de nuevos procesos. Así pues, un ERP se compone de varios módulos que corresponden a cada una de las áreas de gestión y garantiza la unicidad de la información que contiene, porque solo hay una única base de datos lógica
Ventajas
18
Optimización de los procesos de gestión (flujos económicos y financieros)
Coherencia y homogeneidad de la información (un único archivo de artículos, un único archivo de clientes, etc.)
Integridad y unicidad del sistema de información
Uso compartido del mismo sistema de información que facilita la comunicación interna y externa
Reducción al mínimo de los costes de gestión de la información
Globalización de la formación (misma lógica, misma ergonomía)
Aumento de la productividad
Control de los costes, de los plazos de puesta en marcha y de implementación
Beneficios tangibles
Reducción de Inventarios
La implantación de un sistema ERP generalmente reduce un 20% los inventarios. Así mismo genera otros ahorros que “no se ven” como el costo del manejo de inventarios, reducción en gastos como: almacenamiento, manejo del inventario, impuestos, desperdicio, entre otras.
Esta reducción se logra gracias a que se tiene en el inventario lo que se necesita, ya sea para ventas o para producción. De esta forma logramos el librarnos de producto que no tiene rotación y tenemos producto con mucha rotación, lo cual eleva las ventas y el servicio al cliente.
Reducción en Costo de Materiales
Producto del ERP, la empresa tendrá un mejor control y conocimiento de su inventario, lo cual con lleva a mejores negociaciones de precio con los proveedores.
19
contar con fechas más exactas para la entrega, y de esta forma poder realizar pedidos más voluminosos.
De esta forma el proveedor deja de preocuparse por “vender” y se concentra en la calidad, y día de entrega.
Reducción en Costos de Mano de Obra
Un ERP bien implantado logra una reducción de costo de mano de obra del orden del 10%. El resultado de un ERP es lograr menores interrupciones en las líneas de producción y un mejor plan de producción, ya que se cuenta con anticipación el que se va a producción, para cuando, y para quien.
Mejorar el nivel de atención al cliente y las ventas.
Generalmente se logra un aumento del 10% de las ventas.
El uso de un ERP logra que nuestros vendedores cumplan con sus fechas de entrega y negocien precios y condiciones que les convengan a la empresa.
Por medio de la información que brinda un ERP, el vendedor se concentra en la venta y la atención al cliente, en lugar de disculparse por entregas tardías y falta de calidad en la entrega y servicio.
Mejorar los controles administrativos
20
Así mismo logra un mejor control sobre clientes morosos, lo que nos permite tener políticas de crédito más estrictas y más controladas, asegurándonos de liberar crédito a los buenos clientes y evitar los clientes morosos.
Razones Financieras
Rotación de Inventarios (Costo de Ventas/Inventario). Al lograr una reducción del inventario se aumentaría la rotación del mismo. Un número pequeño en la rotación de inventarios indica que tenemos producto que NO se vende y que se vuelve obsoleto dentro de nuestro almacén. Por el otro lado, un número grande de rotación quiere decir que tenemos un movimiento muy bueno de nuestros productos, que tenemos lo que el cliente pide, y que eso producto está en donde se vende.
Días de Pago (365 * 1/(Ventas/Cuentas por Cobrar)). Los días al pago indican el número de días promedio que tenemos en cartera, un número de días grande nos indica que tenemos clientes que se toman más crédito de la cuenta lo que provoca que la empresa no tenga liquidez para cumplir con sus obligaciones.
Beneficios No Tangibles
Contabilidad
Evitar recapturas y múltiples bases de datos. Agilizar la facturación lo que mejora las Cuentas por cobrar. Como cada evento económico de la empresa se registra al momento la información está más al día y más disponible, lo que provoca que el tiempo de cierre mensual se reduzca en gran medida.
Producción y Manejo de Materiales
21 Venta
Cumplir con fechas de entrega en pedidos y embarques, así como atender preguntas e inquietudes del cliente con información útil y confiable.
De igual forma mediante un inventario en línea y confiable, es posible conocer al momento de la venta las existencias disponibles y apartar producto en ese momento, mejorando así los niveles de Servicio a clientes, así como el manejo de desabastos
2.2 ARQUITECTURA DE UN SISTEMA
Es la organización fundamental de un sistema, que incluye sus componentes, las relaciones entre sí y el ambiente, y los principios que gobiernan su diseño y evolución, permitiendo a los programadores, analistas y todo el conjunto de desarrolladores del software compartir una misma línea de trabajo y cubrir todos los objetivos y restricciones de la aplicación.
2.2.1 Arquitectura Cliente-Servidor
En términos de arquitectura: Los distintos aspectos que caracterizan a una aplicación (proceso, almacenamiento, control y operaciones de entrada y salida de datos) en el sentido más amplio, están situados en más de un computador, los cuales se encuentran interconectados mediante una red de comunicaciones.
Es la tecnología que proporciona al usuario final el acceso transparente a las aplicaciones, datos, servicios de cómputo o cualquier otro recurso del grupo de trabajo y/o, a través de la organización, en múltiples plataformas.
22 2.2.1.1Aplicaciones mono-capa
Entendemos por aplicaciones mono-capa, aquellas que tanto la propia aplicación como los datos que maneja se encuentran en la misma máquina y son administradas por la misma herramienta: podríamos decir que son una sola entidad.
Figura 1. Aplicación de una sola capa Fuente: http:// docente.ucol.mx/sadanary/public_h
2.2.1.2Modelo En Dos Capas (Two-Tier Model)
En una arquitectura cliente/servidor clásica tenemos dos "capas" (two-tier): Una donde está el cliente que implementa la interface.
23 2.2.1.3Modelo en Tres Capas (Three-Tier Model)
Con la arquitectura cliente/servidor en tres capas (three-tier) añadimos una nueva capa entre el cliente y el servidor donde se implementa la lógica de la aplicación.
De esta forma el cliente es básicamente una interface, que no tiene por qué cambiar si cambian las especificaciones de la base de datos o de la aplicación; queda aislado completamente del acceso a los datos.
En este caso se tiene total libertad para escoger dónde se coloca la lógica de la aplicación: en el cliente, en el servidor de base de datos, o en otro(s) servidor(es).
24
No existe compromiso alguno con el uso de lenguajes propietarios, por lo que las aplicaciones serán totalmente portables sin cambio alguno.
Puede determinarse en qué servidor(es) se quiere hacer funcionar estos procedimientos. En aplicaciones críticas se pueden agregar tantos servidores de aplicación como sean necesarios, de forma simple, y sin comprometer en absoluto la integridad de la base de datos, obteniéndose una escalabilidad muy grande sin necesidad de tocar el servidor de dicha base de datos.
El problema de esta arquitectura es ¿cómo se implementa? Parece ilusorio tratar de programar manualmente estos procedimientos, mientras que, si se dispone de una herramienta que lo hace automáticamente, presenta ventajas claras sobre la alternativa anterior:
Figura 3. Arquitectura Cliente/Servidor en tres capas. http://docente.ucol.mx/sadanary/public_h
25
Esto te permite implementar componentes de una manera más flexible. Algo que no creo que sorprenda es la afirmación de que este tipo de arquitectura es la más compleja.
Figura 4. Arquitectura en tres capas. http://docente.ucol.mx/sadanary/public_h
En esta Arquitectura todas las peticiones de los clientes se controlan en la capa correspondiente a la lógica del negocio.
Cuando el cliente necesita hacer una petición se la hace a la capa en la que se encuentra la lógica del negocio.
2.2.1.4Arquitectura de N Tier
26
Mientras que los nombres de estos niveles difieren de acuerdo a la fuente, la Guía del Desarrollador de BackOffice (BackOffice Developer's Guide, BDG) se refiere a ellos como sigue: Servicios de usuario; Servicios de negocios y Servicios de datos.
Figura 5. Arquitectura en N capas http://docente.ucol.mx/sadanary/public_h
Este diagrama muestra como varias aplicaciones y tecnologías de Microsoft son implementadas en la arquitectura N niveles. Al leer la BDG, se verá como estos niveles trabajan juntos para proporcionar la funcionalidad, estabilidad y escalabilidad que las aplicaciones empresariales requieren.
27
Estos servicios son expuestos de manera unificada a través del COM, el cual permite que las aplicaciones interoperen y compartan componentes.
Las principales ventajas del desarrollo en N niveles son respecto a la escalabilidad. Las aplicaciones que procesan su lógica de negocios, ya sea en las máquinas cliente o en las bases de datos, se vuelven lentas cuando están siendo muy utilizadas. Esto se ha convertido en algo muy importante en esta era donde las aplicaciones de Web pueden ser utilizadas millones de veces por día. La transición para el desarrollo N niveles no es gratis, el tiempo de desarrollo se incrementó debido a la complejidad de añadir otro nivel.
Afortunadamente, el middleware, tal como el MTS, fue desarrollado para manejar automáticamente los detalles de la infraestructura de aplicación, tal como el manejo de procesos alternos y los detalles de COM.
2.2.2 Modelos De La Arquitectura De Software
La arquitectura de software cuenta con varios modelos, ellos son:
2.2.2.1Modelos estructurales
Son similares a la vista estructural, pero su énfasis primario radica en la (usualmente una sola) estructura coherente del sistema completo, en vez de concentrarse en su composición. Los modelos de framework a menudo se refieren a dominios o clases de problemas específicos. El trabajo que ejemplifica esta variante incluye arquitecturas de software específicas de dominios, como CORBA, o modelos basados en CORBA, o repositorios de componentes específicos, como PRISM.
2.2.2.2Modelos dinámicos
28 2.2.2.3Modelos de proceso
Se concentran en la construcción de la arquitectura, y en los pasos o procesos involucrados en esa construcción. En esta perspectiva, la arquitectura es el resultado de seguir un argumento (script) de proceso.
Esta vista se ejemplifica con el actual trabajo sobre programación de procesos para derivar arquitecturas.
2.2.3 Desarrollo De Software
Se define como proceso al conjunto ordenado de pasos a seguir para llegar a la solución de un problema u obtención de un producto, en este caso particular, para lograr un producto software que resuelva un problema específico. (MORALES, 2010)
2.2.3.1Ciclo De Vida Del Desarrollo De Sistemas
La ingeniería de software, con el fin de ordenar el caos que era anteriormente el desarrollo de software, dispone de varios modelos, paradigmas y filosofías de desarrollo, estos los conocemos principalmente como modelos o ciclos de vida del desarrollo de software, esto incluye el proceso que se sigue para construir, entregar y hacer evolucionar el software, desde la concepción de una idea hasta la entrega y el retiro del sistema y representa todas las actividades y artefactos (productos intermedios) necesarios para desarrollar una aplicación.
Modelo en cascada o clásico
29 Modelo de prototipos
Pertenece a los modelos de desarrollo evolutivo, este permite que todo el sistema, o algunos de sus partes, se construyan rápidamente para comprender con facilidad y aclarar ciertos aspectos en los que se aseguren que el desarrollador, el usuario, el cliente estén de acuerdo en lo que se necesita así como también la solución que se propone para dicha necesidad y de esta manera minimizar el riesgo y la incertidumbre en el desarrollo.
Modelo en espiral
Es un modelo de proceso de software evolutivo que conjuga la naturaleza iterativa de la construcción de prototipos con los aspectos controlados y sistemáticos del modelo en cascada, es decir, cuando se aplica este modelo.
El software se desarrolla en una serie de entregas evolutivas (ciclos o iteraciones), cada una de estas entregando prototipos más completas que el anterior, todo esto en función del análisis de riesgo y las necesidades del cliente.
Modelo de desarrollo por etapas
Es un modelo en el que el software se muestra al cliente en etapas refinadas sucesivamente. Con esta metodología se desarrollan las capacidades más importantes reduciendo el tiempo necesario para la construcción de un producto.
30 Modelo Incremental o Iterativo
Desarrollo iterativo y creciente (o incremental) es un proceso de desarrollo de software, creado en respuesta a las debilidades del modelo tradicional de cascada, es decir, este modelo aplica secuencias lineales como el modelo en cascada, pero de una manera iterativa o escalada según como avance el proceso de desarrollo y con cada una de estas secuencias lineales se producen incrementos (mejoras) del software.
Modelo estructurado
Este modelo como su nombre lo indica utiliza las técnicas del diseño estructurado o de la programación estructurada para su desarrollo, también se utiliza en la creación de los algoritmos del programa. Este formato facilita la comprensión de la estructura de datos y su control.
Modelo orientado a objetos
Tienen sus raíces en la programación orientada a objetos y como consecuencia de ella gira en torno al concepto de clase, también en el análisis de requisitos y el diseño. Esto además de introducir nuevas técnicas, también aprovecha las técnicas y conceptos del desarrollo estructurado, como diagramas de estado y transiciones.
El modelo orientado a objetos tiene dos características principales, las cuales ha favorecido su expansión. Permite la reutilización de software en un grado significativo y su simplicidad facilita el desarrollo de herramientas informáticas de ayuda al desarrollo, el cual es fácilmente implementada en una notación orientada a objetos llamado UML.
Modelo RAD (rapid application development)
31
Esta es una metodología que posibilita la construcción de sistemas computacionales que combinen técnicas y utilidades CASE (Computer Aided Software Engineering), la construcción de prototipos centrados en el usuario y el seguimiento lineal y sistemático de objetivos, incrementando la rapidez con la que se producen los sistemas mediante la utilización de un enfoque de desarrollo basado en componentes.
Modelo de desarrollo concurrente
Es un modelo de tipo de red donde todas las personas actúan simultáneamente o al mismo tiempo. Este tipo de modelo se puede representar a manera de esquema como una serie de actividades técnicas importantes, tareas y estados asociados a ellas.
El modelo de proceso concurrente define actividades en dos dimensiones: una división de sistemas y una división de componentes. Los aspectos del nivel de sistemas se afrontan mediante dos actividades: diseño y realización.
La concurrencia se logra de dos maneras: Las actividades del sistema y de componente ocurren simultáneamente y pueden modelarse con el enfoque orientado a objetos descrito anteriormente.
Una aplicación cliente/servidor típica se implementa con muchos componentes, cada uno de los cuales se pueden diseñar y realizar concurrentemente.
Proceso unificado del desarrollo de software
Es un proceso de software genérico que puede ser utilizado para una gran cantidad de tipos de sistemas de software, para diferentes áreas de aplicación, diferentes tipos de organizaciones, diferentes niveles de competencia y diferentes tamaños de proyectos.
32
calidad que satisfaga las necesidades de los usuarios finales, dentro de un calendario y presupuesto predecible.
El proceso unificado tiene dos dimensiones: Un eje horizontal que representa el tiempo y muestra los aspectos del ciclo de vida del proceso a lo largo de su desenvolvimiento; Un eje vertical que representa las disciplinas, las cuales agrupan actividades de una manera lógica de acuerdo a su naturaleza.
2.2.4 Metodologías Para El Desarrollo De Software
Un proceso de software detallado y completo suele denominarse “Metodología”. Las metodologías se basan en una combinación de los modelos de proceso genéricos, adicionalmente una metodología debería definir con precisión los artefactos, roles y actividades involucrados, junto con prácticas y técnicas recomendadas, guías de adaptación de la metodología al proyecto, guías para uso de herramientas de apoyo, etc.
La comparación y/o clasificación de metodologías no es una tarea sencilla debido a la diversidad de propuestas y diferencias en el grado de detalle, información disponible y alcance de cada una de ellas.
A grandes rasgos, si tomamos como criterio las notaciones utilizadas para especificar artefactos producidos en actividades de análisis y diseño, podemos clasificar las metodologías en dos grupos: Metodologías Estructuradas y Metodologías Orientadas a Objetos.
Por otra parte, considerando su filosofía de desarrollo, aquellas metodologías con mayor énfasis en la planificación y control del proyecto, en especificación precisa de requisitos y modelado, reciben el apelativo de Metodologías Tradicionales (o también denominadas Metodologías Pesadas, o Peso Pesado).
33
pequeños, hacen especial hincapié en aspectos humanos asociados al trabajo en equipo e involucran activamente al cliente en el proceso.
A continuación se revisan brevemente cada una de estas categorías de metodologías: 2.2.4.1Metodologías Estructuradas
Los métodos estructurados comenzaron a desarrollarse a fines de los 70’s con la Programación Estructurada, luego a mediados de los 70’s aparecieron técnicas para el Diseño (por ejemplo: el diagrama de Estructura) primero y posteriormente para el Análisis (por ejemplo: Diagramas de Flujo de Datos).
Estas metodologías son particularmente apropiadas en proyectos que utilizan para la implementación lenguajes de 3ra y 4ta generación.
2.2.4.2Metodologías Orientadas A Objetos
Su historia va unida a la evolución de los lenguajes de programación orientada a objeto, los más representativos:
A fines de los 60’s SIMULA, a fines de los 70’s Smalltalk-80, la primera versión de C++ por Bjarne Stroustrup en 1981 y actualmente Java o C# de Microsoft. A fines de los 80’s comenzaron a consolidarse algunos métodos Orientadas a Objeto.
En 1995 Booch y Rumbaugh proponen el Método Unificado con la ambiciosa idea de conseguir una unificación de sus métodos y notaciones, que posteriormente se reorienta a un objetivo más modesto, para dar lugar al Unified Modeling Language (UML), la notación Orientada a Objetos más popular en la actualidad.
34 2.2.4.3Metodologías Tradicionales
Las metodologías no ágiles son aquellas que están guiadas por una fuerte planificación durante todo el proceso de desarrollo; llamadas también metodologías tradicionales o clásicas, donde se realiza una intensa etapa de análisis y diseño antes de la construcción del sistema.
Todas las propuestas metodológicas antes indicadas pueden considerarse como metodologías tradicionales. Aunque en el caso particular de RUP, por el especial énfasis que presenta en cuanto a su adaptación a las condiciones del proyecto (mediante su configuración previa a aplicarse), realizando una configuración adecuada, podría considerarse Ágil. 2.2.4.4Metodologías Ágiles
Un proceso es ágil cuando el desarrollo de software es incremental (entregas pequeñas de software, con ciclos rápidos), cooperativo (cliente y desarrolladores trabajan juntos constantemente con una cercana comunicación), sencillo (el método en sí mismo es fácil de aprender y modificar, bien documentado), y adaptable (permite realizar cambios de último momento).
Entre las metodologías ágiles tenemos:
Extreme Programming XP
Scrum
Proceso Unificado Rational, una configuración ágil
Familia de Metodologías Crystal
Feature Driven Development
Dynamic Systems Development Method
Adaptive Software Development
35 2.2.4.5Metodología XP
La programación extrema o Extreme Programming (XP), es una metodología de desarrollo ágil, una de las más exitosas en tiempo reciente. Su autor principal es Kent Beck, quien eligió algunas características de otras metodologías y las relacionó de forma que cada una complementara a la otra.
Así, la XP se puede definir como un conjunto de pasos de diversas metodologías, acopladas de manera que sean pasos flexibles a seguir utilizadas con el uso común, para realizar un desarrollo más agradable y sencillo.
Esta metodología tiene como base la simplicidad y como objetivo principal la satisfacción del cliente; para lograrlo se deben tomar en cuenta cuatro valores fundamentales:
Comunicación: Es muy importante que haya una comunicación constante con el cliente y dentro de todo el equipo de trabajo, de esto dependerá que el desarrollo se lleve a cabo de una manera sencilla, entendible y que se entregue al cliente lo que necesita.
Simplicidad: En la XP se refiere que ante todo y sin importar qué funcionalidad requiera el usuario en su sistema, éste debe ser fácil. El diseño debe ser sencillo y amigable al usuario, el código debe ser simple y entendible, programando sólo lo necesario y lo que se utilizará.
Retroalimentación: Es la comunicación constante entre el desarrollador y el usuario.
Coraje: Se refiere a la valentía que se debe tener al modificar o eliminar el código que se realizó con tanto esfuerzo; el desarrollador debe saber cuándo el código que desarrolló no es útil en el sistema y, por lo mismo, debe ser eliminado.
36 2.2.4.6Metodología SCRUM
A pesar de que la metodología XP recibe la mayor atención bibliográfica, las organizaciones están enfocando su atención en la metodología ágil denominada SCRUM (Schwaber & Shuterland, 2011) (Shuterland, 2012), la cual aplica las mismas premisas conceptuales que XP pero para resolver un problema ligeramente distinto como es el de desarrollo evolutivo de aplicaciones.
SCRUM es una metodología ágil y flexible que sirve para gestionar el desarrollo de software, cuyo principal objetivo es maximizar el retorno de la inversión para su empresa. Se basa principalmente en construir la funcionalidad de mayor valor para el cliente y en los principios de inspección continua, adaptación, auto-gestión e innovación.
Con SCRUM el cliente es pieza fundamental en el desarrollo de software, se entusiasma y se compromete con el proyecto dado que lo ve crecer iteración a iteración.
Asimismo le permite en cualquier momento realinear el software con los objetivos de negocio de su empresa, ya que puede introducir cambios funcionales o de prioridad en el inicio de cada nueva iteración. Esta forma de trabajo promueve la innovación, motivación y el compromiso del equipo que forma parte del proyecto, por lo que los profesionales encuentran un ámbito propicio para desarrollar sus capacidades.
SCRUM genera algunas ventajas a diferencia de otras metodologías agiles entre ellas:
Cumplimento de expectativas
Flexibilidad a cambios
Reducción del tiempo
Mayor calidad del software
Mayor productividad
Maximiza el retorno de la inversión (ROI)
Predicciones de tiempos
37 2.2.4.7Metodología RUP
Es una metodología cuyo fin es entregar un producto de software. Se estructura todos los procesos y se mide la eficiencia de la organización.
Es un proceso de desarrollo de software el cual utiliza el lenguaje unificado de modelado UML, constituye la metodología estándar más utilizada para el análisis, implementación y documentación de sistemas orientados a objetos.
El RUP es un conjunto de metodologías adaptables al contexto y necesidades de cada organización. Describe cómo aplicar enfoques para el desarrollo del software, llevando a cabo unos pasos para su realización. Se centra en la producción y mantenimiento de modelos del sistema.
Principales características
Forma disciplinada de asignar tareas y responsabilidades (quién hace qué, cuándo y cómo)
Pretende implementar las mejores prácticas en Ingeniería de Software Desarrollo iterativo
Administración de requisitos
Uso de arquitectura basada en componentes Control de cambios
Modelado visual del software
Verificación de la calidad del software
38 2.2.5 Herramientas De Desarrollo
Es un programa informático que usa un programador para crear, depurar, gestionar o mantener un programa. (JAIME, 2012).
2.2.5.1Sistema gestor de base de datos
SQL Server
Es un sistema de gestión de bases de datos relacionales (SGBD) basado en el lenguaje Transact-SQL, y específicamente en Sybase IQ, fabricado por Microsoft capaz de poner a disposición de muchos usuarios grandes cantidades de datos de manera simultánea. Microsoft SQL Server constituye la alternativa de Microsoft a otros potentes sistemas gestores de bases de datos como son Oracle, Sybase ASE, PostgreSQL, Interbase, Firebird o MySQL.
2.2.5.2Lenguaje de programación
Microsoft Visual Studio
Es un entorno (IDE, por sus siglas en inglés) para sistemas operativos Windows. Soporta múltiples lenguajes de programación tales como C++, C#, Visual Basic .NET, F#, Java, Python, Ruby, PHP; al igual que entornos de desarrollo web como ASP.NET MVC, Django, etc., a lo cual sumarle las nuevas capacidades online bajo Windows Azure en forma del editor Mónaco.
39 2.2.5.3Modelador de la base de datos
Power Designer
Es un único conjunto de herramientas de modelamiento que combina distintas técnicas estándar de modelamiento: modelamiento de aplicación a través de UML, técnicas de Modelamiento de Procesos Empresariales y técnicas tradicionales de modelamiento de base de datos.
2.3 PROCESO ADMINISTRATIVO
El proceso administrativo se puede definir como el conjunto de funciones y actividades que se desarrollan dentro de la organización orientadas al cumplimiento de los objetivos de la misma.
2.3.1 Fases del proceso administrativo
Actividades que el administrador debe llevar a cabo para aprovechar los recursos humanos, técnicos, tecnológicos, materiales, etc., con los que cuenta la empresa.
Cuenta con dos fases, llamadas fase mecánica en donde se engloba la teoría y la fase dinámica en donde se ejecuta la práctica, en la que la una es el complemento de la otra.
2.3.1.1Etapas del proceso Administrativo
Planeación
40 Organización
La organización agrupa y ordena las actividades necesarias para lograr los objetivos, creando unidades administrativas, asignando funciones, autoridad, responsabilidad y jerarquías; estableciendo además las relaciones de coordinación que entre dichas unidades debe existir para hacer optima la cooperación humana, en esta etapa se establecen las relaciones jerárquicas, la autoridad, la responsabilidad y la comunicación para coordinar las diferentes funciones.
Dirección
Es la acción e influencia interpersonal del administrador para lograr que sus subordinados obtengan los objetivos encomendados, mediante la toma de decisiones, la motivación, la comunicación y coordinación de esfuerzos la dirección contiene: ordenes, relaciones personales jerárquicas y toma de decisiones.
Control
Establece sistemas para medir los resultados y corregir las desviaciones que se presenten, con el fin de asegurar que los objetivos planeados se logren, además del establecimiento de estándares, medición de ejecución, interpretación y acciones correctivas.
Integración
Consiste en seleccionar y obtener los recursos financieros, materiales, técnicos y humanos considerados como necesarios para el adecuado funcionamiento de un organismo social.
41 2.4 GESTIÓN
Es conocer el fenómeno administrativo en general y los principios y técnicas que son aplicables a esta actividad en cualquiera de los ámbitos en donde ella ocurre. Este objetivo va ampliándose cada vez más a medida que se avance en el aprendizaje de conocimientos, habilidades y destrezas que el administrador puede poner en juego para lograr que la administración alcance un alto grado de eficiencia.
2.4.1 Clasifica en función del tipo de actividad hacia la que está orientada:
Gestión del conocimiento
Gestión de empresas públicas y privadas, nacionales e internacionales
Gestión de la logística y la táctica no solamente de la guerra
Gestión Gubernamental y/o Pública
Gestión de Políticas Públicas
Gestión de Negocios
Gestión Intergubernamental
Gestión de Derechos Humanos
Gestión de Género
Gestión Ecológica
Gestión y Biodiversidad
Gestión y Bioética
Gestión Laboral
Gestión Deontológica
Gestión Política
2.4.1.1Gestión de negocios
42
operacional de la empresa, al migrar de una operación funcional a una operación administrada por procesos.
2.4.1.2Reglas de negocio
Las Reglas del Negocio o Conjunto de Reglas de Negocio (Business Rules, por su descripción en inglés) describe las políticas, normas, operaciones, definiciones y restricciones presentes en una organización y que son de vital importancia para alcanzar los objetivos misionales.
Ejemplos de reglas de negocio: "Un cliente al que facturamos más de 10.000 al año es un cliente de tipo A", "A los clientes de tipo A les aplicamos un descuento del 10% en pedidos superiores a 3.000".
Las organizaciones funcionan siguiendo múltiples reglas de negocio, explícitas o tácitas, que están embebidas en procesos, aplicaciones informáticas, documentos, etc. Pueden residir en la cabeza de algunas personas o en el código fuente de programas informáticos.
En los últimos años se viene observando una tendencia a gestionar de forma sistemática y centralizada las reglas de negocio, de modo que sea fácil y sencillo consultarlas, entenderlas, utilizarlas, cambiarlas, etc.
Para ello se puede utilizar un motor de reglas de negocio. El motor de reglas de negocio es un sistema que se configura para dar servicio a las necesidades de negocio a través de la definición de objetos y reglas de negocio, el software se rige por flujos que derivan responsabilidades a los distintos cargos de la empresa repartiendo así el trabajo equitativamente y cuantitativamente, cuándo, quién y dónde tiene que desempeñar la tarea asignada.