LENGUAJES DE PROGRAMACIÓN POR QUÉ HAY TANTOS Y APARECEN NUEVOS? Por: Hanna Oktaba


Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "LENGUAJES DE PROGRAMACIÓN POR QUÉ HAY TANTOS Y APARECEN NUEVOS? Por: Hanna Oktaba"

Transcripción

1 LENGUAJES DE PROGRAMACIÓN POR QUÉ HAY TANTOS Y APARECEN NUEVOS? Por: Hanna Oktaba La computadora, a diferencia de otras herramientas que en general apoyan el esfuerzo físico de los humanos, fue inventada para facilitar el trabajo intelectual. Si el hombre tiene algún problema, por ejemplo "sumar dos y dos", el diseñador define el algoritmo que resuelve el problema, el programador lo codifica en un lenguaje de programación, el cual la computadora es capaz de "entender", luego la computadora ejecuta el algorítmo expresado como programa en el lenguaje de programación en cuestión, y listo. La máquina le entrega al hombre la respuesta "4", sin que éste tuviera que esforzar sus neuronas. Cuál es el papel del lenguaje de programación en este proceso? Es muy importante, el lenguaje de programación es el medio de comunicación entre el hombre y la máquina. El modelo general de las computadoras, desde que fue esbozado por von Neumann, no ha cambiado mucho, mientras que la invención humana para proponerse nuevos problemas a resolver, usando la computadora, parece no tener límites. En consecuencia, los lenguajes de programación tienen que adaptarse a éstas crecientes necesidades y aumentar la expresividad para poder resolver problemas muy diversos y cada vez más complejos. Además, tienen que ofrecer cierta eficiencia en la ejecución. Es un logro difícil de alcanzar y por lo tanto, se requiere una búsqueda constante de nuevos lenguajes para ello. Permítanme exponer un breve panorama de los más importantes tipos de lenguajes de programación. Lenguajes Imperativos Comenzaré por los llamados lenguajes imperativos. En este tipo de lenguajes, cuyo origen está ligado a la propia arquitectura de von Neumann, la arquitectura consta de una secuencia de celdas, llamadas memoria, en la cual se pueden guardar en forma codificada, lo mismo datos que instrucciones; y de un procesador, el cual es capaz de ejecutar de manera secuencial una serie de operaciones, principalmente aritméticas y booleanas, llamadas comandos. En general, un lenguaje imperativo ofrece al programador conceptos que se traducen de forma natural al modelo de la máquina. Los lenguajes imperativos más destacados de la historia han sido: FORTRAN, Algol, Pascal, C, Modula-2, Ada. Seguramente, los lectores conocen por lo menos uno de ellos. El programador, al utilizar un lenguaje imperativo, por lo general tiene que traducir la solución abstracta del problema a términos muy primitivos, cercanos a la máquina. La distancia entre el nivel del razonamiento humano y lo expresable por los lenguajes imperativos causa que sus programas sean más "comprensibles" para la máquina que para el hombre. Esta desventaja para nosotros, reflejada en la dificultad que tenemos al construir programas en un lenguaje imperativo, se vuelve una ventaja en el momento de la generación del código. El programa está expresado en términos tan cercanos a la máquina, que el código generado es relativamente parecido al programa original, lo que permite cierta eficiencia en la ejecución.

2 Lenguajes Funcionales Los matemáticos desde hace un buen tiempo están resolviendo problemas usando el concepto de función. Una función convierte ciertos datos en resultados. Si supiéramos cómo evaluar una función, usando la computadora, podríamos resolver automáticamente muchos problemas. Así pensaron algunos matemáticos, que no le tenían miedo a la máquina, e inventaron los lenguajes de programación funcionales. Además, aprovecharon la posibilidad que tienen las funciones para manipular datos simbólicos, y no solamente numéricos, y la propiedad de las funciones que les permite componer, creando de esta manera, la oportunidad para resolver problemas complejos a partir de las soluciones a otros más sencillos. También se incluyó la posibilidad de definir funciones recursivamente. Un lenguaje funcional ofrece conceptos que son muy entendibles y relativamente fáciles de manejar para todos los que no se durmieron en las clases de matemáticas. El lenguaje funcional más antiguo, y seguramente el más popular hasta la fecha, es LISP, diseñado por McCarthy [1] en la segunda mitad de los años 50. Su área de aplicación es principalmente la Inteligencia Artificial. En la década de los 80 hubo una nueva ola de interés por los lenguajes funcionales, añadiendo la tipificación y algunos conceptos modernos de modularización y polimorfismo, como es el caso del lenguaje ML. Programar en un lenguaje funcional significa construir funciones a partir de las ya existentes. Por lo tanto es importante conocer y comprender bien las funciones que conforman la base del lenguaje, así como las que ya fueron definidas previamente. De esta manera se pueden ir construyendo aplicaciones cada vez más complejas. La desventaja de este modelo es que resulta bastante alejado del modelo de la máquina de von Neumann y, por lo tanto, la eficiencia de ejecución de los intérpretes de lenguajes funcionales no es comparable con la ejecución de los programas imperativos precompilados. Para remediar la deficiencia, se está buscando utilizar arquitecturas paralelas que mejoren el desempeño de los programas funcionales, sin que hasta la fecha estos intentos tengan un impacto real importante. Lenguajes Lógicos Otra forma de razonar para resolver problemas en matemáticas se fundamenta en la lógica de primer orden. El conocimiento básico de las matemáticas se puede representar en la lógica en forma de axiomas, a los cuales se añaden reglas formales para deducir cosas verdaderas (teoremas) a partir de los axiomas. Gracias al trabajo de algunos matemáticos, de finales de siglo pasado y principios de éste, se encontró la manera de automatizar computacionalmente el razonamiento lógico --particularmente para un subconjunto significativo de la lógica de primer orden-- que permitió que la lógica matemática diera origen a otro tipo de lenguajes de programación, conocidos como lenguajes lógicos. También se conoce a estos lenguajes, y a los funcionales, como lenguajes declarativos, porque el programador, parar solucionar un problema, todo lo que tiene que hacer es describirlo vía axiomas y reglas de deducción en el caso de la programación lógica y vía funciones en el caso de la programación funcional. En los lenguajes lógicos se utiliza el formalismo de la lógica para representar el conocimiento sobre un problema y para hacer preguntas que, si se demuestra que se pueden deducir a partir del conocimiento dado en forma de axiomas y de las reglas de deducción

3 estipuladas, se vuelven teoremas. Así se encuentran soluciones a problemas formulados como preguntas. Con base en la información expresada dentro de la lógica de primer orden, se formulan las preguntas sobre el dominio del problema y el intérprete del lenguaje lógico trata de encontrar la respuesta automáticamente. El conocimiento sobre el problema se expresa en forma de predicados (axiomas) que establecen relaciones sobre los símbolos que representan los datos del dominio del problema. El PROLOG es el primer lenguaje lógico y el más conocido y utilizado. Sus orígenes se remotan a los inicios de la década de los 70 con los trabajos del grupo de A. Colmerauer [2] en Marsella, Francia. También en este caso, las aplicaciones a la Inteligencia Artificial mantienen el lenguaje vivo y útil. En el caso de la programación lógica, el trabajo del programador se restringe a la buena descripción del problema en forma de hechos y reglas. A partir de ésta se pueden encontrar muchas soluciones dependiendo de como se formulen las preguntas (metas), que tienen sentido para el problema. Si el programa está bien definido, el sistema encuentra automáticamente las respuestas a las preguntas formuladas. En este caso ya no es necesario definir el algoritmo de solución, como en la programación imperativa, en cambio, lo fundamental aquí es expresar bien el conocimiento sobre el problema mismo. En programación lógica, al igual que en programación funcional, el programa, en este caso los hechos y las reglas, están muy alejados del modelo von Neumann que posee la máquina en la que tienen que ser interpretados; por lo tanto, la eficiencia de la ejecución no puede ser comparable con la de un programa equivalente escrito en un lenguaje imperativo. Sin embargo, para cierto tipo de problemas, la formulación del programa mismo puede ser mucho más sencilla y natural (para un programador experimentado, por supuesto). Lenguajes Orientados a Objetos A mediados de los años 60 se empezó a vislumbrar el uso de las computadoras para la simulación de problemas del mundo real. Pero el mundo real está lleno de objetos, en la mayoría de los casos complejos, los cuales difícilmente se traducen a los tipos de datos primitivos de los lenguajes imperativos. Así es que a dos noruegos, Dahl y Nygaard [3], se les ocurrió el concepto de objeto y sus colecciones, llamadas clases de objetos, que permitieron introducir abstracciones de datos a los lenguajes de programación. La posibilidad de reutilización del código y sus indispensables modificaciones, se reflejaron en la idea de las jerarquías de herencia de clases. A ellos también les debemos el concepto de polimorfismo introducido vía procedimientos virtuales. Todos estos conceptos fueron presentados en el lenguaje Simula 67, desde el año Aunque pensado como lenguaje de propósito general, Simula tuvo su mayor éxito en las aplicaciones de simulación discreta, gracias a la clase SIMULATION que facilitaba considerablemente la programación. La comunidad informática ha tardado demasiado en entender la utilidad de los conceptos básicos de Simula 67, que hoy identificamos como conceptos del modelo de objetos. Tuvimos que esperar hasta los años 80 para vivir una verdadera ola de propuestas de lenguajes de programación con conceptos de objetos encabezada por Smalltalk, C++, Eiffel, Modula-3, Ada 95 y terminando con Java. La moda de objetos se ha extendido de los lenguajes de programación a la Ingeniería de Software. Si alguien desarrolla sistemas y

4 todavía no sabe qué es un objeto, mejor que no lo confiese en público y lea cuanto antes los números 3, 4 y 20 de la revista Soluciones Avanzadas. El modelo de objetos, y los lenguajes que lo usan, parecen facilitar la construcción de sistemas o programas en forma modular. Los objetos ayudan a expresar programas en términos de abstracciones del mundo real, lo que aumenta su comprensión. La clase ofrece cierto tipo de modularización que facilita las modificaciones al sistema. La reutilización de clases previamente probadas en distintos sistemas también es otro punto a favor. Sin embargo, el modelo de objetos, a la hora de ser interpretado en la arquitectura von Neumann conlleva un excesivo manejo dinámico de memoria debido a la constante creación de objetos, así como a una carga de código fuerte causada por la constante invocación de métodos. Por lo tanto, los programas en lenguajes orientados a objetos siempre pierden en eficiencia, en tiempo y memoria, contra los programas equivalentes en lenguajes imperativos. Para consolarnos, los expertos dicen que les ganan en la comprensión de código. Lenguajes Concurrentes, Paralelos y Distribuidos La necesidad de ofrecer concurrencia en el acceso a los recursos computacionales se remonta a los primeros sistemas operativos. Mientras que un programa realizaba una operación de entrada o salida otro podría gozar del tiempo del procesador para sumar dos números, por ejemplo. Aprovechar al máximo los recursos computacionales fue una necesidad apremiante, sobre todo en la época en que las computadoras eran caras y escasas; el sistema operativo tenía que ofrecer la ejecución concurrente y segura de programas de varios usuarios, que desde distintas terminales utilizaban un solo procesador, y así surgió la necesidad de introducir algunos conceptos de programación concurrente para programar los sistemas operativos. Posteriormente, cuando los procesadores cambiaron de tamaño y de precio, se abrió la posibilidad de contar con varios procesadores en una máquina y ofrecer el procesamiento en paralelo, es decir, procesar varios programas al mismo tiempo. Esto dio el impulso a la creación de lenguajes que permitían expresar el paralelismo. Finalmente, llegaron las redes de computadoras, que también ofrecen la posibilidad de ejecución en paralelo, pero con procesadores distantes, lo cual conocemos como la programación distribuida. En resumen, el origen de los conceptos para el manejo de concurrencia, paralelismo y distribución está en el deseo de aprovechar al máximo la arquitectura von Neumann y sus modalidades reflejadas en conexiones paralelas y distribuidas. Históricamente encontramos en la literatura soluciones conceptuales y mecanismos tales como: semáforos, regiones críticas, monitores, envío de mensajes (CSP), llamadas a procedimientos remotos (RPC), que posteriormente se incluyeron como partes de los lenguajes de programación en Concurrent Pascal, Modula, Ada, OCCAM, y últimamente en Java. Uno de los ejemplos más importantes es el modelo de envío de mensajes de CSP de Hoare [4], para las arquitecturas paralelas y distribuidas, el cual no solamente fructificó en una propuesta del lenguaje de programación OCCAM, sino dio origen a una nueva familia de

5 procesadores, llamados "transputers", que fácilmente se componen en una arquitectura paralela. Es difícil evaluar las propuestas existentes de lenguajes para la programación concurrente, paralela y distribuida. Primero, porque los programadores están acostumbrados a la programación secuencial y cualquier uso de estos mecanismos les dificulta la construcción y el análisis de programas. Por otro lado, este tipo de conceptos en el pasado fue manejado principalmente a nivel de sistemas operativos, protocolos de comunicación, etcétera, donde la eficiencia era crucial, y por lo tanto no se utilizaban lenguajes de alto nivel para la programación. Hoy en día, la programación de sistemas complejos tiene que incluir las partes de comunicaciones, programación distribuida y concurrencia. Esto lo saben los creadores de los lenguajes más recientes, que integran conceptos para manejar: los hilos de control, comunicación, sincronización y no determinismo; el hardware y las aplicaciones se los exigen. A manera de conclusiones A quien pensaba que en la materia de los lenguajes de programación ya se había dicho todo, espero haberlo convencido de que estaba equivocado. Como dice Hoare [4]: "El diseño de un lenguaje de programación es siempre un compromiso, en el cual un buen diseñador tiene que tomar en cuenta: el nivel de abstracciones deseado, la arquitectura del hardware, y el rango propuesto de las aplicaciones". Lo malo, o lo bueno, según lo veamos, es que queremos construir sistemas a niveles cada vez más abstractos, con hardware cada vez más complicado y con aplicaciones cada vez más ambiciosas (véase la reciente efervescencia con Java y sus aplicaciones en Internet). Por lo tanto, el trabajo para los diseñadores de lenguajes existe para un buen rato. Una versión completa de este artículo aparecerá en un número próximo a salir de la revista Soluciones Avanzadas, dedicado a los lenguajes de programación. Referencias [1] J. Mcarthy et al., LISP 1.5 "Programming Manual Cambridge" MA. MIT Press, [2] A. Colmeraure and P. Roussel, " The Birth of PROLOG", ACM SlgPlan Notices, Vol. 28, No. 3, March [3] O.J. Dahl, B. Myhrhaug, K. Nygaard, "Simula 67 Common Base Language", Norwegian Computer Center [4] C.A.R. Hoare, "Communicating Sequential Processes", CACM, Vol. 21, No. 8, August Dra. Hanna Oktaba, Investigadora de la UNAM. Dirección electrónica: Copyright 1995 LANIA, A.C.

Desarrollo del software imposible si las tareas tuviesen que expresarse en código máquina. Lenguajes de más alto nivel: comprensibles, manejables y

Desarrollo del software imposible si las tareas tuviesen que expresarse en código máquina. Lenguajes de más alto nivel: comprensibles, manejables y 1. Paradigmas de programación Desarrollo del software imposible si las tareas tuviesen que expresarse en código máquina. Lenguajes de más alto nivel: comprensibles, manejables y automáticamente convertibles

Más detalles

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes INDICE Parte I. Conceptos 1 1. El estudio de los lenguajes de programación 1.1. Por qué estudiar lenguajes de programación? 2 1.2. Breve historia de los lenguajes de programación 1.2.1. Desarrollo de los

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

Introducción a los Tipos Abstractos de Datos

Introducción a los Tipos Abstractos de Datos Página 1 de 8 Introducción a los Tipos Abstractos de Datos Introducción: Concepto de abstracción Abstracción funcional y abstracción de datos Construcción de tipos abstractos de datos Especificación de

Más detalles

METODOS NUMERICOS CATEDRA 0 2. Ingeniería Civil ING.CRISTIANCASTROP. Facultad de Ingeniería de Minas, Geología y Civil

METODOS NUMERICOS CATEDRA 0 2. Ingeniería Civil ING.CRISTIANCASTROP. Facultad de Ingeniería de Minas, Geología y Civil CATEDRA 0 2 Facultad de Ingeniería de Minas, Geología y Civil Departamento académico de ingeniería de minas y civil METODOS NUMERICOS Ingeniería Civil ING.CRISTIANCASTROP. Capitulo II Herramientas de Cálculo

Más detalles

Instituto Tecnológico de Celaya

Instituto Tecnológico de Celaya LENGUAJES Lenguaje es el empleo de notaciones, señales y vocales (voz, palabras) para expresar ideas, comunicarse, y establecer relaciones entre los seres humanos. Un lenguaje no sólo consta de palabras,

Más detalles

TEMA 1: INTRODUCCIÓN

TEMA 1: INTRODUCCIÓN 1 DISEÑO Y DESARROLLO DE COMPILADORES TEMA 1: INTRODUCCIÓN Qué es un Compilador? Un compilador no es más que un traductor, es decir, un programa que nos permite pasar información de un lenguaje a otro.

Más detalles

Tema 1: Computadores y Programas

Tema 1: Computadores y Programas Tema 1: Computadores y Programas Ingeniería Informática Ingeniería Técnica en Informática de Sistemas Ingeniería Técnica en Informática de Gestión Departamento de Ciencia de la Computación e I.A. Universidad

Más detalles

Bloque II. Elementos del lenguaje de programación Java

Bloque II. Elementos del lenguaje de programación Java Bloque II. Elementos del lenguaje de programación Java 1.Introducción a los lenguajes de programación 2. Estructura de un programa 3. Datos y expresiones simples 4. Instrucciones de control 5. Entrada/salida

Más detalles

IIC1102 - Introducción a la Programación -

IIC1102 - Introducción a la Programación - IIC1102 - Introducción a la Programación - Sección 4 Introducción Programa y Carla Vairetti [email protected] Pontifícia Universidad Católica 5 de Marzo de 2009 Esquema 1 Programa del curso 2 3 Esquema

Más detalles

Metodología y Framework para el Desarrollo de Aplicaciones Científicas con Computación de Alto Rendimiento a través de Servicios Web

Metodología y Framework para el Desarrollo de Aplicaciones Científicas con Computación de Alto Rendimiento a través de Servicios Web Metodología y Framework para el Desarrollo de Aplicaciones Científicas con Computación de Alto Rendimiento a través de Servicios Web J.Corral-García, D.Cortés-Polo, C.Gómez-Martín, J.L.González-Sánchez

Más detalles

Tendencias actuales para el desarrollo de software a la medida

Tendencias actuales para el desarrollo de software a la medida Herramientas informáticas Tendencias actuales para el desarrollo de software a la medida Dora Alicia Reyes Echeagaray En el desarrollo de software es importante evaluar periódicamente si la metodología

Más detalles

CONTENIDO. 1. Introducción. 2. Reseña histórica del computador. 3. Definición de computador.

CONTENIDO. 1. Introducción. 2. Reseña histórica del computador. 3. Definición de computador. CONTENIDO 1. Introducción. 2. Reseña histórica del computador. 3. Definición de computador. 4. Sistemas numéricos. 4.1 Generalidades. 42 Sistema binario. 4.3 Sistema octal,. 4.4 Sistema decimal. 4.5 Sistema

Más detalles

Generalidades Computacionales

Generalidades Computacionales Capítulo 2 Generalidades Computacionales 2.1. Introducción a los Computadores Definición: Un computador es un dispositivo electrónico que puede transmitir, almacenar, recuperar y procesar información (datos).

Más detalles

Algoritmos y programas

Algoritmos y programas Algoritmo Algoritmos y programas Secuencia ordenada de pasos que resuelve un problema concreto. Características - Corrección (sin errores). - Precisión (ausencia de ambigüedades). - Repetitividad (solución

Más detalles

TEMA 1. INTRODUCCIÓN. 1. Diferentes niveles en la arquitectura de un computador

TEMA 1. INTRODUCCIÓN. 1. Diferentes niveles en la arquitectura de un computador TEMA 1. INTRODUCCIÓN 1. Diferentes niveles en la arquitectura de un computador.» Máquinas virtuales 2. Máquinas multinivel actuales. 3. Evolución histórica de las máquinas multinivel. 1 1. Diferentes niveles

Más detalles

HISTORIA Y EVOLUCIÓN DE LOS SISTEMAS OPERATIVOS

HISTORIA Y EVOLUCIÓN DE LOS SISTEMAS OPERATIVOS HISTORIA Y EVOLUCIÓN DE LOS SISTEMAS OPERATIVOS Las primeras computadoras eran enormes máquinas que se ejecutaban desde una consola. El programador, quien además operaba el sistema de computación, debía

Más detalles

Introducción a la Programación 11 O. Humberto Cervantes Maceda

Introducción a la Programación 11 O. Humberto Cervantes Maceda Introducción a la Programación 11 O Humberto Cervantes Maceda Información del profesor Humberto Cervantes Maceda T 138 www.humbertocervantes.net/cursos Acerca de ustedes Nombre Carrera Qué experiencia

Más detalles

Nota 2. Luis Sierra. Marzo del 2010

Nota 2. Luis Sierra. Marzo del 2010 Nota 2 Luis Sierra Marzo del 2010 Cada mecanismo de definición de conjuntos que hemos comentado sugiere mecanismos para definir funciones y probar propiedades. Recordemos brevemente qué son las funciones

Más detalles

UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS

UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS CURSO: JAVA BASICO PROFESOR: EMERSON CASTAÑEDA SANABRIA TEMA: Programación Orientada a Objetos OBJETIVOS: Familiarizarse con la Programación

Más detalles

Probabilidades y Estadística (Computación) Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires Ana M. Bianco y Elena J.

Probabilidades y Estadística (Computación) Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires Ana M. Bianco y Elena J. Generación de Números Aleatorios Números elegidos al azar son útiles en diversas aplicaciones, entre las cuáles podemos mencionar: Simulación o métodos de Monte Carlo: se simula un proceso natural en forma

Más detalles

1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura

1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura 1. Conceptos Generales 2. Modelo Entidad / Relación 3. Modelo Relacional 4. Integridad de datos relacional 5. Diseño de bases de datos relacionales 6. Lenguaje de consulta estructurado (SQL) 1.1.- Objetivos

Más detalles

implantación Fig. 1. Ciclo de vida tradicional

implantación Fig. 1. Ciclo de vida tradicional 1. Ciclo de vida tradicional de los sistemas de software En ingeniería de software, la descripción tradicional del ciclo de vida del software está basada en un modelo conocido como el modelo de cascada

Más detalles

Aplicación Java para distribución de código en R

Aplicación Java para distribución de código en R [email protected] Huesca - 24 de noviembre de 2009 Implementación Descripción problema Existen muchos problemas, cuya resolución informática requiere de un enorme tiempo de cómputo. En la actualidad,

Más detalles

Desarrollo de un cluster computacional para la compilación de. algoritmos en paralelo en el Observatorio Astronómico.

Desarrollo de un cluster computacional para la compilación de. algoritmos en paralelo en el Observatorio Astronómico. Desarrollo de un cluster computacional para la compilación de algoritmos en paralelo en el Observatorio Astronómico. John Jairo Parra Pérez Resumen Este artículo muestra cómo funciona la supercomputación

Más detalles

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante Modulo 2. Inicio con Java Muchas veces encontramos en nuestro entorno referencias sobre Java, bien sea como lenguaje de programación o como plataforma, pero, que es en realidad Java?, cual es su historia?,

Más detalles

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Tema 2 Conceptos básicos de programación. Fundamentos de Informática Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis

Más detalles

Esta investigación esta basada y evolucionada de las redes neuronales pero con visión de crear software.

Esta investigación esta basada y evolucionada de las redes neuronales pero con visión de crear software. Introducción Esta es un nuevo planteamiento al paradigma de la computación y la ingeniería del software, Necesitamos planteamientos nuevos en el area de la Inteligencia artificial que ayuden a el trabajo

Más detalles

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción

Más detalles

Introducción a Computación

Introducción a Computación Curso: Modelización y simulación matemática de sistemas Metodología para su implementación computacional Introducción a Computación Esteban E. Mocskos ([email protected]) Facultades de Ciencias Exactas

Más detalles

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa.

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa. BASES DE DATOS Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa. La creación de una base de datos debe ser realizada cuidadosamente procurando

Más detalles

EL CORREO ELECTRONICO Y SU EVOLUCIÒN

EL CORREO ELECTRONICO Y SU EVOLUCIÒN EL CORREO ELECTRONICO Y SU EVOLUCIÒN El correo electrónico fue uno de los primeros servicios creados para Internet y de los que más se utilizan. Este medio es rápido, eficiente y sencillo de administrar,

Más detalles

CAPÍTUL07 SISTEMAS DE FILOSOFÍA HÍBRIDA EN BIOMEDICINA. Alejandro Pazos, Nieves Pedreira, Ana B. Porto, María D. López-Seijo

CAPÍTUL07 SISTEMAS DE FILOSOFÍA HÍBRIDA EN BIOMEDICINA. Alejandro Pazos, Nieves Pedreira, Ana B. Porto, María D. López-Seijo CAPÍTUL07 SISTEMAS DE FILOSOFÍA HÍBRIDA EN BIOMEDICINA Alejandro Pazos, Nieves Pedreira, Ana B. Porto, María D. López-Seijo Laboratorio de Redes de Neuronas Artificiales y Sistemas Adaptativos Universidade

Más detalles

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 INTRODUCCIÓN El elemento hardware de un sistema básico de proceso de datos se puede estructurar en tres partes claramente diferenciadas en cuanto a sus funciones:

Más detalles

Métodos Heurísticos en Inteligencia Artificial

Métodos Heurísticos en Inteligencia Artificial Métodos Heurísticos en Inteligencia Artificial Javier Ramírez rez-rodríguez Ana Lilia Laureano-Cruces Universidad Autónoma Metropolitana Métodos Heurísticos en Inteligencia Artificial Los problemas de

Más detalles

El desarrollo de aplicaciones

El desarrollo de aplicaciones e d i t o r i a l Entendiendo el desarrollo de los sistemas SOA María Consuelo Franky R. El desarrollo de aplicaciones orientadas y basadas en servicios, como estilo de arquitectura, emergió sobre la arena

Más detalles

Diseño orientado a los objetos

Diseño orientado a los objetos Diseño orientado a los objetos El Diseño Orientado a los Objetos (DOO) crea una representación del problema del mundo real y la hace corresponder con el ámbito de la solución, que es el software. A diferencia

Más detalles

DECLARACIÓN DE ATI SOBRE LAS PATENTES DE SOFTWARE

DECLARACIÓN DE ATI SOBRE LAS PATENTES DE SOFTWARE Con motivo de la campaña que la Oficina Europea de Patentes (EPO) está llevando a cabo con el fin de lograr que las patentes de software sean aprobadas por la Unión Europea de la cual no forma parte, la

Más detalles

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.

Más detalles

GUÍA DE TRABAJO Tecnología en Sistemas de Información

GUÍA DE TRABAJO Tecnología en Sistemas de Información 1. IDENTIFICACIÓN Asignatura Laboratorio Lógica y Programación Guía No. 1 Área Básica de la Ingeniería Nivel II Código LLI22 Pensum 10 Correquisito(s) LPI24 Prerrequisito(s) Créditos 2 TPS 2 TIS 4 TPT

Más detalles

Las computadoras analógicas no computan directamente, sino que perciben constantemente valores, señales o magnitudes físicas variadas.

Las computadoras analógicas no computan directamente, sino que perciben constantemente valores, señales o magnitudes físicas variadas. Clasificación de las computadoras Análoga: Las computadoras analógicas no computan directamente, sino que perciben constantemente valores, señales o magnitudes físicas variadas. Características de las

Más detalles

Análisis de Lenguajes de Programación II El Inicio

Análisis de Lenguajes de Programación II El Inicio Análisis de II El Inicio 08/08/2011 Docentes de la Materia Cecilia Manzino Pablo Buiras Lucio Nardelli Adscripto: Martín Ceresa ([email protected]) ([email protected]) ([email protected])

Más detalles

Estructuras de Control - Diagrama de Flujo

Estructuras de Control - Diagrama de Flujo RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS Ingeniería en Computación Ingeniería en Informática UNIVERSIDAD NACIONAL DE SAN LUIS DEPARTAMENTO DE INFORMÁTICA AÑO 2015 Índice 1. Programación estructurada 2 1.1.

Más detalles

2.- Su profesión está ligada a la carrera en la que aquí da clases? Licenciatura Ingeniería Total SI 21 18 39 NO 0 0 0 21 18 39

2.- Su profesión está ligada a la carrera en la que aquí da clases? Licenciatura Ingeniería Total SI 21 18 39 NO 0 0 0 21 18 39 Resultados de la encuesta aplicada a los profesores de la Facultad de Ciencias de la Computación Comisión de Evaluación y Seguimiento Curricular Otoño 2008 1.- Tipo de contratación? TC 16 15 31 MT 3 2

Más detalles

InAge: Una Herramienta para el Desarrollo y Simulación de Sociedades de Agentes Reactivos

InAge: Una Herramienta para el Desarrollo y Simulación de Sociedades de Agentes Reactivos InAge: Una Herramienta para el Desarrollo y Simulación de Sociedades de Agentes Reactivos Sayde Alcántara Santiago 1, Carlos Alberto Fernández-y-Fernández 2, Ricardo Ruiz-Rodríguez 3 1 Instituto Nacional

Más detalles

Ingº CIP Fabian Guerrero Medina Master Web Developer-MWD

Ingº CIP Fabian Guerrero Medina Master Web Developer-MWD 1 Java es un lenguaje de programación de Sun Microsystems originalmente llamado "Oak. James Gosling Bill Joy 2 Oak nació para programar pequeños dispositivos electrodomésticos, como los asistentes personales

Más detalles

ANÁLISIS Y APLICACIÓN INFORMÁTICA PARA IMPLEMENTACIÓN SOBRE PLC DE SISTEMAS AUTOMÁTICOS DESARROLLADOS CON HERRAMIENTAS DE ALTO NIVEL

ANÁLISIS Y APLICACIÓN INFORMÁTICA PARA IMPLEMENTACIÓN SOBRE PLC DE SISTEMAS AUTOMÁTICOS DESARROLLADOS CON HERRAMIENTAS DE ALTO NIVEL ANÁLIS Y APLICACIÓN INFORMÁTICA PARA IMPLEMENTACIÓN SOBRE PLC DE STEMAS AUTOMÁTICOS DESARROLLADOS CON HERRAMIENTAS DE ALTO NIVEL Mónica Baigorri Martínez (1) e-mail: [email protected] Emilio

Más detalles

Algoritmos y Diagramas de Flujo 2

Algoritmos y Diagramas de Flujo 2 Algoritmos y Diagramas de Flujo 2 Programación Java NetBeans 7.0 RPC Contenido 2.1 Algoritmo...1 Fase de creación de un algoritmo...1 Herramientas de un algoritmo...2 2.2 Diagrama de Flujo...2 Símbolos

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

Ergonomía e interfases de interacción humano-computadora

Ergonomía e interfases de interacción humano-computadora Ergonomía e interfases de interacción humano-computadora Martínez de la Teja, Guillermo Manuel Maestro en Ciencias en Ergonomía Ergoprojects / Sociedad de Ergonomistas de México A.C. [email protected]

Más detalles

TEMA: PROTOCOLOS TCP/IP

TEMA: PROTOCOLOS TCP/IP TEMA: PROTOCOLOS TCP/IP HISTORIA: El Protocolo de Internet (IP) y el Protocolo de Transmisión (TCP), fueron desarrollados inicialmente en 1973 por el informático estadounidense Vinton Cerf como parte de

Más detalles

PROGRAMACIÓN BÁSICA DE LA COMPUTADORA. 1 Introducción. Tabla 1: Instrucciones MIPS

PROGRAMACIÓN BÁSICA DE LA COMPUTADORA. 1 Introducción. Tabla 1: Instrucciones MIPS PROGRAMACIÓN BÁSICA DE LA COMPUTADORA 1 Introducción Un sistema de computadora total incluye tanto circuitería (hardware) como programación (software). El hardware consta de los componentes físicos y todo

Más detalles

Tema 2. Ingeniería del Software I [email protected]

Tema 2. Ingeniería del Software I feliu.trias@urjc.es Tema 2 Ciclo de vida del software Ingeniería del Software I [email protected] Índice Qué es el ciclo de vida del Software? El Estándar 12207 Modelos de proceso Qué es el Ciclo de Vida del SW? Definición

Más detalles

Introducción al Diseño Gráfico.

Introducción al Diseño Gráfico. Introducción al Diseño Gráfico. El ser humano ha tenido siempre la necesidad de comunicarse con sus semejantes, hasta tal punto que podemos afirmar que si el hombre es el ser más avanzado de la naturaleza,

Más detalles

El conjunto de conocimientos científicos y técnicos que hacen posible la resolución de forma automática de problemas por medio de las computadoras.

El conjunto de conocimientos científicos y técnicos que hacen posible la resolución de forma automática de problemas por medio de las computadoras. 1 Conceptos Generales 1.1 Definición de Informática Una posible definición de informática podría ser: El conjunto de conocimientos científicos y técnicos que hacen posible la resolución de forma automática

Más detalles

CONCEPTOS FUNDAMENTALES.

CONCEPTOS FUNDAMENTALES. CONCEPTOS FUNDAMENTALES. INFORMÁTICA. Nace con la idea de ayudar al hombre en aquellos trabajos rutinarios y repetitivos que generalmente, involucraban gran cantidad de cálculo o gestión por lo cual, eran

Más detalles

Metodología y Tecnología de la Programación Tipo Obligatoria Impartición Anual Créditos ECTS 12,5 Curso 1º Código 42506

Metodología y Tecnología de la Programación Tipo Obligatoria Impartición Anual Créditos ECTS 12,5 Curso 1º Código 42506 Asignatura Metodología y Tecnología de la Programación Tipo Obligatoria Impartición Anual Créditos ECTS 12,5 Curso 1º Código 42506 Titulación Centro Departamento Página web de la asignatura Ingeniería

Más detalles

Alumna: Adriana Elizabeth Mendoza Martínez. Grupo: 303. P.S.P. Miriam De La Rosa Díaz. Carrera: PTB. en Informática 3er Semestre.

Alumna: Adriana Elizabeth Mendoza Martínez. Grupo: 303. P.S.P. Miriam De La Rosa Díaz. Carrera: PTB. en Informática 3er Semestre. Alumna: Adriana Elizabeth Mendoza Martínez. Grupo: 303. P.S.P. Miriam De La Rosa Díaz. Carrera: PTB. en Informática 3er Semestre. Tema: Sistemas Subtema: Base de Datos. Materia: Manejo de aplicaciones

Más detalles

INGENIERÍA EN INFORMÁTICA. Ingeniero en Informática

INGENIERÍA EN INFORMÁTICA. Ingeniero en Informática Facultad de Ingeniería Av. Paseo Colón 850 (C1063ACV) Ciudad de Buenos Aires Tel.: (011) 4343-0893 Fax: (011) 4345-7262 Página web: www.ingenieria.uba.ar Correo electrónico: [email protected] INGENIERÍA

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

UF0512: Transmisión de información por medios convencionales e. informático. TEMA 1. Conexión y funcionamiento

UF0512: Transmisión de información por medios convencionales e. informático. TEMA 1. Conexión y funcionamiento UF0512: Transmisión de información por medios convencionales e informáticos TEMA 1. Conexión y funcionamiento operativo del equipamiento informático TEMA 2. Transmisión interna personal de documentación.

Más detalles

SOciedad Dominicana de Inteligencia Artificial. Santo Domingo Mayo 2015

SOciedad Dominicana de Inteligencia Artificial. Santo Domingo Mayo 2015 SOciedad Dominicana de Inteligencia Artificial Santo Domingo Mayo 2015 1 Conferencia: La Inteligencia Artificial y sus Aplicaciones para Países en Desarrollo Dra. Ing. Rina Familia 24/05/2015 3 Hollywood

Más detalles

Introducción a la Inteligencia Artificial

Introducción a la Inteligencia Artificial Introducción a la Inteligencia Artificial Qué es la Inteligencia Artificial? Todas las definiciones de Inteligencia Artificial están relacionadas con la siguiente idea: Desarrollo de métodos y algoritmos

Más detalles

Tablas de convalidación de Titulaciones Antiguas a Grados ETSII, URJC

Tablas de convalidación de Titulaciones Antiguas a Grados ETSII, URJC INGENIERO EN (PLAN ANTIGUO) FUNDAMENTOS DE LOS MATEMÁTICA DISCRETA Y ÁLGEBRA INTRODUCCIÓN A LA LÓGICA MATEMÁTICA LÓGICA CÁLCULO LENGUAJES INFORMATICOS ESTRUCTURAS DE DATOS FUNDAMENTOS DE REDES DE ORDENADORES

Más detalles

Capítulo 1 Introducción a la Computación

Capítulo 1 Introducción a la Computación Capítulo 1 Introducción a la Computación 1 MEMORIA PRINCIPAL (RAM) DISPOSITIVOS DE ENTRADA (Teclado, Ratón, etc) C P U DISPOSITIVOS DE SALIDA (Monitor, Impresora, etc.) ALMACENAMIENTO (Memoria Secundaria:

Más detalles

HERRAMIENTA WEB PARA MODELO FINANCIERO DE CONSTRUCTORES EN BOGOTÁ

HERRAMIENTA WEB PARA MODELO FINANCIERO DE CONSTRUCTORES EN BOGOTÁ HERRAMIENTA WEB PARA MODELO FINANCIERO DE CONSTRUCTORES EN BOGOTÁ ARBELÁEZ, B. 1 HERRAMIENTA WEB PARA MODELO FINANCIERO DE CONSTRUCTORES EN BOGOTÁ Beatriz Alexandra Arbeláez Hurtado Profesor Investigador

Más detalles

U.T.4.EL ENTORNO DE DESARROLLO

U.T.4.EL ENTORNO DE DESARROLLO U.T.4.EL ENTORNO DE DESARROLLO Lenguaje Java Estamos en unos días en los que cada vez más la informática invade más campos de nuestra vida, estando el ciudadano medio cada vez más familiarizado con términos

Más detalles

4. Programación Paralela

4. Programación Paralela 4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios

Más detalles

Ingeniería de Software

Ingeniería de Software Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: http://www.dsic.upv.es/~uml http://inst.eecs.berkeley.edu/~cs169/ entre otras fuentes. Definiciones

Más detalles

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz Compiladores y Lenguajes de Programación Maria de Guadalupe Cota Ortiz Organizaciones que rigen las normas para estandarización de Lenguajes de Programación IEEE (Instituto de Ingenieros Eléctricos y Electrónicos)

Más detalles

LA HISTORIA DEL DISEÑO GRÁFICO, DESDE LOS ORÍGENES DE LA HUMANIDAD HASTA LA APARICIÓN DE LA WEB E INTERNET.

LA HISTORIA DEL DISEÑO GRÁFICO, DESDE LOS ORÍGENES DE LA HUMANIDAD HASTA LA APARICIÓN DE LA WEB E INTERNET. LA HISTORIA DEL DISEÑO GRÁFICO, DESDE LOS ORÍGENES DE LA HUMANIDAD HASTA LA APARICIÓN DE LA WEB E INTERNET. Aunque posteriormente el lenguaje hablado pasara a ser el medio de intercambio de información

Más detalles

de! texto: Francisco Javier Carreras Riudavets Antonio Carlos González Cabrera Zenón Hernández Figueroa Juan Carlos Rodríguez del Pino

de! texto: Francisco Javier Carreras Riudavets Antonio Carlos González Cabrera Zenón Hernández Figueroa Juan Carlos Rodríguez del Pino COLECCIÓN: MANUALES DOCENTES UNIVERSITARIOS, N 13 de! texto: Francisco Javier Carreras Riudavets Antonio Carlos González Cabrera Zenón Hernández Figueroa Juan Carlos Rodríguez del Pino de la edición: VICERRECTORADO

Más detalles

RAE INFORMÁTICA ENERO

RAE INFORMÁTICA ENERO Guía RAE INFORMÁTICA ENERO 2013 1 Índice Presentación 3 Antecedentes 4 Qué evalúa el examen? 5 Componentes, estructura y ejemplos 5 2 Presentación Estimado/a estudiante Los exámenes de fin de carrera,

Más detalles

GANTT, PERT y CPM. Figura 5.3: Carta GANTT 3.

GANTT, PERT y CPM. Figura 5.3: Carta GANTT 3. GANTT, PERT y CPM Características Conseguir una buena programación es un reto, no obstante es razonable y alcanzable. Ella debe tener el compromiso del equipo al completo, para lo cual se recomienda que

Más detalles

Estructura de Bases de datos. Leonardo Víquez Acuña

Estructura de Bases de datos. Leonardo Víquez Acuña Estructura de Bases de datos Leonardo Víquez Acuña Lenguajes de Bases de Datos Un sistema de bases de datos proporciona Un lenguaje de definición de datos para especificar el esquema de la base de datos

Más detalles

UNIVERSIDAD FRANCISCO GAVIDIA Tecnología, Humanismo y Calidad DIRECCION DE POSTGRADOS Y EDUCACION CONTINUA

UNIVERSIDAD FRANCISCO GAVIDIA Tecnología, Humanismo y Calidad DIRECCION DE POSTGRADOS Y EDUCACION CONTINUA UNIVERSIDAD FRANCISCO GAVIDIA Tecnología, Humanismo y Calidad DIRECCION DE POSTGRADOS Y EDUCACION CONTINUA Trabajo de graduación: Sistema WDS para la Administración remota de servidores TRABAJO DE GRADUACION

Más detalles

I.3 APLICACIÓN DE UN RECONOCEDOR DE LENGUAJE NATURAL RESTRINGIDO A LA RECUPERACIÓN DE DATOS Gabriel Cordero Sánchez*

I.3 APLICACIÓN DE UN RECONOCEDOR DE LENGUAJE NATURAL RESTRINGIDO A LA RECUPERACIÓN DE DATOS Gabriel Cordero Sánchez* I.3 APLICACIÓN DE UN RECONOCEDOR DE LENGUAJE NATURAL RESTRINGIDO A LA RECUPERACIÓN DE DATOS Gabriel Cordero Sánchez* Resumen En este documento se muestra la estructura funcional de un reconocedor de lenguaje

Más detalles

En nuestro capitulo final, daremos las conclusiones y las aplicaciones a futuro

En nuestro capitulo final, daremos las conclusiones y las aplicaciones a futuro Capitulo 6 Conclusiones y Aplicaciones a Futuro. En nuestro capitulo final, daremos las conclusiones y las aplicaciones a futuro para nuestro sistema. Se darán las conclusiones para cada aspecto del sistema,

Más detalles

MENSAREX: SISTEMA DE MENSAJERÍA DEL MINREX Gretel García Gómez [email protected] Ministerio de Relaciones Exteriores Cuba.

MENSAREX: SISTEMA DE MENSAJERÍA DEL MINREX Gretel García Gómez gretel@minrex.gov.cu Ministerio de Relaciones Exteriores Cuba. MENSAREX: SISTEMA DE MENSAJERÍA DEL MINREX Gretel García Gómez [email protected] Ministerio de Relaciones Exteriores Cuba Resumen El presente trabajo da solución a dos de los problemas informáticos

Más detalles

LA ENSEÑANZA DE LA PROGRAMACIÓN

LA ENSEÑANZA DE LA PROGRAMACIÓN LA ENSEÑANZA DE LA PROGRAMACIÓN Autor: MARIO OVIEDO GALDEANO. Adscripción: ACADEMIAS DE COMPUTACIÓN DE LA UPIICSA. Coautora: FRIDA GISELA ORTIZ URIBE Adscripción: ACADEMIAS DE HUMANIDADES DE LA UPIICSA.

Más detalles

Capitulo I. Introducción

Capitulo I. Introducción Capitulo I. Introducción 1.1 Descripción del trabajo El ser humano, como todos sabemos tiene la necesidad de comunicarse, de ser escuchado y sobretodo interactuar con los demás seres vivos que lo rodean.

Más detalles

Workflow, BPM y Java Resumen de la presentación de Tom Baeyens

Workflow, BPM y Java Resumen de la presentación de Tom Baeyens Workflow, BPM y Java Resumen de la presentación de Tom Baeyens Workflow, BPM y Java Página 1 de 11 1. Introducción Tom Baeyens es el fundador y arquitecto del proyecto de JBoss jbpm, la máquina de workflow

Más detalles

Administración de Catálogo DNS CURSO: ADMINISTRADOR DE PORTALES

Administración de Catálogo DNS CURSO: ADMINISTRADOR DE PORTALES Administración de Catálogo DNS CURSO: ADMINISTRADOR DE PORTALES Administración del Catálogo DNS. Curso: Administrador de Portales Fondo de Información y Documentación para la Industria Av. San Fernando

Más detalles

1 Software Libre en México y en el Mundo

1 Software Libre en México y en el Mundo 1 Software Libre en México y en el Mundo En este Capítulo se desarrollara el tema del software libre, iniciando desde los principios básicos de que significa programar, hasta reflexiones del porque hay

Más detalles

Ciclo de vida del Software

Ciclo de vida del Software Tema 2: Ciclo de vida del Software Marcos López Sanz Índice Qué es el ciclo de vida del Software? La norma 12207-2008 Modelos de desarrollo Qué es el Ciclo de Vida del SW? Es una sucesión de etapas por

Más detalles

I GE IERÍA DEL SOFTWARE. Mª Dolores Carballar Falcón 28935146L

I GE IERÍA DEL SOFTWARE. Mª Dolores Carballar Falcón 28935146L I GE IERÍA DEL SOFTWARE. Mª Dolores Carballar Falcón 28935146L REFERE CIA AL SISTEMA EDUCATIVO ACTUAL. Los contenidos de este tema, están enfocados a introducir al alumno en el concepto de Ingeniería del

Más detalles

CAPÍTULO VI. RESULTADOS, PRUEBAS Y CONCLUSIONES DE LA APLICACIÓN.

CAPÍTULO VI. RESULTADOS, PRUEBAS Y CONCLUSIONES DE LA APLICACIÓN. CAPÍTULO VI. RESULTADOS, PRUEBAS Y CONCLUSIONES DE LA APLICACIÓN. Finalmente en este último capítulo se conocen los resultados, las pruebas y las conclusiones finales de la aplicación Web para el monitoreo

Más detalles

Elección de un Sistema de Remuneraciones y Recursos Humanos. Según su modo de operar.

Elección de un Sistema de Remuneraciones y Recursos Humanos. Según su modo de operar. Elección de un Sistema de Remuneraciones y Recursos Humanos. Según su modo de operar. Introducción En la elección de un sistema de remuneraciones para reemplazar a la modalidad actualmente en uso en la

Más detalles

Electrónica Digital II

Electrónica Digital II Electrónica Digital II M. C. Felipe Santiago Espinosa Aplicaciones de los FPLDs Octubre / 2014 Aplicaciones de los FPLDs Los primeros FPLDs se usaron para hacer partes de diseños que no correspondían a

Más detalles

INGENIERÍA DEL SOFTWARE

INGENIERÍA DEL SOFTWARE INGENIERÍA DEL SOFTWARE Sesión No. 2 Nombre: Procesos de ingeniería del software INGENIERÍA DEL SOFTWARE 1 Contextualización La ingeniería de software actualmente es muy importante, pues con los avances

Más detalles

Proyecto de Normalización Automática de Base de Datos

Proyecto de Normalización Automática de Base de Datos Proyecto de Normalización Automática de Base de Datos Lic. Beatriz Steimberg * Resumen En el primer cuatrimestre del año 2003 se encaró el proyecto de Normalización Automática de Base de Datos. El objetivo

Más detalles

2. Conceptos básicos Abstracción La abstracción como un proceso mental natural La abstracción en el desarrollo de software

2. Conceptos básicos Abstracción La abstracción como un proceso mental natural La abstracción en el desarrollo de software 2. Conceptos básicos Hoy en día las aplicaciones son demasiado voluminosas y complejas para ser manejadas por una sola persona. Las aplicaciones de software son complejas porque modelan la complejidad

Más detalles

Introducción a la Firma Electrónica en MIDAS

Introducción a la Firma Electrónica en MIDAS Introducción a la Firma Electrónica en MIDAS Firma Digital Introducción. El Módulo para la Integración de Documentos y Acceso a los Sistemas(MIDAS) emplea la firma digital como método de aseguramiento

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

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

Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL

Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL DNI Apellidos y nombre 1. Cuál de las siguientes afirmaciones no es una causa de los problemas del software?

Más detalles

Tabla 10.2. Tabla de equivalencia entre asignaturas de Ingeniería Técnica en Informática de Gestión al Grado en Ingeniería Informática. Créd LRU.

Tabla 10.2. Tabla de equivalencia entre asignaturas de Ingeniería Técnica en Informática de Gestión al Grado en Ingeniería Informática. Créd LRU. El proceso de adaptación de los estudiantes de la actual Ingeniería Técnica en Informática de Gestión al título de grado en Ingeniería Informática se realizará a requerimiento de los propios estudiantes

Más detalles

Datos del autor. Nombres y apellido: Germán Andrés Paz. Lugar de nacimiento: Rosario (Código Postal 2000), Santa Fe, Argentina

Datos del autor. Nombres y apellido: Germán Andrés Paz. Lugar de nacimiento: Rosario (Código Postal 2000), Santa Fe, Argentina Datos del autor Nombres y apellido: Germán Andrés Paz Lugar de nacimiento: Rosario (Código Postal 2000), Santa Fe, Argentina Correo electrónico: [email protected] =========0========= Introducción

Más detalles

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR En este capítulo se describe el análisis y diseño de un sistema, denominado e-commerce Constructor, el cual cumple con los siguientes objetivos: Fungir

Más detalles

Ingeniería del Software. La última lección. Resumen del curso. Buenas prácticas. Conclusión

Ingeniería del Software. La última lección. Resumen del curso. Buenas prácticas. Conclusión La última lección Resumen del curso Buenas prácticas Malas prácticas Conclusión Objetivos Mostrar las técnicas básicas para planificar, gestionar y desarrollar productos de software complejos (Proyectos

Más detalles
Sitemap