Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica SIMULADOR DE SISTEMAS EMPOTRADOS BASADO EN UNA INTERFAZ WEB

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica SIMULADOR DE SISTEMAS EMPOTRADOS BASADO EN UNA INTERFAZ WEB"

Transcripción

1 Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica IE 0502 Proyecto Eléctrico SIMULADOR DE SISTEMAS EMPOTRADOS BASADO EN UNA INTERFAZ WEB Por: RONALD PORTOCARRERO PORRAS Ciudad Universitaria Rodrigo Facio Diciembre de 2010

2 SIMULADOR DE SISTEMAS EMPOTRADOS BASADO EN UNA INTERFAZ WEB Por: RONALD PORTOCARRERO PORRAS Sometido a la Escuela de Ingeniería Eléctrica de la Facultad de Ingeniería de la Universidad de Costa Rica como requisito parcial para optar por el grado de: BACHILLER EN INGENIERÍA ELÉCTRICA Aprobado por el Tribunal: Ph.D Lucky Lochi Yu Lo Profesor Guía Ph.D Jaime Cascante Vindas Profesor Lector Ing. Fabián Abarca Calderón. Profesor Lector ii

3 DEDICATORIA A mis padres y hermanos por tantos años de esfuerzo para darme lo necesario para salir adelante. A mis amigos que me han brindado su apoyo durante los últimos años. A la memoria de JDAC. iii

4 RECONOCIMIENTOS Al autor de la edición anterior por la gran y valiosa ayuda que me brindó en momentos en que estaba estancado con el desarrollo del proyecto. iv

5 ÍNDICE GENERAL NOMENCLATURA...viii RESUMEN... x CAPÍTULO 1: Introducción Objetivos Objetivo General Objetivos específicos Metodología... 4 CAPÍTULO 2: Desarrollo teórico Computación en la nube (cloud computing) Beneficios Desventajas Capas del servicio Lenguaje ActionScript Lenguaje PHP Lenguaje C Tuberías en C Eclipse (software) Flex Builder Apache Zend Framework Formato de archivo XML CAPÍTULO 3: Desarrollo de código Distribución de directorios Creación de un Grid Layout Adición de nuevos dispositivos Adición de nuevos botones de función Construcción de la librería C Salvar y cargar en un archivo XML CAPÍTULO 4: Conclusiones y recomendaciones Conclusiones Herramientas Web y ActionScript Logros alcanzados en la aplicación ActionScript Interfaz PHP / C Recomendaciones Lectura del proyecto Desarrollo de código BIBLIOGRAFÍA v

6 ANEXOS Anexo 1. Código de ActionScript: archivo simulator.mxml Anexo 2. Código de PHP: archivo simulator.php Anexo 3. Código de C++: archivo utils.cc Anexo 4. Código de C++: archivo processor.cc vi

7 ÍNDICE DE FIGURAS Figura 2.1 Concepto de computación en la nube...6 Figura 2.2 Comunicación full-duplex de dos procesos con tuberías...12 Figura 2.3 Diagrama de la estructura MVC...19 Figura 3.1 Jerarquía del directorio principal (/var/www/simulator/)...22 Figura 3.2 Jerarquía del directorio application...24 Figura 3.3 Jerarquía del directorio public...25 Figura 3.4 Jerarquía del directorio tests...26 Figura 3.5 Grid en el área de dibujo...28 Figura 3.6 Diagrama de flujo de datos en una ejecución de C++ desde ActionScript...35 Figura 3.7 Archivos a modificar para añadir o modificar funciones con la librería C++ desde ActionScript Figura 3.8 Muestra del aspecto final de la aplicación del simulador...40 vii

8 NOMENCLATURA ACTIONSCRIPT Lenguaje de programación de alto nivel orientado a objetos web. ANSI American National Standards Institute Organización sin ánimo de lucro que supervisa el desarrollo de estándares para productos, servicios, procesos y sistemas en los Estados Unidos APACHE Programa servidor para protocolo HTTP en la web. API Application Programming Interface Conjunto de funciones y procedimientos que ofrece una librería para ser utilizado por otro software C++ Lenguaje de programación de bajo nivel orientado a objetos. ECMA European Computer Manufacturers Association Organización internacional basada en membrecías de estándares para la comunicación y la información FLEX Ambiente para desarrollar aplicaciones enriquecidas de internet. GRID Serie de celdas adyacentes que divide un área de 2 dimensiones en areas definidas de menor tamaño viii

9 HTML HyperText Markup Language Lenguaje de programación para dar formato a páginas web. HTTP Hypertext Transfer Protocol Protocolo de redes de computadoras usado para la transacción de datos en la Web. IEEE Institute of Electrical and Electronics Engineers Asociación técnicoprofesional mundial dedicada a la estandarización, entre otras cosas PHP PHP Hypertext Preprocessor Lenguaje de programación orientado a crear páginas web dinámicas. UNIX Uniplexed Information and Computing System Sistema operativo de código libre, portable, multitarea y multiusuario. WEB Sistema interconectado de documentos en hipertexto que son accedidos vía a través de Internet. ix

10 RESUMEN Este proyecto tuvo el fin de enlazar un simulador de sistemas empotrados con una aplicación Web. Para ello se basó en un Proyecto Eléctrico realizado el semestre anterior en el cual se sentaron las bases para la estructura del simulador. El mismo consiste en un conjunto de código de diferentes lenguajes de programación (ActionScript, PHP y C++) los cuales crean las aplicaciones que constituyen un flujo de datos entre una y la otra. Se estudió el proyecto creado anteriormente y se procedió a hacer modificaciones a los códigos existentes para ir agregando más características y funcionalidades al sistema y así acercarse más a la meta final de tener un simulador 100% funcional. Al finalizar este proyecto se logró aportar conocimiento en cuanto al proceso de creación de nuevos componentes a simular y además de nuevos botones de aplicación que puedan ejecutar funciones de la librería de C++ a través de la plataforma de PHP. En el documento se encuentra una guía de cómo realizar esto. También se logró crear un grid en el área de dibujo de la aplicación, de esta manera los componentes se pueden colocar en posiciones predefinidas según se ajusten los parámetros en el código de ActionScript. x

11 CAPÍTULO 1: Introducción Uno de los avances tecnológicos más importantes que ha visto la primera década del siglo XXI es, sin lugar a dudas, el desarrollo del Internet. A pesar de que la idea y la implementación de interconectar computadoras en redes para compartir información data desde la década de , es desde el año 2000 aproximadamente cuando se da un aumento muy significativo en cuanto el acceso de la población mundial al Internet, además se da un desarrollo de nuevas herramientas que sacan provecho de la tecnología de redes de computadoras. Mientras que en la década de 1990 el aumento de clientes de Internet fue de aproximadamente 100 millones, en la década del 2000 este aumento fue de cerca de 700 millones 2 lo que ha creado un mercado muy importante de aplicaciones y servicios en este campo. Por otro lado, para acceder a un sitio Web ya no es necesario hacerlo sentado frente a una computadora de escritorio, pues hoy día es más frecuente utilizar dispositivos para conectarse de forma inalámbrica a una red tal como netbooks, iphones, y hasta teléfonos celulares. La gran utilidad que tiene un simulador de sistemas empotrados con interfaz Web es precisamente la facilidad de acceso. La idea es que el usuario pueda ingresar desde cualquier dispositivo con acceso a Internet y con un navegador capaz de soportar aplicaciones Java y pueda realizar una simulación on-line sin necesidad de pasar por el

12 proceso de descargar e instalar un programa, ya que esto se ha complicado debido al creciente número de sistemas operativos y sus distintas versiones, lo que hace prácticamente imposible que un mismo archivo pueda instalar un programa en cualquier plataforma. El alcance de este proyecto comprende habilitar una página en formato Web capaz de enlazar a un simulador que funcione con un conjunto de funciones en C++ las cuales se encuentran alojadas en un servidor de Internet. 2

13 1.1 Objetivos Objetivo General Habilitar la simulación de sistemas electrónicos por medio de interfaz Web Objetivos específicos Obtener conocimiento sobre el desarrollo de herramientas Web y ActionScript. Crear una aplicación gráfica capaz de construir sistemas empotrados para ser simulados. Desarrollar interfaz Web que se comunique con aplicaciones en C++ por medio de PHP. 3

14 1.2 Metodología El presente proyecto comprende una extensión del proyecto eléctrico SIMULADOR DE CIRCUITOS BASADO EN WEB, realizado por Ricardo Herrera Moreno en julio de Por tanto el primer paso fue realizar una lectura completa de dicho documento para tratar de comprender al máximo el trabajo que Ricardo realizó. En el mismo se encontró algunos conceptos de los que se tenía poco o ningún conocimiento por tanto se realizó una consulta a la bibliografía para tener una idea general de los mismos. Posteriormente se investigó más acerca de los conceptos y otros temas más, como las herramientas de software y lenguajes de programación que tienen relevancia con el proyecto que se desarrolló y que constan este documento. Después se procedió a modificar los códigos de ActionScript principalmente realizados por Ricardo para ir cumpliendo con las metas que se fijó en conjunto con el profesor guía en el transcurso de las semanas. Los códigos de los lenguajes PHP y C++ también fueron modificados pero a menor escala. 4

15 CAPÍTULO 2: Desarrollo teórico Es importante para el desarrollo del proyecto contar con información necesaria que tenga relación al tema, por lo tanto se recopiló información sobre los lenguajes de programación y el software que se utilizó en el desarrollo del proyecto. Se quiso recopilar la información necesaria para que es caso de que un proyecto posterior tratara de un tema similar, el presente documento fuese una guía lo más completa posible al menos en el aspecto teórico y evitar el trabajo de hacer la revisión de las fuentes bibliográficas, dando paso así a poder dedicar más el recurso del tiempo al desarrollo mismo de los programas desde sus códigos fuente y scripts. 5

16 2.1 Computación en la nube (cloud computing) Es una nueva tendencia en el uso de sistemas informáticos con el fin de facilitar el acceso a diversas aplicaciones, el usuario hace uso de ellos desde la nube de Internet. Este último término se ha puesto de moda para referirse al enorme conjunto de servidores y clientes que conforman el Internet. Según el IEEE, la computación en la nube es un paradigma en el que la información se almacena de manera permanente en servidores en Internet y se envía a cachés temporales de cliente, lo que incluye equipos de escritorio, centros de ocio, portátiles, etc.. Esto se ha logrado gracias al aumento en la capacidad de proceso y almacenamiento de las máquinas, además de un crecimiento en el acceso con banda ancha. Uno de los proveedores pioneros de la computación en la nube fue Google, quien invirtió en construir su propia infraestructura. Figura 2.1 Concepto de computación en la nube 6

17 2.1.1 Beneficios La computación en la nube ya cuenta con la posibilidad de integrarse fácilmente con muchas aplicaciones empresariales. El usuario se ahorra el tener que instalar algún tipo de hardware, ya que el hardware necesario para ejecutar las aplicaciones se encuentra en la nube. Las actualizaciones traen menos efectos colaterales, ya que ningún usuario va a hacer uso de versiones anteriores de las aplicaciones ya que las mismas no van a existir. Ahorro en el uso de energía eléctrica. El usuario no tiene que invertir recursos en asegurar la energía para los equipos (servidores por ejemplo) pues estos se encuentran en otra parte del mundo. Además el uso de la energía es más eficiente puesto que un servidor en la nube puede suplir a varios clientes en vez de que cada cliente tenga su propio servidor Desventajas La dependencia hacia los proveedores de servicio es muy grande. Si el acceso a Internet se interrumpe no se puede hacer uso de las aplicaciones. No se asegura la privacidad de los datos. La información confidencial de un usuario pudiera ser vulnerable. Habría que invertir tiempo de proceso en encriptar datos para transportarlos en protocolos seguros, como HTTPS. Las empresas proveedoras de servicios deben tener un plan estratégico para 7

18 asegurar su crecimiento conforme las exigencias. Una sobrecarga de trabajo a los servidores puede dar como consecuencia indeseables fallas en el servicio Capas del servicio Dentro de los servicios en la nube se pueden distinguir tres tipos: SaaS, Sotftware como un servicio: Visto las capas como una jerarquía, el SaaS se encuentra en la capa más alta. Se da cuando un software en la nube se ejecuta desde la infraestructura de un proveedor y sirve a varios usuarios. Por ejemplo la administración de las cuentas de correo electrónico como Gmail, Hotmail, Yahoomail, entre otros. PaaS, Plataforma como un servicio: A diferencia del anterior, la plataforma engloba una cantidad de servicios a disposición del usuario. Por ejemplo una distribución de Linux o un servidor Web (Apache). IaaS, Infraestructura como un Servicio: Es la capa inferior y se refiere a la parte del almacenamiento y proceso de cómputo de los servicios que se provee en Internet, tal como servidores, discos duros, enrutadores, entre otros. 8

19 2.2 Lenguaje ActionScript Es un lenguaje de programación orientado a objetos, desde su creación ha sido muy utilizado en animaciones para páginas Web, uno de los programas más conocidos en los que se desarrolla ActionScript es el Adobe Flash. Es de tipo script, lo que significa que no es necesario crear un programa completo para realizar alguna función, sólo basta con unas cuantas líneas para realizar funciones. Se basa en el estándar ECMA-262, al igual que el lenguaje JavaScript, por esta razón ambos lenguajes tienen muchas similitudes. La última versión estable es ActionScript 3.0 la cual aporta beneficios como el de una mejor y más amplia interfaz de programación, y una base de código de compilador actualizada que concuerda mejor con el estándar ECMA-262. Además es compatible con scripts de versiones anteriores del mismo lenguaje, facilita el manejo de aplicaciones con gran cantidad de datos y el código tiene una velocidad de ejecución mucho mayor. 9

20 2.3 Lenguaje PHP Es un lenguaje de programación interpretado, utilizado ampliamente para el desarrollo de páginas Web dinámicas ya que puede ser incrustado fácilmente dentro del código HTML. Lo típico es que el código en PHP se ejecute del lado del servidor y esto genere el código HTML que recibirá el cliente y que, gracias al navegador, lo podrá ver en forma de página Web. Algo que lo hace atractivo es la forma de programación estructurada, parecida a la de lenguajes como Perl o C, lo que permite realizar operaciones complejas con una mejor claridad en el código. Permite la interacción con muchos manejadores de base de datos tal como MySQL, ORACLE, Postgres, entre otros. Es soportado por la mayoría de los sistemas operativos y es una alternativa libre y gratuita para el Microsoft ASP o el Adobe ColdFusion, a pesar de esto existen herramientas de desarrollo integrado (IDEs) comerciales como el Zend Studio o el Eclipse. La versión reciente más estable es el PHP 5 (5.3.3), lanzada en julio de 2010, presenta una mejoría del soporte a la programación orientada a objetos, a MySQL, XML, SQLite, ORACLE, entre otros. 10

21 2.4 Lenguaje C++ Es un lenguaje definido por el estándar ANSI C de 1983, su aparición tuvo el objetivo de crear un lenguaje uniforme a partir del lenguaje C original, desarrollado en 1972 por los científicos estadounidenses de la computación Brian Kernighan y Dennis Ritchie en Hasta aquel entonces el estándar estaba definido por el libro escrito en 1978 por estos dos autores. El lenguaje C++ comenzó su desarrollo con la década de Como su autor se reconoce a Bjarne Stroustrup, un científico de la computación nacido en Dinamarca. Todos los tres creadores mencionados anteriormente realizaron sus logros mientras laboraban para AT&T. Al inicio se consideró como una extensión del lenguaje C y fue denominada C con clases, y comenzó a ser utilizado fuera de la AT&T en El nombre C++ se definió también en ese año, y hace referencia al carácter del operador incremento de C (++). Ante la gran difusión y éxito que iba obteniendo en el mundo de los programadores, AT&T comenzó a estandarizarlo con carácter interno en Ya para el año 1989 fue formado un comité ANSI para crear un estándar a nivel americano y posteriormente a nivel internacional. Actualmente, C++ es un lenguaje bastante versátil y de mucha potencia. Su éxito entre los programadores profesionales lo ha llevado a ocupar el primer puesto como herramienta de desarrollo de todo tipo de aplicaciones. El C++ hereda las ventajas del 11

22 lenguaje C en cuanto a la utilidad de los operadores y las expresiones, su flexibilidad permite obtener un código fuente conciso y eficiente para los programas pues con él se ha eliminado algunas de las limitaciones del antiguo lenguaje C de los años 1970s. El desarrollo del Internet trajo consigo el desarrollo de una continuación del las características de C++ con la aparición del lenguaje Java, el cual es el preferido para realizar aplicaciones en Internet ya que simplificando algunas cosas del lenguaje C++ y añade algunas otras Tuberías en C++ Las tuberías (pipes en idioma inglés) tienen la función de conectar la salida estándar de un proceso con la entrada estándar de otro proceso. Habitualmente las tuberías manejan el flujo de los datos en un único sentido (half-duplex) por lo tanto solo pueden ser leídas de un lado y escritas por el otro o viceversa. De este modo, cuando se necesita que exista un flujo bi-direccional de datos se debe proveer de dos tuberías, una para cada sentido (fullduplex). Proceso A Proceso B Figura 2.1 Comunicación full-duplex de dos procesos con tuberías El uso de tuberías es totalmente transparente a la ejecución de los procesos. El proceso que escribe y el que lee utiliza funciones que normalmente usan para los descriptores de salida y entrada estándar, respectivamente. La diferencia es que estas ya no 12

23 corresponden a la pantalla y al teclado sino a los extremos de una tubería. En sistemas basados en UNIX los descriptores de entrada y salida son simples números enteros, por tanto una tubería en C++ se define como un arreglo de dos enteros: int tubería[2]; pipe(tubería); Posteriormente es necesario crear la tubería. Para esto se utiliza la función pipe() que abre dos descriptores y guarda su valor en los enteros del arreglo recién creado. El primero de ellos, tubería[0], es abierto sólo para lecturas mientras que tubería[1] es utilizado sólo para escrituras. De esta manera se asegura que el flujo de los datos se dé en una sola dirección. 2.5 Eclipse (software) El Eclipse comprende una plataforma de trabajo sobre la que se pueden montar herramientas de desarrollo para cualquier lenguaje de programación, mediante la adición adecuada de los complementos necesarios. La arquitectura de los complementos de Eclipse permite, además de integrar diversos lenguajes sobre un mismo IDE, introducir otras aplicaciones adicionales que pueden resultar útiles durante el proceso de desarrollo de programas como: herramientas UML, editores visuales de interfaces, ayuda en línea para librerías, etc. 13

24 En sus comienzos, Eclipse era un proyecto de desarrollo OpenSource, soportado y mantenido en su totalidad por IBM. Bajo la dirección de esta compañía, se fundó el Consorcio Eclipse al cual se unieron algunas empresas importantes como Rational, Hewlett Packard y Borland. A partir del año 2004, el Consorcio Eclipse es independiente de IBM y ahora lo conforman empresas de alto calibre en el tema de tecnología como lo son: Hewlett Packard, Intel, Fujitsu, Hitachi, Oracle, Palm, Ericsson, RedHat, entre otras. Además de algunas de las universidades más importantes e institutos tecnológicos. El entorno de desarrollo Eclipse, incluyendo los complementos, está desarrollado por completo en el lenguaje Java. Padece un inconveniente común en herramientas Java tal como es que requieren muchos recursos de la computadora. Es necesaria una máquina de gran capacidad de proceso para poder ejecutarse de forma satisfactoria, en gran medida, estas necesidades vienen determinadas por el uso del API Swing para su interfaz gráfico. El API Swing es una librería de widgets portable para cualquier plataforma que disponga de una máquina virtual Java, sin embargo a costa de ello no aprovecha las capacidades propias del sistema donde se ejecuta, lo cual supone una ejecución notablemente más lenta que la de las aplicaciones propias del sistema. 14

25 Debido a esto existe SWT, que es una librería de widgets equivalente a Swing en la cual sí se aprovechan las capacidades propias del sistema sobre el que se ejecuta lo que le permite una ejecución de APIs más rápida y fluida. Sin embargo es necesario disponer de una librería SWT específica para cada sistema operativo. El IDE Eclipse se puede obtener descargándolo directamente del sitio Web oficial del proyecto Eclipse o desde cualquier mirror autorizado. Existen versiones instalables para cualquier plataforma que soporte la librería SWT, descargas que incluyen el código fuente y descargas que incluyen los complementos más comúnmente utilizados. Además, del mismo sitio, se puede descargar la librería SWT independientemente para el sistema operativo que se requiera. Debido a que Eclipse está escrito en Java, en necesario para su ejecución que exista un JRE (Java Runtime Environment) instalado previamente en el sistema. La instalación es muy sencilla pues sólo basta con descomprimir el archivo descargado en el directorio que se estime conveniente. Ya que no está orientado específicamente hacia ningún lenguaje de programación en concreto, el uso de un determinado lenguaje, requerirá la existencia de un complemento que le dé soporte. Con la versión estándar del entorno Eclipse se distribuye el complemento necesario para programar en lenguaje Java (JDT). Del sitio oficial se puede descargar los complementos para lenguajes muy utilizados como C/C++, Perl o Python. 15

26 2.6 Flex Builder Flex es un término que agrupa una serie de tecnologías publicadas desde el año 2004 por la compañía Macromedia para brindar soporte al diseño y desarrollo de Aplicaciones de Internet Enriquesidas (RIA por sus siglas en ingles), basadas en su plataforma propietaria Flash. Las RIA son una nueva tendencia de aplicaciones Web enfocadas en facilitar su manejo por parte del usuario y mejorar el rendimiento del uso de la red, al principio se trata de cargar todos los datos necesarios de la aplicación para evitar que la página se recargue constantemente y que sólo lo haga en casos necesarios, como al acceder una base de datos en el servidor. El Flex fue lanzado inicialmente como una aplicación de la plataforma de Java J2EE (o biblioteca de etiquetas JSP) que compilaba el lenguaje de marcas Flex (de formato MXML) y ejecutaba mediante ActionScript aplicaciones Flash (archivos SWF binarios). Versiones posteriores de Flex soportaban 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 del servidor. Flex tiene varios componentes y características que aportan funcionalidades tales como Servicios Web, objetos remotos, arrastrar y soltar, columnas ordenables, gráficas, efectos de animación y otras interacciones simples. El cliente solo carga la aplicación una vez, mejorando así el flujo de datos frente a aplicaciones basadas en HTML (PHP, ASP, JSP, CFMX), las cuales requieren de ejecutar plantillas en el servidor para cada acción. El 16

27 lenguaje y la estructura de archivos de Flex buscan el desacoplamiento de la lógica y el diseño. Algunas opciones alternas al Flex son Google Web Toolkit, JavaFX, Microsoft Silverlight, entre otros. 2.7 Apache Apache es un servidor Web HTTP de código abierto para plataformas disponible para múltiples plataformas (Unix GNU/Linux, Microsoft Windows, Macintosh, entre otras), que implementa el protocolo de red HTTP/1.1 y permite emular la noción de un sitio virtual. Su desarrollo comenzó en 1995 basándose inicialmente en el código del servidor Web más popular de la época, el NCSA HTTPd 1.3, sin embargo, posteriormente fue reescrito de nuevo completamente. Presenta como principales características su gran capacidad de configuración y un manejo eficaz de bases de datos, sin embargo ha sido criticado por la falta de una interfaz gráfica que ayude en su configuración. Tiene amplia aceptación dentro de los usuarios de la red. Desde el año 1996, Apache es el servidor HTTP más usado, alcanzó su máxima cifra de mercado en el 2005 llegando a ser el servidor empleado en el 70% de los sitios Web en el mundo. 17

28 Si bien se sabe que posee vulnerabilidades de la seguridad, la mayoría de las han sido descubiertas (y resueltas) tan sólo pueden ser aprovechadas por usuarios locales y no remotamente, así que el nivel de inseguridad es bajo. 2.8 Zend Framework Consiste en una plataforma de desarrollo de código abierto para la creación de aplicaciones y servicios Web con PHP versión 5. La estructura en que se encuentran sus componentes es tal que la dependencia entre estos es muy baja, lo que permite a los desarrolladores utilizar los componentes por separado. Sin embargo los componentes de la biblioteca estándar del Zend Framework forman una plataforma de aplicaciones Web muy potente y extensible al combinarse. Además ofrece un gran rendimiento, una abstracción de base de datos fácil de usar, y un componente de formularios que implementa la prestación de formularios HTML, validación y filtrado para que los desarrolladores puedan consolidar todas las operaciones usando de una manera sencilla la interfaz orientada a objetos y una robusta implementación MVC (Modelo-Vista-Controlador). EL MVC define un tipo de arquitectura de software que separa los datos de una aplicación, la interfaz de usuario, y la lógica de control en tres componentes distintos. Es de uso frecuente en aplicaciones Web, donde la vista es la página HTML y el código que provee de datos dinámicos a la página. El modelo es el sistema que gestiona la de base de 18

29 datos y la lógica de programación, y el controlador es el responsable de recibir los eventos de entrada desde la vista. Controlador Vista Modelo Figura 2.2 Diagrama de la estructura MVC El principal patrocinador del proyecto Zend Framework es Zend Technologies, sin embargo otras empresas han contribuido de forma importante para el marco, tal como Google, Microsoft y StrikeIron. Estas se han asociado con Zend para proporcionar interfaces de servicios Web y otras tecnologías que desean poner a disposición de los desarrolladores de Zend Framework. 2.9 Formato de archivo XML El origen del formato XML se remonta a los primeros procesadores de texto, como el WordPerfect 5.1, los cuales para definir el formato del texto utilizaba una serie de etiquetas invisibles para el usuario. Así por ejemplo, para definir un texto en negrita el mismo se encerraba entre las etiquetas <b> </b> para delimitar el inicio y final del texto con ese formato. Esta cualidad fue heredada por uno de los lenguajes más importantes de hoy día, el HTML. 19

30 De primera impresión, XML pareciera ser un lenguaje similar a HTML sin embargo hay grandes diferencias. El XML no es propiamente un lenguaje sino un metalenguaje, es decir, un lenguaje que permite describir aspectos de otro lenguaje. Según el documento "Extensible Markup Language (XML) 1.0 W3C Recommendation", del desarrollador del XML, los documentos de este formato deben ser fáciles de crear, entendibles para humanos (no sólo por computadoras) y razonablemente claros. También debe ser fácil escribir programas de tratamiento de documentos XML y se debe reducir al mínimo el número de elementos opcionales. Los documentos XML tienen la sintaxis parecida a los HTML. Sin embargo hay que poner atención a que las etiquetas no corresponden a las conocidas como <BR> o <I>. Más bien, es común encontrar etiquetas personalizadas. Como XML es un metalenguaje, es posible crear códigos o etiquetas a gusto del usuario según sea la aplicación. Ya no sólo se define el formato que tiene el texto o la posición de datos e imágenes, sino que cada parte de la información puede ser identificada con un sistema propio de etiquetas. Un ejemplo básico de documento XML para una base de datos de una biblioteca puede ser como el siguiente: 20

31 <?xml version="1.0"?> <lista> <libro> <autor>francisco Montes</autor> <titulo>la fortaleza tenebrosa</titulo> <indice> <capitulo>prólogo</capitulo> <capitulo>la revelación</capitulo> <capitulo>el esclarecimiento</capitulo> <capitulo>epílogo</capitulo> </indice> <comentario>la última novela del autor transporta al lector a un mundo de misterio.</comentario> </libro> </lista> Se puede notar que existe un elemento principal (lista) y contenido (libros), junto con la información que debe acompañar a cada libro. Para cada tipo de datos hay una etiqueta inicial y otra de cierre con una barra "/" y las de mayor nivel contienen a las demás. 21

32 CAPÍTULO 3: Desarrollo de código El desarrollo de los códigos necesarios para el proyecto comprende una gran cantidad de archivos, distribuidos en una amplia red de carpetas creadas por la aplicación Zend Framework. Para el caso particular de este proyecto, la carpeta principal llamada simulador, se ubicó en la ruta /var/www/ del sistema Ubuntu Linux, esto es así para que el servidor Apache pueda cargar la página y poder acceder los archivos Web desde el navegador Mozilla Firefox. 3.1 Distribución de directorios Para un mejor entendimiento, se obtuvo una descripción básica y general de al menos los directorios de mayor jerarquía que se ubican dentro de /var/www/simulator. Esto facilitaría grandemente el trabajo a alguien que deseara retomar el proyecto y realizar implementaciones en los códigos del mismo. simulator application public docs tests library Figura 3.1 Jerarquía del directorio principal (/var/www/simulator/) 22

CONSTRUCCIÓN DE PORTALES

CONSTRUCCIÓN DE PORTALES Curso «Los portales de internet». Fac. Documentación. Universidad de Murcia. 29 CONSTRUCCIÓN DE PORTALES Juan Antonio Pastor Sánchez 1. Introducción La Gestión de los contenidos informativos de los portales

Más detalles

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

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Antes de analizar lo que es un servidor Web y llevara a cabo su instalación, es muy importante identificar diferentes elementos involucrados

Más detalles

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el Capitulo II. Análisis de herramientas y tecnologías de desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el lenguaje de Modelo de Objetos llamado UML (Unified

Más detalles

Tema 3. 3.3 Tecnologías de Desarrollo

Tema 3. 3.3 Tecnologías de Desarrollo Tema 3 3.3 Tecnologías de Desarrollo HTML pronto pasa a ser insuficiente para todas las posibilidades de la Red No se puede interactuar con el servidor Aparecen los primeros scripts para propocionar dichar

Más detalles

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

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor. Procesamiento del lado del servidor La Programación del lado del servidor es una tecnología que consiste en el procesamiento de una petición de un usuario mediante la interpretación de un script en el

Más detalles

e-planning - Estudio de frameworks para la creación de interfaces gráficas -

e-planning - Estudio de frameworks para la creación de interfaces gráficas - e-planning - Estudio de frameworks para la creación de interfaces gráficas - Elaborado por Rodrigo Testillano Tordesillas Versión del documento: 1.0 Página 1 de 12 Índice INTRODUCCIÓN... 3 JSF.... 4 SOBRE

Más detalles

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo. GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.

Más detalles

Tema 1. Gestión de correo y agenda electrónica

Tema 1. Gestión de correo y agenda electrónica Tema 1 Gestión de correo y agenda electrónica 1 Índice Gestión de correo y agenda electrónica 1. El correo electrónico o e-mail 2. Microsoft Outlook 2007 3. Correo electrónico y configuración 3.1. Carpeta

Más detalles

Virtual-C: Una Herramienta para Administración de Contenidos en Sitios Web

Virtual-C: Una Herramienta para Administración de Contenidos en Sitios Web Virtual-C: Una Herramienta para Administración de Contenidos en Sitios Web Kexy Rodríguez kexy.rodriguez@utp.ac.pa Centro de Investigación, Postgrado y Extensión UTPVirtual Universidad Tecnológica de Panamá

Más detalles

Unidad V: Programación del lado del servidor

Unidad V: Programación del lado del servidor Unidad V: Programación del lado del servidor 5.1 Introducción al lenguaje La Programación del lado del servidor es una tecnología que consiste en el procesamiento de una petición de un usuario mediante

Más detalles

PROYECTO REALIZADO POR: ENTIDAD GESTORA: COFINANCIADO POR:

PROYECTO REALIZADO POR: ENTIDAD GESTORA: COFINANCIADO POR: CLOUD COMPUTING PROYECTO REALIZADO POR: ENTIDAD GESTORA: COFINANCIADO POR: 1. Introducción 1. Qué es el Cloud Computing? La computación en nube es un sistema informático basado en Internet y centros de

Más detalles

Manual de usuario de IBAI BackupRemoto

Manual de usuario de IBAI BackupRemoto Manual de usuario de IBAI BackupRemoto Índice Cliente de IBAI BackupRemoto... 3 Descarga del cliente de IBAI BackupRemoto... 4 Instalación del cliente de IBAI BackupRemoto... 5 Instalación sobre Microsoft

Más detalles

Novedades en Crystal Reports XI

Novedades en Crystal Reports XI Novedades en Crystal Reports XI Introducción Introducción Esta sección proporciona información de alto nivel sobre los componentes, las funciones y las ventajas que ofrece la última versión de Crystal

Más detalles

Desarrollo de Rich Entreprise Applications con Flex

Desarrollo de Rich Entreprise Applications con Flex Desarrollo de Rich Entreprise Applications con Flex Desarrollo de Rich Entreprise Applications con Flex Aplicaciones empresariales orientadas a web. Qué hemos ganado con las aplicaciones web Total ubicuidad.

Más detalles

Acá vamos a ocuparnos de cómo realizar la instalación de una red intra-aula sobre Linux, concretamente en la distribución de GNU/Linux Ubuntu 9.04.

Acá vamos a ocuparnos de cómo realizar la instalación de una red intra-aula sobre Linux, concretamente en la distribución de GNU/Linux Ubuntu 9.04. Instalación de una red intra-aula sobre Linux (Ubuntu 9.04) Introducción La idea y la fundamentación de la creación de redes intra-aula, se puede encontrar en el siguiente enlace: http://www.fedaro.info/2009/06/29/redes-intra-aula/

Más detalles

INTRODUCCIÓN AL WEB. Pag. 1 de 10

INTRODUCCIÓN AL WEB. Pag. 1 de 10 INTRODUCCIÓN AL WEB La World Wide Web o simplemente WWW o Web es uno de los métodos más importantes de comunicación que existe en Internet. Consiste en un sistema de información basado en Hipertexto (texto

Más detalles

Crear un servidor Web en IIS

Crear un servidor Web en IIS Crear un servidor Web en IIS Qué es un servidor web? Un servidor web es un programa que se ejecuta continuamente en un computador, manteniéndose a la espera de peticiones de ejecución que le hará un cliente

Más detalles

TFC J2EE. Aplicación Web para la gestión de facturación de una empresa de cerrajería. Sara Gutiérrez Melero ITIG Junio de 2012

TFC J2EE. Aplicación Web para la gestión de facturación de una empresa de cerrajería. Sara Gutiérrez Melero ITIG Junio de 2012 TFC J2EE Aplicación Web para la gestión de facturación de una empresa de cerrajería Sara Gutiérrez Melero ITIG Junio de 2012 Consultor: Jose Juan Rodriguez Índice 1. Introducción Objetivos Planificación

Más detalles

1 Itinerario. 2 Descripción y funcionalidades principales. Google Docs. 1.1 Qué vamos a hacer? 1.2 Qué pasos vamos a seguir?

1 Itinerario. 2 Descripción y funcionalidades principales. Google Docs. 1.1 Qué vamos a hacer? 1.2 Qué pasos vamos a seguir? Google Docs 1 Itinerario 1.1 Qué vamos a hacer? En este tutorial aprendemos a manejar la herramienta Google Docs, de esta forma nos introduciremos en el llamado cloud computing, que podemos traducir como,

Más detalles

Introducción a macros en Excel 2007

Introducción a macros en Excel 2007 MACROS CON EXCEL Capítulo 1 Introducción a macros en Excel 2007 A lo largo de este primer capítulo comenzaremos a recorrer el camino de las macros en Excel 2007. Para eso, conoceremos las herramientas

Más detalles

Herramientas Informáticas para la Documentación Práctica 1. Introducción al navegador Netscape

Herramientas Informáticas para la Documentación Práctica 1. Introducción al navegador Netscape Herramientas Informáticas para la Documentación Práctica 1. Introducción al navegador Netscape Introducción y objetivos De modo muy resumido Internet es una red que interconecta redes de ordenadores. Conectándose

Más detalles

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor.

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor. Sesión 03: Lenguajes web del servidor Competencias a Conseguir: - Conocer el entorno de trabajo a nivel de servidores web. - Instalación del localhost (Servidor Local). - Repaso general de PHP y ejercicios

Más detalles

Bienvenidos a la presentación: Introducción a conceptos básicos de programación.

Bienvenidos a la presentación: Introducción a conceptos básicos de programación. Bienvenidos a la presentación: Introducción a conceptos básicos de programación. 1 Los programas de computadora son una serie de instrucciones que le dicen a una computadora qué hacer exactamente. Los

Más detalles

COLEGIO DE BACHILLERES ELABORADO POR: ING. IVETT ZARZA HIDALGO Y LIC. CLAUDIA HERNÀNDEZ ALPÍZAR PROFA. DE INFORMATICA Y DE CECAT-INFORMATICA

COLEGIO DE BACHILLERES ELABORADO POR: ING. IVETT ZARZA HIDALGO Y LIC. CLAUDIA HERNÀNDEZ ALPÍZAR PROFA. DE INFORMATICA Y DE CECAT-INFORMATICA Visual Basic.NET es la última versión del sistema de desarrollo Visual Basic. Antes de empezar a crear aplicaciones en Visual Basic.NET, le será útil conocer y entender algunos conceptos básicos de.net.

Más detalles

Manual de requisitos técnicos para la SEDE Electrónica del Ministerio de Economía y Competitividad en I+D+I

Manual de requisitos técnicos para la SEDE Electrónica del Ministerio de Economía y Competitividad en I+D+I Manual de requisitos técnicos para la SEDE Electrónica del Ministerio de Economía y Competitividad en I+D+I Configuraciones técnicas previas de Java y en los navegadores de Internet. Madrid, 24 Abril de

Más detalles

Entre los más conocidos editores con interfaz de desarrollo tenemos:

Entre los más conocidos editores con interfaz de desarrollo tenemos: Herramientas de programación Para poder programar en ensamblador se precisa de algunas herramientas básicas, como un editor para introducir el código, un ensamblador para traducir el código a lenguaje

Más detalles

JAVA EE 5. Arquitectura, conceptos y ejemplos.

JAVA EE 5. Arquitectura, conceptos y ejemplos. JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones

Más detalles

Unidad 1: Conceptos generales de Sistemas Operativos.

Unidad 1: Conceptos generales de Sistemas Operativos. Unidad 1: Conceptos generales de Sistemas Operativos. Tema 3: Estructura del sistema operativo. 3.1 Componentes del sistema. 3.2 Servicios del sistema operativo. 3.3 Llamadas al sistema. 3.4 Programas

Más detalles

Elaboración de un Formulario Web utilizando ASP.NET desde cero.

Elaboración de un Formulario Web utilizando ASP.NET desde cero. Elaboración de un Formulario Web utilizando ASP.NET desde cero. Realizado por: Fabricio.A.Santillana.V. 2-718-1147 TABLA DE CONTENIDO Pág. Introducción...3 Objetivos...4 Contenido...5 1. Introducción a

Más detalles

Sistema de aprendizaje por refuerzo para la mejora del rendimiento del alumno en prácticas

Sistema de aprendizaje por refuerzo para la mejora del rendimiento del alumno en prácticas Memoria resumen del Proyecto de Innovación Docente (PID) Ref.: 52B (periodo 2009-2011) Sistema de aprendizaje por refuerzo para la mejora del rendimiento del alumno en prácticas Investigador Principal:

Más detalles

Poder Judicial de Tucumán Año 2013

Poder Judicial de Tucumán Año 2013 Internet y Correo electrónico El presente instructivo corresponde a una guía básica para el manejo de los programas y para la adquisición de conceptos en relación a estos utilitarios. No obstante ello,

Más detalles

Páginas web ::: Documentos PDF en la web Diseño de materiales multimedia. Web 2.0. 1.11 Documentos PDF en la web

Páginas web ::: Documentos PDF en la web Diseño de materiales multimedia. Web 2.0. 1.11 Documentos PDF en la web 84 1.11 Documentos PDF en la web 85 1.11 Documentos PDF en la web 1.11.1 Introducción En un sitio web es frecuente poner a disposición de los usuarios documentos en formato PDF para la consulta de información.

Más detalles

La obra se proporciona bajo los términos de esta licencia pública de Sisoft de México

La obra se proporciona bajo los términos de esta licencia pública de Sisoft de México Licencia La obra se proporciona bajo los términos de esta licencia pública de Sisoft de México S. A de C.V., Está protegida por derechos de autor y / u otras leyes aplicables. Cualquier uso diferente a

Más detalles

Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011

Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011 Módulo 1. Fundamentos de Computadores Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011 1 CONTENIDO Tema 1. Introducción

Más detalles

Programación con PHP y MySql Instituto CBTech 5/14

Programación con PHP y MySql Instituto CBTech 5/14 Programación con PHP y MySql Instituto CBTech 5/14 Programación con PHP y MySql Instituto CBTech 6/14 Qué es una aplicación web? Una aplicación web es un sistema informático que los usuarios utilizan accediendo

Más detalles

Servidores web. Qué es un servidor web? Tipos de servidores. Lic. Lorena Bernis

Servidores web. Qué es un servidor web? Tipos de servidores. Lic. Lorena Bernis Servidores web Qué es un servidor web? Tipos de servidores. Lic. Lorena Bernis Servidores web 2 SERVIDOR En informática, un servidor es un tipo de software que realiza ciertas tareas en nombre de los usuarios.

Más detalles

Simulador de Protocolos de Red a tráves de WEB

Simulador de Protocolos de Red a tráves de WEB Simulador de Protocolos de Red a tráves de WEB Propuesta de Estudio 20071608 Director Ing. Francisco Antonio Polanco Montelongo Resumen Introducción Actualmente, el desarrollo tecnológico a alcanzado niveles

Más detalles

Interfaces de acceso a base de datos. Interfaces de acceso a base de datos. Interfaces de acceso a base de datos. Interfaces de acceso a base de datos

Interfaces de acceso a base de datos. Interfaces de acceso a base de datos. Interfaces de acceso a base de datos. Interfaces de acceso a base de datos Objetivos del curso Patrimonio Cultural Desarrollo de Herramientas de Administración y Acceso Adquirir visión generalizada de las tecnologías de desarrollo utilizadas en Sistemas de gestión del Patrimonio

Más detalles

Cristian Blanco www.cristianblanco.es

Cristian Blanco www.cristianblanco.es INSTALACIÓN Y USO DE ENTORNOS DE DESARROLLO 2.1 ENTORNO DE DESARROLLO INTEGRADO Un entorno de desarrollo integrado (en inglés integrated development environment) es un programa informático compuesto por

Más detalles

C.F.G.S. DESARROLLO DE APLICACIONES INFORMÁTICAS. MÓDULO: Diseño y realización de servicios de presentación en entornos gráficos.

C.F.G.S. DESARROLLO DE APLICACIONES INFORMÁTICAS. MÓDULO: Diseño y realización de servicios de presentación en entornos gráficos. C.F.G.S. DESARROLLO DE APLICACIONES INFORMÁTICAS MÓDULO: Diseño y realización de servicios de presentación en entornos gráficos Unidad 1 Introducción Visual Basic.NET El objetivo de la unidad es conocer

Más detalles

Pasos para crear un sitio web ASP.Net con el Visual Studio en cualquiera de sus versiones. Unidad 1. Conceptos [ASP.NET EN VISUAL STUDIO]

Pasos para crear un sitio web ASP.Net con el Visual Studio en cualquiera de sus versiones. Unidad 1. Conceptos [ASP.NET EN VISUAL STUDIO] Pasos para crear un sitio web ASP.Net con el Visual Studio en cualquiera de sus versiones Conceptos Lo primero que necesitamos para crear una aplicación o proyecto web es seleccionar el entorno del Visual

Más detalles

Acercándose a Flash. Capítulo. 1.1 Por qué Flash?

Acercándose a Flash. Capítulo. 1.1 Por qué Flash? Capítulo 1 Acercándose a Flash 1.1 Por qué Flash? F lash se ha convertido en un clásico para el diseño de páginas web y de presentaciones multimedia interactivas. Las características más destacadas de

Más detalles

Ambos paquetes simplifican mucho la instalación del servidor en el equipo. Y ambos pueden ser utilizados para la creación de una red intra-aula.

Ambos paquetes simplifican mucho la instalación del servidor en el equipo. Y ambos pueden ser utilizados para la creación de una red intra-aula. Instalación de una red intra-aula sobre Windows Introducción La idea y la fundamentación de la creación de redes intra-aula, se puede encontrar en el siguiente enlace: http://www.fedaro.info/2009/06/29/redes-intra-aula/

Más detalles

Studium, Campus Virtual de la Universidad de Salamanca.

Studium, Campus Virtual de la Universidad de Salamanca. Studium, Campus Virtual de la Universidad de Salamanca. Contenidos 1 Qué es Studium 2 Instalación de Studium en USAL 3 Atención a los usuarios 4 Instalación Moodle. MoodleWindowsInstaller 5 Moodle portable

Más detalles

Novedades en Crystal Reports 10

Novedades en Crystal Reports 10 Novedades en Crystal Reports 10 Basado en la estabilidad probada de la versión 9, Crystal Reports ofrece nuevas funciones y mejoras. Este capítulo presenta dichas funciones y mejoras proporcionando un

Más detalles

Microsoft. Febrero de 2006

Microsoft. Febrero de 2006 Microsoft Febrero de 2006 Tabla de contenido Información general de Microsoft Office InfoPath 2007...1 Incorpore eficacia a sus formularios comerciales...1 Amplíe el alcance de sus formularios comerciales...2

Más detalles

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 301127- Programación de sitios web Act 4: Lección Evaluativa 1

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA 301127- Programación de sitios web Act 4: Lección Evaluativa 1 Qué es PHP? PHP: HyperText Preprocessor. Es un lenguaje de tipo scripting, que actualmente está siendo utilizado como una de las mejores alternativas para desarrollar aplicaciones en la Web. Un lenguaje

Más detalles

INTRODUCCIÓN A LA PROGRAMACIÓN WEB UNIDAD. Estructura de contenidos: http://www.ucv.edu.pe/cis/ cisvirtual@ucv.edu.pe. 1.

INTRODUCCIÓN A LA PROGRAMACIÓN WEB UNIDAD. Estructura de contenidos: http://www.ucv.edu.pe/cis/ cisvirtual@ucv.edu.pe. 1. INTRODUCCIÓN A LA PROGRAMACIÓN WEB UNIDAD 1 Estructura de contenidos: 1. Programación Web 2. Sistema De Información 3. Sistema Web 4. Requisitos Para Sistemas Web Con Asp 5. Internet Information Server

Más detalles

Guía de Inicio Respaldo Cloud

Guía de Inicio Respaldo Cloud Guía de Inicio Respaldo Cloud Calle San Rafael, 14 28108 Alcobendas (Madrid) 900 103 293 www.acens.com Contenido 1 Introducción... 3 2 Características Respaldo Cloud... 4 3 Acceso y activación... 5 - Gestión

Más detalles

Plataforma e-ducativa Aragonesa. Manual de Administración. Bitácora

Plataforma e-ducativa Aragonesa. Manual de Administración. Bitácora Plataforma e-ducativa Aragonesa Manual de Administración Bitácora ÍNDICE Acceso a la administración de la Bitácora...3 Interfaz Gráfica...3 Publicaciones...4 Cómo Agregar una Publicación...4 Cómo Modificar

Más detalles

Estándares para el Uso de Herramientas de Desarrollo y Plataformas de Aplicaciones Web

Estándares para el Uso de Herramientas de Desarrollo y Plataformas de Aplicaciones Web Secretaría de Planificación Estratégica Oficina de Informática Estándares para el Uso de Herramientas de Desarrollo y Plataformas de Aplicaciones Web VERSIÓN 3 Abril 2006 Índice 1. Generalidades... 3 1.1

Más detalles

La Arquitectura de las Máquinas Virtuales.

La Arquitectura de las Máquinas Virtuales. La Arquitectura de las Máquinas Virtuales. La virtualización se ha convertido en una importante herramienta en el diseño de sistemas de computación, las máquinas virtuales (VMs) son usadas en varias subdiciplinas,

Más detalles

Módulo 1 El lenguaje Java

Módulo 1 El lenguaje Java Módulo 1 El lenguaje 1.1 Presentación de es un lenguaje de programación desarrollado por la empresa Sun Microsystems en 1991 como parte de un proyecto secreto de investigación llamado Green Proyect, con

Más detalles

Jornadas de INCLUSION DIGITAL. a través de las TIC ORGANIZAN: CAPACITA: CLAEH

Jornadas de INCLUSION DIGITAL. a través de las TIC ORGANIZAN: CAPACITA: CLAEH Jornadas de INCLUSION DIGITAL a través de las TIC ORGANIZAN: CAPACITA: CLAEH Con Google Docs puedes crear, compartir y editar documentos online con facilidad. A continuación te indicamos algunas acciones

Más detalles

CMS JOOMLA. Características

CMS JOOMLA. Características CMS JOOMLA Joomla es un sistema gestor de contenidos dinámicos (CMS o Content Management System) que permite crear sitios web de alta interactividad, profesionalidad y eficiencia. La administración de

Más detalles

Guía 7: Virtualización. 1. Configurar una infraestructura de hardware por varios sistemas operativos funcionando de forma totalmente independiente.

Guía 7: Virtualización. 1. Configurar una infraestructura de hardware por varios sistemas operativos funcionando de forma totalmente independiente. Arquitectura de Computadoras: Guía 7 1 Facultad: Ingeniería. Escuela: Electrónica Asignatura: Arquitectura de Computadoras Guía 7: Virtualización. Objetivo General 1. Configurar una infraestructura de

Más detalles

UNIVERSIDAD ALBERT EINSTEIN FACULTAD DE INGENIERIA

UNIVERSIDAD ALBERT EINSTEIN FACULTAD DE INGENIERIA UNIVERSIDAD ALBERT EINSTEIN FACULTAD DE INGENIERIA Estudio de las herramientas TOAD y DBArtisan para la administración e integración de bases de datos relacionales. PREVIA OPCION AL TÍTULO DE: INGENIERO

Más detalles

Maquinas virtuales Conceptos Básicos

Maquinas virtuales Conceptos Básicos Jimenez Zamudio Eduardo Aplicaciones de redes de computadoras 13 de septiembre de 2014 Maquinas virtuales Conceptos Básicos Concepto Básicamente, es un equipo dentro de un equipo, implementado en el software.

Más detalles

Unidad V MANEJO DE SOFTWARE PARA DOCUMENTAR

Unidad V MANEJO DE SOFTWARE PARA DOCUMENTAR Unidad V MANEJO DE SOFTWARE PARA DOCUMENTAR Unidad V: Manejo de software para documentar Semana 13 A. PRESENTACIÓN Para la construcción del documento el siguiente paso es elegir el programa de cómputo

Más detalles

TALLER DE TECNOLOGÍAS PARA LA EDUCACIÓN: PerúEduca Guía de Instalación y Configuración para Servidores

TALLER DE TECNOLOGÍAS PARA LA EDUCACIÓN: PerúEduca Guía de Instalación y Configuración para Servidores TALLER DE TECNOLOGÍAS PARA LA EDUCACIÓN: PerúEduca Guía de Instalación y Configuración para Servidores 1 GUÍA DE INSTALACIÓN Y CONFIGURACIÓN PARA SERVIDORES 1. INTRODUCCIÓN El sistema para servidores

Más detalles

Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente

Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente Capítulo 5: Aplicaciones cliente 46 5.1 La aplicación cliente en la Pocket PC La aplicación desarrollada para el cliente en un dispositivo móvil como corresponde a la Pocket PC necesita una capa muy delgada

Más detalles

LENGUAJES DE PROGRAMACIÓN WEB (PHP1, HTML52)

LENGUAJES DE PROGRAMACIÓN WEB (PHP1, HTML52) LENGUAJES DE PROGRAMACIÓN WEB (PHP1, HTML52) LENGUAJES DE PROGRAMACIÓN WEB (PHP, HTML5) 1 Sesión No. 1 Nombre: Arquitectura Objetivo: Conocer cómo funciona y se planifica una aplicación web Contextualización

Más detalles

Antes de comenzar un sitio. Empezar un sitio web

Antes de comenzar un sitio. Empezar un sitio web Antes de comenzar un sitio Es muy recomendable realizar la siguiente actividad, de evaluación de páginas web, para tener ideas y recursos. http://www.uamvirtual.es/mod/assignment/view.php?id=3228 Empezar

Más detalles

Tema 1: y el lenguaje Java 1.Programación orientada a objetos 2.El lenguaje Java 3.Compilación, bytecode y JVMs 4.Entornos de desarrollo Java 5.Java vs otros lenguajes OO Programación orientada a objetos

Más detalles

Manual de Instalación y Configuración

Manual de Instalación y Configuración Manual de Instalación y Configuración Sí Servidor Estatal SSIE - Estatal v.10.2 Mayo, 2015 Nombre del Manual Instalación y Configuración Servidor Estatal SSIE-Estatal v.10.2 Unidad responsable de la Elaboración

Más detalles

IVista: es la interfaz con la que el Presentador se comunica con la vista.

IVista: es la interfaz con la que el Presentador se comunica con la vista. Capítulo 3 MODELO DE DISEÑO 3.1 Arquitectura Modelo-Vista-Presentador La arquitectura Modelo-Vista-Presentador (MVP) [11] separa el modelo, la presentación y las acciones basadas en la interacción con

Más detalles

INSTALACION VIRTUALIZADA DE UBUNTU SERVER CON SERVICIOS LAMP Y OPENSSH SOBRE VIRTUAL BOX. Nicolás Botero Botero Juan Manuel Velásquez Isaza

INSTALACION VIRTUALIZADA DE UBUNTU SERVER CON SERVICIOS LAMP Y OPENSSH SOBRE VIRTUAL BOX. Nicolás Botero Botero Juan Manuel Velásquez Isaza INSTALACION VIRTUALIZADA DE UBUNTU SERVER CON SERVICIOS LAMP Y OPENSSH SOBRE VIRTUAL BOX Nicolás Botero Botero Juan Manuel Velásquez Isaza Universidad Tecnológica de Pereira Facultad de Ingenierías Ingeniería

Más detalles

Novedades de Microsoft Dynamics 2011

Novedades de Microsoft Dynamics 2011 Novedades de Microsoft Dynamics 2011 Microsoft Dynamics CRM 2011 ofrece características nuevas y mejoradas que le ayudarán a aumentar la eficacia y la productividad de su organización. Interfaz de Microsoft

Más detalles

Marco Teórico MARCO TEÓRICO. AGNI GERMÁN ANDRACA GUTIERREZ

Marco Teórico MARCO TEÓRICO. AGNI GERMÁN ANDRACA GUTIERREZ MARCO TEÓRICO. 13 14 Virtualización Hablar de virtualización es hablar de un concepto que describe la posibilidad de tener varios sistemas operativos funcionando al mismo tiempo en un mismo equipo físico.

Más detalles

Operación Microsoft Windows XP

Operación Microsoft Windows XP El ambiente de trabajo Descripción del ambiente de trabajo Luego de encendida la computadora, la pantalla se presenta de la forma que lo muestra la figura. El ambiente de trabajo que proporciona el sistema

Más detalles

Revista Digital Universitaria. 10 de agosto 2004 Volumen 5 Número 7 ISSN: 1067-6079

Revista Digital Universitaria. 10 de agosto 2004 Volumen 5 Número 7 ISSN: 1067-6079 Revista Digital Universitaria 10 de agosto 2004 Volumen 5 Número 7 ISSN: 1067-6079 JAVA o L.I. Anabell Comas Becaria de la Coordinación de Publicaciones Digitales anabell@alethia.dgsca.unam.mx o http://www.revista.unam.mx/vol.7/num12/art104/art104.htm

Más detalles

Correo. OpenOffice.org 2.4.1

Correo. OpenOffice.org 2.4.1 Correo OpenOffice.org 2.4.1 1 Índice de contenido 1. INTRODUCCIÓN...3 1.1 Qué es Mozilla Thunderbird?...3 3. CONFIGURACIÓN...12 3.1 Alta de una cuenta de correo...12 3.2 Configuración del servicio de directorio

Más detalles

Apéndice B. Telefonía a través de Microsoft TAPI 1. B1. Microsoft TAPI y algunos detalles de la corrida con CSLU Toolkit

Apéndice B. Telefonía a través de Microsoft TAPI 1. B1. Microsoft TAPI y algunos detalles de la corrida con CSLU Toolkit Apéndice B. Telefonía a través de Microsoft TAPI 1 B1. Microsoft TAPI y algunos detalles de la corrida con CSLU Toolkit El archivo que hace la llamada es TAPISend que se encuentra en formato ejecutable.

Más detalles

Introducción... 1 Qué es Java?... 1 Compilando a Bytecode... 1 Usando jgrasp Para Hacer el Trabajo Sucio... 5 El Entorno de jgrasp...

Introducción... 1 Qué es Java?... 1 Compilando a Bytecode... 1 Usando jgrasp Para Hacer el Trabajo Sucio... 5 El Entorno de jgrasp... Contenido Introducción... 1 Qué es Java?... 1 Compilando a Bytecode... 1 Usando jgrasp Para Hacer el Trabajo Sucio... 5 El Entorno de jgrasp... 5 Introducción Es tiempo de hablar en detalle de lo que significa

Más detalles

Almacenamiento en la nube: SkyDrive, Google Drive, Dropbox. Cuál elegir?

Almacenamiento en la nube: SkyDrive, Google Drive, Dropbox. Cuál elegir? Almacenamiento en la nube: SkyDrive, Google Drive, Dropbox. Cuál elegir? Ya no caben dudas, hay que mudarse a la nube. Este es un buen momento para comparar los tres servicios más populares para almacenar

Más detalles

Universidad Francisco Gavidia.

Universidad Francisco Gavidia. H1 G7 es: Universidad Francisco Gavidia. MANUAL DE INSTALACION. SISTEMA DE CONTROL DE PAGO DE PERSONAL PARA FUNDACIONES. (OptimaList) Autores: Rut Elizabeth Ayala. Marcela Martínez. Stilwell Santos. Fecha:

Más detalles

Manual de Firefox Instalación y uso

Manual de Firefox Instalación y uso Manual de Firefox Instalación y uso Servicio de Información Mesoamericano de Agricultura Sostenible ÍNDICE Qué es Firefox?... Cómo lo descargo a mi computadora?... Instalación... Comenzar a utilizar Mozilla

Más detalles

Capítulo III. Análisis y diseño.

Capítulo III. Análisis y diseño. Capítulo III. Análisis y diseño. 3.1 Análisis. El análisis es el intermediario entre los requisitos del sistema y el diseño, esta sección definiremos el análisis con una serie de modelos técnicos del sistema,

Más detalles

Requisitos técnicos para la instalación. Arquitectura Hardware Arquitectura Software. Instrucciones de instalación GONG-R

Requisitos técnicos para la instalación. Arquitectura Hardware Arquitectura Software. Instrucciones de instalación GONG-R v 3 Junio 2015 ÍNDICE Introducción Requisitos técnicos para la instalación Arquitectura Hardware Arquitectura Software Instrucciones de instalación Instalación módulo GONG2 Instalación módulo eporte Instrucciones

Más detalles

Para iniciarnos en el estudio de este curso necesitamos estar familiarizados con ciertos conceptos generales, entre ellos:

Para iniciarnos en el estudio de este curso necesitamos estar familiarizados con ciertos conceptos generales, entre ellos: Conceptos básicos de la internet y la web Para iniciarnos en el estudio de este curso necesitamos estar familiarizados con ciertos conceptos generales, entre ellos: Internet: Red mundial de computadoras

Más detalles

>> Instalación y Configuración de un Servidor WEB. >> HTML & PHP

>> Instalación y Configuración de un Servidor WEB. >> HTML & PHP >> Instalación y Configuración de un Servidor WEB. >> HTML & PHP Nicolás Álvarez S. nalvarezs@vtr.net Juan Monsalve Z. jmonsalve@elo.utfsm.cl Tópicos a tratar Qué es un servidor Web? Dónde puedo instalar

Más detalles

Cloud Computing. Rodrigo Moreno Rosales DN-11

Cloud Computing. Rodrigo Moreno Rosales DN-11 Cloud Computing Rodrigo Moreno Rosales DN-11 Cloud Computing La computación en la nube,conocido también como servicios en la nube, informática en la nube, nube de cómputo o nube de conceptos, es un paradigma

Más detalles

Software libre complementario

Software libre complementario Software libre complementario Ministerio de Educación. ITE. Software libre complementario. 1 Módulo 4. Software libre complementario En este apartado vamos a contemplar algunos programas de acceso libre

Más detalles

Introducción: Los Mapas Conceptuales

Introducción: Los Mapas Conceptuales Introducción: Los Mapas Conceptuales Este Tutorial tiene por objetivo Facilitar el uso de la herramienta CmapsTools para realizar mapas conceptuales. Un mapa conceptual puede ser definido como un instrumento,

Más detalles

Prácticas de Introducción a los Computadores Curso 2000-2001 1 WINDOWS 95

Prácticas de Introducción a los Computadores Curso 2000-2001 1 WINDOWS 95 Prácticas de Introducción a los Computadores Curso 2000-2001 1 Novedades WINDOWS 95 Windows 95 es un sistema operativo orientado a documentos. Permite la asociación de la extensión de cada fichero a un

Más detalles

CAPÍTULO 3 VISUAL BASIC

CAPÍTULO 3 VISUAL BASIC CAPÍTULO 3 VISUAL BASIC 3.1 Visual Basic Microsoft Visual Basic es la actual y mejor representación del viejo lenguaje BASIC, le proporciona un sistema completo para el desarrollo de aplicaciones para

Más detalles

SEIDA TOOLS: MANUAL DE USO

SEIDA TOOLS: MANUAL DE USO 15/4/2011 SUNAT SEIDA TOOLS: MANUAL DE USO Nuevo SIGAD Equipo de Arquitectura Contenido 1 Introducción 4 2 Requisitos 5 3 Instalación 5 4 Uso 7 5 Configuración 8 6 Envíos 11 6.1 Escenario 1: envío por

Más detalles

Capitulo 5. Implementación del sistema MDM

Capitulo 5. Implementación del sistema MDM Capitulo 5. Implementación del sistema MDM Una vez que se concluyeron las actividades de análisis y diseño se comenzó la implementación del sistema MDM (Manejador de Documentos de MoProSoft). En este capitulo

Más detalles

TUTORIAL GOOGLE DOCS

TUTORIAL GOOGLE DOCS TUTORIAL GOOGLE DOCS Las principales ventajas de Google Docs son: Nuestros documentos se almacenan en línea: esto nos permite acceder a ellos desde cualquier ordenador con conexión a internet, y compartirlos

Más detalles

Maquinas Virtuales. Prof.: Huerta Molina Samuel. Cuellar Sánchez Jesús. Pinto López Luis Tonatiuh. Hecho por Jesús y Luis. 1

Maquinas Virtuales. Prof.: Huerta Molina Samuel. Cuellar Sánchez Jesús. Pinto López Luis Tonatiuh. Hecho por Jesús y Luis. 1 ESTRUCTURA Y PROGRAMACIÓN DE COMPUTADORAS. Grupo: 08. Prof.: Huerta Molina Samuel. Maquinas Virtuales Cuellar Sánchez Jesús. Pinto López Luis Tonatiuh. Hecho por Jesús y Luis. 1 Conceptos Básicos Sobre

Más detalles

2.3. Lenguajes de programación del lado Servidor. ASP.NET (Active Server Pages).

2.3. Lenguajes de programación del lado Servidor. ASP.NET (Active Server Pages). 2.3. Lenguajes de programación del lado Servidor Existe una multitud de lenguajes concebidos o no para Internet. Cada uno de ellos explota más a fondo ciertas características que lo hacen más o menos útiles

Más detalles

Escuela Industrial Superior SISTEMAS OPERATIVOS. Windows 7 Conceptos básicos. Ventajas de Windows. Elementos de trabajo

Escuela Industrial Superior SISTEMAS OPERATIVOS. Windows 7 Conceptos básicos. Ventajas de Windows. Elementos de trabajo SISTEMAS OPERATIVOS Un Sistema Operativo (SO, frecuentemente OS, del inglés Operating System) es un programa o conjunto de programas que en un Sistema Informático controla los recursos de hardware y gestiona

Más detalles

INDICE Programación Introducción Capitulo 21 BASIC Capitulo 22. COBOL Capitulo 23 DELPHI Capitulo 24. FORTRAN Capitulo 25.

INDICE Programación Introducción Capitulo 21 BASIC Capitulo 22. COBOL Capitulo 23 DELPHI Capitulo 24. FORTRAN Capitulo 25. INDICE Programación Introducción 706 Capitulo 21 BASIC 711 Introducción 711 Sintaxis 713 Procedimientos y control de flujo 713 Tipos de datos 714 Disponibilidad y variantes del dialecto 714 Capitulo 22.

Más detalles

Características de OpenCms

Características de OpenCms Características de OpenCms Se basa en Java y Xml OpenCms está totalmente desarrollado en java bajo el estándar servlet. Por lo tanto, se puede integrar fácilmente en entornos hardware y software existentes,

Más detalles

En el siguiente apartado se detallan ciertos conceptos que ayudan a comprender en mayor medida el Proyecto.

En el siguiente apartado se detallan ciertos conceptos que ayudan a comprender en mayor medida el Proyecto. APÉNDICES En el siguiente apartado se detallan ciertos conceptos que ayudan a comprender en mayor medida el Proyecto. APÉNDICE 1. Herramientas Las herramientas que se usaron en el análisis, desarrollo

Más detalles

Configuración del equipo cliente para el uso de los servicios de la Sede Electrónica de los TEA

Configuración del equipo cliente para el uso de los servicios de la Sede Electrónica de los TEA Configuración del equipo cliente para el uso de los servicios de la Sede Electrónica de los TEA 1. INTRODUCCIÓN... 2 2. REQUISITOS DE CONFIGURACIÓN CLIENTE... 2 3. HABILITAR TODOS LOS PROPÓSITOS DE SU

Más detalles

CAPITULO I El Problema

CAPITULO I El Problema CAPITULO I El Problema 1. CAPITULO I EL PROBLEMA. 1.1. PLANTEAMIENTO DEL PROBLEMA. Desde su nacimiento la Facultad de Administración, Finanzas e Informática dispone del departamento de la biblioteca, con

Más detalles

Capítulo 4.- Recomendaciones para un Servidor web y de bases de datos seguro.

Capítulo 4.- Recomendaciones para un Servidor web y de bases de datos seguro. Capítulo 4.- Recomendaciones para un Servidor web y de bases de datos seguro. Este capítulo explica las características que un servidor web y de bases de datos seguro debe tener. Esto es esencial para

Más detalles