UNIVERSIDAD NACIONAL DE UCAYALI Facultad de Ingeniería de Sistemas y de Ingeniería Civil
Escuela Profesional de Ingeniería de Sistemas
Proyecto de Tesis
Sistema WEB con tecnología JAVA EE 6 para los procesos administrativos de Abastecimiento y Almacén en el Proyecto Especial Carretera Federico Basadre del Gobierno Regional de Ucayali
TESISTA
:
PANDURO VIA, Carlos Manuel
ASESOR
:
ING. MG. JORGE LUIS HILARIO RIVAS
PUCALLPA – PERÚ 2012
ÍNDICE I.
II.
DATOS GENERALES............................................................................................ 1 1.1.
Título de la investigación ................................................................................ 1
1.2.
Autor o autores del Proyecto .......................................................................... 1
1.3.
Colaboradores ................................................................................................ 1
1.4.
Fecha de presentación del proyecto ............................................................... 1
DISEÑO DE INVESTIGACION .............................................................................. 2 2.1.
Planteamiento del Problema ........................................................................... 2
2.1.1.
Formulación del Problema ....................................................................... 9
2.1.2.
Justificación ........................................................................................... 10
2.1.3.
Objetivos de la Investigación ................................................................. 11
III. MARCO TEORICO .............................................................................................. 13 3.1.
Antecedentes del problema .......................................................................... 13
3.2.
Planteamiento teórico del problema .............................................................. 14
3.2.1.
SISTEMA WEB ......................................................................................... 14
3.2.1.1.
SISTEMA ............................................................................................... 20
3.2.1.2.
WEB ...................................................................................................... 21
3.2.1.3.
SISTEMA INFORMATICO ..................................................................... 22
3.2.1.4.
INGENIERÍA DE SOFTWARE ............................................................... 22
3.2.1.5.
ADMINISTRADOR DE BASE DE DATOS ............................................. 30
3.2.1.6.
PROCESO UNIFICADO DE RATIONAL................................................ 32
3.2.1.7.
LENGUAJE DE MODELO UNIFICADO ................................................. 38
3.2.2.
TECNOLOGÍA JAVA EE 6 ........................................................................ 43
3.2.3.
PROCESOS ADMINISTRATIVOS ............................................................ 51
3.2.3.1.
PROCESOS .......................................................................................... 51
3.2.3.2.
ADMINISTRATIVO ................................................................................ 52
3.2.4. 3.2.4.1.
CONTROL DE INVENTARIO .................................................................... 52 INVENTARIO......................................................................................... 53
3.3.
Definición de Términos Básicos .................................................................... 56
IV. HIPOTESIS, VARIABLES Y OPERACIONALIZACION DE LAS VARIABLES ...... 59 4.1.
Hipótesis ....................................................................................................... 59
4.2.
Variables ...................................................................................................... 60
5.2.1.
Variable independiente .......................................................................... 60
5.2.2.
Variable dependiente ............................................................................. 60
5.2.3.
Variable interviniente ............................................................................. 60
5.2.4.
Unidad de análisis ................................................................................. 60
4.3. V.
Operacionalización de las variables .............................................................. 60
METODOLOGIA DE LA INVESTIGACION .......................................................... 62 5.1.
Método de investigación ............................................................................... 62
5.2.
Población y muestra ..................................................................................... 63
5.3.
Instrumentos de recolección de datos........................................................... 64
5.4.
Procedimiento de recolección de datos ........................................................ 65
VI. ADMINISTRACION DEL PROYECTO DE INVESTIGACION............................... 66 6.1.
Cronograma.................................................................................................. 66
6.2.
Presupuesto ................................................................................................. 67
6.2.1.
Materiales ................................................................................................. 67
6.2.2.
Recursos Humanos ................................................................................... 67
6.2.3.
Equipos ..................................................................................................... 67
6.2.4.
Resumen................................................................................................... 68
6.3.
Referencias bibliográficas ............................................................................. 69
ÍNDICE DE FIGURAS Figura 1.Organigrama ........................................................................................ 7 Figura 2. PROTOCOLO HTTP ......................................................................... 14 Figura 3. Arquitectura de un sitio Web básica .................................................. 19 Figura 4. Arquitectura de un sitio Web dinámico .............................................. 19 Figura 5. Fases RUP ........................................................................................ 36 Figura 6. : Origen UML ..................................................................................... 40 Figura 7. Representación de los Inventarios Activo y de seguridad. ................ 54
INDICES DE CUADROS Cuadro 1. Tramos de la CFB.............................................................................. 3 Cuadro 2. Orgánico de Cargos........................................................................... 8 Cuadro 3. Indicadores Variable Independiente ................................................ 60 Cuadro 4. Indicadores Variable Dependiente ................................................... 61 Cuadro 5. Distribución de la muestra ............................................................... 63 Cuadro 6. Instrumentos de recolección de datos ............................................. 64 Cuadro 7. Presupuesto de materiales .............................................................. 67 Cuadro 8. Presupuesto de recursos humanos ................................................. 67 Cuadro 9. Presupuesto de equipos .................................................................. 67 Cuadro 10. Resumen de presupuestos ............................................................ 68
ÍNDICE DE DIAGRAMAS Diagrama 1. Cronograma ................................................................................. 66
ÍNDICE DE ANEXOS Anexo 1. Matriz de consistencia ....................................................................... 75 Anexo 2. Cuestionario pre test aplicada a los operarios de la empresa. .......... 76 Anexo 3. Alpha de cronbach ............................................................................ 78
I.
DATOS GENERALES 1.1. Título de la investigación “Sistema WEB con tecnología JAVA EE 6 para los procesos administrativos de Abastecimiento y Almacen del Proyecto Especial Carretera Federico Basadre del Gobierno Regional de Ucayali”. 1.2. Autor o autores del Proyecto PANDURO VIA, Carlos Manuel. 1.3. Colaboradores Ing. Augusto Dickinson Pasquel Choy-Sanchez Mg. Luis Manuel Garcia Sanchez Sr. Jose Carlos Rojas De Souza CPC Germán Oliveira Gregorio Sr. Rainhold Chavez Marin Sr. Reynaldo Cardenas Tapullima 1.4. Fecha de presentación del proyecto Miércoles, 01 de agosto del 2012
1
II.
DISEÑO DE INVESTIGACION 2.1. Planteamiento del Problema En la actualidad existen organizaciones dedicadas a otorgar bienes y servicios, las cuales con el paso del tiempo tienden a adaptarse a la tecnología del presente siglo XXI, sean publicas o privadas, actualmente el sector publico acude a medios globalizados para mejorar los procesos que realiza cotidianamente. Estas organizaciones están sometidas a la exigencia del mercado, ya que deben brindar servicios de calidad para la población y la región en general. De este modo estas organizaciones dedicadas al sector público, requieren adaptarse a dicha tecnología, no solo en los ambientes de las maquinarias y equipos si no también en los procesos que se realiza diariamente. El proyecto especial Carretera Federico Basadre del Gobierno Regional de Ucayali es una entidad del estado, creada el 01 de enero del 1990 con la finalidad de mantener y rehabilitar la carretera Federico Basadre la cual tiene actualmente una longitud de 214 kilometros que abarca desde el Ovalo saenz peña (Km. 0+000) hasta la zona conocida como la divisoria (Km. 214+000) que viene hacer el limite entre Ucayali y Huanuco; la responsabilidad del Proyecto Carretera Federico Basadre abarca desde el Km. 05+000 hasta la progresiva 214+000; actualmente esta carretera necesita urgente rehabilitación por la falta de un mantenimiento adecuado que no tuvo en los últimos años como también al haber cumplido este con su periodo de vida útil.
2
TRAMOS DE LA CARRETERA FEDERICO BASADRE Cuadro 1. Tramos de la CFB TRAMOS A NIVEL DE
TRAMOS A NIVEL DE
PAVIMENTO
AFIRMADO
Km. 05+000 al Km. 43+500
Km. 43+500 al Km. 60+000
Km. 60+000 al Km. 75+000
Km. 75+000 al Km. 162+600
Km. 162+600 al Km. 180+000
Km. 180+000 al Km. 214+000
SITUACION EN LA QUE SE ENCONTRO
LA CARRETERA
FEDERICO BASADRE Al asumir la actual gestión la responsabilidad del mantenimiento de la carretera Federico Basadre, la encontró en un estado calamitoso estando mayormente todos los tramos a nivel de afirmado deteriorados confirmados mayormente por material limo arcilloso, ahuellamientos profundos, zonas acolchonadas, que dificultaba el normal transito vehicular ya que continuamente se producían atollamientos por el material fangoso y resbaladizo por la perdida de la capacidad de soporte de la plataforma de rodadura. SITUACION ACTUAL DE LA CARRETERA FEDERICO BASADRE La actual gestión conocedores del real problema se puso como política principal de trabajo logra la rehabilitación de la carretera Federico Basadre en el menor tiempo posible realizando para ello los tramites correspondientes a fin de poder lograr el financiamiento que permitiera atacar los tramos críticos que se encontraban a
lo largo del Km.
75+000 al Km. 148+000 de la C.F.B.
3
Debido a lo mencionado, el proyecto especial carretera Federico Basadre realiza labores a nivel táctico y estrategico en las instalaciones ubicadas en el Km. 3.500 de la CFB, instalaciones en las cuales se toman las decisiones que ponen en marcha al proyecto, por el cual es necesario adaptarse al mundo moderno, para que el funcionamiento sea adecuado y no existan problemas a nivel operativo. Visión Tener una vía transitable en forma permanente para crear las condiciones necesarias que permitan elevar el nivel de vida y el incremento de la producción agrícola, artesana, industrial y maderera cuyos productos tradicionales y no tradicionales con valor agregado puedan competir en el mercado nacional e internacional lo que traerá consigo crear nuevas fuentes de trabajo y conseguir un mejor bienestar para el desarrollo socioeconómico de la población urbana y rural de la Región de Ucayali. Misión La unidad ejecutora Carretera Federico Basadre tiene como misión ejecutar obras de infraestructura básica que permitan la rehabilitación y mantenimiento de la carretera a partir del Km. 60+000 al Km. 100+000 y Km. 204+500 al Km. 214+000 (la divisoria), y de caminos rurales y vecinales adyacentes a la Carretera Federico Basadre mediante suscripción de convenios, propiciando una aplicación racional de los recursos materiales, humanos y financieros.
4
Brindar servicios con el equipo de maquinaria pesada a fin de facilitar el desarrollo vial de las zonas rurales y urbanas que están comprendidas en la Región de Ucayali. OBJETIVOS ESTRATEGICOS 1. Lograr la rehabilitación y mantenimiento
de la carretera
Federico Basadre en forma permanente a fin de garantizar una normal transitabilidad durante todo el año y que ello nos permita dar seguridad al transito vehicular, a la población en general y al mismo tiempo nos permita reducir costos y horas de recorrido en el traslado de los productos que vienen y van de la región Ucayali. 2. Suscribir convenios institucionales con las municipalidades distritales de Campo Verde, Nueva Requena, Irazola, Padre Abad con aportes de cada municipalidad con su respectiva Maquinaria pesada y garantizar la rehabilitación y mantenimiento de los caminos rurales y vecinales adyacentes a la carretera Federico Basadre. 3. Tener operativo el equipo de maquinarias pesadas a cargo de la unidad ejecutora para poder estar al servicio del mantenimiento de los caminos rurales y de la carretera Federico Basadre y otros servicios que permita tener una infraestructura vial en buenas condiciones.
5
OBJETIVOS GENERALES 1. Lograr la rehabilitación y mantenimiento de la Carretera Federico Basadre en forma permanente a fin de garantizar una normal transitabilidad en los tramos del Km. 60+000 al Km. 110+000 y del Km. 204+500 al Km. 214+000, durante todo el año. 2. Lograr la rehabilitación y mantenimiento de los caminos rurales y vecinales adyacentes a la C.F.B. los mismos que están comprendidos en el ámbito jurisdiccional de los distritos de Campo Verde, Nueva Requena, Irazola y Aguaytia. 3. Mantener operativo el equipo de maquinaria pesada para facilitar el desarrollo vial de las vías de acceso rural y urbano que se encuentran dentro de la jurisdicción de la región de Ucayali.
6
Figura 1.Organigrama UNIDAD EJECUTORA Nº005 CARRETERA FEDERICO BASADRE
ORGANO DE DIRECCION
DIRECCION EJECUTIVA
ORGANO DE CONTROL OFICINA DE CONTROL INSTITUCIONAL SECRETARIA
ORGANOS DE SESORAMIENTO DIRECCION DE PLANIFICACION Y PRESUPUESTO
DIRECCION DE ASESORIA LEGAL
ORGANO DE APOYO
DIRECCION DE ADMINISTRACION Y FINANZAS
SECRETARIA UNIDAD DE PERSONAL
UNIDAD DE CONTABILIDAD UNIDAD DE TESORERIA
UNIDAD. ABASTECIMIENTO Y PATRIMONIO
ORGANOS DE LINEA
DIRECCION DE INFRAESTRUCTURA ESTUDIOS Y OBRAS
DIRECCION DEL POOL DE MAQUINARIAS
SECRETARIA
UNIDAD DE ESTUDIOS Y PROYECTOS
UNIDAD DE OBRAS
UNIDAD DE MANTENIMIENTO Y REPARACION
UNIDAD DE SUPERVISION, CONTROL Y OPERACION
7
UNIDAD DE ABASTECIMIENTO Es la Unidad orgánica de apoyo que tiene la responsabilidad de conducir, orientar, ejecutar, supervisar y controlar las acciones relacionadas con el sistema de Abastecimiento. Considerando la racionalidad, eficiencia y eficacia para el cumplimiento de los objetivos de la institución. Cuadro 2. Orgánico de Cargos N° de orden 01 02 03 04 05 06 07 08 TOTAL
Denominación de la Unidad Orgánica y cargos Clasificados
Cargos Estructurales
Total
Unidad de Abastecimiento Técnico Administrativo III Técnico Administrativo III Técnico Administrativo III Técnico Administrativo II. Técnico Administrativo II. Asistente Administrativo I
Jefe de Abastecimiento Técnico Adquisiciones Técnico Almacén Tec. Control Patrimonial Operador del SEACE Técnico en Archivos Asistente Administrativo
01 01 01 01 01 01 01
Auxiliar de Limpieza I.
Auxiliar limpieza
01 08
Tiene por finalidad dotar y suministrar de medios materiales y servicios de calidad y cantidad requerida al menor costo posible, mediante la ejecución del Plan Anual de Adquisiciones y Contrataciones y los procesos técnicos de abastecimiento. Comprende las aéreas de Adquisiciones, Almacén, Patrimonio, Archivo y Servicios Auxiliares. El abastecimiento o aprovisionamiento logístico, mediante el cual se provee a la institución de todo el material necesario para su funcionamiento. Área que requiere sistematizar los procesos y manejar la información de manera adecuada y segura.
8
2.1.1. Formulación del Problema Principal ¿En qué medida un Sistema WEB con tecnología JAVA EE 6 mejora los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali? Específicos 1. ¿Existen procesos administrativos en las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali? 2. ¿Se puede identificar la información necesaria de los procesos administrativos en las unidades de abastecimiento y almacén del proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali? 3. ¿Se puede aplicar RUP y UML para el análisis y diseño del Sistema WEB con tecnología JAVA EE 6 para los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali? 4. ¿Es posible determinar un grado correlación entre el Sistema WEB con tecnología JAVA EE 6 y los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali? 5. ¿Existe un adecuado modelo de Sistema Web con tecnología JAVA EE 6 para las unidades de abastecimiento y almacén en 9
el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali? 2.1.2. Justificación Teórica Un sistema WEB permitirá dar apoyo a tareas de las diferentes jerarquías de la empresa, como el análisis y el control de los mismos, además de permitir sistematizar y automatizar procesos en tiempo real, dado que un Sistema WEB puede ser ejecutado vía Internet e Intranet desde un navegador WEB, el cual es capaz de soportar el lenguaje de este sistema. Practica El Sistema planteado mejorará el control de los procesos dando satisfacción tanto a los colaboradores como a los proveedores de la empresa, así mismo, permitirá usar el sistema en forma distribuida. Metodológica Se pretende seguir los lineamientos del proceso de investigación científica la cual incluye el planteamiento de interrogantes, objetivos e hipótesis, a fin de establecer un conocimiento probable acerca de los factores que influyen en las principales operaciones de la empresa. Para el desarrollo del proyecto se utilizará el Proceso Unificado Racional, el cual es un proceso de desarrollo de software que junto con el Lenguaje Unificado de Modelado UML, constituye la
10
metodología
estándar
más
utilizada
para
el
análisis,
implementación y documentación de sistemas orientados a objetos. EL Proceso Racional Unificado permite seleccionar fácilmente el conjunto de componentes de proceso que se ajustan a las necesidades específicas del proyecto. Este conjunto de herramientas de desarrollo estará apoyado con la herramienta de Lenguaje Unificado de Modelado, que permitirá expresar de forma gráfica los procesos del sistema de manera que sea reutilizable para mantenimientos futuros. 2.1.3. Objetivos de la Investigación Objetivo General Desarrollar un Sistema Web con tecnología JAVA EE 6 para la mejora de los procesos administrativos de la unidad de abastecimiento y almacén del proyecto carretera Federico Basadre del Gobierno Regional de Ucayali. Objetivos Específicos 1. Identificar los procesos administrativos en las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali. 2. Identificar las necesidades de información de los
procesos
administrativos en las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali.
11
3. Aplicar RUP y UML para el análisis y diseño del Sistema WEB con tecnología JAVA EE 6 para los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali. 4. Determinar el grado de correlación entre el Sistema WEB con tecnología JAVA EE 6 y los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali. 5. Proponer un adecuado modelo de Sistema Web con tecnología JAVA EE 6 para las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali.
12
III.
MARCO TEORICO 3.1. Antecedentes del problema En los últimos años el uso de los Sistemas Web en las organizaciones dieron muchos resultados favorables para la mejor optimización de los procesos y políticas de negocio dentro de una organización; existen Sistemas que brindan reportes o informes que permiten plantearse diferentes alternativas para toma de decisiones, así también los que aceleran procesos tediosos.
(Luna Velasquez & Tominaga García,
2008) Estos sistemas Web pueden ser desarrollados sobre distintas plataformas como JAVA EE 6, .NET, PHP, etc. Pero a nivel nacional y regional no existen antecedentes de Sistemas Web desarrollados bajo la plataforma JAVA EE 6, por lo que esta investigación se presenta como un punto de inicio para futuras investigaciones. (Luna Velasquez & Tominaga García, 2008) A nivel mundial podemos mencionar algunos sistemas de almacen desarrollados con tecnología JAVA EE 6 y otros lenguajes, entre ellos tenemos:
AVALON. ERP Implantado en Perú, sistema integrado que cuenta con sistema de almacén, controlando el stock de los productos y generando ordenes de compra y/o servicio.
JEEM Ingeniería de producción. Controla los pedidos y facturas de lo que queda por entregar o facturar, programa pedidos y control stock. 13
3.2. Planteamiento teórico del problema 3.2.1. SISTEMA WEB Sistema web son aplicaciones que se ejecutan mediante un servidor WEB, pueden ser ejecutadas via Internet e Intranet desde un navegador WEB, el cual es capaz de soportar el lenguaje de este sistema. (Luna Velasquez & Tominaga García, 2008) En las aplicaciones WEB suelen distinguirse tres niveles (como en las arquitecturas cliente/servidor
de tres niveles): el nivel
superior que interactúa con el usuario (el cliente web, normalmente un navegador), el nivel inferior que proporciona los datos (la base de datos) y el nivel intermedio que procesa los datos (el servidor web). (Lujan Mora, 2007) Una aplicación web (web-base application) es un tipo especial de aplicación cliente/servidor, donde tanto el cliente (el navegador, explorador o visualizador) como el servidor (servidor web) e el protocolo mediante el que se comunican (HTTP) están estandarizados y no han de ser creados por el programador de aplicaciones. (Lujan Mora, 2007) Figura 2. PROTOCOLO HTTP
Fuente: (Lujan Mora, 2007) 14
Arquitectura Cliente/Servidor (Luna Velasquez & Tominaga García, 2008) Es una arquitectura descentralizada que permite a los usuarios finales obtener acceso a la información de forma transparente; es decir que al usuario le es indiferente de donde viene la información.
Clientes
y
servidores
son
entidades
lógicas
independientes que operan en conjunto a través de una red para realizar una tarea. Con la proliferación de ordenadores personales de bajo coste en el mercado, los recursos de sistemas de información existentes en cualquier organización se pueden distribuir entre ordenadores de diferentes tipos: ordenadores personales de gama baja, media y alta, estaciones de trabajo, mini ordenadores o incluso grandes ordenadores. El concepto de cliente/servidor proporciona una forma eficiente de utilizar todos estos recursos de máquina de tal forma que la seguridad y fiabilidad que proporcionan los entornos mainframe se traspasa a la red de área local. A esto hay que añadir la ventaja de la potencia y simplicidad de los ordenadores personales. La arquitectura cliente/servidor es un modelo para el desarrollo de sistemas de información en el que las transacciones se dividen en procesos independientes que cooperan entre sí para intercambiar información, servicios o recursos. Se denomina cliente al proceso que inicia el diálogo o solicita los recursos y servidor al proceso que responde a las solicitudes.
15
a)
Arquitectura Cliente Servidor 2 capas La arquitectura Cliente Servidor de dos capas ha sido la más utilizada con los lenguajes de cuarta generación. En este tipo de aplicaciones se desarrollan dos capas: Una capa llamada front-end (la interfaz de usuario), que normalmente está constituida de aplicaciones de escritorio que hacen llamadas a un servidor SQL. La otra capa se conoce como back-end, normalmente constituida por un servidor de base de datos con interfaz SQL y un sistema operativo multitarea.
b)
Arquitectura Cliente Servidor 3 capas Una arquitectura de tres capas provee adicionalmente una capa explícita para las reglas del negocio, que se sitúa entre el front-end y el back-end. Esta capa intermedia encapsula el modelo de negocio asociado con el sistema y lo separa tanto de la presentación como del manejo de la base de datos. Normalmente las reglas del negocio se encapsulan en componentes, en cada uno de los cuales radican servicios al usuario.
c)
Arquitectura Cliente Servidor n capas Los sistemas de n capas están formados por múltiples capas totalmente independientes y que por lo tanto presentan muy poco acoplamiento. Una división típica de un sistema de ncapas será la siguiente:
16
Capa
de
cliente:
Está
formada
por
los
componentes que se ejecutan en el cliente. Los tipos de clientes pueden ser muy variados (aplicaciones de escritorio, navegadores Web, dispositivos portátiles, etc). Según el cliente se distingue entre dos tipos de clientes: "gruesos" y "finos".
Los
clientes
gruesos
representan
aplicaciones que acceden directamente a la capa de lógica de negocio. Los clientes finos, suelen ser navegadores Web que acceden a la capa de presentación.
Capa de presentación: Se encarga de crear la presentación que renderizará la capa de cliente. Actúa como un puente entre la capa de cliente y la capa de lógica de negocio.
Capa de lógica de negocio: Esta capa contiene a todos nuestros objetos de negocio y servicios de procesado de la lógica de negocio. Suelen representar una vista objetual de la información presente en la base de datos. El servidor de aplicaciones se encarga de automatizar gran cantidad
de
tareas
como
la
gestión
de
transacciones, seguridad, redundancia, balanceo de carga, cachés, pools, etc.
17
Capa de integración: En esta capa suelen colocarse clases u objetos que automaticen el acceso a base de datos. No es una capa básica pero sí que suele utilizarse mucho.
Capa de datos: Representa los sistemas de información empresarial de nuestra organización. Suele
estar
formada
por
bases
de
datos,
servidores de sockets, sistemas legacy, etc. La capa de integración nos ayuda a acceder a estos sistemas
heterogéneos
de
la
forma
más
transparente posible. d)
Arquitectura Web La arquitectura de un sitio Web tiene tres componentes: un servidor Web, una conexión de red y uno o más clientes (Browsers). El
servidor
Web
distribuye
páginas
de
información
formateada a los clientes que la solicitan. Los requerimientos son hechos a través de una conexión de red y para ello se usa el protocolo HTTP. La arquitectura de las aplicaciones Web está evolucionando hacia modelos más avanzados que permitan cumplir los requisitos de las empresas que invierten en Internet. La aparición de clientes dinámicos y nuevos dispositivos, y el compromiso de nuevos servicios Web, están orientando las
18
tecnologías de desarrollo de aplicaciones para Internet en una nueva dirección. La información mostrada en las páginas esta típicamente almacenada en un archivo. Sin embargo muchas veces esta información esta almacenada en una base de datos y las páginas son creadas dinámicamente. Los sitios Web que usan este esquema son llamados sitios Web dinámicos. Figura 3. Arquitectura de un sitio Web básica
Web Server
Client Browser
Http
Di ri b st es ut
R
e
e nd
rs
Web Page Fuente: (Luna Velasquez & Tominaga García, 2008)
Figura 4. Arquitectura de un sitio Web dinámico
Fuente: (Luna Velasquez & Tominaga García, 2008)
19
3.2.1.1. SISTEMA Un sistema es un todo lo que está definido por la(s) función(es) que realiza como parte uno o varios sistemas más grandes, y consiste en dos o más partes esenciales, sin las cuales no puede llevar a cabo las funciones que lo definen. (Herrsch, 2008) Un sistema es un conjunto de componentes que interactúan entre sí para lograr un objetivo común. (Fernandez Alarcon, 2006) Conjunto de cosas que ordenadamente relacionadas entre sí, contribuyen a determinado objeto. (Arahal, Berenguel Soria, & Rodriguez Diaz, 2006) Un sistema es un objeto formado por un conjunto de cosas o partes, entre las cuales se establece alguna forma de relación que las articula en la unidad que es el sistema. (Arahal, Berenguel Soria, & Rodriguez Diaz, 2006) El término sistema se deriva del griego, que a su vez se deriva de synistemi que significa: conjugar, combinar, organizar. El término se encuentra ya en los diálogos de Platón con el significado de fuerza conjunta (en leyes) y de composición (en Filebus). (González Casanova & Roitman Rosenmann, 2006) Un sistema es una combinación de componentes que actúan juntos y realizan un objetivo determinado. Un sistema no está necesariamente limitado a los sistemas físicos. (Ogata, 2006)
20
TIPOS DE SISTEMAS Según su constitución: Físicos. Sistemas formados por objetos reales, que interactúan con todo su entorno en el cual es utilizado. Abstractos. Sistemas formados por ideas, que no se pueden ver ni tocar, algo que no existe en el medio, puede ser un software. Según su naturaleza: Cerrados. Sistema que no interactúa con el medio que los rodea, solo existen teóricamente. Abiertos. Sistemas que interactúan con el medio que los rodea, están en todos lados, desde el universo hasta una partícula microscópica. (Fernandez Alarcon, 2006) 3.2.1.2. WEB La Word Wide Web, más conocida como Web, es una de las áreas de internet que se ha desarrollado más rápidamente. Nació en 1989, como parte del proyecto del CERN de suiza y con el objetivo de mejorar el intercambio de información dentro de Internet, y vea en lo que se ha convertido actualmente… (Hobbs, 2007)
21
3.2.1.3. SISTEMA INFORMATICO Un sistema informático es el conjunto de hardware y software y el equipo humano que puede interactuar con esta asociación. (Martinez Perales, 2009) Es el conjunto formado por uno o varios ordenadores y sus periféricos (componentes, físicos o hardware), que ejecutan aplicaciones informáticas (componente lógico o software) y que son controlados por cierto personal especializado (componente humano). (Desonglez Corrales, 2006) Un conjunto de recursos interrelacionados dinámicamente y organizados
en
torno
al
objetivo
de
satisfacer
las
necesidades de información de una organización mediante la correcta gestión de datos. (Pablos Heredero C. , 2006) 3.2.1.4. INGENIERÍA DE SOFTWARE La ingeniería del software es una disciplina de la ingeniería que
comprende todos los aspectos de la
producción
de software desde las etapas iniciales de la especificación del sistema, hasta el mantenimiento de éste después de que se utiliza. (Sommerville, 2007) La ingeniería de software es el establecimiento y uso de principios robustos de la ingeniería a fin de obtener económicamente software que sea fiable y que funcione eficientemente sobre maquinas reales. (Pressman R. S., 2007)
22
SOFTWARE Los productos de software se pueden desarrollar para algún cliente
en
particular
o
para
un
mercado
general.
(Sommerville, 2007) Muchas personas asocian el término software con los programas de computadora. Sin embargo, yo prefiero una definición más amplia donde el software no solo son programas, sino todos los documentos asociados y la configuración de datos que se necesitan para hacer que estos programas operen de manera correcta. (Sommerville, 2007) El software del sistema es un conjunto de programas generalizados
que
administra
los
recursos
de
las
computadoras, como el procesador central, los enlaces de comunicaciones y los dispositivos periféricos. (Laundon & Laundon, 2004) Es la parte lógica de un sistema de cómputo. Se define como programática, ya que incluye todo lo no tangible de la computación, es decir, son todos los programas del sistema, de aplicación y los lenguajes de programación. (Orozco Guzman, Chavez a la Torre, & Chavez a la Torre, 2007) El software de computadora es el producto que diseñan y construyen
los ingenieros del software. Esto abarca
programas que se ejecutan dentro de una computadora de cualquier
tamaño
y
arquitectura,
documentos
que
23
comprenden formularios virtuales e impresos y datos que combinan
números
y
texto
y
también
incluyen
representaciones de información de audio, video e imágenes. (Pressman R. S., 2007) LENGUAJE DE PROGRAMACIÓN Un lenguaje de programación, proporciona métodos para modificar el flujo del programa permitiendo pasar varias veces por un conjunto de instrucciones. (Llanos Ferraris, 2010) Los
lenguajes
programadores
de
programación,
escriben
en
instrucciones
los
que para
los las
computadoras, también son parte del sistema de software. Las instrucciones se traducen a señales eléctricas que la computadora puede manipular y procesar. (Beskeen, Cram, Duffy, Friedrichsen, & Eisner Reding, 2009) Un lenguaje de programación es un sistema notacional para describir computaciones en una forma legible tanto para la maquina como para el ser humano. (Kenneth C, 2006) Un lenguaje de programación propone un motor de gestión de un tipo de organización. (Gabillaud, 2008) Los lenguajes de programación se clasifican en paradigmas, es decir se refiere a una manera de conceptuar y estructurar las tareas que realiza una computadora. (Jamrichoja Parsons J. , 2008)
24
PROGRAMACION ORIENTADA A OBJETOS El análisis y diseño orientado a objetos es un enfoque cuyo propósito es facilitar el desarrollo de sistemas que deben cambiar con rapidez en respuesta a entornos de negocios dinámicos. Es difícil trabajar con técnicas orientadas a objetos en situaciones
en
las
cuales
sistemas
de
información
complicados requieren de mantenimiento, adaptación y rediseño de manera continua. Los enfoques orientados a objetos utilizan el estándar de la industria para la modelación (UML, Unified Modeling Language), para analizar un sistema en forma de modelo de casos de uso. (Cerezo López, Peñalba Rodríguez, & Caballero Roldán, 2007) La
programación
orientada
a
objetos
difiere
de
la
programación tradicional de procedimientos que en la primera examina los objetos que conforman un sistema. Cada objeto es una representación en computadora de alguna cosa o suceso real. (Kendall, Kendall, & Nuñes Ramos, 2006) La programación orientada a objetos (POO) es una forma de programación en computadoras que surge en los años 70 pero tiene un desarrollo sorpréndete los años 90 al utilizarlo en las microcomputadoras. Se diferencia de la programación clásica en que las instrucciones hacen referencia a los elementos del entorno. Esos elementos representan “objetos”,
25
y todos los datos y todas las acciones que se hagan con ellos, están encapsuladas u ocultas en el objeto. (Condor I. , 2007) La POO combina la programación estructurada con conceptos nuevos con el objetivo de descomponer los datos del programa en objetos que simplifiquen su tratamiento. (Galindo Gómez & Rodríguez Corral, 2006) La programación orientada a objetos consiste en organizar el programa en un conjunto de objetos que interaccionen los unos con los otros, en donde cada objeto tiene su propio rol en las tareas que deba realizarse. (Aumaille B. , 2005) a) Características (Luna Velasquez & Tominaga García, 2008)
Abstracción. La abstracción consiste en captar las características esenciales de un objeto, así como su comportamiento. Por ejemplo, en los automóviles, ¿Qué características podemos abstraer de ellos? O lo que es lo mismo ¿Qué características semejantes tienen todos los automóviles? Todos tendrán una marca, un modelo, número de chasis, peso, llantas, puertas, ventanas, etc. Y en cuanto a su comportamiento todos los automóviles podrán acelerar, frenar, retroceder, etc. En los lenguajes de programación orientada a objetos, el concepto de Clase es la representación y el mecanismo por el cual se gestionan las abstracciones.
26
Encapsulamiento. El encapsulamiento consiste en unir en la Clase las características y comportamientos, esto es, las variables y métodos. Es tener todo esto es una sola entidad. En los lenguajes estructurados esto era imposible. La utilidad del encapsulamiento va por la facilidad para manejar la complejidad, ya que tendremos a las Clases como cajas negras donde sólo se conoce el comportamiento pero no los detalles internos, y esto es conveniente porque nos interesará será conocer qué hace la Clase pero no será necesario saber cómo lo hace.
Herencia. La herencia es uno de los conceptos más cruciales en la POO. La herencia básicamente consiste en que una clase puede heredar sus variables y métodos a varias subclases (la clase que hereda es llamada superclase o clase padre). Esto significa que una subclase, aparte de los atributos y métodos propios, tiene incorporados los atributos y métodos heredados de la superclase. De esta manera se crea una jerarquía de herencia.
Polimorfismo. Es la capacidad de que diferentes objetos reaccionen de distinta forma a un mismo mensaje. Es la capacidad de referirse a objetos de clases distintas en una jerarquía utilizando el mismo
27
elemento de programa (método) para realizar la misma operación, pero de manera diferente. OBJETO Es una instancia que responde a mensajes activando un método. (Sabana Mendoza, 2006) Un objeto es una instancia u ocurrencia concreta de la abstracción que representa la clase. (Matsukawa Maeda, 2006) Un objeto es una entidad prevista de un conjunto de propiedades o atributos (datos) de un comportamiento o funcionalidad (métodos) y de sus posibles relaciones con otros objetos. El concepto de objeto tiene un concepto equivalente al objeto de nuestro mundo real. En nuestro entorno siempre estamos en constante relación con objetos: los creamos, los usamos, los modificamos cambiando sus atributos, características o propiedades, los relacionamos con otros objetos, etc. Por ejemplo tenemos el objeto Automóvil.
Un automóvil es un
objeto bastante pesado que tiene un conjunto de propiedades como
su
identificación
(placa),
color,
marca,
modelo,
accesorios, etc. Tiene también un conjunto de funciones como la desplazarse, detenerse, ponerse en marcha. Podemos cambiarle de color, aumentar o quitar accesorios; es decir podemos modificar sus propiedades. Tienen de la capacidad de ser activos para poner en acción sus funcionalidades; es
28
decir, disponemos de un procedimiento para ponerlo en marcha, avanzar en retroceso, detenerlo, voltear a la izquierda o derecha; es decir, mediante un conjunto de métodos podemos darle uso al objeto automóvil. (Condor I. , 2007) Un objeto básico es una «unidad de texto» creado por un ingeniero de software durante el análisis, diseño, codificación o pruebas. Por ejemplo, un objeto básico podría ser una sección de una especificación de requisitos, un listado fuente de un módulo o un conjunto de casos prueba que se usan para ejercitar el código. Un objeto compuesto es una colección de objetos básicos y de otros objetos compuestos. (Pressman R. S., 2007) Un objeto pertenece a un tipo específico (que aquí se llama clase) y tendrá una serie de operaciones (o métodos) definidas sobre todos los objetos de esa clase. (Galindo Gómez & Rodríguez Corral, 2006) ORIENTADO A OBJETOS La orientación a objetos proporciona una solución que conduce a un universo de objetos, que interactúan entre sí para cumplir los diferentes requerimientos. (Sabana Mendoza, 2006)
29
El modelo orientado a objetos se basa en encapsular código y datos en una unidad lógica, llamada objeto. (Alarcon Herrera & Crovetto Huerta, 2006) Es una forma de programación en computadoras que surge los años 70 pero tiene un desarrollo sorprendente en los años 90 al utilizarlo en microcomputadores. Se deferencia de la progresión clásica o estructurada en que las instrucciones hacen referencia a los elementos del entorno. Esos momentos representan “objetos”; y todos los datos y acciones que se hagan con ellos o sobre ellos, están encapsuladas u ocultas en el objeto. “Un objeto es una entidad provista de un conjunto
de
propiedades
o
atributos
(datos),
de
un
comportamiento o funcionalidad (métodos) y de sus posibles relaciones con otros objetos”. (Condor I. , 2007) 3.2.1.5. ADMINISTRADOR DE BASE DE DATOS Es una aplicación que permite a los usuarios definir, crear, y mantener la base de datos, y proporciona acceso controlado a la misma. (Alarcon Herrera & Crovetto Huerta, 2006) El SGBD es la aplicación que interacciona con los usuarios de los programas de aplicación y la base de datos. (Pantigoso Silva, 2009) DBMS es una colección de numerosas rutinas de software interrelacionadas, cada una de las cuales es responsable de una tarea específica. (Pantigoso Silva, 2009)
30
Son un tipo de software muy específico, dedicado a servir de interfaz entre las bases de datos y las aplicaciones que la utilizan, consiguiendo, que el acceso a los datos se realice de una forma más eficiente, más fácil de implementar, sobretodo más seguro. (Sabana Mendoza, 2006) BASE DE DATOS Una base de datos es un conjunto de datos almacenados entre los que existen relaciones lógicas y ha sido diseñada para satisfacer los requerimientos de información de una empresa u organización. (Pantigoso Silva, 2009) La base de datos es un gran almacén de datos que se define una sola vez y que se utiliza al mismo tiempo por muchos departamentos y usuarios. (Pantigoso Silva, 2009) Es una colección de archivos interrelacionados, son creados con un DBMS. El contenido de una base de datos engloba a la información concerniente (almacenadas en archivos) de una organización, de tal manera que los datos estén disponibles para los usuarios, una finalidad de la base de datos es eliminar la redundancia o al menos minimizarla. (Pantigoso Silva, 2009) Una base de datos es una colección de datos estructurados según un modelo que refleje las relaciones y restricciones existentes en el mundo real. (Sabana Mendoza, 2006) Una base de datos es un conjunto de datos almacenados entre los que existen relaciones lógicas y ha sido diseñada para
31
satisfacer los requerimientos de información de una empresa u organización. (Alarcon Herrera & Crovetto Huerta, 2006) DATO Es una información que refleja el valor de una característica de un objeto real, sea concreto o abstracto, o imaginario. Debe permanecer en el tiempo, debe tener un significado y debe ser manipulable mediante operadores. (Sabana Mendoza, 2006) Conjunto de caracteres con algún significado, pueden ser numéricos, alfabéticos, o alfanuméricos. (Pantigoso Silva, 2009) Es un concepto básico elemental que es susceptible de ser captado por la mente, es decir, son los hechos, la materia prima de la información. (Orozco Guzman, Chavez a la Torre, & Chavez a la Torre, 2007) Los datos consisten en hechos y cifras que tienen de algún modo de existencia propia e independiente y que tiene poco significado para el usuario. Una característica más significativa de los datos es que por ellos mismos no indican ni son relevantes o irrelevantes, ya que es necesario definir un contexto en donde establecerla. (Fernandez Alarcon, 2006) 3.2.1.6. PROCESO UNIFICADO DE RATIONAL Concepto El Proceso Unificado Rational es un proceso de Ingeniería de software. Este provee un enfoque disciplinado de tareas y responsabilidades dentro de una organización para su desarrollo. Su meta es asegurar la producción de software de una calidad
32
superior que satisfaga las necesidades de sus usuarios finales, dentro de una administración y cronograma establecido. El Proceso Unificado Rational realiza la productividad del equipo, proporcionándole el acceso fácil a cada miembro del equipo que está desarrollando el sistema, a una base de conocimientos con las pautas, plantillas y guías de la herramienta para toda actividad crítica de desarrollo. Teniendo todos los miembros del equipo el acceso a la misma base de conocimiento, no importa si se trabaja con los requerimientos, diseño, prueba, administración del proyecto, o administración de la configuración, se asegura que todos los miembros del equipo comparten un lenguaje común, un proceso común y una visión de cómo se desarrollará el software. Las actividades del Proceso Unificado Rational crean y mantienen modelos más que enfocarse en cantidades de producción de documentos en general. El Proceso Unificado Rational enfatiza el desarrollo y mantenimiento de modelos, para una representación rica en semántica para el desarrollo del software del sistema. Características a) Guiado/Manejado por casos de uso: La razón de ser de un sistema software es servir a usuarios ya sean humanos u otros sistemas; un caso de uso es una facilidad que el software debe proveer a sus usuarios. Los casos de uso reemplazan la antigua especificación funcional tradicional y constituyen la guía fundamental establecida para las actividades a realizar
33
durante todo el proceso de desarrollo incluyendo el diseño, la implementación y las pruebas del sistema. b) Centrado en arquitectura: La arquitectura involucra los elementos más significativos del sistema y está influenciada entre otros por plataformas software, sistemas operativos, manejadores de bases de datos, protocolos, consideraciones de desarrollo como sistemas heredados y requerimientos no funcionales. Los casos de uso guían el desarrollo de la arquitectura y la arquitectura se realimenta en los casos de uso, los dos juntos permiten conceptualizar, gestionar y desarrollar adecuadamente el software. c) Iterativo e Incremental: Para hacer más manejable un proyecto se recomienda dividirlo en ciclos. Para cada ciclo se establecen fases de referencia, cada una de las cuales debe ser
considerada
como
un
mini
proyecto
cuyo
núcleo
fundamental está constituido por una o más iteraciones de las actividades principales básicas de cualquier proceso de desarrollo. d) Desarrollo basado en componentes: La creación de sistemas intensivos en software requiere dividir el sistema en componentes con interfaces bien definidas, que posteriormente serán ensamblados para generar el sistema. Esta característica en un proceso de desarrollo permite que el sistema se vaya creando a medida que se obtienen o que se desarrollen y maduran sus componentes.
34
e) Utilización de un único lenguaje de modelamiento: UML es adoptado como único lenguaje de modelamiento para el desarrollo de todos los modelos. f) Proceso Integrado: Se establece una estructura que abarque los ciclos, fases, flujos de trabajo, mitigación de riesgos, control de calidad, gestión del proyecto y control de configuración; el proceso unificado establece una estructura que integra todas estas facetas. Además esta estructura cubre a los vendedores y
desarrolladores
de
herramientas
para
soportar
la
automatización del proceso, soportar flujos individuales de trabajo, para construir los diferentes modelos e integrar el trabajo a través del ciclo de vida y a través de todos los modelos. Fases en el Ciclo de Desarrollo Este proceso de desarrollo considera que cualquier desarrollo de un sistema software debe pasar por cuatro fases que se describirán a continuación, la figura
muestra las fases de
desarrollo y los diversos flujos de trabajo involucrados dentro de cada fase con una representación gráfica en cuál de los flujos se hace mayor énfasis según la fase, cabe destacar el flujo de trabajo concerniente al negocio.
35
Figura 5. Fases RUP
Fuente: (Luna Velasquez & Tominaga García, 2008) FASE DE INICIACIÓN Esta fase es el punto de inicio del proyecto y consiste básicamente en recoger información y desarrollar concepto del proyecto para tener una visión global del mismo. En esta fase se analiza que recursos se requieren para llevar a cabo el proyecto, y su factibilidad. Al finalizar el estudio preliminar se tomará la decisión de iniciar o no el proyecto. (Matsukawa Maeda, 2006) Su objetivo principal es establecer los objetivos para el ciclo de vida del producto. En esta fase se establece el caso del negocio con el fin de delimitar el alcance del sistema, saber qué se cubrirá y delimitar el alcance del proyecto. (Luna Velasquez & Tominaga García, 2008) FASE DE ELABORACIÓN Esta fase está determinada por el análisis, planificación y elaboración de la arquitectura del sistema. Lo que se busca es
36
determinar lo que el sistema debe hacer; es decir, especificar el comportamiento del sistema. (Matsukawa Maeda, 2006) Su objetivo principal es plantear la arquitectura para el ciclo de vida del producto. En esta fase se realiza la captura de la mayor parte de los requerimientos funcionales, manejando los riesgos que interfieran con los objetivos del sistema, acumulando la información necesaria para el plan de construcción y obteniendo suficiente información para hacer realizable el caso del negocio. (Luna Velasquez & Tominaga García, 2008) FASE DE CONSTRUCCIÓN En esta fase el sistema es construido siguiendo las etapas del proceso de desarrollo de software: análisis, diseño, codificación y prueba. (Matsukawa Maeda, 2006) Su objetivo principal es alcanzar la capacidad operacional del producto. En esta fase a través de sucesivas iteraciones e incrementos se desarrolla un producto software, listo para operar, éste es frecuentemente llamado versión beta. (Luna Velasquez & Tominaga García, 2008) FASE DE TRANSICIÓN Esta fase se inicia cuando el sistema se ha completado y está listo para ser entregado a los usuarios. Incluye tareas como: ejecución de la prueba de aceptación final, finalización de la documentación del sistema, y capacitación de los usuarios. (Matsukawa Maeda, 2006)
37
Su objetivo principal es realizar la entrega del producto operando, una vez realizadas las pruebas de aceptación por un grupo especial de usuarios y habiendo efectuado los ajustes y correcciones que sean requeridos. (Luna Velasquez & Tominaga García, 2008) 3.2.1.7. LENGUAJE DE MODELO UNIFICADO El UML (Unified Modeling Language o Lenguaje Unificado de Modelado) es un lenguaje gráfico para la especificación, visualización, construcción y documentación de piezas de información usadas o producidas durante el desarrollo de software. (Liza Avila, 2007) El Lenguaje Unificado de Modelado (UML), es un lenguaje para representar modelos de sistemas especialmente intensivos en el uso de software. (Liza Avila, 2007) En todas las disciplinas de la Ingeniería se hace evidente la importancia de los modelos ya que describen el aspecto y la conducta de "algo". Ese "algo" puede existir, estar en un estado de desarrollo o estar, todavía, en un estado de planeación. Es en este momento cuando los diseñadores del modelo deben investigar los requerimientos del producto terminado y dichos requerimientos pueden incluir áreas tales como funcionalidad, performance y confiabilidad. Además, a menudo, el modelo es dividido en un número de vistas, cada una de las cuales describe un aspecto específico del producto o sistema en construcción.
38
El modelado sirve no solamente para los grandes sistemas, aun en aplicaciones de pequeño tamaño se obtienen beneficios de modelado, sin embargo es un hecho que entre más grande y más complejo es el sistema, más importante es el papel de que juega el modelado por una simple razón: "El hombre hace modelos de sistemas complejos porque no puede entenderlos en su totalidad". UML es una técnica para la especificación sistemas en todas sus fases. Nació en 1994 cubriendo los aspectos principales de todos los métodos de diseño antecesores y, precisamente, los padres de UML son Grady Booch, autor del método Booch; James Rumbaugh, autor del método OMT e Ivar Jacobson, autor de los métodos OOSE y Objectory. La versión 1.0 de UML fue liberada en Enero de 1997 y ha sido utilizado con éxito en sistemas construidos para toda clase de industrias alrededor del mundo: hospitales, bancos, comunicaciones, aeronáutica, finanzas, etc. UML es un Lenguaje, que proporciona un vocabulario y las reglas para combinar palabras de ese vocabulario con el objetivo de posibilitar la comunicación. UML es un Lenguaje para Visualizar, es algo más que un simple montón de símbolos gráficos; detrás de cada símbolo en la notación UML hay una semántica bien definida. De esta manera, un desarrollador puede escribir un modelo en UML y otro desarrollador o incluso otra herramienta, puede interpretar este modelo sin ambigüedad.
39
UML es un Lenguaje para especificar, significa construir modelos precisos y completos. UML es un Lenguaje para construir, sus modelos pueden conectarse de forma directa a una gran variedad de lenguajes de programación. UML es un lenguaje para documentar, una organización produce toda clase de artefactos que incluyen requisitos, arquitectura, diseño, código fuente, planificación de proyectos, pruebas, prototipos y versiones. (Luna Velasquez & Tominaga García, 2008) Figura 6. : Origen UML
Fuente: (Luna Velasquez & Tominaga García, 2008)
Los principales beneficios de UML son:
Mejores tiempos totales de desarrollo (de 50 % o más).
Modelar sistemas (y no sólo de software) utilizando conceptos orientados a objetos.
Establecer conceptos y artefactos ejecutables.
40
Encaminar el desarrollo del escalamiento en sistemas complejos de misión crítica.
Crear un lenguaje de modelado utilizado tanto por humanos como por máquinas.
Mejor soporte a la planeación y al control de proyectos.
Alta reutilización y minimización de costos.
UML se puede usar para modelar distintos tipos de sistemas: sistemas de software, sistemas de hardware, y organizaciones del mundo real. UML ofrece nueve diagramas en los cuales modelar sistemas.
Diagramas de Casos de Uso para modelar los procesos 'business'.
Diagramas de Secuencia para modelar el paso de mensajes entre objetos.
Diagramas de Colaboración para modelar interacciones entre objetos.
Diagramas de Estado para modelar el comportamiento de los objetos en el sistema.
Diagramas de Actividad para modelar el comportamiento de los Casos de Uso, objetos u operaciones.
Diagramas de Clases para modelar la estructura estática de las clases en el sistema.
Diagramas de Objetos para modelar la estructura estática de los objetos en el sistema.
Diagramas de Componentes para modelar componentes.
41
Diagramas de Implementación para modelar la distribución del sistema.
ACTORES Un actor es un conjunto uniforme de personas, sistemas o maquinas externos al sistema que estamos modelando, que cumplen un rol determinado y que interactúan con él. (Liza Avila, 2007) Un actor es un rol que el usuario juega con respecto al sistema. (Liza Avila, 2007) CASOS DE USO Un caso de uso (Use Case) es una secuencia de acciones realizadas por el sistema que producen un resultado observable y valioso para alguien en particular. (Liza Avila, 2007) Los casos de uso son acciones que debe realizar el sistema, es por ello que debe nombrárseles mediante un verbo seguido con el principal objeto que es afectado por la acción. (Liza Avila, 2007) CLASE Una clase es un conjunto de cosas que tienen los mismos atributos y comportamiento. (Liza Avila, 2007) Una clase es un conjunto de objetos que comparten los mismos atributos, operaciones, relaciones y semántica. (Liza Avila, 2007) Una clase es un conjunto de datos (variables o campos) y de las funciones (los métodos) utilizadas para acceder a estos datos. (Matsukawa Maeda, 2006)
42
3.2.2. TECNOLOGÍA JAVA EE 6 a) Lenguaje de Programación Java (9) La tecnología Java consta de un lenguaje de programación y una plataforma. Java es un lenguaje de programación de alto nivel que tiene las siguientes características: Orientado a objetos Distribuido y dinámico Robusto Seguro Multitarea Portable La mayoría de los lenguajes de programación se caracterizan por ser interpretados o compilados, lo que determina la manera en como serán ejecutados en una computadora. Java tiene la característica de ser al mismo tiempo compilado e interpretado. El compilador es el encargado de convertir el código fuente de un programa en un código intermedio llamado bytecode que es independiente de la plataforma en que se trabaje y que es ejecutado por el intérprete de Java que forma parte de la Máquina Virtual de Java.
43
Gráfico 1. Compilación y ejecución de programas en Java
Fuente: Introducción al Lenguaje Java (Aumaille B. , 2005) Entre las características más importantes del lenguaje se encuentra la robustez. Justamente por la forma en que está diseñado, Java no permite el manejo directo del hardware ni de la memoria (inclusive no permite modificar valores de punteros, por ejemplo). El
intérprete
siempre
tiene
el
control.
El
compilador
es
suficientemente inteligente como para no permitir cosas que podrían traer problemas, como usar variables sin inicializarlas, modificar valores de punteros directamente, acceder a métodos o variables en forma incorrecta, etc. Además, Java implementa mecanismos de seguridad que limitan el acceso a recursos de las máquinas donde se ejecuta, especialmente en el caso de los Applets (que son aplicaciones que se cargan desde un servidor y se ejecutan en el cliente). También está diseñado específicamente para trabajar sobre una red, de modo que incorpora objetos que permiten acceder a archivos en forma remota (vía URL por ejemplo). Además, con el JDK (Java Development Kit) vienen
44
incorporadas muchas herramientas, entre ellas un generador automático de documentación. b) Java Servlets Los servlets son aplicaciones Java que se ejecutan en el servidor bajo
una
arquitectura
cliente-servidor-Web,
extendiendo
las
capacidades del servidor Web. El servidor donde se ejecutan los servlets debe contar con una máquina virtual de Java (JVM). Los servlets responden a eventos generados en las estaciones clientes desde requerimientos HTML, y permiten construir una respuesta dinámica a dichos requerimientos. Permiten además retornar una respuesta dinámica a los requerimientos, estos constituyen una mejor alternativa frente a otras tecnologías como los CGI´s, aunque ambos
permiten
generar
respuestas
dinámicas
para
los
requerimientos de los clientes, los servlets presentan ventajas sobre los CGI’s, como por ejemplo la portabilidad e independencia de la plataforma. Los servlets al ser componentes escritos en Java, tienen acceso al conjunto completo de API’s Java que les permiten interactuar con diferentes tipos de interfaces, como por ejemplo aquellas que acceden a Bases de Datos. Además pueden encontrarse en muchos tipos de servidores diferentes pues el API definido para los servlets, al igual que las demás API’s Java, no dependen del ambiente del servidor o de los protocolos utilizados. Un servlet (Condor I. , 2007) es cargado una sola vez en el servidor Web e invocado en cada requerimiento. Esto se debe a que los 45
servlets son programas multihilos (multithread). Los servlets pueden entonces mantener recursos del sistema como conexiones a Bases de Datos. c) Java Server Pages JavaServer Pages (JSP), en el campo de la Informática, es una tecnología para crear aplicaciones Web. Es un desarrollo de la compañía Sun Microsystems, y su funcionamiento se basa en scripts, que utilizan una variante del lenguaje java. JSP, es una tecnología Java que permite a los programadores generar contenido dinámico para Web, en forma de documentos HTML, XML, o de otro tipo. Los JSP's permite al código Java y a algunas acciones predefinidas ser incrustadas en el contenido estático del documento Web. En los JSP, se escribe el texto que va a ser devuelto en la salida (normalmente código HTML) incluyendo código java dentro de él para poder modificar o generar contenido dinámicamente. El código java se incluye dentro de las marcas de etiqueta <% y %>, a esto se le denomina scriptlet. d) Java Beans Un JavaBean o Bean es un componente hecho en software que se puede reutilizar y que puede ser manipulado visualmente por una herramienta de programación en lenguaje Java. Para ello, se define un interfaz para el momento del diseño (design time) que permite a la herramienta de programación o IDE, 46
interrogar (query) al componente y conocer las propiedades (properties) que define y los tipos de sucesos (events) que puede generar en respuesta a diversas acciones. e) Técnica Ajax Ajax (Asynchronous JavaScript And XML) no es una tecnología. Es realmente muchas tecnologías, cada una floreciendo por su propio mérito, uniéndose en poderosas nuevas formas. AJAX incorpora:
presentación basada en estándares usando XHTML y CSS;
exhibición e interacción dinámicas usando el Document Object Model ;
Intercambio y manipulación de datos usando XML and XSLT;
Recuperación de datos asincrónica usando XMLHttpRequest;
y JavaScript poniendo todo junto.
El modelo clásico de aplicaciones Web funciona de esta forma: La mayoría de las acciones del usuario en la interfaz disparan un requerimiento HTTP al servidor Web. El servidor efectúa un proceso (recopila información, procesa números, hablando con varios sistemas propietarios), y le devuelve una página HTML al cliente.
47
Gráfico 2. El modelo tradicional para las aplicaciones Web comparado con el modelo de AJAX
Fuente: Ajax: Una nueva aproximación a las aplicaciones Web (12) Una aplicación AJAX elimina la naturaleza “arrancar-frenararrancar-frenar” de la interacción en la Web introduciendo un intermediario -un motor AJAX- entre el usuario y el servidor. Parecería que sumar una capa a la aplicación la haría menos reactiva, pero la verdad es lo contrario. El motor AJAX permite que la interacción del usuario con la aplicación suceda asincrónicamente (independientemente de la comunicación con el servidor). Así el usuario nunca estará mirando una ventana en blanco del navegador y un icono de reloj de arena esperando a que el servidor haga algo.
48
Gráfico 3. La interacción sincrónica de una aplicación comparada con el patrón asincrónico de Ajax
Fuente: Ajax: Una nueva aproximación a las aplicaciones Web (12) Cada acción de un usuario que normalmente generaría un requerimiento HTTP toma la forma de un llamado JavaScript al motor AJAX en vez de ese requerimiento. Cualquier respuesta a una acción del usuario que no requiera un viaje de vuelta al servidor (como una simple validación de datos, edición de datos en memoria, incluso algo de navegación) es manejado por su cuenta. Si el motor necesita algo del servidor para responder (sea enviando datos para procesar, cargar código adicional, o recuperando nuevos datos) hace esos pedidos asincrónicamente, usualmente usando XML, sin frenar la interacción del usuario con la aplicación. 49
f)
Patrones de Diseño JAVA EE 6 Un patrón de diseño es una abstracción de una solución en un nivel alto. Los patrones solucionan problemas que existen en muchos niveles de abstracción. Hay patrones que abarcan las distintas etapas del desarrollo; desde el análisis hasta el diseño y desde la arquitectura hasta la implementación. Muchos diseñadores y arquitectos de software han definido el término de patrón de diseño de varias formas que corresponden al ámbito a la cual se aplican los patrones. Luego, se dividió los patrones en diferentes categorías de acuerdo a su uso. Los diseñadores de software extendieron la idea de patrones de diseño al proceso de desarrollo de software. Debido a las características que proporcionaron los lenguajes orientados a objetos (como herencia, abstracción y encapsulamiento) les permitieron relacionar entidades de los lenguajes de programación a entidades del mundo real fácilmente, los diseñadores empezaron a aplicar esas características para crear soluciones comunes y reutilizables para problemas frecuentes que exhibían patrones similares. Con la aparición del JAVA EE 6, todo un nuevo catálogo de patrones de diseño apareció. Desde que JAVA EE 6 es una arquitectura por si misma que involucra otras arquitecturas, incluyendo servlets, JavaServer Pages, Enterprise JavaBeans, y más, merece su propio conjunto de patrones específicos para diferentes aplicaciones empresariales. Veamos el catalogo de
50
patrones en 3 capas: Presentación, Negocios e Integración. (Dewit, 2008) 3.2.3. PROCESOS ADMINISTRATIVOS Procesos de llevar a cabo las cosas a través y con la gente operando en grupos organizados. (Rodríguez Valencia J. , 2006) Conjunto de fases o etapas sucesivas a través de las cuales se hace efectiva la administración, mismas que se interrelacionan y formal un proceso integral. (Rodríguez Valencia J. , 2006) Una serie de partes separadas, o funciones que constituyen un proceso total. (Rodríguez Valencia J. , 2006) Las funciones fundamentales (planeación, organización, ejecución y control) son los medios por los cuales administra el gerente. (Rodríguez Valencia J. , 2006) 3.2.3.1. PROCESOS Un proceso implica el uso de los recursos de una organización, para obtener algo de valor. Los procesos sostienen toda actividad de trabajo y se presentan en todas las funciones de una organización. (Krajewski & Ritzman, 2005) Conjunto
actividades
mutuamente
relacionadas
o
que
interactúan, las cuales transforman elementos de entrada en resultados. (Perez Fernandez De Velasco, 2009) Un proceso define quien hace que, cuando y como para alcanzar cierto objetivo. En general, el éxito las empresas u
51
organizaciones depende en gran medida de la definición y seguimiento adecuados de sus procesos. (Weitzenfeld, 2005) Un proceso es básicamente un programa en ejecución. La información relativa a un proceso se almacena en una tabla del sistema llamada tabla de procesos, la cual consta de una lista ligada de estructuras con información sobre cada uno de los procesos existentes. (Quero Catalinas, 2006) 3.2.3.2. ADMINISTRATIVO Abarca toda la organización al relacionarla con su entorno. Consiste en aplicar en la práctica la acción de planear, organizar, integrar recursos, dirigir, controlar y coordinar para alcanzar los objetivos organizacionales. (Rodríguez Valencia J. , 2006) 3.2.4. CONTROL DE INVENTARIO El propósito del control de inventarios es mantener suficiente mercancía para cumplir adecuada y oportunamente los pedidos de los clientes. El nivel de inventario se relaciona con el movimiento y el bodegaje de la mercancía. El análisis de control de inventarios procura equilibrar el costo de mantener inventarios y el costo de pedir inventarios. (Cyr & Gray, 2006) El control de inventario se refiere a obtener un equilibrio entre dos objetos opuestos: 1) minimizar el costo de mantener un inventario y 2) maximizar el servicio de los clientes. Los costos de inventario
52
incluyen los costos de inversión, de almacenamiento y de obsolencias o daños posibles. (Groover, 2005) La administración de inventario requiere establecer un sistema de control de inventario. Los sistemas abarcan desde
los más
sencillos hasta los extremadamente complejos según el tamaño de la compañía y la naturaleza de su inventario. (Brigham & Houston F., 2005) 3.2.4.1. INVENTARIO Es el conjunto de artículos almacenados en espera de una demanda para su utilización. (Arbones & Malisani, 2004) La demanda puede proceder: Del mercado (Inventario de artículos terminados). Del interior de la empresa (Inventario de materias primas o productos en curso de fabricación). La demanda puede ser determinista o probabilística. Demanda determinista. Entendemos que la cantidad perdida en los diversos periodos es conocida con certidumbre. Además, la demanda en igual periodo de tiempo puede ser constante o variable, estas dos circunstancias son conocidas como demanda estática y demanda dinámica. Demanda probabilística. Ocurre cuando la demanda en un cierto periodo de tiempo es incierta (con incertidumbre) pero puede ser expresada por una distribución de probabilidad. Igual que la anterior, la demanda puede ser estática o dinámica.
53
Figura 7. Representación de los Inventarios Activo y de seguridad.
Fuente: (Arbones & Malisani, 2004) Inventario activo. Es el formado para hacer frente a las necesidades normales de la empresa y es el que se renueva y conserva en cada periodo. Inventario de Seguridad. Es el formado en previsión del posible agotamiento del inventario activo. Funciones del Inventario La función del inventario es adecuar un flujo de productos a un flujo de utilización o empleo que tiene una frecuencia diferente. Existen cinco clases básicas de inventario, definidas por las funciones: Tránsito. Son los originados por el desplazamiento necesario de los materiales de un lugar a otro. Los productos fabricados deben ser distribuidos a clientes y a depósitos regionales con demandas variables, por lo tanto, para poder atender estas demandas sin interrupción, deberá disponerse de inventarios, que suelen adquirir volúmenes importantes.
54
Tamaño del lote. Por razones de costos y de practicidad (preparación de máquinas, transporte) los artículos y sus componentes se producen por lotes y como suele ser imposible fabricar artículos y al mismo tiempo venderlos, se debe producir cantidades mayores que la demanda, lo que da asi origen al inventario por tamaño de lote. Seguridad. Como generalmente las provisiones de venta no se cumplen exactamente, para proteger las fluctuaciones de las demandas la empresa dispone de un inventario P de seguridad para absorber las fluctuaciones y satisfacer así puntualmente los requerimientos. Especulación. Estos inventarios se crean cuando la empresa prevé un incremento en los precios de las materias primas o en el valor de sus productos. Estacionalidad. En el caso de fabricación de productos con gran demanda en determinadas épocas del año, como por ejemplo ciertos productos textiles, de turismo, etc, que en producción normal la empresa no podrá satisfacer, entonces se hace necesario producir para inventario, quien será el encargado de cumplir con los pedidos estacionales. (Arbones & Malisani, 2004) Método de línea roja. Procedimiento de control de inventario en que se traza una línea roja alrededor de una caja para indicar el nivel del punto de reórden. (Brigham & Houston F., 2005)
55
Método de las dos cajas. Procedimiento de control de inventario en que se coloca un pedido al quedar vacía una de las dos cajas guardadas en almacén. (Brigham & Houston F., 2005) 3.3. Definición de Términos Básicos Abastecimiento.
Actividad
económica
encaminada
a
cubrir las
necesidades de consumo de una unidad económica en tiempo, forma y calidad, como puede ser una familia, organización, institución, etc. Arquitectura.
Un
entramado
de
componentes
funcionales
que
aprovechando diferentes estándares, convenciones, reglas y procesos, permite integrar una amplia gama de productos y servicios informáticos. Atributo. Es una característica de interés o un hecho sobre una entidad o sobre una relación. (Alarcon Herrera & Crovetto Huerta, 2006) Certidumbre. Firme adhesión de la mente a algo conocible, sin temor de errar. Cliente. Persona que utiliza con asiduidad los servicios de un profesional o Empresa. Unidad de organización dedicada a actividades industriales, mercantiles o de prestación de servicios con fines lucrativos. Código. Combinación de signos que tiene un determinado valor dentro de un sistema establecido. Componentes. Que compone o entra en la composición de un todo. Confiabilidad. Cualidad de fiable Costo. Cantidad que se da o se paga por algo. Documentar. Probar, justificar la verdad de algo con documentos. Ejecutable. Que se puede hacer o ejecutar. Eventos. Suceso importante y programado. 56
Factibilidad. Cualidad o condición de factible Framework. Una estructura conceptual y tecnológica de soporte definida, normalmente con artefactos o módulos de software concretos. Funciones. Tarea que corresponde realiza una determinada acción. Implementación.
Poner
en
funcionamiento,
aplicar
métodos,
medidas, etc., para llevar algo a cabo. Incertidumbre. Falta de certidumbre. Incremental. Que crece Inspección. Cargo y cuidado de velar por algo. Integrar. Aunar, fusionar dos o más conceptos, corrientes, etc., divergentes entre sí, en una sola que las sintetice. Iterativo. . Dicho de una palabra: Que indica repetición o reiteración. Mercancía. Cosa mueble que se hace objeto de trato o venta. Modelamiento. Ajustarse a un modelo abstracto algo real. Modelo. Arquetipo o punto de referencia para imitarlo o reproducirlo. Nativo. Innato, propio y conforme a la naturaleza de cada cosa. Operaciones. Conjunto de reglas que permiten, partiendo de una o varias cantidades o expresiones, llamadas datos, obtener otras cantidades o expresiones llamadas resultados. Performance. Una muestra escénica, muchas veces con un importante factor de improvisación, en que la provocación o el asombro, así como el sentido de la estética, juegan un rol principal. Periférico. Aparato auxiliar e independiente conectado a la unidad central de una computadora. Productividad. Capacidad o grado de producción por unidad de trabajo.
57
Protocolo. Serie ordenada de escrituras matrices y otros documentos que un notario o escribano autoriza y custodia con ciertas formalidades. Prototipo. Ejemplar original o primer molde en que se fabrica una figura u otra cosa. Prueba. Ensayo o experimento que se hace de algo, para saber cómo resultará en su forma definitiva. Relaciones. Conexión, correspondencia de algo con otra cosa. Requisito. Circunstancia o condición necesaria para algo. Rol. Cargo o función que alguien o algo cumple en alguna situación o en la vida. Salud. Condiciones físicas en que se encuentra un organismo en un momento determinado. Semiología. Estudio de los signos en la vida social. Servidor. Es una computadora que, formando parte de una red, provee servicios a otras computadoras denominadas clientes. Tecnología. Lenguaje propio de una ciencia o de un arte. Usuario. Que usa ordinariamente algo. Versión. Cada una de las formas que adopta la relación de un suceso, el texto de una obra o la interpretación de un tema.
58
IV.
HIPOTESIS, VARIABLES Y OPERACIONALIZACION DE LAS VARIABLES 4.1. Hipótesis General “El Sistema WEB con tecnología JAVA EE 6 mejora los procesos administrativos de la unidad de abastecimiento y almacén del proyecto carretera Federico Basadre del Gobierno Regional de Ucayali ". Específicos 1. "Existen procesos administrativos a realizarse en las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali". 2. "Los procesos administrativos en las unidades de abastecimiento y almacén requieren información en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali”. 3. "Es posible aplicar RUP y UML para el análisis y diseño del Sistema WEB con tecnología JAVA EE 6 para los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali". 4. "Es posible determinar un grado de correlación entre el Sistema WEB con tecnología JAVA EE 6 y los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali". 5. “Es posible proponer un adecuado modelo de Sistema Web con tecnología JAVA EE 6 para las unidades de abastecimiento y
59
almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali”. 4.2. Variables 5.2.1. Variable independiente Sistema WEB con tecnología JAVA EE 6. 5.2.2. Variable dependiente Procesos administrativos de Abastecimiento y Almacén. 5.2.3. Variable interviniente Gobierno Regional de Ucayali. 5.2.4. Unidad de análisis Proyecto Especial Carretera Federico Basadre. 4.3. Operacionalización de las variables Variable Independiente: Sistema WEB con tecnología JAVA EE 6. Cuadro 3. Indicadores Variable Independiente Dimensiones Servidor web
Indicadores Hosting Dominio Tecnología de desarrollo Protocolo
Calidad de software
Funcionabilidad Rentabilidad Usabilidad Eficiencia Portabilidad Confiabilidad
Gestor de base de datos
Base de datos Manejo de datos
60
Variable
Dependiente:
Procesos
administrativos
de
Abastecimiento y Almacén. Cuadro 4. Indicadores Variable Dependiente Dimensiones Planeación
Indicadores Objetivos de los procesos. Orden de ejecución. Plan de logros. Politicas, procedimientos y métodos. Plan de solución de problemas.
Organización
Ejecución
Control
Unidades operativas.
Obligaciones operativas.
Personal capacitado.
Recursos necesarios.
Conocimiento del proceso
Experiencia en la tarea
Verificar resultados
Evaluar resultados
Comparar resultados
61
V.
METODOLOGIA DE LA INVESTIGACION 5.1. Método de investigación Aplicada, según la clasificación de Mario Tamayo y Tamayo, el tipo de investigación es aplicada, porque busca la aplicación o utilización de los conocimientos que se adquieren. Diseño de investigación. Se aplicará el método de diseño en sucesión o en línea, conocido también como método Pre Test – Post Test el cual consiste en:
Medición de la Variable Dependiente antes de aplicar la Variable Independiente (Pre - Test).
Aplicación de la Variable Independiente.
Medición de la Variable Dependiente después de aplicar la Variable Independiente (Post- Test). Se puede representar mediante la siguiente simbología: GE, O1, X, O2. Dónde: GE
: Los colaboradores de la unidad de abastecimiento y almacén del PECFB. (Grupo Experimental)
O1
: Análisis de los resultados, antes de la instalación del Sistema Web con Tecnología JAVA EE 6.
X
: Es el Sistema Web con tecnología JAVA EE 6.
O2
: Análisis de los resultados, después de la instalación del Sistema Web con Tecnología JAVA EE 6.
62
Al final de la investigación se establecerán diferencias entre O 1 y O2 para determinar si existe mejoramiento o no en los indicadores expresados en la variable independiente.
GE:
O1
X
O2
5.2. Población y muestra Población. La población para nuestro estudio de investigación son los operarios de las unidades de abastecimiento y almacén del PECFB como se mostro en el cuadro N° 01 (08 personas). Muestra. La muestra para el presente estudio de investigación, se estimó el mismo número de personas, dado que es menor a 30, se tiene en cuenta el siguiente cuadro: Cuadro 5. Distribución de la muestra N° de orden 01 02 03 04 05 06 07 08 TOTAL
Denominación de la Unidad Orgánica y cargos Clasificados
Cargos Estructurales
Total
Unidad de Abastecimiento Técnico Administrativo III Técnico Administrativo III Técnico Administrativo III Técnico Administrativo II. Técnico Administrativo II. Asistente Administrativo I
Jefe de Abastecimiento Técnico Adquisiciones Técnico Almacén Tec. Control Patrimonial Operador del SEACE Técnico en Archivos Asistente Administrativo
01 01 01 01 01 01 01
Auxiliar de Limpieza I.
Auxiliar limpieza
01 08
63
5.3. Instrumentos de recolección de datos Cuadro 6. Instrumentos de recolección de datos Fuente
Primarias
Técnicas
Instrumentos
Entrevista
Tabla de Preguntas
Entrevista
Tabla de Preguntas
Encuesta
Cuestionario
Analisis
Documento de requisito
Secundaria documental
A efectos de validar los instrumentos de medición, se realizó una prueba piloto de cada uno de ellos con personas expertas en la confección del mismo. A continuación mencionamos como fueron desarrollados: a) La entrevista Entendida la entrevista como una comunicación interpersonal, entre el investigador y los sujetos que constituyen la muestra de la investigación, con tal razón seleccionamos esta técnica con la finalidad de obtener datos en cuanto a los conocimientos básicos. Se usó la entrevista estructurada. Instrumento: -
Tabla de preguntas; consistente en un conjunto de preguntas secuenciales, categorizadas y estructuradas con anticipación.
b) La encuesta Con la finalidad de recoger evidencias sobre el conocimiento, interés y necesidades.
64
Instrumentos: -
Los cuestionarios y pruebas de ejecución; hoja que contiene un conjunto de preguntas en su mayor parte cerradas, para tener información de primera mano.
5.4. Procedimiento de recolección de datos Los instrumentos de recolección de datos serán aplicados a los colaboradores y al gerente ejecutivo del Proyecto Especial Carretera Federico Basadre.
65
VI.
ADMINISTRACION DEL PROYECTO DE INVESTIGACION 6.1. Cronograma Diagrama 1. Cronograma 00000
Inicio del proyecto: 02 de Enero del 2012 - Fin del proyecto: 02 de Setiembre del 2012.
66
6.2.
Presupuesto 6.2.1. Materiales Cuadro 7. Presupuesto de materiales Cant.
Unidad
Descripción
1
S/U
Recolección de datos
1 1 1 6 6
Unidad Unidad S/U S/U S/U
Servidor Hosting Varios Movilidad Gastos de telefonía
Sub Total S/. 50.00 10000.00 400.00 200.00 100.00 54.00 Total
Total S/. 50.00 10000.00 400.00 200.00 600.00 324.00 11524.00
6.2.2. Recursos Humanos Cuadro 8. Presupuesto de recursos humanos
Cant.
Recursos Humanos Unidad Descripción
Costo Unitario Total S/. S/. 750.00 750.00
1
mes
Analista de Sistemas
1
mes
Diseñador de Sistemas
750.00
750.00
4
mes
Programador
750.00
3000.00
Total
4500.00
6.2.3. Equipos Cuadro 9. Presupuesto de equipos
Cant. 5 4 1 1 1 1
Equipos de Computo Unidad Descripción Unidad Unidad Unidad Unidad Unidad S/U
Ordenador de escritorio Impresoras Switch Acces poit Antena Panel Varios
Costo Unitario Total S/. S/. 1700.00 8500.00 450.00 1800.00 100.00 100.00 150.00 150.00 120.00 120.00 300.00 300.00 Total 10970.00
67
6.2.4. Resumen Cuadro 10. Resumen de presupuestos Descripción
Costo S/.
Materiales
11524.00
Recursos Humanos
4500.00
Equipos
10970.00 Total:
26994.00
68
6.3.
Referencias bibliográficas Alarcon Herrera, E., & Crovetto Huerta, C. (2006). Modelamiento de Base de Datos con ERWIN. Lima: Megabyte. Alonso Amo, F., & Martínez Normand, L. (2006). Introducción a la ingeniería del software. Madrid: Delta. Amelot, M. (2008). VBA Access 2007: programar en Access. Barcelona: ENI. Arahal, M. R., Berenguel Soria, M., & Rodriguez Diaz, F. (2006). Técnicas de predicción con Aplicaciones en Ingeniería. Sevilla: Universidad de Sevilla 2006. Arbones, E. A., & Malisani. (2004). Optimización Industria(II): Programación de Reccursos. Barcelona: Marcombo S.A. Areitio, G., & Areitio, A. (2009). Información, Informática e Internet: del ordenador personal a la Empresa 2.0. Vision libros. Atelin, P. (2007). TCP/IP y protocolos de internet. Barcelona: ENI. Aumaille, B. (2005). Java 2. Barcelona: ENI. Aumaille, B. (2005). Java 2. Barcelona: ENI. Barcelona: CID. Berenguel Soria, M., & Rodríguez Díaz, F. (2006). Técnicas de predicción con aplicaciones en ingeniería. España. Beskeen, D., Cram, C. M., Duffy, J., Friedrichsen, L., & Eisner Reding, E. (2009). Microsoft Office 2007 Windows Vista: introducción. Mexico: Cengage Learning. Beuchot, M. (2007). Introducción a las ciencias de la computación con JAVA. Mexico: UNAM. Brigham, E. F., & Houston F., J. (2005). Fundamentos de la administración Financiera. Madrid: Thomson. Bronson, G. J. (2007). C++ para ingenieria y ciencias. Mexico: Cengage Learning. CALERO, C., MORAGA, M. A., & PIATTINI VELTHUIS, M. G. (2007). Calidad Del Producto Y Proceso Software. Madrid: Ra-Ma. Cerezo López, Y., Peñalba Rodríguez, O., & Caballero Roldán, R. (2007). Iniciación a la programación en C#: un enfoque práctico. Madrid: Delta. Condor, I. (2007). Aplicaciones del Excel 2007 con Macros y VBA. Ilmer. Condor, I. (2007). Aplicaciones del Excel 2007 con Macros y VBA. . Mexico: Ilmer. Cortes Morales, R. (2006). IntroducciÓn Al AnÁlisis de Sistemas Y la IngenierÍa de Software. San jose: Universidad estatal a distancia. 69
Cortina, C. (2002). Historia Clínica Metodología didáctica. Mexico: Medica Panamericana. Cyr, D., & Gray, D. (2006). Marketing en la pequeña y mediana empresa. Bogota: Norma. Debrauwer, L., & Van der Heyde, F. (2009). UML 2 Iniciacion, ejemplos y ejercicios corregidos. Barcelona: ENI. Deitel, H. M., Deitel, P. J., & Trujano Mendoza, G. (2005). Cómo programar en Java. Madrid: Pearson Educación. Desonglez Corrales, J. (2006). Técnicos en soporte informatico de la comunidad castilla y leon. Madrid: Mad, S.R. Dewit, O. (2008). ASP .NET: Programación Web con Visual Studio y Web Matrix. Mexico: Ediciones ENI. Dorland. (2005). Dorland Diccionario enciclopedico illustrado de Medicina. España: Elsevier España. Duque Ramirez, L. G., & Rubio Vanegas, H. (2006). Semiología médica integral. Colombia: Universidad de Antioquia. Durán, F., Gutiérrez, F., & Pimentel, E. (2007). Programación orientada a objetos con Java. Madrid: Paraninfo. Fernandez Alarcon, V. (2006). Desarrollo de Sistemas de Información. Barcelona: Edicions UPC, 2006. Fortaleza Soler, K., & Lopez de Viñaspre, P. (2004). El entrenador personal. Madrid: HISPANO EUROPEA. Fowler, M., SCOTT, R., & Scott, K. (2005). UML gota a gota. Mexico: Pearson Educación. Gabillaud, J. (2008). SQL Server 2008 SQL Transact SQL. Barcelona: ENI. Galindo Gómez, J., & Rodríguez Corral, J. M. (2006). Aprendiendo C. España: Servicio Publicaciones UCA. Galindo Gómez, J., & Rodríguez Corral, J. M. (2006). Aprendiendo C. España. Madrid: Servicio Publicaciones UCA. Garcia Cuevas, R. (2007). Principios básicos de informática. Madrid: DYKINSON, S.L. García Llinás, L. F. (2010). Programación orienta a objetos en Java. Colombia: Universidad del Norte. Gomez De Silva Garza, A., & Ania Briseno, I. D. (2008). Introducción a la computación. Mexico: Cengage Learning. 70
González Casanova, P., & Roitman Rosenmann, M. (2006). La formación de conceptos en ciencias y humanidades. México: Siglo XXI editores, S.A. Groover, M. P. (2005). Fundamentos de manufactura moderna: materiales, procesos y sistemas. Madrid: Pearson educación. GROUSSARD, T. (2006). Visual Basic 2005 (VB.NET): programe con Visual STudio 2005. ENI. Herrsch, E. G. (2008). Pensamiento Sistémico. Buenos Aires: Ediciones Granica S.A. Hobbs, L. (2007). Diseñar su propia pagina WEB. Barcelona: MARCOMBO. Huidobro Moya, J. M. (2006). Redes y servicios de telecomunicaciones. Madrid: Paraninfo. Jamrichoja Parsons, J. (2008). Conceptos de computación: nuevas perspectivas. Mexico: Cengage Learning. Jamrichoja Parsons, J. (2008). Conceptos de computación: nuevas perspectivas. Mexico: Cengage Learning. Jhoansen, O. (2004). Introducción a la Teoria General de Sistemas. Mexico: LIMUSA S.A. Kendall, K. E., Kendall, J. E., & Nuñes Ramos, A. (2006). Análisis y Diséño de sistemas. Mexico: Pearson. Kenneth C, L. (2006). Lenguajes de programación: principios y práctica. Mexico: Cengage Learning. Krajewski, L. J., & Ritzman, L. P. (2005). Administración de operaciones: estrategia y análisis. Mexico: Adam Hamel. Laundon, K. C., & Laundon, J. P. (2004). Sistemas de Información Gerencial. Mexico: Person Educación. Liberty, J., & Xie, D. (2008). Programing C# 3.0. United States of America: RepKover. Liza Avila, C. (2007). Modelando con UML. Lima: SJ S.R. Ltda. Llanos Ferraris, D. R. (2010). FUNDAMENTOS DE INFORMÁTICA Y PROGRAMACIÓN EN C. España: Paraninfo. López Gaona, A. (2007). Introducción al desarrollo de programas con Java. Mexico: UNAM. Lopez-Ibor, J. J., Ortiz Alonzo, T., & Lopez-Ibor Alcocer, M. I. (1999). Lecciones de Psicología Medica. Barcelona: MASSON S.A.
71
Lujan Mora, S. (2007). Programación de aplicaciones Web: historia, principios basicos y clientes web. Alicante: Club Universitario. Luna Velasquez, J., & Tominaga García, Y. (2008). SISTEMA WEB CON TECNOLOGÍA J2EE PARA LA ADMINISTRACIÓN EN LA BIBLIOTECA DE LA UNIVERSIDAD NACIONAL DE UCAYALI. Pucallpa: Universidad Nacional de Ucayali. Marco Galindo, M. J., Marco Simó, J., Prieto Blázquez, J., & Segret Sala, R. (2010). Escaneando la informática. España: UOC. Martinez Perales, D. (2009). UNIX a base de ejemplos. Madrid: Madrid. Matsukawa Maeda, S. (2006). Análissis y Diseño orientado a objetos con UML. LIMA: Empresa Editora Macro EIRL. Molina Caballero, J. (2007). Implantación de aplicaciones informáticas de gestión. Madrid: Visión Libros. Muñoz Frías, J. D., & Palacios Hielscher, R. (2006). Fundamentos de programación utilizando el lenguaje C. España: Univ Pontifica de Comillas. Nepomuceno, A., Quesada, J. F., & Salguero, F. J. (2007). Información: Tratamiento y Representacion. Sevilla: Universidad de Sevilla 2007. Ogata, K. (2006). Ingeniería de Control Moderna. madrid: Pearson Educación S.A. Orozco Guzman, M. A., Chavez a la Torre, M. d., & Chavez a la Torre, J. (2007). Informatica I. Mexico D.F.: THOMSON. Pablos Heredero, C. (2006). Informatica y comunicaciones de la empresa. Madrid: ESIC. Pablos Heredero, C. d. (2006). Dirección y gestión de los sistemas de información en la empresa. Madrid: ESIC. Pantigoso Silva, J. (2009). SQL Server 2008. Lima: Megabyte. Pasto i Collado, J. A. (2009). Concepto de Sistema de Informacion en la Organizacion. Madrid: UOC. Payne, C. (2005). Aprendiendo ASP.NET en 21 lecciones avanzadas. Mexico: Pearson. Perez Fernandez De Velasco, J. A. (2009). Gestión por procesos. Madrid: ESIC. Perez Hernandez, M. G., & Duarte, A. (2006). La informática, presente y futuro en la sociedad. Madrid: Dykinson. Pressman, R. S. (2006). Ingenieria del Software un enfoque practico. Mexico: ÁREA DE INFORMÁTICA Y COMPUTACIÓN. Pressman, R. S. (2007). Ingeniería de Software. Madrir: Concepción Fernandez Madrid.
72
Quero Catalinas, E. (2006). Sistemas operativos y lenguajes de programación. Madrid: Paraninfo. Ramos Martín, A., & Ramos Martín, J. (2007). Operaciones con bases de datos ofimáticas y corporativas: Explotación de Sistemas Informáticos. Madrid: Paraninfo. Rodríguez Valencia, J. (2006). Administración I. Mexico: Cengage Learning. Rodríguez Valencia, J. (2006). Administración I. Mexico: Cengage Learning. Sabana Mendoza, M. (2006). Modelamiento e Implementacion de BASE DE DATOS. Lima: Megabyte. Sánchez Garreta, J. S. (2006). Ingeniería de proyectos informáticos: actividades y procedimientos. Universitat Jaume I. Savitch, W. J. (2007). Resolución de problemas con C++. Mexico: Pearson. Sharkey, K., & MacKenzie, D. (2006). Aprendiendo Visual Basic.Net en 21 Lecciones Avanzadas. Mexico: Pearson. Silva Salinas, S., Martínez Pacheco, E. F., González Fernández, J. M., López Sanjurjo, C., Cayetano Rodríguez, L., & Villar Varela, A. M. (2006). Windows: iniciación a la informática. España: S.L. Sommerville, I. (2007). Ingeniería de Software. Madrid: Pearson Educacion S.A. Stair, R. M. (2006). Ssistemas de información. Mexico: Thomson. Thibaud, C. (2006). MySQL 5: instalación, implementación, administración, programación. Barcelona: ENI. Tuya, J., Ramos Román, I., & Dolado Cosín, J. (2007). Técnicas cuantitativas para la gestión en la ingeniería del software. España: Netbiblo. Weitzenfeld, A. (2005). Ingeniería de software orientada a objetos con UML, Java e Internet. Cengage Learning. Xhafa, F. (2008). Aplicaciones distribuidas en Java con tecnología RMI. Delta. Xhafa, F., Vazquez Alcocer, P. P., & Gomez, J. M. (2006). Programacion en C++ Para Ingenieros. Madrid: Paraninfo.
73
ANEXOS
74
Anexo 1. Matriz de consistencia Titulo
Formulación del Problema
Objetivos
Hipótesis
Sistema WEB con tecnología JAVA EE 6 para los procesos administrativos de Abastecimiento y Almacén en el Proyecto Especial Carretera Federico Basadre del Gobierno Regional de Ucayali.
Principal ¿ En qué medida un Sistema WEB con tecnología JAVA EE 6 mejora los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali ? Específicos
General Conocer como el Sistema Web con tecnología JAVA EE 6 mejora los procesos administrativos de la unidad de abastecimiento y almacén del proyecto carretera Federico Basadre del Gobierno Regional de Ucayali .
General “El Sistema WEB con tecnología JAVA EE 6 mejora los procesos administrativos de la unidad de abastecimiento y almacén del proyecto carretera Federico Basadre del Gobierno Regional de Ucayali ".
Específicos
Específicos
Dificultades 1.
2.
3.
4.
5.
6.
7.
8.
Necesidad de Controlar el inventario en la unidad de almacén. Necesidad de sistematizar los procesos de creación de órdenes de compra y servicio. Necesidad de sistematizar el proceso de creación de pecosa. Necesidad de controlar la nulidad de las pecosas. Limitado uso de las tecnologías de información para los procesos administrativos de control de inventario. Necesidad de consultar en tiempo real y de manera rápida las ordenes registradas para diversos usos. Necesidad de proteger la información de la unidad de abastecimiento. Necesidad de inventariar las maquinarias del pool de maquinarias.
1.
2.
3.
4.
5.
¿Existen procesos administrativos en las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali? ¿Se puede identificar la información necesaria de los procesos administrativos en las unidades de abastecimiento y almacén del proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali? ¿Se puede aplicar RUP y UML para el análisis y diseño del Sistema WEB con tecnología JAVA EE 6 para los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali? ¿Es posible determinar un grado correlación entre el Sistema WEB con tecnología JAVA EE 6 y los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali? ¿Existe un adecuado modelo de Sistema Web con tecnología JAVA EE 6 para las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali?
1.
2.
3.
4.
5.
Identificar los procesos administrativos en las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali. Identificar las necesidades de información de los procesos administrativos en las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali. Aplicar RUP y UML para el análisis y diseño del Sistema WEB con tecnología JAVA EE 6 para los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali. Determinar el grado de correlación entre el Sistema WEB con tecnología JAVA EE 6 y los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali. Proponer un adecuado modelo de Sistema Web con tecnología JAVA EE 6 para las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali.
1.
2.
3.
4.
5.
"Existen procesos administrativos a realizarse en las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali". "Los procesos administrativos en las unidades de abastecimiento y almacén requieren información en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali”. "Es posible aplicar RUP y UML para el análisis y diseño del Sistema WEB con tecnología JAVA EE 6 para los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali". "Es posible determinar un grado de correlación entre el Sistema WEB con tecnología JAVA EE 6 y los procesos administrativos de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali". “Es posible proponer un adecuado modelo de Sistema Web con tecnología JAVA EE 6 para las unidades de abastecimiento y almacén en el proyecto especial carretera Federico Basadre del Gobierno regional de Ucayali”
Variables
Dimensiones / Indicadores
Variable Dependiente: Procesos administrativos Abastecimiento y Almacén .
de
Variable Independiente: Sistema WEB con tecnología JAVA EE 6.
Variable Interviniente: Gobierno Regional de Ucayali.
Planeación Objetivos de los procesos Orden de ejecución Plan general de logros Políticas, procedimientos y métodos. Plan de solución de problemas Organización Unidades operativas Obligaciones operativas por puestos. Personal capacitado por puestos. Recursos necesarios Ejecución Conocimiento del proceso Experiencia en la tarea asignada Control Verificar resultados Evaluar resultados Comparar resultados Servidor Web Hosting Dominio Tecnología de desarrollo Protocolo Client Browser Navegador Web Conectividad Lenguaje de programación Paradigma de programación Lenguaje de modelado Desarrollo de software Gestor de base de datos Base de datos Modelado de base de datos Personal Nivel académico Experiencia Desempeño de habilidades Áreas División laboral Atención al cliente Logística
Metodología
Tipo de Investigación Aplicada. Nivel de Investigación Descriptiva. Métodos - Deductivo. - Inductivo. Diseño Transaccional. Fuentes
Instrumento s
Encuesta
Cuestionario
Entrevista
Guía
Análisis documental
Documento de requisito.
PRIMARIAS
SECUNDARIAS Unidad de Análisis: Proyecto Especial Federico Basadre.
Técnicas
Carretera
75
Anexo 2. Cuestionario pre test aplicada a los operarios de la empresa. CUESTIONARIO PRE TEST APLICADA A LOS OPERARIOS DE LAS UNIDADES DE ABASTECIMIENTO Y ALMACEN NRO DE ENCUESTA FECHA
:___________ :___/___/___
EDAD:______________ SEXO : M F
Instrucciones: A continuación le presentamos unas preguntas que pretenden medir cómo se maneja la información dentro de la Unidad de Abastecimiento y Almacén, por favor lea detenidamente y conteste con una X en la respuesta que considere conveniente.
Siempre
Algunas veces
Ítems
Casi nunca
N°
Nunca
Dimensión: Planeación
1 ¿Se tiene en claro el objetivos en los procesos? 2 ¿Existe orden en la ejecución de los procesos? 3 ¿La empresa realiza un plan general de logro para los procesos administrativos? 4 ¿La empresa tiene en cuenta políticas, procedimientos y métodos para realizar los procesos administrativos? 5 ¿La empresa realiza un plan de solución de problemas para los procesos administrativos? Dimensión: Organización 6 ¿Se tiene en claro las unidades operativas de la empresa? 7 ¿La empresa tiene bien definidas las obligaciones a realizarse en cada puesto? 8 ¿El personal de la empresa muestra capacidad para realizar sus labores? 9 ¿La empresa proporciona los recursos necesarios para realizar los procesos? Dimensión: Ejecución 10 ¿El personal posee el conocimiento adecuado de los procesos a realizarse en lo empresa? 11 ¿El personal posee experiencia en las tareas a las cuales le es asignada? Dimensión: Control 12 ¿La empresa realiza análisis de los resultados de las operaciones diarias? 13 ¿La empresa realiza una evaluación adecuada de los resultados de las operaciones? 14 ¿La empresa realiza comparación de resultados obtenidos de las operaciones? Dimensión: Servidor Web 15 ¿Tiene usted conocimientos de hosting? 16 ¿Tiene usted conocimientos de Dominio? 17 ¿Cree que la tecnología de desarrollo aumentará la 76
productividad en la empresa? 18 ¿Tiene conocimiento de protocolo web? Dimensión: Client Browser 19 ¿Tiene conocimiento de navegador Web? 20 ¿Cree usted que es necesario la conectividad a Internet para sistematizar los procesos administrativos de la empresa? Dimensión: Lenguaje de programación 21 ¿Tiene conocimientos de paradigma de programación orientada a objetos? 22 ¿Tiene conocimientos de paradigma de lenguaje de modelado? 23 ¿Tiene conocimientos de paradigma de desarrollo de software? Dimensión: Gestor de base de datos 24 ¿Cree que es necesaria una base de datos en la empresa? 25 ¿Tiene conocimientos de modelado de base de datos? Dimensión: Personal 26 ¿Cree que el nivel académico que tiene usted influye en el desempeño de los procesos a realizarse en la empresa? 27 ¿Tiene experiencia utilizando un sistema informático para los procesos de la empresa? 28 ¿Desempeña usted sus habilidades en labores de la empresa? Dimensión: Áreas 29 ¿Los procesos a realizarse están divididos por áreas? 30 ¿Se controla en forma regular la existencia del inventario de seguridad en el área de logística? 31 ¿Tiene conocimientos de métodos de control de inventario?
77
Anexo 3. Alpha de cronbach Si su valor es cercano a la unidad se trata de un instrumento fiable que hace mediciones estables y consistentes. Si su valor esta debajo de 0.8 el instrumento que se esta evaluando presenta una variabilidad heterogénea en sus ítems y por lo tanto nos llevara a conclusiones equivocadas.
a) Método Mediante la varianza de los ítems al Anexo 5 [
∑
]
Dónde:
∑
17.722 100.322
Reemplazando tenemos:
0.84907659
b) Método Mediante la matriz de correlaciones al Anexo 2.
Dónde:
0.11465
Reemplazando tenemos:
0.81037456
78