Trabajo Especial de Grado



Documentos relacionados
Capítulo 5. Cliente-Servidor.

Sistema de marketing de proximidad

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

Workflows? Sí, cuántos quiere?

Elementos requeridos para crearlos (ejemplo: el compilador)

LENGUAJES DE PROGRAMACIÓN WEB (PHP1, HTML52)

Novedades. Introducción. Potencia

Solución de una Intranet bajo software Open Source para el Gobierno Municipal del Cantón Bolívar [IOS-GMCB] Gobierno Municipal del Cantón Bolívar

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

e-commerce, es hacer comercio utilizando la red. Es el acto de comprar y vender en y por medio de la red.

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Gestión y Desarrollo de Requisitos en Proyectos Software

MACROPROCESO GESTIÓN TECNOLÓGICA

SAP BusinessObjects Edge BI Standard Package La solución de BI preferida para. Empresas en Crecimiento

VOIP LA NUEVA REVOLUCION

"Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

Metodología básica de gestión de proyectos. Octubre de 2003

Brindamos asesorías que involucran tecnología y personal calificado, estos hacen de DOCTUM su mejor aliado.

Plan de ahorro en costes mediante telefonía IP

Conceptos Fundamentales. La Materia, Evaluación, Bibliografía, Normas Asociadas a la Materia

Introducción a las redes de computadores

Primer avance de proyecto de software para la gestión de inscripciones en cursos

Windows Server 2012: Infraestructura de Escritorio Virtual

DIRECCIÓN DE DESARROLLO TECNOLÓGICO PROCEDIMIENTO PARA GESTIÓN DE DESARROLLO TECNOLÓGICO

UNIVERSIDAD TECNICA DEL NORTE

Capitulo 5. Implementación del sistema MDM

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

REGISTRO DE PEDIDOS DE CLIENTES MÓDULO DE TOMA DE PEDIDOS E INTEGRACIÓN CON ERP

CAPÍTULO 3 Servidor de Modelo de Usuario

Sistema Gestión Licitación para la compra del desarrollo y migración del Sistema de Gestión de Activos y Configuraciones para Plan Ceibal

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

SISTEMAS DE INFORMACIÓN II TEORÍA

CAPÍTULO 3 VISUAL BASIC

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

punto, es que los criterios de evaluación de las medidas antes citadas se ajustan a las medidas señaladas para la toma del indicador VTD.

Empresa Financiera Herramientas de SW Servicios

CAPÍTULO 1 Instrumentación Virtual

Experto en Diseño Gráfico aplicado al Diseño Web

Capitulo I. Introducción

CMM - Capability Maturity Model. Estructura de CMM... Componentes de CMM. Estructura de CMM

Educación virtual INFROMATICA ADRIAN GOMEZ ROMAN 2014/12/30

CAPITULO I El Problema

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.


1 El trabajo expuesto está subvencionado por el proyecto de la URJC PGRAL-2001/14

DIPLOMADO EN SEGURIDAD INFORMATICA

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

Resumen General del Manual de Organización y Funciones

App para realizar consultas al Sistema de Información Estadística de Castilla y León

SIMAD CLOUD. La Gestión Documental ahora en la nube, más eficiente SISTEMA INTEGRADO DE ADMINISTRACIÓN DOCUMENTAL

Gestión de Oportunidades

QUE ES COMLINE MENSAJES? QUE TIPO DE MENSAJES PROCESA COMLINE MENSAJES?

AVA-QHSE System. Introducción Características del producto Especificaciones Técnicas

Sede Escazú, Plaza Tempo

Unidad III. Software para la administración de proyectos.

Universidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática

Código del programa: PEMDE. Programa Experto en MANEJO DE DATOS CON EXCEL. Modalidad: Virtual. Descripción del programa

Gestión de archivos (módulo transversal, MF0978_2)

Anexo 4 Documento de Arquitectura

LiLa Portal Guía para profesores

PROCEDIMIENTO GESTIÓN TICS

elastic PROJECTS INFORMACIÓN COMERCIAL PROJECTS

ANEXO : PERFILES. Guía de Comunicación Digital para la Administración General del Estado. ANEXO PERFILES

PRU. Fundamento Institucional. Objetivos. Alcance

DE VIDA PARA EL DESARROLLO DE SISTEMAS

Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre

Contenido Derechos Reservados DIAN - Proyecto MUISCA

El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos.

Gestión de proyectos

Evaluación, Reestructuración, Implementación y Optimización de la Infraestructura de Servidores, Base de Datos, Página Web y Redes

Tema: INSTALACIÓN Y PARTICIONAMIENTO DE DISCOS DUROS.

Marco Normativo de IT

CONTRATACIÓN DESARROLLO DE APLICACIÓNES PARA DISPOSITIVOS MOVILES

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)

CONCLUISIONES Y RECOMENDACIONES

Figure 7-1: Phase A: Architecture Vision

Introducción a la Firma Electrónica en MIDAS

Curso Online de Diseño Web avanzado con HTML5 y CSS3

INGENIERÍA DE SOFTWARE. Sesión 3: Tipos

Descubra las novedades de EasyProf 3.0! Cambios en la filosofía de trabajo

Sesión No. 12. Contextualización: Nombre de la sesión: SAP segunda parte PAQUETERÍA CONTABLE

CORPORACIÓN MEXICANA DE INVESTIGACIÓN EN MATERIALES, S.A. DE CV

Capitulo III. Diseño del Sistema.

Especificaciones de la oferta Administración de dispositivos distribuidos Administración de activos

Qué necesito saber para tener mi sitio web en Internet?

Capítulo I. Marco Teórico

LOGISTICA D E COMPRAS

Ingeniería de Software

ADT CONSULTING S.L. PROYECTO DE DIFUSIÓN DE BUENAS PRÁCTICAS

<Generador de exámenes> Visión preliminar

GUÍA BÁSICA USUARIO MOODLE 2.6

Arquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

SOFTWARE COLABORATIVO

Laboratorio III de Sistemas de Telecomunicaciones Departamento de Telemática

Adelacu Ltda. Fono Graballo+ Agosto de Graballo+ - Descripción funcional - 1 -

asired middleware XML Así-Red Servicios Telemáticos, S.L.L. w w w. a s i r e d. e s

Capítulo 3. Análisis y Diseño

NBG Asesores Abogados

Transcripción:

UNIVERSIDAD CATÓLICA ANDRÉS BELLO Urb. Montalbán La Vega. Apartado 29086. Telefax: (+58212)407.44.07. Caracas, 1021 Venezuela. Facultad de Ingeniería Escuela de Ingeniería Informática Trabajo Especial de Grado Aplicación para la gestión de comunicaciones a través de voz sobre IP (VoIP) y mensajes de texto en las estaciones de trabajo del sistema de Gestión Clínica de Pacientes (GCP) de CINet Solutions. Rocha, Irlu Sánchez, Alejandro Carlos Inguanzo Tutor Caracas, 23 de Enero de 2009

DATOS RESUMEN De los Alumnos Nombres: Alejandro José Apellidos: Sánchez Rodríguez Cédula de Identidad: V-17401816 Dirección: Urb. Macaracuay, Calle Cubagua, Edif. Manzanares, Apto. 42-A Teléfonos: 0412-2563914, 0212-2563914 Correo Electrónico: aalejo@gmail.com Nombres: Irlu Claret Apellidos: Rocha Viettri Cédula de Identidad: V-17714707 Dirección: Urb. La Carlota, Av. Francisco de Miranda, Calle La Línea, Res. El Parque, Apto. B2D Teléfonos: 0412-0140823, 0212-2357192 Correo Electrónico: irlu3110@gmail.com Del Tutor Nombres: Carlos Manuel Apellidos: Inguanzo Fernández Cédula de Identidad: 4.085.518 Correo Electrónico: carlos.inguanzo@cinetsolutions.net Teléfono Oficina: (0212) 993-5393 Profesión: Ingeniero en Electrónica Cargo Actual: Director General Años de experiencia: 32 De la Empresa Nombre de la empresa: CINet Solutions C.A. Rif: J-29466570-5 Dirección: Calle La Guairita, Centro Profesional Euroubuilding. Piso 9, Ofic. 9G. Chuao, Caracas 1060 - Venezuela Teléfonos: (0212) 993-5393 (0212) 991-74-17 1 P á g i n a

I. PLANTEAMIENTO DEL PROBLEMA El diagnostico tratamiento de pacientes hospitalizados en los centros clínicos conlleva una serie de actividades comunes y conocidas por todos los actores involucrados. La realización de estas actividades requiere de una coordinación y comunicación constante entre enfermeras, médicos, camilleros, bioanalistas, etc. Para poder realizarlas de una manera eficiente y que conlleven a diagnósticos y tratamientos efectivos para los pacientes. La evolución de las tecnologías clínicas y de software ha significado la automatización y optimización de todos los procesos y análisis clínicos, mejorando en gran medida la eficiencia y reduciendo el margen de error en estos procedimientos. Sin embargo, y, a pesar, de estos grandes avances tecnológicos, las comunicaciones entre los actores sigue siendo la misma de hace muchos años, presentándose errores de interpretación de las indicaciones, retaros en los traslados, dificultades para contactar a enfermeras y médicos, etc. Actualmente en CINet Solutions C.A. se encuentra desarrollando un sistema que permite realizar la gestión de los pacientes de una clínica desde el momento de su ingreso hasta el momento que son dados de alta. Para esto CINet Solutions ha creado un concepto llamado estación de trabajo (EDT). Una EDT permite que a partir de un flujo de trabajo determinado, se automatice y gestionen todas las actividades que se realizan desde que un paciente es ingresado hasta que sale de la clínica. Con el desarrollo de este sistema CINet Solutions se ha dado cuenta de la gran relación que tienen todos los actores de la EDT y el gran impacto que tienen las comunicaciones entre ellos. La finalidad de este trabajo especial de grado es elaborar un sistema de comunicación, que permita a todos estos actores, mencionados anteriormente, comunicarse de una manera efectiva a través de llamadas Voice over Internet Protocol (VoIP) y mensajes de texto. Permitiendo además autenticar la identidad de los emisores, almacenando un registro de las comunicaciones realizadas y que pueda ser utilizado a la perfección a través de comandos telefónicos. 2 P á g i n a

Figura 1: Comunicaciones de actores en el sistema. 3 P á g i n a

II. OBJETIVO GENERAL Desarrollar un sistema que permita la gestión de las comunicaciones a través de Voice over Internet Protocol (VoIP) y mensajes de texto en las estaciones de trabajo del sistema de Gestión Clínica de Paciente (GCP). III. OBJETIVOS ESPECÍFICOS 1. Investigar acerca de las interfaces de control que poseen las centrales telefónicas de Voice over Internet Protocol (VoIP) Asterisk. 2. Investigar los diferentes dispositivos móviles en el mercado que soporten VoIP y mensajería de texto, para determinar la opción más adecuada para la implementación. 3. Investigar y desarrollar interfaces de comunicación con el sistema Gestión Clínica de Paciente (GCP) que permitan enviar notificaciones de voz y texto hacia las Estaciones de Trabajo (EDT), teléfonos VoIP y celulares de los usuarios del sistema. 4. Desarrollar una herramienta Rich Internet Application (RIA) administrativa para las configuraciones de la central telefónica relacionadas al sistema a construir. 5. Desarrollar un modulo de interacción con un Interactive Voice Response (IVR) presente en la central de VoIP que permita la comunicación con el sistema GCP a través de comandos telefónicos. 6. Desarrollar un modulo que permita establecer comunicaciones vía VoIP con otros usuarios del sistema, a través de las Estaciones de Trabajo. 7. Desarrollar en el dispositivo seleccionado una aplicación para el envió y recepción de mensajes de texto. 8. Desarrollar un modulo que permita el registro dinámico y administración de usuarios y contactos del sistema para realizar comunicación de VoIP y de mensajes de texto. 9. Desarrollar e implementar un módulo que lleve un registro de las conversaciones vía VoIP hechas en el sistema. Sistema GCP. Sistema de gestión de Procesos Clínicos desarrollado por CINet Solutions. RIA. Interfaces similares a las aplicaciones de escritorio pero con las ventajas de que las aplicaciones Web pueden ofrecer. 4 P á g i n a

10. Desarrollar una aplicación que se encargue de comunicar todos los usuarios del sistema vía VoIP y mensajes de texto haciendo uso de todos los componentes mencionados anteriormente. IV. JUSTIFICACIÓN Dado que el sistema Gestión Clínica de Paciente (GCP) ha sido creado con la finalidad de apoyar a los actores involucrados en el tratamiento de pacientes hospitalizados en un centro asistencial en el desempeño de sus funciones, este T.E.G. para la gestión de comunicaciones a través de Voice over Internet Protocol (VoIP) y mensajes de texto constituye un aporte de gran valor para el sistema. Por otro lado, la tecnología de VoIP experimenta grandes ventajas frente a la telefonía convencional. Es por ello que resulta interesante su integración con este sistema de información. Actualmente, es común que se comentan errores de interpretación sobre las indicaciones que hace el médico tratante a su paciente cuando no existe constancia de la indicación real (en una llamada telefónica, por ejemplo), sin embargo esta propuesta contempla un registro de las conversaciones vía VoIP hechas en el sistema, como medio para reducir los errores de interpretación y un aporte a la historia clínica del paciente. La mayoría de los procesos clínicos existentes a la hora realizar el tratamiento de un paciente involucran múltiples actores donde cada uno de ellos tiene un aporte muy específico y necesario para su culminación exitosa. Es por esto que la interacción entre los mismos es fundamental para el desarrollo eficaz del tratamiento. Adicionalmente, la afluencia de pacientes en los centros asistenciales se ha venido incrementando progresivamente, lo que ha dificultado la coordinación de todos los involucrados en los procesos mencionados, disminuyendo su disponibilidad, lo que retrasa la aplicación del tratamiento. 5 P á g i n a

Con la aplicación a desarrollar se incrementará la disponibilidad de todos los actores, ya que cada uno de ellos podrá disponer de un teléfono VoIP dentro del hospital para ser contactado, y en caso de no encontrarse dentro del centro re-direccionará las llamadas al celular o casa de la persona receptora. Al estar en constante comunicación todos los involucrados en las actividades de hospitalización, los retardos serán reducidos enormemente con la introducción de alertas y recordatorios por mensajería de texto, realizando llamadas para las órdenes de laboratorio, desplazamiento del paciente en el hospital, etc. Mensajería de texto no SMS V. MARCO REFERENCIAL La mensajería de texto no SMS permite enviar o recibir cadenas de caracteres entre diferentes dispositivos, no necesariamente tienen que ser dispositivos móviles, y pueden ser de cualquier longitud, ya que no se conceptualiza como un estándar, sino que se ve limitada únicamente por la arquitectura en que se implemente. Fuente: propia. VoIP Consiste en aprovechar la infraestructura desplegada para la transmisión de datos para transmitir voz, utilizando el protocolo IP. En origen la voz se digitaliza, se comprime y se encapsula sobre el protocolo TCP/IP (el usado en Internet). En destino se hace la operación contraria. [1] VoIP: Ventajas Ahorro de ancho de banda y aprovechamiento de los intervalos entre ráfagas de datos haciendo un uso más efectivo de canales costosos. Convergencia de las comunicaciones de datos y voz en una plataforma única, facilitando la gestión, el mantenimiento y el entrenamiento del personal. Facilidad de incorporar servicios especiales. [1] 6 P á g i n a

VoIP: Limitaciones Las redes IP normalmente no permiten garantizar un tiempo mínimo para atravesarlas. Las redes IP están diseñadas para descartar paquetes en caso de congestión y retransmitirlos en caso de error. Esto no es adecuado para la voz. Los retardos de cientos de ms, comunes en redes de datos, son inaceptables en una conversación telefónica. [1] VoIP: Requerimientos Utilizar protocolos que permitan garantizar cierto grado de calidad de servicio (QoS) y no utilicen retransmisiones. Prioridad a la voz sobre los datos. Controlar el número máximo de saltos y los demás factores que contribuyen al retardo de transmisión para mantenerlo por debajo de 150 ms. [1] ASTERIK Asterisk es una aplicación de código abierto de una central telefónica (PBX). Como cualquier PBX, se puede conectar un número determinado de teléfonos para hacer llamadas entre sí e incluso conectar a un proveedor de VoIP o bien a una RDSI tanto básicos como primarios. [2] Asterisk tiene licencia GPL. Mark Spencer de Digium inicialmente creó Asterisk y actualmente es su principal desarrollador junto con otros programadores han contribuido a corregir errores, añadir novedades y funcionalidades. Originalmente desarrollado para el sistema operativo Linux, Asterisk actualmente también funciona en BSD, MacOSX, Solaris y Microsoft Windows aunque la plataforma nativa (Linux) es la mejor soportada de todos. [2] Asterisk incluye muchas características anteriormente solo disponibles en caros sistemas propietarios PBX: buzón de voz, conferencias, IVR, distribución automático de llamadas, y otras muchas más. Los usuarios pueden crear nuevas funcionalidades escribiendo un dialplan en el lenguaje 7 P á g i n a

de script de Asterisk o añadiendo módulos escritos en lenguaje C o en cualquier otro lenguaje de programación soportado por Linux. [2] Las soluciones de telefonía basadas en Asterisk ofrecen, no solamente las funcionalidades clásicas de una centralita telefónica, sino también unas funcionalidades avanzadas que son posibles gracias a la integración de la telefonía y la informática: VoiceMail. Conferencias telefónicas a más de dos. Llamada en espera, transferencias. Búsqueda en la base de datos. Grabación de los parámetros de las llamadas. [2] Los principales servicios integrados en Asterisk comprenden: Protección mediante una contraseña. Grabación de mensajes por defecto y de mensajes personalizados. Mensajes diferenciados dependiendo de si su PC está ocupado o de si usted no responde. Notificación por e-mail de voice mails recibidos. Indicadores visuales y sonoros de mensajes en espera de consulta Conferencia telefónica con un número ilimitado de participantes. [2] TRIXBOX 2.0.6 Trixbox es una distribución del sistema operativo GNU/Linux, basada en CentOS, que tiene la particularidad de ser una central telefónica (PBX) por software basada en la PBX de código abierto Asterisk. Como cualquier central PBX, permite interconectar teléfonos internos de una compañía y conectarlos la red telefónica convencional (RTB - Red telefónica básica). [3] Trixbox, al ser un software de código abierto, posee varios beneficios, como es la creación de nuevas funcionalidades. Algo muy importante es que no sólo soporta conexión a la telefonía tradicional, sino que también ofrece servicios VoIP -voz sobre IP-, permitiendo así ahorros muy significativos en el coste de las llamadas internacionales, dado que éstas no son realizadas por 8 P á g i n a

la línea telefónica tradicional, sino que utilizan Internet. Los protocolos con los cuales trabaja pueden ser SIP, H.323, IAX, IAX2 y MGCP. [3] Trixbox se ejecuta sobre el sistema operativo CentOS y está diseñado para empresas de 2 a 500 empleados. [3] RED5 Es un servidor Open Source para entregar contenido en streaming en Flash. Para ello utiliza el protocolo RTMP (Real Time Messaging Protocol) con lo cual se puede transmitir contenido en tiempo Real. [4] Este servidor tiene todas las cualidades del Flash Media Server de Adobe. Utiliza la sintaxis de ActionScript Communication con la cual se pueden desarrollar aplicaciones de comunicación en tiempo real. [4] Este servidor está escrito enteramente en Java, actualmente se encuentra en la versión 0.6.3, que aunque no es la versión final de producción ya tiene integrada todas las características de un servidor de streaming. EDT Streaming de Audio y Video (FLV y MP3). Facilidad para guardar Streaming del cliente. Shared Objects. Publicación Live Streaming. Soporte para AMF o Flash Remoting. Red5 es capaz de manejar llamadas VoIP usando Asterisk o SIP. [4] Las estaciones de trabajo (EDT) proveen a los involucrados en el proceso de atender a los pacientes de un centro asistencial las herramientas necesarias para conocer y controlar sus actividades diarias, constituye su ventana de interacción con el sistema. Es importante destacar que la estación de trabajo varía de un actor a otro; médicos, enfermeras, laboratoristas, camilleros y técnicos de registro médico tendrán una EDT de acuerdo al rol que desempeñan. Fuente: propia. 9 P á g i n a

APLICACIONES RIA Las Aplicaciones de Internet Ricas o Rich Internet Applications (RIA), consisten en el aprovechamiento de la experiencia del usuario en herramientas y funciones de escritorio tan naturales como copiar, cortar y pegar, redimensionar columnas, y ordenar etc., con el alcance y la flexibilidad de presentación y despliegue que ofrecen las aplicaciones o páginas Web junto con lo mejor de la multimedia (voz, vídeo, etc.). [5] Se puede decir que las RIA son la nueva generación de las aplicaciones y es una tendencia ya impuesta por empresas como Macromedia, Sun o Microsoft que se encuentran desarrollando recursos para hacer de este tipo de aplicaciones una realidad. Estas aplicaciones están basadas en plataformas J2EE o.net, con un front-end Flash y utilizan una arquitectura Cliente/Servidor asíncrona, segura y escalable, junto con una interfaz de usuario Web. [5] Entre los beneficios principales de aplicaciones RIA tenemos un mejoramiento importante en la experiencia visual, que hacen del uso de la aplicación algo muy sencillo, ofrece mejoras en la conectividad y despliegue instantáneo de la aplicación, agilizando su acceso, garantizan la desvinculación de la capa de presentación es decir acceso a la aplicación desde cualquier computador en cualquier lugar del mundo. [5] Tecnología WEB 2.0. La infraestructura de la Web 2.0 es compleja y va evolucionando, pero incluye las siguientes características: Transformar software de escritorio hacia la plataforma del web. Respeto a los estándares del XHTML. Separación de contenido del diseño con uso de hojas de estilo. Sindicación de contenidos. Ajax (Asincronical javascript and xml). Uso de Flash, Flex o Lazlo. Uso de Ruby on Rails para programar páginas dinámicas. Utilización de redes sociales al manejar usuarios y comunidades. Dar control total a los usuarios en el manejo de su información. 10 P á g i n a

Proveer APis o XML para que las aplicaciones puedan ser manipuladas por otros. Facilitar el posicionamiento con URL sencillos. [6] ADOBE FLEX Es un término que agrupa una serie de tecnologías publicadas desde Marzo de 2004 por Macromedia para dar soporte al despliegue y desarrollo de Aplicaciones de Internet Ricas, basadas en su plataforma propietaria Flash. [5] El marco de trabajo de Flex es un marco de trabajo de desarrollo basado en componentes para ofrecer aplicaciones de Internet sofisticadas para el tiempo de ejecución de Flash Player. Al combinar lenguajes estándar con un amplio grupo de componentes de interfaces de usuario extensibles y de acceso a los datos, Flex permite a los desarrolladores crear rápidamente aplicaciones con una presentación de datos sofisticada, una lógica contundente para el cliente y elementos multimedia integrados. Las aplicaciones desarrolladas con Flex funcionan en todas las plataformas de escritorio habituales, permiten una personalización total de la apariencia de la aplicación y son compatibles con un amplio grupo de métodos de conexión a los datos y servicios del servidor Flex fue inicialmente liberado como una aplicación de la J2EE o librería de etiquetas JSP que compilara el lenguaje de marcas Flex (MXML) y ejecutara mediante ActionScript aplicaciones Flash (archivos SWF binarios). Versiones posteriores de Flex soportan la creación de archivos estáticos que son compilados, y que pueden ser distribuidos en línea sin la necesidad de tener una licencia de servidor. [5] Flex 3 Flex 3 proporciona a los desarrolladores la potencia para ampliar el alcance de las aplicaciones de internet ricas (RIA) más allá del navegador y hasta el equipo de escritorio utilizando la versión de ejecución integrada de Adobe, Adobe Integrated Runtime (AIR), cuyo nombre en clave anterior era Apollo. Ahora, utilizando las nuevas aplicaciones Flex Builder 3 y Adobe AIR, los desarrolladores pueden crear aplicaciones más atractivas y de 11 P á g i n a

mayor rendimiento que pueden ejecutarse tanto en el navegador como fuera de él como una aplicación de escritorio en el PC. Fuente: propia. La revolución de las aplicaciones de Internet ricas (RIA) está en marcha en la Web, y Flex está en la vanguardia con la estructura más expresiva y de desarrollo más rápido disponible, afirma Kevin Lynch, vicepresidente senior y arquitecto jefe de software de Adobe. La habilidad para llevar aplicaciones a los computadores de escritorio, en combinación con el acceso al código abierto de Flex gratuito, significa que ahora es el mejor momento para ser un desarrollador de Flex. Empezando con Flex 3, los desarrolladores podrán descargarse gratuitamente, ampliar y contribuir al código fuente del compilador, de los componentes y de la estructura de aplicación de Flex. El lenguaje de creación de scripts de Flex es la puesta en práctica más avanzada del estándar de JavaScript, ECMASCRIPT 4, y se ejecuta en Adobe Flash Player utilizando la máquina virtual Tamarin de código abierto, incorporada recientemente a la Fundación Mozilla. La versión beta pública de Flex 3 inicia el proyecto proporcionando una hoja de ruta completa para Flex 3, incluidas las especificaciones detalladas de las características, los desarrollos recurrentes y la base de datos pública de bugs (fallos de software) donde los desarrolladores pueden entrar y seguir los diferentes temas, errores y solicitudes de funciones. Fuente: propia. Flex 3 incluye importantes avances en el flujo de trabajo del diseñador y del desarrollador, incluyendo una potente integración con las herramientas de diseño de Creative Suite 3 que permite la importación directa de los activos de CS3 en Flex. Otras mejoras de diseño incluyen una mayor compatibilidad en la apariencia y estilo visuales, compatibilidad con la inteligencia de lenguaje total para las hojas de estilo en cascada (CSS), y la vista de diseño Flex Builder 3 Design View, que deja a los diseñadores modificar el diseño y la diagramación de aplicaciones complejas. Fuente: propia. 12 P á g i n a

En cuanto al entorno de diseño, Flex 3 proporciona numerosas mejoras de código que aumentan la productividad. Por ejemplo, con Flex Builder 3 los desarrolladores ahora podrán hacer cambios substanciales dentro de un proyecto de un modo rápido y coherente. Flex 3 incluye el perfil de memoria y rendimiento, que permite a los desarrolladores evaluar las operaciones internas de su aplicación ejecutándose en el navegador o en Adobe AIR. Además, la vista de perfil de clases y las capacidades de búsqueda de código permiten a los desarrolladores encontrar fácilmente variables, métodos y propiedades, incluso en proyectos de desarrollo de gran escala. Fuente: propia. Siempre estamos buscando maneras con las que aumentar nuestra productividad a la hora de distribuir y desplegar aplicaciones atractivas, afirma Carlos García, cofundador y presidente de Scrapblog, Inc. Con las nuevas funciones de diseño e interactividad, incluyendo la estrecha integración con las herramientas de diseño de Creative Suite 3 que usamos a diario, Flex 3 nos ayudará a proporcionar más rápidamente al mercado aplicaciones de Internet ricas (RIA) y expresivas. Y ahora, con la capacidades para ampliar esas aplicaciones a los equipos de escritorio con Adobe AIR, el futuro del desarrollo de las aplicaciones RIA lo tenemos aquí con Flex 3. 13 P á g i n a

VI. METODOLOGÍA El presente trabajo especial de grado se desarrollará bajo un enfoque metodológico propuesto por CINet Solutions C.A. en 2007, caracterizado por ser sistémico, evolutivo e incremental, en el cual su ejecución no debe entenderse como lineal, pues tres (3) de sus fases desarrolladas pueden generar retroalimentación entre si, en un proceso de refinamiento sucesivo hasta obtener el sistema deseado. Se dividirá en 5 Etapas. Los motivos por los cuales se optó por incorporar el método de subproyectos, se debe principalmente a la necesidad de independencia entre cada una de las funcionalidades del proyecto, además de la poca interacción necesaria con el usuario final, ya que el uso de el MCH deberá ser transparente para el mismo, integrándose con las Estaciones de Trabajo ya conocidas por el usuario. Otro factor es la complejidad que implica el desarrollo del proyecto, es que no todas las tecnologías incorporadas han sido usadas con anterioridad, por lo que cada sub-proyecto deberá ir acompañado de una etapa de diseño técnico. Con todo esto podemos resumir que ésta metodología permite el avance de cada sub-proyecto establecido de manera cíclica, refinando y asegurando una completa investigación de tecnologías en cada caso, buen diseño y pruebas concretas para cada uno. Sub-proyecto Es un modulo completamente funcional y operativo, no requiere de su integración al proyecto completo para su funcionamiento, y debe poder ser probado con éxito. Importancia de Definir su Objetivo Siempre se debe establecer cuál es su objetivo, ya que un prototipo puede ser útil en diferentes fases del proyecto, por ello su objetivo debe ser claro. Durante la fase de análisis se usa para obtener los requerimientos del usuario y en la fase de diseño se usa para ayudar a evaluar muchos aspectos de la implementación seleccionada. 14 P á g i n a

Propósitos del sub-proyecto En la fase de Análisis de un proyecto, su principal propósito es obtener y validar los requerimientos esenciales, manteniendo abiertas las opciones de implementación. Esto implica que se debe tomar los comentarios de los usuarios, pero debemos regresar a sus objetivos para no perder la atención. En la fase de diseño, su propósito, basándose en los requerimientos previamente obtenidos, es mostrar las ventanas, su navegación, interacción, controles y botones al usuario y obtener una retroalimentación que nos permite mejorar el diseño de interfaz. Características de los Prototipos El proceso de desarrollo y empleo de prototipos tiene las siguientes características: El prototipo es una aplicación que funciona. Los prototipos se crean con rapidez. Los prototipos evolucionan a través de un proceso iterativo. Los prototipos tienen un costo bajo de desarrollo. Figura número 1: Metodología de desarrollo basada en prototipos. 15 P á g i n a

Reacciones Iníciales del Usuario El profesional de Sistema por medio de la observación, evaluación y la retroalimentación, obtendrá cómo reaccionan los usuarios al trabajar con el prototipo, y que tan conveniente es el acoplamiento entre las necesidades y las características modeladas en el sistema. A través de la recopilación de tales reacciones, el profesional, irá descubriendo nuevas perspectivas del prototipo, incluso si los usuarios se encuentran satisfechos con él, o si habrá dificultades para vender o implantar el sistema. Desarrollo de Prototipo Para decidir si el prototipo debe incluirse o no en el ciclo de desarrollo del sistema de Información, el profesional considera los siguientes factores: Problemas no estructurados, novedosos y complejos, de información personalizada del usuario, ya que sus salidas no son predecibles y definidas. Problemas de ambiente Inestable, el profesional también debe evaluar el contexto del sistema. Experiencia en diseños similares. No se conocen los requerimientos, la naturaleza del sistema es tal que existe poca información con respecto a las características que debe tener el nuevo sistema para satisfacer las necesidades del usuario. Los requerimientos deben evaluarse, se conocen los requerimientos aparentes de información pero es necesario verificarlos y evaluarlos. Costos altos, donde la inversión involucra gran cantidad de recursos financieros y humanos. Altos riesgo, la evaluación inexacta de los requerimientos o el desarrollo incorrecto ponen en peligro a la organización. El usuario, donde no está dispuesto a examinar modelos en papel, o no sabe lo que quiere pero lo reconocerá cuando lo vea. Tecnologías nuevas, la falta de experiencia en el uso de dichas tecnologías, junto con el deseo de instalar nuevas tecnología hace que sea propicio el uso del prototipo. 16 P á g i n a

Ventajas Existen ventajas relevantes en el uso del Prototipo: Modificación del Sistema en Etapas tempranas de su desarrollo: El éxito del uso del prototipo depende de qué tan pronto y con qué frecuencia se reciba la retroalimentación del usuario para hacer cambios y adecuarlos a las necesidades actuales. Los cambios iníciales durante el desarrollo de un proyecto son menos costosos que si se realizan en etapas tardías, como el prototipo puede cambiar varias veces la flexibilidad y adaptabilidad son su esencia, la pauta del cambio la da la retroalimentación, la cual nos permite conocer la opinión del usuario sobre cambios a la entrada o salida de un proceso, que al evaluarla nos permite obtener los requerimientos y mejorar el sistema. El desarrollo de prototipos implica una inversión en tiempo y en dinero, siempre es menor a la del sistema completo. Los problemas y descuidos de sistemas son más fáciles de detectar en un prototipo. Diseño de Sistemas acorde a las necesidades y expectativas de los usuarios: El uso del prototipo hace que los sistemas se ajusten a las necesidades de los usuarios. Se reduce el intervalo de tiempo desde que se relevan los requerimientos y el sistema concluido. Permite que los usuarios se involucren desde el principio y lo hace participar en forma activa, de esta forma hacen suyo el proyecto, siendo los principales promotores del éxito. El prototipo cuenta con las siguientes desventajas: Administración difícil: Dicha dificultad radica en manejar el prototipo como un proyecto dentro del Ciclo de Desarrollo de Sistema sin perder de vista cual era su propósito. 17 P á g i n a

Etapas de la Metodología CINet Solutions En la metodología se definen roles (que participan en cada una de las etapas evaluando los procesos que en ellas se llevan a cabo) y procesos en cada una de las etapas de la Plataforma de Calidad y Control a fin de evaluar la madurez de los procesos de desarrollo de software. La plataforma de Calidad y Control está comprendida por las siguientes cinco (5) etapas: 1. Definición del Proyecto: Busca dimensionar y definir principalmente el alcance inicial del proyecto, los criterios de validación y aceptación de la solución a implementar, así como también la elaboración y validación del cronograma de trabajo propuesto. En esta etapa se estructura el proyecto alrededor de recursos y actividades, se define el equipo de trabajo y sus responsabilidades. También se identifican los Riesgos asociados al Proyecto los cuales pueden modificarse a lo largo de las diferentes etapas del mismo. Durante esta etapa, se formulará un plan de proyecto preliminar que cubre hasta la Etapa 1. El proyecto se iniciará oficialmente con la reunión de arranque del proyecto (Kick-Off). Roles: En esta etapa el Gerente de Proyectos se encarga de definir quienes trabajarán en el proyecto como líderes de los diferentes equipos de desarrollo. Cada líder tiene la responsabilidad de seleccionar a los recursos que formarán parte de su equipo de desarrollo según las actividades y los tiempos estimados para las mismas. Productos/Entregables: Work Breakdown Structure (WBS) Cronograma del Proyecto Plan de Proyecto o Alcance del Proyecto o Plan de Manejo de Riesgos o Plan de Control de Cambios o Plan de Manejo de Recursos o Plan de Gestión de Calidad 18 P á g i n a

Presentación Kick-Off 2. Diseño Funcional: Elaborar un conjunto de especificaciones formales que describan la funcionalidad de la solución para su aprobación por parte del usuario. En base a los requerimientos identificados y conocimiento del negocio, se establece el comportamiento del sistema deseado por el usuario, de manera que sea alcanzable por la tecnología. Se indican las reglas de negocio, desde la perspectiva de los usuarios describiendo su interacción con la solución en términos de las acciones que éstos puedan realizar y el comportamiento esperado. Adicionalmente, se indica cuales serán los perfiles dentro del sistema, los atributos, arquitectura, y los elementos a alto nivel sobre los que se desarrollará. Roles: En esta etapa los líderes de proyecto junto los analistas de requerimientos, calidad y pruebas preparan los documentos que permitirán posteriormente construir la solución propuesta. Se realizan reuniones en la cuales los miembros del equipo de desarrollo interactúan para identificar los elementos de diseño que son claves en la construcción y los analistas se encargan de documentar junto a los líderes todas las especificaciones de diseño en modelos y plantillas. El gerente de Proyecto se encarga del seguimiento y avance del proyecto, así como la comunicación contaste con el cliente. A fin de garantizar la aprobación de la entregas parciales. Productos/Entregables: Documento de Análisis (Especificaciones Funcionales) Modelos de Diseño Técnico (UML) o Diagramas de Casos de Uso o Formularios de Casos de Uso o Diagrama de Clases Resumen de Especificaciones Técnicas. Plan de Pruebas. 19 P á g i n a

3. Diseño Construcción: Se desarrolla la solución que fue diseñada en la etapa anterior a fin de generar productos tangibles que cumplan con las especificaciones, requerimientos y lineamientos establecidos junto al cliente en las etapas iníciales de la metodología. Se define de manera clara y concreta la estructura de la solución y la forma en que van a interactuar los diferentes componentes de la misma, a la vez que se establecen los parámetros y guías de estilo de la interfaz. El desarrollo del código se debe realizar siguiendo patrones y estándares definidos por CINet Solutions, a fin de garantizar el cumplimiento de los parámetros de calidad exigidos por la empresa y el cliente. Roles: Los miembros de los diferentes equipos de desarrollo, tienen la mayor carga de trabajo en esta etapa, ya que a ellos corresponde la responsabilidad de la construcción de los productos finales y la ejecución de las pruebas unitarias de los componentes de la solución que se estará desarrollando. Los analistas de Requerimientos, Calidad y Pruebas, se encargarán de supervisar que los lineamientos establecidos en el plan de proyecto correspondientes a su área se cumplan a lo largo de todo el proceso de desarrollo. Mientras que los líderes prestan asesoría y supervisan el avance de los equipos, el gerente de proyecto continúa interactuando con el cliente y manteniéndolo informado del desarrollo del proyecto. Productos/Entregables: Funcionalidades Desarrolladas (Código). o Documentación de Código. o Pruebas Unitarias. Manuales de Usuario. Manuales de Sistema. 20 P á g i n a

4. Pruebas: Determinar que la aplicación realizada satisface los requerimientos iníciales levantados con los usuarios así como verificar que está esté libre de errores, en todo caso poder repararlos antes de la entrega de la solución para la implantación, garantizando la integridad y el correcto funcionamiento del sistema desarrollado. La ejecución de las pruebas funcionales e integrales diseñadas, en el plan de pruebas evalúan el desempeño de la solución desarrollada y que se cumpla con los estándares de calidad establecidos al inicio del proyecto. Roles: Para esta etapa se incluye una nuevo rol. El probador se encargará de ejecutar las pruebas definidas en el plan de pruebas. El Analista de pruebas debe supervisar las actividades planificadas para esta etapa y documentar el resultado de las pruebas en un informe que se entregará al Gerente del proyecto. Productos/Entregables: Plan de pruebas. Informe de Resultados. o Resultado de las pruebas integrales. o Resultado de las pruebas funcionales. 5. Implantación y Cierre: Conseguir la aceptación final del sistema por parte de los usuarios. Seguidamente, en el cierre, se formaliza la finalización del proyecto, mediante el informe de cierre del proyecto, el acta de aceptación del proyecto por parte del cliente, se documentan las lecciones aprendidas, se guardan las métricas para futuras bases de estimación y se archiva toda la información generada por el proyecto en los repositorios correspondientes. Roles: Para esta etapa es el gerente de proyecto quien debe realizar los trámites necesarios para que el cliente apruebe la implementación y pase al cierre formal del contrato. Por su parte, los demás miembros del equipo de trabajo afina detalles, preparar documentos de cierre, sesiones de lecciones aprendidas, entre otras actividades. 21 P á g i n a

Productos/Entregables: Acta de Cierre. Acta de Validación de Alcance. Archivo de Lecciones Aprendidas. Métricas del Proyecto. Figura número 2: Plataforma de Calidad y Control de CINet Solutions. Aunque cada etapa tiene sus límites muy bien definidos, la interrelación que existe entre ellas permite ejecutar ciclos entre etapas buscando el mejoramiento de la calidad alcanzada en los productos generados. La duración de un proyecto siguiendo esta metodología va a depender de los requerimientos iníciales y de las dimensiones de la solución planteada, sin embargo, la carga de trabajo más pesada se ubica en la etapa de diseño funcional, diseño técnico y construcción, ya que, a pesar de que el diagrama metodológico señala la existencia de un ciclo entre las etapas diseño, construcción y prueba, el diseño inicial debe lograr detallar la solución de manera que el número de iteraciones se reduzca al mínimo. La cantidad de prototipos a generar se establece en la etapa de definición del 22 P á g i n a

proyecto, pero esta no determina el número de iteraciones del ciclo hasta obtener el producto final. Figura número 3: Metodología de CINet Solutions. Es precisamente es la etapa de diseño funcional en la que se pone en marcha la metodología de prototipos, la cual cumple con el siguiente esquema: Generalmente las soluciones a desarrollar son divididas en módulos ó componentes que son asignados a cada equipo de trabajo. En este momento cada líder pasa a ser el responsable del desarrollo eficiente del componente asignado a su equipo. Este desarrollo de módulos paralelos, permite reducir el tiempo de cada iteración, ya que se manejarán como sub proyectos en paralelo. Aunque el proyecto sea dividido en módulos y cada uno de ellos se maneje como un sub proyecto, es necesario que exista un diseño global de las funcionalidades, ya que esto permitirá definir los parámetros para la comunicación entre los módulos y facilitará el diseño técnico. 23 P á g i n a